youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

commit cc99a77ac1c5fb5859d75589d49bb25361a1fb2b
parent 8956d6608a02f8745a8d619b0f697a95e98981c0
Author: Sergey M․ <dstftw@gmail.com>
Date:   Wed,  2 Nov 2016 03:01:13 +0700

[extractor/generic] Add support for ISM manifests

Diffstat:
MChangeLog | 6++++++
Myoutube_dl/extractor/generic.py | 6++++++
2 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,9 @@ +version <unreleased> + +Extractors ++ [generic] Add support for ISM manifests + + version 2016.11.02 Core diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py @@ -1634,6 +1634,10 @@ class GenericIE(InfoExtractor): doc = compat_etree_fromstring(webpage.encode('utf-8')) if doc.tag == 'rss': return self._extract_rss(url, video_id, doc) + elif doc.tag == 'SmoothStreamingMedia': + info_dict['formats'] = self._parse_ism_formats(doc, url) + self._sort_formats(info_dict['formats']) + return info_dict elif re.match(r'^(?:{[^}]+})?smil$', doc.tag): smil = self._parse_smil(doc, url, video_id) self._sort_formats(smil['formats']) @@ -2449,6 +2453,8 @@ class GenericIE(InfoExtractor): entry_info_dict['formats'] = self._extract_mpd_formats(video_url, video_id) elif ext == 'f4m': entry_info_dict['formats'] = self._extract_f4m_formats(video_url, video_id) + elif re.search(r'(?i)\.ism/manifest', video_url): + entry_info_dict['formats'] = self._extract_ism_formats(video_url, video_id) else: entry_info_dict['url'] = video_url