youtube-dl/youtube_dl
John Hawkinson 00ca755231 [get_exe_version] Do version probes with <&-
When doing version probes for ffmpeg, do the
equivalent of calling it as:

    ffmpeg -version <&-

Where <&- is shell syntax for closing stdin before calling the
program. This is roughly equivalent to </dev/null without actually
opening /dev/null.

This prevents ffmpeg -version from hanging when run in the background.
Fixes #955.

The reason is that ffmpeg tries to manipulate stdin to set up terminal
characteristic, and that causes the kernel to suspend the parent
process (youtube-dl).

Note that closing stdin is achieved by calling subprocess.Popen() with
stdin set to subprocess.PIPE and without passing any input to
Popen.communicate(). This is somewhat subtle.
2016-10-22 00:34:08 -04:00
..
downloader
extractor [adobepass] PEP 8 2016-10-21 04:38:14 +07:00
postprocessor Revert "[postprocessor/embedthumbnail] Allow mkv to embed thumbnails" 2016-10-20 15:07:19 +08:00
__init__.py
__main__.py
aes.py
cache.py
compat.py
jsinterp.py
options.py
socks.py
swfinterp.py
update.py
utils.py [get_exe_version] Do version probes with <&- 2016-10-22 00:34:08 -04:00
version.py release 2016.10.21.1 2016-10-21 04:57:28 +07:00
YoutubeDL.py