This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Regarding porting of Echo Canceller Unit from Voice Library

Hi,

We are trying to port the Echo Canceller Unit Library ecu_10_92_1_0 from Voice Library Software volib_C64P_2_1_0_1 on TMS320TCI6486 DSP using CCS. The code got compiled successfully and is running on the target. But the issue is the echo n not getting cancelled at all and the data coming as input to ecuSendIn is directly coming out as output and the echo is not getting cancelled. Can somebody please help me out in resolving the issue? 

Thanks and regards,

Anjanadri Punugu

  • Hi Anjanadri,

    If you are able to pass the ECU unit test provided in VoLIB successfully but not your applicaton after integrating ECU and running on your traget board, it's likely that the delay line is not packed properly, please review the thread e2e.ti.com/.../193193 and check if you have the following delay line compression and pack.

    linSample rinLinear[N];
    tint rinCompr[N];
    tword rinBuffer[N];
    tint length = N;
    tint i;

    /* Compress U-law delay line samples */
    muaTblUlawCmpr (length, rinLinear, rinCompr);

    /* Pack samples for delay line compression */
    for (i=0; i<length; i++) {
    rinBuffer[i] = rinCompr[i] & 0xFF;
    }

    Regards,
    Garrett
  • Hi Garrett,

    The test project in the echo cancellation library uses different modules like SIU , PIU along with ECU to simulate the echo cancellation test. We are not able to understand the purpose of these individual modules because of lack of documentation.

    Can we have a test project which demonstrates only the usage of ECU so that we can use it in our application with ease?

    The idea suggested by you didn't work out for me and the problem seems to be something else. Anyways we will try out the demo project again and then make changes over that.

    But still it will be better if we could get a test project which simulates only the ECU module in the voice library.

    Regards,

    Anjanadri

  • Hi Garrett,

    We wanted to know the format in which the data is handled in the output files and input files.

    We did a test case where we gave the same file as input to the project and verified the output file. Practically the output file should be a silence file. But we are seeing some other data in the output file.

    We tried to store the sout file in .wav format so that it can be played in media player. But the media player says the codec or compression format is not supported.

    Please help us with the formats of rin.pcm,sin.pcm.rout.pcm,sout.pcm and suggest us ways to play them on linux pc as raw data.

    Regards,
    Anjanadri

  • Anjanadri,

    The *.pcm files are 8-bit mu-law compressed data, and you can use Adobe Audition or similar audio editing software to convert sout.pcm file to .wav format so it can be played in media player.


    Regards, Garrett

  • Hi Garrett,

    The test project in the echo cancellation library uses different modules like SIU , PIU along with ECU to simulate the echo cancellation test. We are not able to understand the purpose of these individual modules because of lack of documentation.

    Can we have a test project which demonstrates only the usage of ECU so that we can use it in our application with ease?

    The idea suggested by you didn't work out for me and the problem seems to be something else. Anyways we will try out the demo project again and then make changes over that.

    But still it will be better if we could get a test project which simulates only the ECU module in the voice library.

    Regards,

    Anjanadri