DSPRelated.com
Forums

Remez Exchange Algorithm

Started by Unknown June 22, 2006
Marcel M=FCller wrote:

.=2E.
> The roll-off is significantly improoved. Now I get +-3dB with the FIR > length of 12288. Before the optimization it was about +-8dB. (Hopefully > the simulation was right.)
Before you wrote that you had about one second delay using a 32k Tap FIR. I'm assuming sample rate of 48kHz. The linear-phase FIR has filter delay of 16k =3D 1/3 seconds. You were complaining about one second delay. Conclusion: The main chunk of the delay comes from the processing delay through your frequency domain filtering routine. I wrote up two methods in my other post on how to reduce / remove that much bigger part of the overall delay. Regards, Andor
Andor schrieb:
> Before you wrote that you had about one second delay using a 32k Tap > FIR. I'm assuming sample rate of 48kHz. The linear-phase FIR has filter > delay of 16k = 1/3 seconds. You were complaining about one second > delay.
If I want to use FFT convolution effectively the delay is twice or three times as much. And the sampling rate is 44.1kHz. Giving about .75s to 1.1s.
> Conclusion: The main chunk of the delay comes from the > processing delay through your frequency domain filtering routine.
The absolute cumputing time for a data block with 4096 samples (the internal block size) and a FIR length of 12288 is approximately 1.2ms per channel. This should not be a major problem.
> I wrote up two methods in my other post on how to reduce / remove that > much bigger part of the overall delay.
I have read the link. Interesting. But in the world of PCs other methods are possible too. The data sources are often not really reltime. For example there is no absolute time correlation between a streaming server and a client. The user only notices the delay to user interactions, like start/stop. Many data sources in the PC can provide the information with more than realtime (CD-ROM when reading CCDA, information stored in files etc.). I will firstly try to use these options to compensate for the delay partially. Marcel