projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[fragment,hls,f4m,dash,ism] improve fragment downloading
[youtube-dl]
/
youtube_dl
/
downloader
/
http.py
diff --git
a/youtube_dl/downloader/http.py
b/youtube_dl/downloader/http.py
index 11294d106064414e2fe538b3c53327fb617b08f5..2896a17afe9806efe56e71e1b36532bf6d8ba8b0 100644
(file)
--- a/
youtube_dl/downloader/http.py
+++ b/
youtube_dl/downloader/http.py
@@
-20,10
+20,14
@@
from ..utils import (
class HttpFD(FileDownloader):
class HttpFD(FileDownloader):
- def real_download(self, filename, info_dict):
+ def real_download(self, filename
_or_stream
, info_dict):
url = info_dict['url']
url = info_dict['url']
- tmpfilename = self.temp_name(filename)
+ filename = filename_or_stream
stream = None
stream = None
+ if hasattr(filename_or_stream, 'write'):
+ stream = filename_or_stream
+ filename = '-'
+ tmpfilename = self.temp_name(filename)
# Do not include the Accept-Encoding header
headers = {'Youtubedl-no-compression': 'True'}
# Do not include the Accept-Encoding header
headers = {'Youtubedl-no-compression': 'True'}
@@
-182,7
+186,7
@@
class HttpFD(FileDownloader):
if self.params.get('xattr_set_filesize', False) and data_len is not None:
try:
if self.params.get('xattr_set_filesize', False) and data_len is not None:
try:
- write_xattr(tmpfilename, 'user.ytdl.filesize', str(data_len))
+ write_xattr(tmpfilename, 'user.ytdl.filesize', str(data_len)
.encode('utf-8')
)
except (XAttrUnavailableError, XAttrMetadataError) as err:
self.report_error('unable to set filesize xattr: %s' % str(err))
except (XAttrUnavailableError, XAttrMetadataError) as err:
self.report_error('unable to set filesize xattr: %s' % str(err))