Browse Source

[brightcove] change the protocol for m3u8 formats to m3u8_native

totalwebcasting
remitamine 9 years ago
parent
commit
ad55e10165
1 changed files with 7 additions and 5 deletions
  1. +7
    -5
      youtube_dl/extractor/brightcove.py

+ 7
- 5
youtube_dl/extractor/brightcove.py View File

@ -307,9 +307,10 @@ class BrightcoveLegacyIE(InfoExtractor):
playlist_title=playlist_info['mediaCollectionDTO']['displayName']) playlist_title=playlist_info['mediaCollectionDTO']['displayName'])
def _extract_video_info(self, video_info): def _extract_video_info(self, video_info):
video_id = compat_str(video_info['id'])
publisher_id = video_info.get('publisherId') publisher_id = video_info.get('publisherId')
info = { info = {
'id': compat_str(video_info['id']),
'id': video_id,
'title': video_info['displayName'].strip(), 'title': video_info['displayName'].strip(),
'description': video_info.get('shortDescription'), 'description': video_info.get('shortDescription'),
'thumbnail': video_info.get('videoStillURL') or video_info.get('thumbnailURL'), 'thumbnail': video_info.get('videoStillURL') or video_info.get('thumbnailURL'),
@ -331,7 +332,8 @@ class BrightcoveLegacyIE(InfoExtractor):
url_comp = compat_urllib_parse_urlparse(url) url_comp = compat_urllib_parse_urlparse(url)
if url_comp.path.endswith('.m3u8'): if url_comp.path.endswith('.m3u8'):
formats.extend( formats.extend(
self._extract_m3u8_formats(url, info['id'], 'mp4'))
self._extract_m3u8_formats(
url, video_id, 'mp4', 'm3u8_native', m3u8_id='hls', fatal=False))
continue continue
elif 'akamaihd.net' in url_comp.netloc: elif 'akamaihd.net' in url_comp.netloc:
# This type of renditions are served through # This type of renditions are served through
@ -365,7 +367,7 @@ class BrightcoveLegacyIE(InfoExtractor):
a_format.update({ a_format.update({
'format_id': 'hls%s' % ('-%s' % tbr if tbr else ''), 'format_id': 'hls%s' % ('-%s' % tbr if tbr else ''),
'ext': 'mp4', 'ext': 'mp4',
'protocol': 'm3u8',
'protocol': 'm3u8_native',
}) })
formats.append(a_format) formats.append(a_format)
@ -395,7 +397,7 @@ class BrightcoveLegacyIE(InfoExtractor):
return ad_info return ad_info
if 'url' not in info and not info.get('formats'): if 'url' not in info and not info.get('formats'):
raise ExtractorError('Unable to extract video url for %s' % info['id'])
raise ExtractorError('Unable to extract video url for %s' % video_id)
return info return info
@ -527,7 +529,7 @@ class BrightcoveNewIE(InfoExtractor):
if not src: if not src:
continue continue
formats.extend(self._extract_m3u8_formats( formats.extend(self._extract_m3u8_formats(
src, video_id, 'mp4', m3u8_id='hls', fatal=False))
src, video_id, 'mp4', 'm3u8_native', m3u8_id='hls', fatal=False))
elif source_type == 'application/dash+xml': elif source_type == 'application/dash+xml':
if not src: if not src:
continue continue


Loading…
Cancel
Save