views:

55

answers:

2

I'm interested in, and trying to find information on, the topic of programming musical instrument emulators. As an example, see http://www.youtube.com/watch?v=RhCJq7EAJJA (Smule's Ocarina app for the iPhone).

However, I'm not finding much information on this topic. Running with the ocarina app as an example, how are the individual notes produced? Since the results are based on strength of breath and which "holes" are held down, some of it must be handled programmatically, but is the whole sound generated programmatically or would it use a sound sample on the back-end and modify that (or those, if multiple samples are used)?

Are there any resources on this topic? All of my searches come up with information on how to play music (just standard audio) or how to make music (in music editing software), but none on how to do what is shown in that video.

Responses needn't be strictly related to ocarinas, though I wouldn't mind if they were.

A: 

First of all, I'm not quite sure what your question is.

There are quite a few kinds of sound synthesis. A few I know about are:

  • Frequency Modulation
  • Oscillation Wave
  • Table (sample based)

Oscillation is quite simple and probably the place to start. If you generate a square wave at 440Hz you have the note "A" or more specifically middle A.

That kind of simple synthesis is really quite fun and easy to do. Maybe you can start making a simple synth for the PC speaker. Oh, but I don't know if all OSes let you access that. LADSPA has some good examples. There are lots of libs for linux with docs to get you started. You might want to have a look at Csound for starters: http://www.csounds.com/chapter1/index.html

I played around with it a bit and have a couple corny synths going on...

sims
+1  A: 
Owen S.