hi, I have rewritten resample.m using a polyphase implementation. See codes attached to this message.
With the test resample_test.m, I compare this code to the current version of resample.m in OctaveForge. The test consists in resampling sinusoids of various frequencies and evaluate the discrepancy between the result of the resampling algorithm and the exact waveform one expects. in (a), one sees that the RMS error of OctaveForge's resample.m is large and this is due to a spurious phase shift in the resampled time-series (see (c) red and blue). in (b), the rejection of OctaveForge's resample.m appears to be quite poor. I've checked that the polyphase version satisfies the specifications (rolloff width and rejection in the stopband) of the antialiasing filter (blue dash lines in (a) and (b)). I suggest to replace resample.m with my code. cheers, eric.
my_resample.m
Description: Binary data
resample_test.m
Description: Binary data
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________ Octave-dev mailing list Octave-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/octave-dev