Moving Average Filter for audio

Hi! I have created my an audio file using my voice, and now I have to use moving average filter. I was only given a value of h. Ive been trying to look for other examples of MAF applied on this but theres none. I couldnt get the right output. I used conv

回答(1 个)

Walter Roberson
Walter Roberson 2021-7-13
If you have already obtained the entire signal, then you can use movmean() if your MATLAB is new enough. However, conv() can also work well.

3 个评论

when i use y2 = conv (y, h) it shows the same output as the original. Is it right?
What is your h value? You would get the same output as the original if your h was scalar 1.
load handel
y = y(1:256);
plot(y)
ysc = conv(y, ones(1,20)/20, 'valid');
plot(ysc)
ysmm = movmean(y, 20, 'endpoints', 'discard' );
plot(ysmm)
max(abs(ysc-ysmm))
ans = 2.7756e-17
You can see that the two computation methods are equivalent.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Audio I/O and Waveform Generation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by