|
|
|
@ -626,24 +626,24 @@ jwplayer("mediaplayer").setup({"abouttext":"Visit Indie DB","aboutlink":"http:\/
|
|
|
|
|
'img_bipbop_adv_example_fmp4',
|
|
|
|
|
'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8',
|
|
|
|
|
[{
|
|
|
|
|
'format_id': 'aud1-English',
|
|
|
|
|
'url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/a1/prog_index.m3u8',
|
|
|
|
|
'format_id': 'aud2-English',
|
|
|
|
|
'url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/a2/prog_index.m3u8',
|
|
|
|
|
'manifest_url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8',
|
|
|
|
|
'language': 'en',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': 'aud2-English',
|
|
|
|
|
'url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/a2/prog_index.m3u8',
|
|
|
|
|
'format_id': 'aud3-English',
|
|
|
|
|
'url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/a3/prog_index.m3u8',
|
|
|
|
|
'manifest_url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8',
|
|
|
|
|
'language': 'en',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': 'aud3-English',
|
|
|
|
|
'url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/a3/prog_index.m3u8',
|
|
|
|
|
'format_id': 'aud1-English',
|
|
|
|
|
'url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/a1/prog_index.m3u8',
|
|
|
|
|
'manifest_url': 'https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8',
|
|
|
|
|
'language': 'en',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
@ -866,6 +866,7 @@ jwplayer("mediaplayer").setup({"abouttext":"Visit Indie DB","aboutlink":"http:\/
|
|
|
|
|
'height': 1080,
|
|
|
|
|
'vcodec': 'avc1.64002a',
|
|
|
|
|
}],
|
|
|
|
|
{},
|
|
|
|
|
{}
|
|
|
|
|
),
|
|
|
|
|
(
|
|
|
|
@ -1023,14 +1024,181 @@ jwplayer("mediaplayer").setup({"abouttext":"Visit Indie DB","aboutlink":"http:\/
|
|
|
|
|
'ext': 'vtt',
|
|
|
|
|
'protocol': 'm3u8_native'
|
|
|
|
|
}],
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{}
|
|
|
|
|
),
|
|
|
|
|
(
|
|
|
|
|
'rai-383bca47-d8a1-49c0-876c-f20a2d56d4c1-playlist',
|
|
|
|
|
'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
[{
|
|
|
|
|
'format_id': 'aac-Audiodescrizione',
|
|
|
|
|
'format_note': 'Audiodescrizione',
|
|
|
|
|
'url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/chunklist_b192400_ao_slAudiodescrizione_t64QXVkaW9kZXNjcml6aW9uZV9hdWRpbw==.m3u8',
|
|
|
|
|
'manifest_url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
'language': 'Audiodescrizione',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'vcodec': 'none',
|
|
|
|
|
'acodec': 'mp4a',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
'video_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': 'aac-Italiano',
|
|
|
|
|
'format_note': 'Italiano',
|
|
|
|
|
'url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/chunklist_b192400_ao_slItaliano_t64SXRhbGlhbm9fYXVkaW8=.m3u8',
|
|
|
|
|
'manifest_url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
'language': 'Italiano',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'vcodec': 'none',
|
|
|
|
|
'acodec': 'mp4a',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
'video_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '1800',
|
|
|
|
|
'url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/chunklist_b1758000_vo_slita_t64MTgwMA==.m3u8',
|
|
|
|
|
'manifest_url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
'tbr': 1758.0,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 1024,
|
|
|
|
|
'height': 576,
|
|
|
|
|
'vcodec': 'avc1',
|
|
|
|
|
'acodec': 'none',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
'vbr': 1758.0,
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '2400',
|
|
|
|
|
'url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/chunklist_b2344000_vo_slita_t64MjQwMA==.m3u8',
|
|
|
|
|
'manifest_url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
'tbr': 2344.0,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 1280,
|
|
|
|
|
'height': 720,
|
|
|
|
|
'vcodec': 'avc1',
|
|
|
|
|
'acodec': 'none',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '3600',
|
|
|
|
|
'url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/chunklist_b3516000_vo_slita_t64MzYwMA==.m3u8',
|
|
|
|
|
'manifest_url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
'tbr': 3516.0,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 1440,
|
|
|
|
|
'height': 810,
|
|
|
|
|
'vcodec': 'avc1',
|
|
|
|
|
'acodec': 'none',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '5000',
|
|
|
|
|
'url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/chunklist_b5210000_vo_slita_t64NTAwMA==.m3u8',
|
|
|
|
|
'manifest_url': 'https://b70cb04c54ab478189e9d8ee45637b13.msvdn.net/ostr8/podcastcdn/teche_root/YT_ITALIA_TECHE_HD_multiaudio/13834457_,1200,1800,2400,3600,5000/playlist.m3u8?auth=daEaKdPbObBcsaIbabWdqd2adavcddNdsaK-bJQVtj-c0-GmsvrFu&aifp=V001',
|
|
|
|
|
'tbr': 5210.0,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 1920,
|
|
|
|
|
'height': 1080,
|
|
|
|
|
'vcodec': 'avc1',
|
|
|
|
|
'acodec': 'none',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
}],
|
|
|
|
|
{},
|
|
|
|
|
{'acodec': 'mp4a', 'vcodec': 'avc1'},
|
|
|
|
|
),
|
|
|
|
|
(
|
|
|
|
|
'rai-livestream-48cc9aec-d6f0-4e53-843e-23565b24cd82-playlist',
|
|
|
|
|
'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
[{
|
|
|
|
|
'format_id': 'aac-Audiodescrizione',
|
|
|
|
|
'format_note': 'Audiodescrizione',
|
|
|
|
|
'url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/desrai1_160/chunklist_ao.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672438656&tk2=2b4cb4fd233734fe415b44d8bdb422941028f6314c0aa7088d8fed35c72edf56',
|
|
|
|
|
'manifest_url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
'language': 'des',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'vcodec': 'none',
|
|
|
|
|
'acodec': 'mp4a.40.2',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
'video_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': 'aac-Italiano',
|
|
|
|
|
'format_note': 'Italiano',
|
|
|
|
|
'url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/itarai1_160/chunklist_ao.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672438656&tk2=2b4cb4fd233734fe415b44d8bdb422941028f6314c0aa7088d8fed35c72edf56',
|
|
|
|
|
'manifest_url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
'language': 'ita',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'vcodec': 'none',
|
|
|
|
|
'acodec': 'mp4a.40.2',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
'video_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': 'aac-Lingua Originale',
|
|
|
|
|
'format_note': 'Lingua Originale',
|
|
|
|
|
'url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/engrai1_160/chunklist_ao.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672438656&tk2=2b4cb4fd233734fe415b44d8bdb422941028f6314c0aa7088d8fed35c72edf56',
|
|
|
|
|
'manifest_url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
'language': 'V.O',
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'vcodec': 'none',
|
|
|
|
|
'acodec': 'mp4a.40.2',
|
|
|
|
|
'audio_ext': 'mp4',
|
|
|
|
|
'video_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '1365',
|
|
|
|
|
'url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/rai1_1200/chunklist.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672438656&tk2=2b4cb4fd233734fe415b44d8bdb422941028f6314c0aa7088d8fed35c72edf56',
|
|
|
|
|
'manifest_url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
'tbr': 1365.331,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 768,
|
|
|
|
|
'height': 432,
|
|
|
|
|
'vcodec': 'avc1.77.31',
|
|
|
|
|
'acodec': 'mp4a.40.2',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '2137',
|
|
|
|
|
'url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/rai1_1800/chunklist.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672438656&tk2=2b4cb4fd233734fe415b44d8bdb422941028f6314c0aa7088d8fed35c72edf56',
|
|
|
|
|
'manifest_url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
'tbr': 2137.033,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 1024,
|
|
|
|
|
'height': 576,
|
|
|
|
|
'vcodec': 'avc1.77.31',
|
|
|
|
|
'acodec': 'mp4a.40.2',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
}, {
|
|
|
|
|
'format_id': '2793',
|
|
|
|
|
'url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/rai1_2400/chunklist.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672438656&tk2=2b4cb4fd233734fe415b44d8bdb422941028f6314c0aa7088d8fed35c72edf56',
|
|
|
|
|
'manifest_url': 'https://streamcdng18-8e7439fdb1694c8da3a0fd63e4dda518.msvdn.net/raiuno1/hls/playlist_ma.m3u8?baseuri=%2Fraiuno1%2Fhls%2F&tstart=0&tend=1672352713&tof=86400&tk2=ecc6060eb5e4fc27a07f695c90fccfc9cb1ced2bac8f5d9b7442e884912b63c3',
|
|
|
|
|
'tbr': 2793.078,
|
|
|
|
|
'ext': 'mp4',
|
|
|
|
|
'protocol': 'm3u8_native',
|
|
|
|
|
'width': 1280,
|
|
|
|
|
'height': 720,
|
|
|
|
|
'vcodec': 'avc1.77.41',
|
|
|
|
|
'acodec': 'mp4a.40.2',
|
|
|
|
|
'video_ext': 'mp4',
|
|
|
|
|
'audio_ext': 'none',
|
|
|
|
|
}],
|
|
|
|
|
{},
|
|
|
|
|
{'acodec': 'mp4a', 'vcodec': 'avc1'},
|
|
|
|
|
),
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
for m3u8_file, m3u8_url, expected_formats, expected_subs in _TEST_CASES:
|
|
|
|
|
for m3u8_file, m3u8_url, expected_formats, expected_subs, codecs in _TEST_CASES:
|
|
|
|
|
with open('./test/testdata/m3u8/%s.m3u8' % m3u8_file, encoding='utf-8') as f:
|
|
|
|
|
formats, subs = self.ie._parse_m3u8_formats_and_subtitles(
|
|
|
|
|
f.read(), m3u8_url, ext='mp4')
|
|
|
|
|
f.read(), m3u8_url, ext='mp4', force_codecs=codecs)
|
|
|
|
|
self.ie._sort_formats(formats)
|
|
|
|
|
expect_value(self, formats, expected_formats, None)
|
|
|
|
|
expect_value(self, subs, expected_subs, None)
|
|
|
|
|