How to Use Flash MX Sound Objects

This document copyright © 2004 by Kenny Bellew of Cowfly.Com Design, kennybellew@hotmail.com
How to Fade a Sound Object Up or Down Return to Index Do you want all FLA's used for this tutorial? Do you have a question?

Fig. 08: Example of fading a sound object in and out

By setting the volume of a sound object with a variable that increments or decrements, the sound can fade in or out. To do this, first configure the sound object as described in the previous section for setting the sound object's volume. 

One way to increment or decrement a variable is to add or subtract from the variable each time a frame is processed.  Using Flash MX's event handlers, you can easily do this in the first frame of any movie clip that loops.  Obviously, if you want to fade sound in, you must first set the initial volume level of the sound object to zero or some other low level.

myLoop = new Sound(myLoopMc);
myLoop.attachSound("myLoop01");
myLoopVolume=0;
myLoop.setVolume(myLoopVolume);

The following is some example code that can be used to fade in a sound when a variable becomes true (of course, the text behind the comment characters "//" can be removed if desired):

this.onEnterFrame = function () {
 //
 //Fade In
 //
if (fadeIn01==1) {
//   fadeIn01 can be set to 1 when a button is
// pressed, when a frame is reached or many other ways.  

_root.myLoop.setVolume(myLoopVolume);
//   Sets the volume for the sound object "myLoop"
// to the variable "myLoopVolume" every time the
// frame is entered during the movie clip loop.         

myLoopVolume=myLoopVolume+5;
//   Increments the variable "myLoopVolume" by 5.
// Increase or decrease this to change the speed of
// the fade from 0 to 100.                                                          
if (myLoopVolume>99) {
 fadeIn01=0;
//   This stops the "myLoopVolume" from incrementing
// by making the if-statement false once the volume
// reaches 100%.
} //Closes 2nd fadeIn if-statement
} //Closes 1st fadeIn if-statement
} //Closes function

To fade out a sound object, the ActionScript is nearly identical, except that the variable for volume is decremented instead of incremented.

this.onEnterFrame = function () {
//Fade Out
if (fadeOut01==1) {
  _root.myLoop.setVolume(myLoopVolume);
  myLoopVolume=myLoopVolume-5;
if (myLoopVolume<5) {
  _root.myLoop.stop("myLoop01");
  fadeOut01=0;
}
}
}

 

Previous Next
How to Build a Vertical Volume Slider How to Control Volume Using the Arrow Keys
Return to Index Do you want all FLA's used for this tutorial? Do you have a question?

This document copyright © 2004 by Kenny Bellew of Cowfly.Com Design, kennybellew@hotmail.com