_db = decoder_factory (_film_b, o);
shared_ptr<AudioStream> st = _film_a->audio_stream();
- if (st) {
+ if (st && st->sample_rate()) {
_matcher.reset (new Matcher (_film_a->log(), st->sample_rate(), _film_a->source_frame_rate()));
}
_delay_line.reset (new DelayLine (_film_a->log(), _film_a->audio_delay() / 1000.0f));
} else {
done[2] = true;
}
-
+
if (_job) {
_da.video->set_progress (_job);
}
-
+
if (done[0] && done[1] && done[2]) {
break;
}
}
-
- if (_delay_line) {
- _delay_line->process_end ();
- }
+
+ _delay_line->process_end ();
if (_matcher) {
_matcher->process_end ();
}
- if (_gain) {
- _gain->process_end ();
- }
+ _gain->process_end ();
_encoder->process_end ();
}