Forums

Increasing the amplitude of a select range of frequencies by a factor of 5 and plotting the Fourier spectrum and the time domain signal

Started by ali....@yahoo.com October 10, 2008
Hi all,

I am new to matlab and I am using it to try and accomplish the following...

Increasing the amplitude of all frequencies below 200Hz and above 5kHz by a factor of 5 for a simple and short audio file and plotting the Fourier spectrum and the time domain signal.

This sounds like very basic stuff but for a newbie like me it looks ....well difficult. Will gladly accomplish all the help I can get. Thanks.
Best Regards,
Aliyu Tunde.
One thing comes to mind right away .. bandstop filter !!

Amit Pathania

--- On Fri, 10/10/08, a...@yahoo.com wrote:
From: a...@yahoo.com
Subject: [matlab] Increasing the amplitude of a select range of frequencies by a factor of 5 and plotting the Fourier spectrum and the time domain signal
To: m...
Date: Friday, October 10, 2008, 8:21 AM

Hi all,

I am new to matlab and I am using it to try and accomplish the following...

Increasing the amplitude of all frequencies below 200Hz and above 5kHz by a factor of 5 for a simple and short audio file and plotting the Fourier spectrum and the time domain signal.

This sounds like very basic stuff but for a newbie like me it looks ....well difficult. Will gladly accomplish all the help I can get. Thanks.

Best Regards,

Aliyu Tunde.
Well, if amplitude of temporal signal is amplified by 5; to make the correspoding change in frequency domain you need to multiply by 5/2 to account for spectrum in both -ve and +ve frequencies.

Amit Pathania

--- On Sat, 10/11/08, Ion Suberviola wrote:
From: Ion Suberviola
Subject: Re: [matlab] Increasing the amplitude of a select range of frequencies by a factor of 5 and plotting the Fourier spectrum and the time domain signal
To: a...@yahoo.com
Date: Saturday, October 11, 2008, 4:10 PM

Let's say x is your audio signal, sampled at a certain fs, and duration T, that you should know.

X = fftshift(fft(x));

The frequency resolution of X, is 1/T.

This vector X, represents the amplitude of each frequency component of x, from -fs/2 in steps 1/T to fs/2.
Calculate the indexes from X which match the interval you ment (f < 200 Hz and f > 5000 Hz). Put these indexes in a vector "indx".

Your modified signal:
Y = X;
Y(indx) = 5*X(indx);
Vector Y is the fft of you modified signal.

In time domain:

y = ifft( fftshift( Y ));
I hope I helped.

Ion

2008/10/10 Amit Pathania

One thing comes to mind right away .. bandstop filter !!

Amit Pathania

--- On Fri, 10/10/08, a...@yahoo.com wrote:

From: a...@yahoo.com

Subject: [matlab] Increasing the amplitude of a select range of frequencies by a factor of 5 and plotting the Fourier spectrum and the time domain signal

To: m...

Date: Friday, October 10, 2008, 8:21 AM

Hi all,

I am new to matlab and I am using it to try and accomplish the following...

Increasing the amplitude of all frequencies below 200Hz and above 5kHz by a factor of 5 for a simple and short audio file and plotting the Fourier spectrum and the time domain signal.

This sounds like very basic stuff but for a newbie like me it looks ....well difficult. Will gladly accomplish all the help I can get. Thanks.

Best Regards,

Aliyu Tunde.