Assertion line:
../../webrtc/src/webrtc//modules/audio_processing/aec/aec_core.c:1765: WebRtcAec_ProcessFrames: Assertion `aec->num_bands == num_bands' failed.
Steps to reproduce the behavior:
- run pjsua app with parameter:
--snd-clock-rate=48000
- start sound device, e.g:
cc 0 0
- assertion occurs!
After investigation, there seem to be a bug in our AEC wrapper, it wrongly passes channel count to WebRtcAec_Process(), while it actually expects number of bands (number of bands is not channel count). The WebRTC expects that audio samples splitted into high bands and low band when clock rate is higher than 16000 Hz. The audio band splitting can be done via WebRTC AudioBuffer.
Thanks to Marcus Froeschl, Thomas Hackl, and Arkadiusz Wroński for the reports.
Assertion line:
../../webrtc/src/webrtc//modules/audio_processing/aec/aec_core.c:1765: WebRtcAec_ProcessFrames: Assertion `aec->num_bands == num_bands' failed.Steps to reproduce the behavior:
--snd-clock-rate=48000cc 0 0After investigation, there seem to be a bug in our AEC wrapper, it wrongly passes channel count to
WebRtcAec_Process(), while it actually expects number of bands (number of bands is not channel count). The WebRTC expects that audio samples splitted into high bands and low band when clock rate is higher than 16000 Hz. The audio band splitting can be done via WebRTC AudioBuffer.Thanks to Marcus Froeschl, Thomas Hackl, and Arkadiusz Wroński for the reports.