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.

Attachment: my_resample.m
Description: Binary data

Attachment: 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

Reply via email to