mirror of
https://github.com/spaam/svtplay-dl.git
synced 2024-11-24 04:05:39 +01:00
remux only if file is not mp4
This commit is contained in:
parent
cf7380211f
commit
4f6c4821d7
@ -17,36 +17,38 @@ class postprocess(object):
|
||||
|
||||
def remux(self):
|
||||
if self.detect is None:
|
||||
log.error("Cant detect ffmpeg or avconv. cant mux files without it")
|
||||
log.error("Cant detect ffmpeg or avconv. Cant mux files without it.")
|
||||
return
|
||||
if self.stream.finished is False:
|
||||
return
|
||||
orig_filename = self.stream.options.output
|
||||
new_name = "{0}.mp4".format(os.path.splitext(self.stream.options.output)[0])
|
||||
|
||||
log.info("Muxing %s into %s", orig_filename, new_name)
|
||||
tempfile = "{0}.temp".format(self.stream.options.output)
|
||||
name, ext = os.path.splitext(orig_filename)
|
||||
arguments = ["-c", "copy", "-copyts", "-f", "mp4"]
|
||||
if ext == ".ts":
|
||||
arguments += ["-bsf:a", "aac_adtstoasc"]
|
||||
arguments += ["-y", tempfile]
|
||||
cmd = [self.detect, "-i", orig_filename]
|
||||
cmd += arguments
|
||||
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
|
||||
stdout, stderr = p.communicate()
|
||||
if p.returncode != 0:
|
||||
stderr = stderr.decode('utf-8', 'replace')
|
||||
msg = stderr.strip().split('\n')[-1]
|
||||
log.error("Something went wrong: %s", msg)
|
||||
return
|
||||
log.info("Muxing done. removing the old file.")
|
||||
os.remove(self.stream.options.output)
|
||||
os.rename(tempfile, new_name)
|
||||
|
||||
if self.stream.options.output.endswith('.mp4') is False:
|
||||
orig_filename = self.stream.options.output
|
||||
new_name = "{0}.mp4".format(os.path.splitext(self.stream.options.output)[0])
|
||||
|
||||
log.info("Muxing %s into %s", orig_filename, new_name)
|
||||
tempfile = "{0}.temp".format(self.stream.options.output)
|
||||
name, ext = os.path.splitext(orig_filename)
|
||||
arguments = ["-c", "copy", "-copyts", "-f", "mp4"]
|
||||
if ext == ".ts":
|
||||
arguments += ["-bsf:a", "aac_adtstoasc"]
|
||||
arguments += ["-y", tempfile]
|
||||
cmd = [self.detect, "-i", orig_filename]
|
||||
cmd += arguments
|
||||
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
|
||||
stdout, stderr = p.communicate()
|
||||
if p.returncode != 0:
|
||||
stderr = stderr.decode('utf-8', 'replace')
|
||||
msg = stderr.strip().split('\n')[-1]
|
||||
log.error("Something went wrong: %s", msg)
|
||||
return
|
||||
log.info("Muxing done, removing the old file.")
|
||||
os.remove(self.stream.options.output)
|
||||
os.rename(tempfile, new_name)
|
||||
|
||||
def merge(self):
|
||||
if self.detect is None:
|
||||
log.error("Cant detect ffmpeg or avconv. cant mux files without it")
|
||||
log.error("Cant detect ffmpeg or avconv. Cant mux files without it.")
|
||||
return
|
||||
|
||||
if self.stream.finished is False:
|
||||
|
Loading…
Reference in New Issue
Block a user