Hi,
I'm using the Echo Canceller Unit Package (ECU) from VoLIB 2.1.0.1 for C64 + in the C6746 DSP in a custom board. I'm running it in real time and I'm facing an unusual problem: when running the ECU in MULTICHANNEL mode, the program breaks after a while (may be 1 second or 20, it varies from time to time). But when I run only one channel, I do not have this problem. If I remove the ECU algorithm and do only a talkthrough, I don't have this problem either.
When I say the code breaks, it means that I either get silence in the phone or I don't get any signal at all, or even a high pitch noise for several seconds and then silence.
Here's a picture of a recording in the moment the algorithm crashes:
The channel below is the residual echo. As we can see, the echo was being canceled until it dropped suddenly.
ECU Configurations: Filter tail: 32ms, Filter segment: 32ms, 10ms samples, SEARCH OFF, NLP ON.
The ECU main function (ecuSendIn) takes about 100us to run, so it's not a problem of sample overlapping. The signal reception is done using EDMA + McBSP and Ping-Pong Buffers.
I have absolutely no idea of what is happening. I'm uploading my code to anyone who might know what I am doing wrong. Any help is desirable. I can't debug the code, there's no emulator in our custom board, so everything is done using a single led connected to a DSP GPIO port.
Thanks in advance,
Regards,
Leonardo Batista