commit - fa32a75741dba59c89d92757937ef9039129dea1
commit + 7c79b0547941d5c8539ca8c8206cefdf0f4f74aa
blob - 27cb7ece84786bf96ba0e2908a3c2ad5d1b76504 (mode 644)
blob + /dev/null
--- m3u8/testdata/bbb.m3u8
+++ /dev/null
-#EXTM3U
-#EXT-X-VERSION:3
-#EXT-X-PLAYLIST-TYPE:VOD
-#EXT-X-TARGETDURATION:11
-#EXTINF:10.000,
-url_846/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_847/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_848/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_849/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_850/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_851/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_852/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:9.967,
-url_853/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.033,
-url_854/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_855/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_856/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_857/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_858/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_859/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_860/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_861/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_862/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_863/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_864/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_865/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_866/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_867/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_868/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_869/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_870/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_871/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_872/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_873/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_874/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:9.967,
-url_875/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.033,
-url_876/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_877/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_878/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_879/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_880/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_881/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_882/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_883/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_884/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_885/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_886/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_887/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_888/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:9.967,
-url_889/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.033,
-url_890/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_891/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_892/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_893/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_894/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_895/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_896/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_897/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_898/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_899/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_900/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_901/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_902/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_903/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_904/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_905/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_906/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_907/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:10.000,
-url_908/193039199_mp4_h264_aac_hq_7.ts
-#EXTINF:4.600,
-url_909/193039199_mp4_h264_aac_hq_7.ts
-#EXT-X-ENDLIST
blob - /dev/null
blob + 71e607023dc04df8378f1f9fbc920a9137974280 (mode 644)
--- /dev/null
+++ m3u8/testdata/big_buck_bunny.m3u8
+#EXTM3U
+## From https://test-streams.mux.dev/
+#EXT-X-VERSION:3
+#EXT-X-PLAYLIST-TYPE:VOD
+#EXT-X-TARGETDURATION:11
+#EXTINF:10.000,
+url_846/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_847/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_848/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_849/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_850/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_851/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_852/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:9.967,
+url_853/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.033,
+url_854/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_855/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_856/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_857/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_858/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_859/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_860/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_861/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_862/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_863/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_864/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_865/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_866/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_867/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_868/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_869/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_870/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_871/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_872/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_873/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_874/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:9.967,
+url_875/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.033,
+url_876/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_877/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_878/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_879/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_880/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_881/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_882/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_883/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_884/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_885/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_886/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_887/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_888/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:9.967,
+url_889/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.033,
+url_890/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_891/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_892/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_893/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_894/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_895/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_896/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_897/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_898/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_899/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_900/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_901/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_902/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_903/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_904/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_905/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_906/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_907/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:10.000,
+url_908/193039199_mp4_h264_aac_hq_7.ts
+#EXTINF:4.600,
+url_909/193039199_mp4_h264_aac_hq_7.ts
+#EXT-X-ENDLIST
blob - /dev/null
blob + fbb5f2c5493494bb1b2583b0c4595afb4d2fabc2 (mode 644)
--- /dev/null
+++ m3u8/testdata/comments_empty_lines.m3u8
+#EXTM3U
+## Generated with https://github.com/google/shaka-packager version v2.6.1-634af65-release
+
+#EXT-X-INDEPENDENT-SEGMENTS
+
+#EXT-X-MEDIA:TYPE=AUDIO,URI="tos_audio/index.m3u8",GROUP-ID="audio",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES,CHANNELS="2"
+
+## This TTML playlist was generated by shaka-packager when converting a webvtt subtitles into bare bones TTML
+#EXT-X-MEDIA:TYPE=SUBTITLES,URI="tos_subs/index.m3u8",GROUP-ID="default-text-group",NAME="from webvtt",AUTOSELECT=YES
+## This TTML playlist is copied from Unified Streaming's DASH with segmented TTML playlist
+#EXT-X-MEDIA:TYPE=SUBTITLES,URI="tos_ttml/index.m3u8",GROUP-ID="default-text-group",NAME="ttml",AUTOSELECT=YES
+
+#EXT-X-STREAM-INF:BANDWIDTH=6725464,AVERAGE-BANDWIDTH=6296707,CODECS="avc1.4d4028,mp4a.40.2,stpp.ttml.im1t",RESOLUTION=1920x800,FRAME-RATE=24.000,AUDIO="audio",SUBTITLES="default-text-group",CLOSED-CAPTIONS=NONE
+tos_1080p/index.m3u8
blob - fbb5f2c5493494bb1b2583b0c4595afb4d2fabc2 (mode 644)
blob + /dev/null
--- m3u8/testdata/tos.m3u8
+++ /dev/null
-#EXTM3U
-## Generated with https://github.com/google/shaka-packager version v2.6.1-634af65-release
-
-#EXT-X-INDEPENDENT-SEGMENTS
-
-#EXT-X-MEDIA:TYPE=AUDIO,URI="tos_audio/index.m3u8",GROUP-ID="audio",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES,CHANNELS="2"
-
-## This TTML playlist was generated by shaka-packager when converting a webvtt subtitles into bare bones TTML
-#EXT-X-MEDIA:TYPE=SUBTITLES,URI="tos_subs/index.m3u8",GROUP-ID="default-text-group",NAME="from webvtt",AUTOSELECT=YES
-## This TTML playlist is copied from Unified Streaming's DASH with segmented TTML playlist
-#EXT-X-MEDIA:TYPE=SUBTITLES,URI="tos_ttml/index.m3u8",GROUP-ID="default-text-group",NAME="ttml",AUTOSELECT=YES
-
-#EXT-X-STREAM-INF:BANDWIDTH=6725464,AVERAGE-BANDWIDTH=6296707,CODECS="avc1.4d4028,mp4a.40.2,stpp.ttml.im1t",RESOLUTION=1920x800,FRAME-RATE=24.000,AUDIO="audio",SUBTITLES="default-text-group",CLOSED-CAPTIONS=NONE
-tos_1080p/index.m3u8