/* holder -> reference -> processor */
pa_processor_attach_reference(processor, reference);
if (pa_processor_holder_connect_reference(holder, reference) < 0) {
- pa_processor_reference_free(reference);
+ /* reference will be freed in pa_processor_free */
pa_processor_free(processor);
pa_log_error("Failed to connect holder to reference");
goto fail;
format, processor->process_frames);
if (!processor->audio_effect) {
- pa_log_error("Failed to create audio effect. audio_effect_method(%d), "
+ pa_log_error("Failed to create audio effect. audio_effect_method(%s), "
"rate(%d), ch(%d), format(%d), frames(%zu)",
- audio_effect_method, ss->rate, ss->channels,
- format, processor->process_frames);
+ pa_processor_method_str(audio_effect_method),
+ ss->rate, ss->channels, format, processor->process_frames);
goto fail;
}
pa_memblock_unref(silence.memblock);
pa_log_info("Created processor. memblockq rate(%d), channels(%d), "
- "process_msec(%u), process_bytes(%zu), method(%d)",
+ "process_msec(%u), process_bytes(%zu), method(%s)",
processor->ss.rate,
processor->ss.channels,
process_msec,
pa_usec_to_bytes(processor->process_usec, &processor->ss),
- method);
+ pa_processor_method_str(method));
debug_open_file(processor);
void pa_processor_free(pa_processor *processor) {
pa_assert(processor);
- pa_assert(processor->audio_effect);
- audio_effect_destroy(processor->audio_effect);
+ if (processor->audio_effect)
+ audio_effect_destroy(processor->audio_effect);
if (processor->result_memblockq)
pa_memblockq_free(processor->result_memblockq);