14.5. Capturing and Playing Audio from a Microphone
Problem
You want to get audio from a user’s microphone to add it to a movie clip within the Flash movie or publish it to a FlashCom application. (See Recipe 14.9.)
Solution
Use the Microphone.get( )
method.
Discussion
The Microphone.get( ) method is analogous to the
Camera.get( ) method, but it gets audio data
from a user’s microphone instead of video from his
camera. For example:
myMic_mic = Microphone.get( );
The Microphone.get( ) method gets the data for
the default microphone (as set in the Microphone tab of the Player
Settings dialog box) if you do not specify any parameters. However,
if the user has multiple microphones, you can use the
Microphone.names array to offer the user a choice
among them. See Recipe 14.4, which
demonstrates the analogous technique for multiple video cameras.
There is the possibility that the user does not have any microphone.
The elements in the Microphone.names array
correspond to the recording devices reported by the
user’s operating system. In most cases the devices
are sound cards, and the existence of a sound card does not
necessarily mean there is a microphone. Therefore, there is no
definitive way to determine whether a user has a microphone (although
if the Microphone.names array is empty, he does
not).
if (Microphone.names.length > 0) { // Place code here for getting and using a microphone stream. The user may, in // fact, have only a sound card and no microphone. } else { // Place code here to ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access