X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Flib%2Fresampler.cc;h=322c00c136779f009ad1163119bce5496a191dad;hp=056b2e1ee5c6416e779c7062f48346a858d77923;hb=HEAD;hpb=db3866008bf2ab1b921c44c4e3c70a909304ac84 diff --git a/src/lib/resampler.cc b/src/lib/resampler.cc index 056b2e1ee..2c6594a6d 100644 --- a/src/lib/resampler.cc +++ b/src/lib/resampler.cc @@ -81,6 +81,8 @@ Resampler::set_fast () shared_ptr Resampler::run (shared_ptr in) { + DCPOMATIC_ASSERT(in->channels() == _channels); + int in_frames = in->frames (); int in_offset = 0; int out_offset = 0; @@ -131,7 +133,6 @@ Resampler::run (shared_ptr in) break; } - resampled->ensure_size (out_offset + data.output_frames_gen); resampled->set_frames (out_offset + data.output_frames_gen); { @@ -176,7 +177,7 @@ Resampler::flush () throw EncodeError (String::compose(N_("could not run sample-rate converter (%1)"), src_strerror(r))); } - out->ensure_size (out_offset + data.output_frames_gen); + out->set_frames (out_offset + data.output_frames_gen); auto p = data.data_out; auto q = out->data (); @@ -187,7 +188,6 @@ Resampler::flush () } out_offset += data.output_frames_gen; - out->set_frames (out_offset); return out; }