mirror of
https://github.com/l1ving/youtube-dl
synced 2024-11-20 23:02:52 +08:00
[nrk,abc:iview] use _extract_akamai_formats
This commit is contained in:
parent
c7c43a93ba
commit
ad31642584
@ -7,7 +7,6 @@ from ..utils import (
|
|||||||
ExtractorError,
|
ExtractorError,
|
||||||
js_to_json,
|
js_to_json,
|
||||||
int_or_none,
|
int_or_none,
|
||||||
update_url_query,
|
|
||||||
parse_iso8601,
|
parse_iso8601,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -123,14 +122,7 @@ class ABCIViewIE(InfoExtractor):
|
|||||||
title = video_params['title']
|
title = video_params['title']
|
||||||
stream = next(s for s in video_params['playlist'] if s.get('type') == 'program')
|
stream = next(s for s in video_params['playlist'] if s.get('type') == 'program')
|
||||||
|
|
||||||
formats = []
|
formats = self._extract_akamai_formats(stream['hds-unmetered'], video_id)
|
||||||
f4m_url = stream.get('hds-unmetered') or stream['hds-metered']
|
|
||||||
formats.extend(self._extract_f4m_formats(
|
|
||||||
update_url_query(f4m_url, {'hdcore': '3.7.0'}),
|
|
||||||
video_id, f4m_id='hds', fatal=False))
|
|
||||||
formats.extend(self._extract_m3u8_formats(f4m_url.replace(
|
|
||||||
'akamaihd.net/z/', 'akamaihd.net/i/').replace('/manifest.f4m', '/master.m3u8'),
|
|
||||||
video_id, 'mp4', 'm3u8_native', m3u8_id='hls', fatal=False))
|
|
||||||
self._sort_formats(formats)
|
self._sort_formats(formats)
|
||||||
|
|
||||||
subtitles = {}
|
subtitles = {}
|
||||||
|
@ -14,16 +14,6 @@ from ..utils import (
|
|||||||
|
|
||||||
|
|
||||||
class NRKBaseIE(InfoExtractor):
|
class NRKBaseIE(InfoExtractor):
|
||||||
def _extract_formats(self, manifest_url, video_id, fatal=True):
|
|
||||||
formats = []
|
|
||||||
formats.extend(self._extract_f4m_formats(
|
|
||||||
manifest_url + '?hdcore=3.5.0&plugin=aasp-3.5.0.151.81',
|
|
||||||
video_id, f4m_id='hds', fatal=fatal))
|
|
||||||
formats.extend(self._extract_m3u8_formats(manifest_url.replace(
|
|
||||||
'akamaihd.net/z/', 'akamaihd.net/i/').replace('/manifest.f4m', '/master.m3u8'),
|
|
||||||
video_id, 'mp4', 'm3u8_native', m3u8_id='hls', fatal=fatal))
|
|
||||||
return formats
|
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
video_id = self._match_id(url)
|
video_id = self._match_id(url)
|
||||||
|
|
||||||
@ -45,7 +35,7 @@ class NRKBaseIE(InfoExtractor):
|
|||||||
asset_url = asset.get('url')
|
asset_url = asset.get('url')
|
||||||
if not asset_url:
|
if not asset_url:
|
||||||
continue
|
continue
|
||||||
formats = self._extract_formats(asset_url, video_id, fatal=False)
|
formats = self._extract_akamai_formats(asset_url, video_id)
|
||||||
if not formats:
|
if not formats:
|
||||||
continue
|
continue
|
||||||
self._sort_formats(formats)
|
self._sort_formats(formats)
|
||||||
@ -69,7 +59,7 @@ class NRKBaseIE(InfoExtractor):
|
|||||||
if not entries:
|
if not entries:
|
||||||
media_url = data.get('mediaUrl')
|
media_url = data.get('mediaUrl')
|
||||||
if media_url:
|
if media_url:
|
||||||
formats = self._extract_formats(media_url, video_id)
|
formats = self._extract_akamai_formats(media_url, video_id)
|
||||||
self._sort_formats(formats)
|
self._sort_formats(formats)
|
||||||
duration = parse_duration(data.get('duration'))
|
duration = parse_duration(data.get('duration'))
|
||||||
entries = [{
|
entries = [{
|
||||||
|
Loading…
Reference in New Issue
Block a user