Just as computers can encode images in a digital format, store them on a computer, and retrieve them to display on the screen, computers can capture and encode digital audio--computer representation of sound information--and can store it and retrieve it to play back over speakers connected to the computer. You can play back sound using either Adobe® Flash® Player or Adobe® AIR™ and ActionScript.
When sound data is converted to digital form, it has various characteristics, such as the sound's volume and whether it is stereo or mono sound. When you play back a sound in ActionScript, you can adjust these characteristics as well--make the sound louder, or make it seem to be coming from a certain direction, for instance.
Before you can control a sound in ActionScript, you need to have the sound information loaded into Flash Player or AIR. There are four ways you can get audio data into Flash Player or AIR so that you can work with it using ActionScript. You can load an external sound file such as an mp3 file into the SWF; you can embed the sound information into the SWF file directly when it's being created; you can get audio input using a microphone attached to a user's computer, and you can access sound data that's streamed from a server.
When you load sound data from an external sound file, you can begin playing back the start of the sound file while the rest of the sound data is still loading.
Although there are various sound file formats used to encode digital audio, ActionScript 3.0, Flash Player and AIR support sound files that are stored in the mp3 format. They cannot directly load or play sound files in other formats like WAV or AIFF.
While you're working with sound in ActionScript, you'll likely work with several classes from the flash.media package. The Sound class is the class you use to get access to audio information by loading a sound file and starting playback. Once you start playing a sound, Flash Player and AIR give you access to a SoundChannel object. Since an audio file that you've loaded may only be one of several sounds that you play on a user's computer, each individual sound that's playing uses its own SoundChannel object; the combined output of all the SoundChannel objects mixed together is what actually plays over the computer's speakers. You use this SoundChannel instance to control properties of the sound and to stop its playback. Finally, if you want to control the combined audio, the SoundMixer class gives you control over the mixed output.
You can also use several other classes to perform more specific tasks when you're working with sound in ActionScript; for more information on all the sound-related classes, see Understanding the sound architecture.
This chapter describes the following sound-related tasks that you will likely want to perform:
The following reference list contains important terms that you will encounter in this chapter: