|
|
@ -46,7 +46,16 @@ class HlsFD(FileDownloader):
|
|
|
|
|
|
|
|
|
|
|
|
self._debug_cmd(args)
|
|
|
|
self._debug_cmd(args)
|
|
|
|
|
|
|
|
|
|
|
|
retval = subprocess.call(args, stdin=subprocess.PIPE)
|
|
|
|
proc = subprocess.Popen(args, stdin=subprocess.PIPE)
|
|
|
|
|
|
|
|
try:
|
|
|
|
|
|
|
|
retval = proc.wait()
|
|
|
|
|
|
|
|
except KeyboardInterrupt:
|
|
|
|
|
|
|
|
# subprocces.run would send the SIGKILL signal to ffmpeg and the
|
|
|
|
|
|
|
|
# mp4 file couldn't be played, but if we ask ffmpeg to quit it
|
|
|
|
|
|
|
|
# produces a file that is playable (this is mostly useful for live
|
|
|
|
|
|
|
|
# streams)
|
|
|
|
|
|
|
|
proc.communicate(b'q')
|
|
|
|
|
|
|
|
raise
|
|
|
|
if retval == 0:
|
|
|
|
if retval == 0:
|
|
|
|
fsize = os.path.getsize(encodeFilename(tmpfilename))
|
|
|
|
fsize = os.path.getsize(encodeFilename(tmpfilename))
|
|
|
|
self.to_screen('\r[%s] %s bytes' % (args[0], fsize))
|
|
|
|
self.to_screen('\r[%s] %s bytes' % (args[0], fsize))
|
|
|
|