|
|
|
@ -25,9 +25,11 @@ from ..utils import (
|
|
|
|
|
int_or_none,
|
|
|
|
|
parse_iso8601,
|
|
|
|
|
smuggle_url,
|
|
|
|
|
str_or_none,
|
|
|
|
|
unescapeHTML,
|
|
|
|
|
unsmuggle_url,
|
|
|
|
|
update_url_query,
|
|
|
|
|
url_or_none,
|
|
|
|
|
clean_html,
|
|
|
|
|
mimetype2ext,
|
|
|
|
|
UnsupportedError,
|
|
|
|
@ -553,10 +555,16 @@ class BrightcoveNewIE(AdobePassIE):
|
|
|
|
|
|
|
|
|
|
subtitles = {}
|
|
|
|
|
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
|
|
|
|
|
duration = float_or_none(json_data.get('duration'), 1000)
|
|
|
|
|