Page 1 of 1

1lb.zwx46y7f2oup

Posted: Thu Sep 11, 2008 5:02 pm
by guinux7
n2hjcbfy8elozvst

1vyz0wnuploq8km6

Posted: Thu Sep 11, 2008 5:05 pm
by guinux7
3vksduy4tqj91e5i

Re: music out of 30 frequencies

Posted: Thu Sep 11, 2008 5:05 pm
by steve
It's not true, at least not literally.
MP3 compression does throw away some of the audio information, but it uses a more sophisticated method of doing so.
http://en.wikipedia.org/wiki/MP3

Re: music out of 30 frequencies

Posted: Thu Sep 11, 2008 5:09 pm
by steve
Using "30 buzzers" and "change the frequency of each buzzer every fraction of a second" is basically a method of synthesis called "additive synthesis" - you can create lots of cool sounds this way, but it can't do everything.

http://en.wikipedia.org/wiki/Additive_synthesis

fq4s6zrvjpcax75y

Posted: Thu Sep 11, 2008 8:53 pm
by guinux7
zgdk51scxtpfrb40

Re: music out of 30 frequencies

Posted: Fri Sep 12, 2008 2:29 pm
by steve
"Additive synthesis" usually refers to using sine waves (pure tones), which sound more like a hum or a whistle than a buzz. So that would be like using 3 or 30 whistles, rather than buzzers.

The reason that you will not be able to reproduce "real world sounds" this way, is mostly due to not being able to control and vary the frequencies and amplitudes precisely enough. Also, if you look at some audio using a "spectrum" view, you will see that real world sounds are made of thousands of frequencies that are all varying from moment to moment. Recreating a sound with just a handful of "most significant" frequencies will be a crude representation at best. This is how many early "analogue synthesizers" worked, and they produce a very "synthetic" kind of sound - though interesting, and potentially musical.

If you look on Google you should be able to find quite a few free synthesizers to play with. Here's some links to start with http://www.synthzone.com/softsyn.htm

You can also use "Nyquist programming" in Audacity to synthesize sounds (see the Audacity wiki for more information - link to the wiki at top of this page).

In Audacity 1.3.5, if you create a (mono) audio track, select some of it, then select "Nyquist prompt" from the effects menu, you will get a pop up window where you can type Nyquist commands.
Enter the following code into the Nyquist prompt box:

Code: Select all

(osc c4)
Then click OK.
This will generate a sine wave at frequency C4 (middle C). See here for information about note names: http://en.wikipedia.org/wiki/Note#Note_name

The generated wave will be full scale (amplitude 0dB), but we can adjust this volume useing the "scale" command like this:

Code: Select all

(scale 0.5 (osc c4))
Now lets try generating a different note - say A above middle C

Code: Select all

(scale 0.5 (osc A4))
And the C an octave above would be:

Code: Select all

(scale 0.5 (osc C5))
But you want to play the sounds altogether. We can do that using the "sim" command (simultaneous).
We will need to reduce the amplitude of each sound to avoid clipping when we add them togeter, so we will reduce the scale factor to 0.3 like this:

Code: Select all

(sim (scale 0.3 (osc C4))(scale 0.3 (osc A4))(scale 0.3 (osc C5)))
The "osc" command that we have been using stands for "oscillator" (a simple tone generator, or in your previous terminology, a "buzzer"). There is a very similar command to "osc" which is "sine" - for our purposes it does the same thing, so we could rewrite out Nyquist commands as:

Code: Select all

(sim (scale 0.3 (sine C4))(scale 0.3 (sine A4))(scale 0.3 (sine C5)))
This then opens the possibility of using different kinds of oscillators such as "osc-saw" and "osc-tri".
Try substituting these oscillators in our command like this:

Code: Select all

(sim 
(scale 0.3 (osc C4))
(scale 0.3 (osc-tri A4))
(scale 0.3 (sine C5)))
By changing the notes, oscillators and the volume levels, we can create many different tones.

If you want to try a more advanced synthesis example, here's a horn-like sound that I created:

Code: Select all

(mult 
(lowpass4 (highpass4 
(scale 0.3 (comb (noise) 256 140)) 30) 400) 
(env 0.1 0.1 1.0 3.0 1.0 0.3 1.0))