Incorrect downsampling audio range

Hi, I have an .wav input audio with the signal in the range [-1;1] at 44.1kHz and I try to apply a down-sampling to about 2kHz but as result I have a signal that exceed the original audio range [-1;1]. It seen like the anti-aliasing filter amplify the signal. I suspect it may be because the filter is not ideal or the algorithm introduce some kind of distorsion.
Below is the code:
[x,F]=audioread('example.wav');
Fs=F/24; %1837.5Hz
x_decimate=decimate(x,F/Fs,2,'iir');
Results:
max(x)
1.000
min(x)
-1.000
max(x_decimate)
1.1108
min(x_decimate)
-1.1078
What is wrong? Am I making a mistake?
Thank you

4 件のコメント

Ameer Hamza
Ameer Hamza 2020 年 5 月 4 日
What properties do you want in the downsampled signal? Should it be filtered during the downsampling process? You can also see downsample().
Luciano Sebastián Rau
Luciano Sebastián Rau 2020 年 5 月 4 日
I need to reduce the computation cost, so one technique is reduce the signal frequency.
The signal shold be filtered before the downsampling to be in order with the shannon-Nyquist criterion. The signal shold be filtered before the downsampling to be in order with the shannon-Nyquist criterion. The decimate() function is similar to do a filtered followed by a downsampling.
Ameer Hamza
Ameer Hamza 2020 年 5 月 5 日
What are the issues with values going beyond -1 and +1? I guess if the decimated signal looks similar to the original signal, then it should not be a problem. You can also consider rescaling then filtered so that it remains in the range of -1 to 1.
Luciano Sebastián Rau
Luciano Sebastián Rau 2020 年 5 月 5 日
In my algortihm I want to use a quantifier scheme in the future, so signal in the [-1,+1] range is a must. If I rescale the signal I need before to know how much, so it is no a good solution.
I only need to know why the decimated signal looks like it amplify the original signal. Maybe the decimate algorithm introduce some kind of distorsion.

サインインしてコメントする。

回答 (0 件)

カテゴリ

質問済み:

2020 年 5 月 4 日

編集済み:

2020 年 5 月 5 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by