Archived

This topic is now archived and is closed to further replies.

glGreenhorn

sound fx

Recommended Posts

This might seem like a question that should not be in a post at all, but could someone please give me a hint where to find a tut or exaples of code that deal with sound effects. I am mainly interested in transposing sounds without changing the playback frequency. In other words I want a sound to retain its playtime no matter how high or low I play it (you know - like a real instrument). I should think it''s somekind of a sound effect, but I have no clue which one So, could anyone please at least point out a couple of keywords to start with. If anyone has more experience with messing around with stuff like that, some basic guidelines would also be well appreciated... Thanks!

Share this post


Link to post
Share on other sites
Transposing sounds without changing the length...

All I can think of is breaking the waveform down into its per-frequency parts (think fourier transform here), shifting those up, then reassembling it back to a waveform. Don''t ask me for an algorithm/code because I don''t have any. But definitely look into fourier transforms (fast fourier transforms if you want them to be fast), they''re where it''s at.

Plus with fouriers you can get some other cool effects once you play with them. My suggestion is to do these beforehand (i.e. before you program starts up or before you even compile it) and save them because this is not one of those fast-computation things.

Oh yeah, and remember it''s "foo-ree-ay" -- French.

Confused? Reply.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Erm...

quote:
Original post by feagle814
Oh yeah, and remember it''s "foo-ree-ay" -- French.



??

Sorry - my French stinks...

Anyway - I did some research. The best things I came up with were:

http://ourworld.compuserve.com/homepages/steve_kifowit/fft.htm
&&
http://www.fftw.org/

I downloaded a 5 meg file called fftw-2.1.3.tar.gz which is supposed to be all about Fourier transformations, and it is (source code, headers, etc, all under GPL). The thing, however, is that it is a whole different world - can be applied to almost ANY kind of data (not sure what I''m really saying here) which makes it a VERY broad "topic". I am only interested in sound transformation, which, incidentally, is not even mentioned it the "tut" (also requires ''some'' previous knowledge of DFT - discrete Fourier transformations) that comes with it. This is a bit difficult to start with - as was learning WinAPI from source .

I am drowning in information (gulp). Can anyone suggest a narrower, more specific, EASIER, starting point? I will stress once more - I have never messed with sound effects before. If anyone thinks I''m in over my head, go ahead, say so - I only let my curiosity drive me.

quote:
Original post by feagle814
Confused?



lol, yes. What''s a Fourier transformation? They all say how to use it, but no one ever says what it is...

Be cool!

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
A fourier transformation transforms a signal (can be 1D like sound, 2D like images, 3D or more) into it''s frequency domain. That means that it figures out the (approximate) frequency and amplitude of sinusoids needed to create the original signal. MP3 and JPEG use a similar technique. Now what you do is transform your sound signal into frequency domain, shift the frequencies up or down and transform it back.

You should look for digital signal processing (DSP) and the MPEG compression. If you find the source of some equalizer eg. for WinAmp or whatever, you can easily modify it into a frequency domain shifter: instead of modifying the frequency band amplitudes, you shift them around. Don''t forget to shift all bands equally, or you''ll get some *really* weird (but fun) results.

Good luck... It''s complex stuff...
- AH

Share this post


Link to post
Share on other sites