diff options
Diffstat (limited to 'src/lib/dcp_encoder.cc')
| -rw-r--r-- | src/lib/dcp_encoder.cc | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/lib/dcp_encoder.cc b/src/lib/dcp_encoder.cc index c7ee180e1..a4bc133f8 100644 --- a/src/lib/dcp_encoder.cc +++ b/src/lib/dcp_encoder.cc @@ -107,7 +107,14 @@ DCPEncoder::go () _writer.write(_player.get_subtitle_fonts()); } - while (!_player.pass()) {} + int passes = 0; + while (!_player.pass()) { + if ((++passes % 8) == 0) { + auto job = _job.lock(); + DCPOMATIC_ASSERT(job); + job->set_progress(_player.progress()); + } + } for (auto i: get_referenced_reel_assets(_film, _film->playlist())) { _writer.write(i); @@ -128,10 +135,6 @@ void DCPEncoder::audio (shared_ptr<AudioBuffers> data, DCPTime time) { _writer.write(data, time); - - auto job = _job.lock (); - DCPOMATIC_ASSERT (job); - job->set_progress (float(time.get()) / _film->length().get()); } void |
