Compare commits

..

2 commits

Author SHA1 Message Date
j
4794c0f68a fix remux 2023-11-20 20:58:58 +00:00
j
de818c4204 better error for failed imports 2023-11-20 10:19:45 +00:00
3 changed files with 15 additions and 6 deletions

View file

@ -205,6 +205,7 @@ def download(item_id, url, referer=None):
f.extract_stream()
status = True
else:
logger.error("failed to import %s file already exists %s", url, oshash)
status = 'file exists'
if len(parts) == 1:
add_subtitles(f.item, media, tmp)

View file

@ -733,19 +733,24 @@ def remux_stream(src, dst):
cmd = [
settings.FFMPEG,
'-nostats', '-loglevel', 'error',
'-map_metadata', '-1', '-sn',
'-i', src,
'-map_metadata', '-1', '-sn',
] + video + [
] + audio + [
'-movflags', '+faststart',
dst
]
print(cmd)
p = subprocess.Popen(cmd, stdin=subprocess.PIPE,
stdout=open('/dev/null', 'w'),
stderr=open('/dev/null', 'w'),
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
close_fds=True)
p.wait()
return True, None
stdout, stderr = p.communicate()
if stderr:
logger.error("failed to remux %s %s", cmd, stderr)
return False, stderr
else:
return True, None
def ffprobe(path, *args):

View file

@ -821,7 +821,10 @@ class Stream(models.Model):
done = True
elif self.file.can_remux():
ok, error = extract.remux_stream(media, target)
done = True
if ok:
self.available = True
self.save()
done = True
if not done:
ok, error = extract.stream(media, target, self.name(), info, flags=self.flags)