projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e519359
)
[f4m] Support bootstrap URLs
author
Philipp Hagemeister
<phihag@phihag.de>
Tue, 28 Oct 2014 16:27:41 +0000
(17:27 +0100)
committer
Philipp Hagemeister
<phihag@phihag.de>
Tue, 28 Oct 2014 16:27:41 +0000
(17:27 +0100)
youtube_dl/downloader/f4m.py
patch
|
blob
|
history
diff --git
a/youtube_dl/downloader/f4m.py
b/youtube_dl/downloader/f4m.py
index b3be16ff15353ed057607064bba2faa3fcdc2fad..b607f6485ae7b0a064e55634ef8ca33937cd857d 100644
(file)
--- a/
youtube_dl/downloader/f4m.py
+++ b/
youtube_dl/downloader/f4m.py
@@
-244,9
+244,16
@@
class F4mFD(FileDownloader):
lambda f: int(f[0]) == requested_bitrate, formats))[0]
base_url = compat_urlparse.urljoin(man_url, media.attrib['url'])
lambda f: int(f[0]) == requested_bitrate, formats))[0]
base_url = compat_urlparse.urljoin(man_url, media.attrib['url'])
- bootstrap = base64.b64decode(doc.find(_add_ns('bootstrapInfo')).text)
+ bootstrap_node = doc.find(_add_ns('bootstrapInfo'))
+ if bootstrap_node.text is None:
+ bootstrap_url = compat_urlparse.urljoin(
+ base_url, bootstrap_node.attrib['url'])
+ bootstrap = self.ydl.urlopen(bootstrap_url).read()
+ else:
+ bootstrap = base64.b64decode(bootstrap_node.text)
metadata = base64.b64decode(media.find(_add_ns('metadata')).text)
boot_info = read_bootstrap_info(bootstrap)
metadata = base64.b64decode(media.find(_add_ns('metadata')).text)
boot_info = read_bootstrap_info(bootstrap)
+
fragments_list = build_fragments_list(boot_info)
if self.params.get('test', False):
# We only download the first fragment
fragments_list = build_fragments_list(boot_info)
if self.params.get('test', False):
# We only download the first fragment