X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fdownloader%2Fexternal.py;h=5d3e5d8d3d748d98ea187e8eca4444c5504e07fb;hb=582be3584761030bfbee13b0c6ea9e6ce2c8a790;hp=f0c30007f7dd94991eca2e6f15dd5eebcf3e5e3b;hpb=98e698f1ff3fd467ff03e10a8f8881cd06345ca7;p=youtube-dl diff --git a/youtube_dl/downloader/external.py b/youtube_dl/downloader/external.py index f0c30007f..5d3e5d8d3 100644 --- a/youtube_dl/downloader/external.py +++ b/youtube_dl/downloader/external.py @@ -114,6 +114,7 @@ class CurlFD(ExternalFD): self._debug_cmd(cmd) + # curl writes the progress to stderr so don't capture it. p = subprocess.Popen(cmd) p.communicate() return p.returncode @@ -219,6 +220,12 @@ class FFmpegFD(ExternalFD): if proxy: if not re.match(r'^[\da-zA-Z]+://', proxy): proxy = 'http://%s' % proxy + + if proxy.startswith('socks'): + self.report_warning( + '%s does not support SOCKS proxies. Downloading is likely to fail. ' + 'Consider adding --hls-prefer-native to your command.' % self.get_basename()) + # Since December 2015 ffmpeg supports -http_proxy option (see # http://git.videolan.org/?p=ffmpeg.git;a=commit;h=b4eb1f29ebddd60c41a2eb39f5af701e38e0d3fd) # We could switch to the following code if we are able to detect version properly @@ -286,6 +293,7 @@ class FFmpegFD(ExternalFD): class AVconvFD(FFmpegFD): pass + _BY_NAME = dict( (klass.get_basename(), klass) for name, klass in globals().items()