# Frequency Shifting in MATLAB

I am currently attempting to demodulate an audio file using MATLAB. After taking the fft of the signal, I receive this:

After some more coding, I found the following values:

• Fs = 44100;

• Window size = 441000 (by taking length(signal))

• Fc = 11416

My guess is that this signal is a SSB with a full carrier, and I have read that to recover the original signal from the IF SSB signal, the SSB must be frequency shifted down to its original range of baseband frequencies.

The question here is: How could I shift the frequency spectrum of this signal to center at 0 Hz?

I have been reading up on the fft size/bins and its relationship to the sampling frequency. Will this value be needed? I have also tried using fftshift(), but to no avail. The goal here is to shift the frequencies to be centered at 0 Hz, use a filter to get rid of some of the frequencies, then use an ssb demod function to hopefully get the correct sound from it.

Thanks in advance, I appreciate you taking the time to help another guy out.

In Matlab you can use the fftshift() command. It will rearrange the samples so that the frequency range is between $-f_s/2$ and $f_s/2$.