The Audio Programming course at 3DO University introduces developers to 3DO's revolutionary digital audio environment. Students work with sampled sounds, experiment with virtual instruments, create sound patches, and explore special effects such as three-dimensional sound and dynamic playback control. In addition, students learn function calls to perform MIDI playback as well as powerful routines to stream digital sound directly from CD. The course also addresses aspects of 3DO sound design: resource allocation, aesthetic considerations, and production issues. This course provides access to resources and information not available anywhere else.
Students should take Development 201 or equivalent before attending the Audio Programming course. C programming knowledge is a prerequisite, and audio production or programming experience is very helpful.
Sample a sound live from the class.
Hack the sampled sound.
An incredibly quick blowby of items, messages, threads, priorities between threads.
Show a DSP and talk about it.
Get MPW running and compile a sound program.
Start the debugger and run the compiled sound program.
An instrument is a voice. On other systems, you get a limited number of voices.
They tweak instruments.
Use the ta_faders program to demonstrate knobs on sawenv.dsp.
Short digital sound recordings.
Why do we care about them?
Output amplitude can be viewed as a system resource. You allocate it and deallocate it as you need.
Great for Doppler effects. Not great for stationary sounds.
Demonstrate 3-D sounds using the bubbles program.
"Object-oriented." The juggler is a timed event dispatcher that is the guts of MIDI playback.
Send TagArgs to the Juggler to set it up to play events.
<Are channels the same as programs?>
MFLoadSequence()
MFLoadCollection()
Examine a simple sound manager, and add our own sounds.
You will use the MIDI calls, the audio folio sound spooler, the data streamer, or write your own sound manager. Pick one early on.
We only get up to 300K off the CD at a time. Less if we're doing heavy cel manipulations. The sum of all data streaming from the CD should be less than 300K.
Most graphics developers don't want to give up free RAM; therefore, sound samples and instruments should be loaded only when needed and the memory that they required should be freed after use.
Estimate the amount of time that you will require to develop sound using a chosen method. It is generally cheaper to use existing code rather than create from scratch, therefore ...
MIDI sounds computer-y but is good for classical and precise musics, and specific special effects are available.
Streamed audio can be absolutely any sound, but effects are harder to achieve, and can be limited.
You can use a combination of these techniques.
Great software has great audio.
Show Monster Manor versus Total Eclipse versus CPU Bach.