X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=resampling_queue.cpp;h=c1945d27ab2a2f304edf7292d34334e00d8416e2;hb=cd319a6f4b11d888d8e9f996a2ec487668777e13;hp=9e8fb7d58da6d85049c3a895780c9bc2eed8578b;hpb=c0bf9deb26205bf35758d49f587961f19bdb15b8;p=nageru diff --git a/resampling_queue.cpp b/resampling_queue.cpp index 9e8fb7d..c1945d2 100644 --- a/resampling_queue.cpp +++ b/resampling_queue.cpp @@ -63,6 +63,7 @@ void ResamplingQueue::add_input_samples(double pts, const float *samples, ssize_ bool ResamplingQueue::get_output_samples(double pts, float *samples, ssize_t num_samples) { + assert(num_samples > 0); if (first_input) { // No data yet, just return zeros. memset(samples, 0, num_samples * 2 * sizeof(float)); @@ -95,8 +96,8 @@ bool ResamplingQueue::get_output_samples(double pts, float *samples, ssize_t num } total_consumed_samples -= delay_samples_to_add; // Equivalent to increasing k_a0 and k_a1. err += delay_samples_to_add; - first_output = false; } + first_output = false; // Compute loop filter coefficients for the two filters. We need to compute them // every time, since they depend on the number of samples the user asked for. @@ -147,7 +148,8 @@ bool ResamplingQueue::get_output_samples(double pts, float *samples, ssize_t num vresampler.inp_count = num_input_samples; vresampler.inp_data = inbuf; - vresampler.process(); + int err = vresampler.process(); + assert(err == 0); size_t consumed_samples = num_input_samples - vresampler.inp_count; total_consumed_samples += consumed_samples;