|
@ -25,9 +25,11 @@ from ..utils import ( |
|
|
int_or_none, |
|
|
int_or_none, |
|
|
parse_iso8601, |
|
|
parse_iso8601, |
|
|
smuggle_url, |
|
|
smuggle_url, |
|
|
|
|
|
str_or_none, |
|
|
unescapeHTML, |
|
|
unescapeHTML, |
|
|
unsmuggle_url, |
|
|
unsmuggle_url, |
|
|
update_url_query, |
|
|
update_url_query, |
|
|
|
|
|
url_or_none, |
|
|
clean_html, |
|
|
clean_html, |
|
|
mimetype2ext, |
|
|
mimetype2ext, |
|
|
UnsupportedError, |
|
|
UnsupportedError, |
|
@ -553,10 +555,16 @@ class BrightcoveNewIE(AdobePassIE): |
|
|
|
|
|
|
|
|
subtitles = {} |
|
|
subtitles = {} |
|
|
for text_track in json_data.get('text_tracks', []): |
|
|
for text_track in json_data.get('text_tracks', []): |
|
|
if text_track.get('src'): |
|
|
|
|
|
subtitles.setdefault(text_track.get('srclang'), []).append({ |
|
|
|
|
|
'url': text_track['src'], |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
if text_track.get('kind') != 'captions': |
|
|
|
|
|
continue |
|
|
|
|
|
text_track_url = url_or_none(text_track.get('src')) |
|
|
|
|
|
if not text_track_url: |
|
|
|
|
|
continue |
|
|
|
|
|
lang = (str_or_none(text_track.get('srclang')) |
|
|
|
|
|
or str_or_none(text_track.get('label')) or 'en').lower() |
|
|
|
|
|
subtitles.setdefault(lang, []).append({ |
|
|
|
|
|
'url': text_track_url, |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
is_live = False |
|
|
is_live = False |
|
|
duration = float_or_none(json_data.get('duration'), 1000) |
|
|
duration = float_or_none(json_data.get('duration'), 1000) |
|
|