[ard] ARDIE: support subtitles

This commit is contained in:
Niklas 2018-10-03 15:21:22 +02:00
parent 66d106f270
commit 15a5856e9d
No known key found for this signature in database
GPG Key ID: C7070AE8E74845B8

View File

@ -13,6 +13,7 @@ from ..utils import (
parse_duration, parse_duration,
unified_strdate, unified_strdate,
xpath_text, xpath_text,
xpath_attr,
update_url_query, update_url_query,
url_or_none, url_or_none,
) )
@ -257,6 +258,12 @@ class ARDIE(InfoExtractor):
video_node, './broadcastDate')) video_node, './broadcastDate'))
thumbnail = xpath_text(video_node, './/teaserImage//variant/url') thumbnail = xpath_text(video_node, './/teaserImage//variant/url')
subtitles = []
for variant, ext in (('dataTimedTextNoOffset', 'ttml'), ('dataTimedTextVtt', 'vtt')):
url = xpath_attr(video_node, './%s' % variant, 'url')
if url:
subtitles.append({'ext': ext, 'url': url})
formats = [] formats = []
for a in video_node.findall('.//asset'): for a in video_node.findall('.//asset'):
f = { f = {
@ -279,6 +286,7 @@ class ARDIE(InfoExtractor):
return { return {
'id': mobj.group('id'), 'id': mobj.group('id'),
'formats': formats, 'formats': formats,
'subtitles': {'de': subtitles},
'display_id': display_id, 'display_id': display_id,
'title': video_node.find('./title').text, 'title': video_node.find('./title').text,
'duration': parse_duration(video_node.find('./duration').text), 'duration': parse_duration(video_node.find('./duration').text),