We are supposed to conceal packet loss. This is not trivial but we can at least
produce silence instead of breaking on mSBC decoding error.
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/507>
if (PA_UNLIKELY(decoded <= 0)) {
pa_log_error("mSBC decoding error (%li)", (long) decoded);
- *processed = 0;
- return 0;
+ pa_silence_memory(output_buffer, sbc_info->codesize, &sbc_info->sample_spec);
+ decoded = sbc_info->frame_length;
+ written = sbc_info->codesize;
}
+
pa_assert_fp((size_t)decoded == sbc_info->frame_length);
pa_assert_fp((size_t)written == sbc_info->codesize);