projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
7518a61
)
[download/hls] Delegate downloading to ffmpeg for live streams
author
Remita Amine
<remitamine@gmail.com>
Sat, 24 Sep 2016 14:38:19 +0000
(15:38 +0100)
committer
Remita Amine
<remitamine@gmail.com>
Sat, 24 Sep 2016 14:39:47 +0000
(15:39 +0100)
youtube_dl/downloader/hls.py
patch
|
blob
|
history
diff --git
a/youtube_dl/downloader/hls.py
b/youtube_dl/downloader/hls.py
index 5d70abf62f5bb0e45a83685136cb404912d3947c..541b92ee122261f8230ede54e57c07b68dc40cac 100644
(file)
--- a/
youtube_dl/downloader/hls.py
+++ b/
youtube_dl/downloader/hls.py
@@
-31,7
+31,7
@@
class HlsFD(FragmentFD):
FD_NAME = 'hlsnative'
@staticmethod
FD_NAME = 'hlsnative'
@staticmethod
- def can_download(manifest):
+ def can_download(manifest
, info_dict
):
UNSUPPORTED_FEATURES = (
r'#EXT-X-KEY:METHOD=(?!NONE|AES-128)', # encrypted streams [1]
r'#EXT-X-BYTERANGE', # playlists composed of byte ranges of media files [2]
UNSUPPORTED_FEATURES = (
r'#EXT-X-KEY:METHOD=(?!NONE|AES-128)', # encrypted streams [1]
r'#EXT-X-BYTERANGE', # playlists composed of byte ranges of media files [2]
@@
-53,6
+53,7
@@
class HlsFD(FragmentFD):
)
check_results = [not re.search(feature, manifest) for feature in UNSUPPORTED_FEATURES]
check_results.append(can_decrypt_frag or '#EXT-X-KEY:METHOD=AES-128' not in manifest)
)
check_results = [not re.search(feature, manifest) for feature in UNSUPPORTED_FEATURES]
check_results.append(can_decrypt_frag or '#EXT-X-KEY:METHOD=AES-128' not in manifest)
+ check_results.append(not info_dict.get('is_live'))
return all(check_results)
def real_download(self, filename, info_dict):
return all(check_results)
def real_download(self, filename, info_dict):
@@
-62,7
+63,7
@@
class HlsFD(FragmentFD):
s = manifest.decode('utf-8', 'ignore')
s = manifest.decode('utf-8', 'ignore')
- if not self.can_download(s):
+ if not self.can_download(s
, info_dict
):
self.report_warning(
'hlsnative has detected features it does not support, '
'extraction will be delegated to ffmpeg')
self.report_warning(
'hlsnative has detected features it does not support, '
'extraction will be delegated to ffmpeg')