summaryrefslogtreecommitdiffstats
path: root/gallery_dl/postprocessor/ugoira.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/postprocessor/ugoira.py')
-rw-r--r--gallery_dl/postprocessor/ugoira.py32
1 files changed, 19 insertions, 13 deletions
diff --git a/gallery_dl/postprocessor/ugoira.py b/gallery_dl/postprocessor/ugoira.py
index 0dbb796..162eb9e 100644
--- a/gallery_dl/postprocessor/ugoira.py
+++ b/gallery_dl/postprocessor/ugoira.py
@@ -103,20 +103,26 @@ class UgoiraPP(PostProcessor):
# invoke ffmpeg
pathfmt.set_extension(self.extension)
- if self.twopass:
- if "-f" not in args:
- args += ["-f", self.extension]
- args += ["-passlogfile", tempdir + "/ffmpeg2pass", "-pass"]
- self._exec(args + ["1", "-y", os.devnull])
- self._exec(args + ["2", pathfmt.realpath])
+ try:
+ if self.twopass:
+ if "-f" not in args:
+ args += ["-f", self.extension]
+ args += ["-passlogfile", tempdir + "/ffmpeg2pass", "-pass"]
+ self._exec(args + ["1", "-y", os.devnull])
+ self._exec(args + ["2", pathfmt.realpath])
+ else:
+ args.append(pathfmt.realpath)
+ self._exec(args)
+ except OSError as exc:
+ print()
+ self.log.error("Unable to invoke FFmpeg (%s: %s)",
+ exc.__class__.__name__, exc)
+ pathfmt.realpath = pathfmt.temppath
else:
- args.append(pathfmt.realpath)
- self._exec(args)
-
- if self.delete:
- pathfmt.delete = True
- else:
- pathfmt.set_extension("zip")
+ if self.delete:
+ pathfmt.delete = True
+ else:
+ pathfmt.set_extension("zip")
def _exec(self, args):
out = None if self.output else subprocess.DEVNULL