How do I do FFT frequency shift?

GoldWave general discussions and community help
Post Reply
Videogamer555
Posts: 43
Joined: Wed May 25, 2011 2:28 am

How do I do FFT frequency shift?

Post by Videogamer555 »

Or is this even possible in Goldwave? I'm looking for a way to shift all frequencies down by 2kHz. Any frequencies below 2kHz should be discarded. Since the highest frequency is 24kHz (with sample rate of 48kHz) that means after a down shift of 2kHz, all frequencies between 22kHz and 24kHz should be zeroed out.

Is such an operation possible using Goldwave?
DougDbug
Posts: 2172
Joined: Wed Feb 16, 2005 3:33 pm
Location: Silicon Valley

Re: How do I do FFT frequency shift?

Post by DougDbug »

You might have to use MATLAB for something like that. It's common to pitch-shift by a certain percentage, but not by a fixed value because that would mess-up the music/audio.
Tristan
Posts: 497
Joined: Mon Jun 01, 2009 8:20 pm
Location: Southeast Michigan

Re: How do I do FFT frequency shift?

Post by Tristan »

Videogamer555 wrote:Or is this even possible in Goldwave? I'm looking for a way to shift all frequencies down by 2kHz. Any frequencies below 2kHz should be discarded. Since the highest frequency is 24kHz (with sample rate of 48kHz) that means after a down shift of 2kHz, all frequencies between 22kHz and 24kHz should be zeroed out.

Is such an operation possible using Goldwave?
Do you really want to mangle your file that much? I'm just curious.

If you applied that 2kHz shift against the entire file you would alter the tonal relationships in your file drastically. I don't see a way of doing that in GoldWave. It sounds more like a job for a software synth.

(Update: Oops, I see Doug beat me to it.)

You could do a pitch shift in GoldWave, of course, without damaging the tonal relationships, then apply a high-pass filter at the desired cut-off frequency.
I don't want to read the manual either, but, then, it isn't my problem, is it?
DewDude420
Posts: 1171
Joined: Fri Mar 11, 2005 11:15 pm
Location: Washington DC Metro Area
Contact:

Re: How do I do FFT frequency shift?

Post by DewDude420 »

So I started thinking about this particular post a month ago because as someone with many different hobbies...I see multiple ways of attacking this. The first would be the traditional audio method of pitch-shifting by whatever amount shifts everything 2khz..then applying low or high pass filters. This would get you kind of close.

But then, like Doug; I started wondering if you really wanted to mangle your file that much because this type of thing sounds bad...really really bad. How bad? http://dewdude.ath.cx/recording9.m4a.

Now I didn't have a direct line on that recording and had to make it with my cell phone; but that should give you an idea of just how bad this actually sounds. Could you even tell that was part of Sweet Caroline?

What you're listening to is...somewhat..of an FFT frequency shift....except it's not digital, however Fourier components are involved. It is however...a frequency shift. I made that by tuning to a local AM radio station, flipping to upper sideband mode, and tuning 2khz above the carrier. So everything is shifted down by 2khz. Since very few people have any clue what I just said...and you're probably wondering how is that a frequency shift. You're about to discover that one of my many hobbies is ham radio and I'm about to dive offtopic just for the sake of clearing things up.

Without digging deep in to the science of it all...AM radio works by varying the amplitude of a carrier wave according to an input signal...this is called modulation....AM is "amplitude modulation"...and that's why it's called that. So when you modulate this carrer, you create "sidebands"...this is an area on each side of the carrier that is taken up by the content you're modulating the carrier with....and it contains all the Fourier components of the modulating signal.

Image

Here is a spectrogram of an AM transmission. The carrier is in the center and is the most powerful component, you can clearly see on each side..mirror images of the audio spectrum the broadcast contains..looks like voice in this case.

So in ham radio on the HF/shortwave bands we primarily use a mode known as "single sideband"...although technically, it's carrier suppressed single sideband. This has a net effect of giving us an extra 12dB of power since it's all distributed in to fourier components; but it also means you have no carrier to lock to. Therefore...the pitch of someone's voice depends just how well you're tuned to where their carrier is supposed to be. So what I did for the above recording is tune to a commercial AM station; flip my rig in to it's upper sideband mode...and tuned 2khz above the carrier. This provided a Fourier shift...and the crazy...almost spooky recording.

I tried reshifting this in both Goldwave and other programs to see if I could somewhat restore the pitch...and it kind of worked...except it still had this strange quality. That could be something as simple as the two methods are incompatible.

You can probably do something like this using SDR software...just load your file and create a very wide SSB filter...then tune it 2khz up. But those packages tend to be very complex. I made a go at it...and I got pretty much the same result you hear above. When it was in the SDR...it was in essence a FFT frequency shift since that's how those programs work.
Post Reply