summaryrefslogtreecommitdiff
path: root/src/lib/ffmpeg_encoder.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-10-11 10:51:43 +0200
committerCarl Hetherington <cth@carlh.net>2021-10-11 12:34:47 +0200
commitc29de33e6f8b20219a957a0cd88d61fd8cba1ad9 (patch)
tree8a2f00c7f851b58271225cb18d9a85c98b489503 /src/lib/ffmpeg_encoder.cc
parent3fecd33dc2fd14ed487cb14bf9647ee5c0572868 (diff)
Don't throw an error when the Butler says it is finished (#2097).
Diffstat (limited to 'src/lib/ffmpeg_encoder.cc')
-rw-r--r--src/lib/ffmpeg_encoder.cc15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/lib/ffmpeg_encoder.cc b/src/lib/ffmpeg_encoder.cc
index dd773168a..5db3e31a6 100644
--- a/src/lib/ffmpeg_encoder.cc
+++ b/src/lib/ffmpeg_encoder.cc
@@ -178,12 +178,15 @@ FFmpegEncoder::go ()
Butler::Error e;
auto v = _butler->get_video (true, &e);
_butler->rethrow ();
- if (!v.first) {
- throw DecodeError(String::compose("Error during decoding: %1", e.summary()));
- }
- auto fe = encoder->get (v.first->eyes());
- if (fe) {
- fe->video(v.first, v.second - reel->from);
+ if (v.first) {
+ auto fe = encoder->get (v.first->eyes());
+ if (fe) {
+ fe->video(v.first, v.second - reel->from);
+ }
+ } else {
+ if (e.code != Butler::Error::Code::FINISHED) {
+ throw DecodeError(String::compose("Error during decoding: %1", e.summary()));
+ }
}
}