voice filtering in matlab
- From: "J.J" <jefteris@xxxxxx>
- Date: Mon, 17 Jul 2006 21:50:34 +0300
Hello
I am trying to filter background sounds (mainly music) from a voice
recording (taken from a mobile phone)
I designed this bandpass filter in fdatool :
-CODE BEGINS-
function Hd = bandpass
% FIR Window Bandpass filter designed using the FIR1 function.
% All frequency values are in Hz.
Fs = 48000; % Sampling Frequency
Fstop1 = 499; % First Stopband Frequency
Fpass1 = 500; % First Passband Frequency
Fpass2 = 1999; % Second Passband Frequency
Fstop2 = 2000; % Second Stopband Frequency
Dstop1 = 1; % First Stopband Attenuation
Dpass = 0.057501127785; % Passband Ripple
Dstop2 = 1.5848931925e-005; % Second Stopband Attenuation
flag = 'noscale'; % Sampling Flag
% Calculate the order from the parameters using KAISERORD.
[N,Wn,BETA,TYPE] = kaiserord([Fstop1 Fpass1 Fpass2 Fstop2]/(Fs/2), [0 ...
1 0], [Dstop1 Dpass Dstop2]);
% Calculate the coefficients using the FIR1 function.
b = fir1(N, Wn, TYPE, kaiser(N+1, BETA), flag);
Hd = dfilt.dffir(b);
-CODE ENDS-
I filter my voice sample with this filter and the result is rather
dissapointing, since the background noise is still apparent, and the voice
is less clear. I just took in mind that the normal voice range is 500Hz-2KHz
and designed the filter accordingly. What is wrong with this? Any
suggestions?
I did this only as an experiment and now I dont know how to proceed.
Thanks
.
- Follow-Ups:
- Re: voice filtering in matlab
- From: jrenfree
- Re: voice filtering in matlab
- Prev by Date: Re: drawing with replacement
- Next by Date: Re: problem about fminsearch and fminunc command
- Previous by thread: Close a GUI
- Next by thread: Re: voice filtering in matlab
- Index(es):
Relevant Pages
|