Sorry for not being accurate in the original question. My testing environment is set to 20ms frames (PCM 16 8 1 to be precise). I have verified that all the frames that I feed to the AEC have the fixed size of 320 bytes. So this is why I am presuming that the the dumped files should be of equal size. The output signal is good and not distorted. It has echo, though. In a try to diagnose that I have followed the documentation and set the DUMP_ECHO_CANCEL_DATA compiler variable. The canceller generated aec_out.sw, aec_play.sw and aec_rec.sw and they all appear to have uneven size. Octave complains about the files which is logical as it's trying to multiply matrixes that have different dimensions. I have checked that tear-downs are made correctly and speex_echo_state_destroy() is called after the threads are stopped. Any clues, guys? Regards, Dmitry -----Original Message----- From: Dmitry Nikitin Sent: Wednesday, December 05, 2007 9:50 AM To: 'speex-dev@xiph.org' Subject: [Speex-dev] AEC diagnistics generated files Hi Guys, I am trying to incorporate the speex AEC into my RTP stack. Trying to diagnose why the echo is not being cancelled I enabled DUMP_ECHO_CANCEL_DATA as per the docs. The problem is that the dump files the AEC generates are of different size. As I understand this and looking at echo_diagnostic.m, the files are supposed to be of same size. Can someone give me a hint as to why this could be happening? Additional info: Windows WaveIn/Out API is used to work with a sound device. The format is PCM 16 8 2 Thanks much, Dmitry
It might just be the stdio buffering. Can you try forcing an fclose() at the end and see if you get equal lengths? Jean-Marc Dmitry Nikitin a ?crit :> Sorry for not being accurate in the original question. > > My testing environment is set to 20ms frames (PCM 16 8 1 to be precise). > > I have verified that all the frames that I feed to the AEC have the > fixed size of 320 bytes. > > So this is why I am presuming that the the dumped files should be of > equal size. > > The output signal is good and not distorted. It has echo, though. > > In a try to diagnose that I have followed the documentation and set the > DUMP_ECHO_CANCEL_DATA compiler variable. > > The canceller generated aec_out.sw, aec_play.sw and aec_rec.sw and they > all appear to have uneven size. > > Octave complains about the files which is logical as it's trying to > multiply matrixes that have different dimensions. > > I have checked that tear-downs are made correctly and > speex_echo_state_destroy() is called after the threads are stopped. > > Any clues, guys? > > Regards, > Dmitry > > -----Original Message----- > From: Dmitry Nikitin > Sent: Wednesday, December 05, 2007 9:50 AM > To: 'speex-dev@xiph.org' > Subject: [Speex-dev] AEC diagnistics generated files > > > Hi Guys, > > I am trying to incorporate the speex AEC into my RTP stack. > > Trying to diagnose why the echo is not being cancelled I enabled > DUMP_ECHO_CANCEL_DATA as per the docs. > > The problem is that the dump files the AEC generates are of different > size. > > As I understand this and looking at echo_diagnostic.m, the files are > supposed to be of same size. > > Can someone give me a hint as to why this could be happening? > > Additional info: > > Windows WaveIn/Out API is used to work with a sound device. > The format is PCM 16 8 2 > > Thanks much, > Dmitry > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev > >