1
0
mirror of https://github.com/ytdl-org/youtube-dl.git synced 2025-01-28 21:59:47 +00:00

PBS video subtitles should now be downloaded.

This commit is contained in:
Raphaël Doré 2018-09-04 14:15:16 -04:00
parent 63529e935c
commit 6b4130962c

View File

@ -666,25 +666,18 @@ class PBSIE(InfoExtractor):
age_limit = US_RATINGS.get(rating_str)
subtitles = {}
closed_captions_url = info.get('closed_captions_url')
if closed_captions_url:
subtitles['en'] = [{
'ext': 'ttml',
'url': closed_captions_url,
}]
mobj = re.search(r'/(\d+)_Encoded\.dfxp', closed_captions_url)
if mobj:
ttml_caption_suffix, ttml_caption_id = mobj.group(0, 1)
ttml_caption_id = int(ttml_caption_id)
subtitles['en'].extend([{
'url': closed_captions_url.replace(
ttml_caption_suffix, '/%d_Encoded.srt' % (ttml_caption_id + 1)),
'ext': 'srt',
}, {
'url': closed_captions_url.replace(
ttml_caption_suffix, '/%d_Encoded.vtt' % (ttml_caption_id + 2)),
'ext': 'vtt',
}])
closed_captions_urls = info.get('cc')
if closed_captions_urls:
for (subtitle_format_name, subtitle_url) in closed_captions_urls.items():
# There seems to be issues when embedding converted .sami subtitles. Not sure why.
if subtitle_format_name == 'Caption-SAMI':
continue
subtitles.setdefault('en', []).append({
'ext': determine_ext(subtitle_url),
'url': subtitle_url,
})
# info['title'] is often incomplete (e.g. 'Full Episode', 'Episode 5', etc)
# Try turning it to 'program - title' naming scheme if possible