diff options
| author | Carl Hetherington <cth@carlh.net> | 2020-02-16 21:15:12 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2020-02-16 21:15:12 +0100 |
| commit | 4787f3a114115a16f7007c7b1bd36fb2e2121345 (patch) | |
| tree | 394c6500a26392e17883eae595eb8d84c216f87e /src/lib/ffmpeg_encoder.cc | |
| parent | f61b5b84f0ac2c1ea32e89f897a1b62630e3b2f7 (diff) | |
Better errors if butler doesn't give video during export.
Diffstat (limited to 'src/lib/ffmpeg_encoder.cc')
| -rw-r--r-- | src/lib/ffmpeg_encoder.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lib/ffmpeg_encoder.cc b/src/lib/ffmpeg_encoder.cc index 6b3118537..61e489f07 100644 --- a/src/lib/ffmpeg_encoder.cc +++ b/src/lib/ffmpeg_encoder.cc @@ -152,7 +152,11 @@ FFmpegEncoder::go () } for (int j = 0; j < gets_per_frame; ++j) { - pair<shared_ptr<PlayerVideo>, DCPTime> v = _butler->get_video (true, 0); + Butler::Error e; + pair<shared_ptr<PlayerVideo>, DCPTime> v = _butler->get_video (true, &e); + if (!v.first) { + throw ProgrammingError(__FILE__, __LINE__, String::compose("butler returned no video; error was %1", static_cast<int>(e))); + } shared_ptr<FFmpegFileEncoder> fe = encoder->get (v.first->eyes()); if (fe) { fe->video(v.first, v.second); |
