Lines Matching defs:resampler
35 #include <pulsecore/resampler.h>
80 /* Get the current internal delay of the resampler */
94 /* Initially set the history to 3 times the resampler delay. Use at least 2 ms. */
101 /* If possible, use between 2 and 3 times the resampler delay */
229 pa_resampler *resampler;
334 /* Setup resampler */
336 pa_assert_se(resampler = pa_resampler_new(pool, &a, NULL, &b, NULL, crossover_freq, method, 0));
347 pa_resampler_run(resampler, &in_chunk, &out_chunk);
363 delay_before = pa_resampler_get_delay(resampler, true);
375 in_rewind_size = pa_resampler_request(resampler, rewind * pa_frame_size(&b));
380 /* Now rewind the resampler */
382 history_size = calculate_resampler_history_bytes(resampler, in_rewind_size / in_frame_size);
384 pa_resampler_rewind(resampler, out_rewind_size, history_queue, history_size);
389 /* Re-run the resampler */
393 pa_resampler_run(resampler, &in_chunk, &rewound_chunk);
401 delay_after = pa_resampler_get_delay(resampler, true);
404 n_out_expected = pa_resampler_result(resampler, in_rewind_size + history_size) / pa_frame_size(&b);
407 /* Check for leftover samples in the resampler buffer */
410 pa_log_debug("%li output frames still in resampler buffer", in_resampler_buffer);
413 pa_log_info("Second resampler run took %llu usec.", (long long unsigned)(pa_rtclock_now() - ts));
428 pa_resampler_free(resampler);