here is a neat solution how you can load multiple sounds in flash and play them one by one..
/*
---------------------------
*/
package utils {
import flash.display.MovieClip;
import flash.events.*;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.net.URLRequest;
import flash.text.*;
import flash.utils.Timer;
import flash.media.SoundTransform;
public class gamesound extends MovieClip {
private var positionTimer:Timer;
public var url:String=null;
private var song:SoundChannel;
var soundFactory:Sound;
public var __parent;
public function gamesound() {
}
public function set soundUrl(__url:String) {
url=__url;
}
public function init():void {
var request:URLRequest = new URLRequest(url);
soundFactory = new Sound();
soundFactory.addEventListener(Event.COMPLETE, completeHandler);
soundFactory.addEventListener(Event.ID3, id3Handler);
soundFactory.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
soundFactory.addEventListener(ProgressEvent.PROGRESS, progressHandler);
soundFactory.load(request);
}
public function stopsound():void {
if(song!=null)
{
song.stop();
}
}
private function positionTimerHandler(event:TimerEvent):void {
__parent.addOnSpeech();
}
public function playsound():void {
song = soundFactory.play();
song.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler);
//
positionTimer = new Timer(250,0);
positionTimer.addEventListener(TimerEvent.TIMER, positionTimerHandler);
positionTimer.start();
//
}
private function completeHandler(event:Event):void {
__parent.cplcounter();
}
private function id3Handler(event:Event):void {
}
private function ioErrorHandler(event:Event):void {
}
private function progressHandler(event:ProgressEvent):void {
//loader_txt.text="Loading"+" "+(event.bytesLoaded*100/event.bytesTotal);
}
private function soundCompleteHandler(event:Event):void {
positionTimer.removeEventListener(TimerEvent.TIMER, positionTimerHandler);
}
}
}
here is the screenshot

click here to download
/*
---------------------------
*/
package utils {
import flash.display.MovieClip;
import flash.events.*;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.net.URLRequest;
import flash.text.*;
import flash.utils.Timer;
import flash.media.SoundTransform;
public class gamesound extends MovieClip {
private var positionTimer:Timer;
public var url:String=null;
private var song:SoundChannel;
var soundFactory:Sound;
public var __parent;
public function gamesound() {
}
public function set soundUrl(__url:String) {
url=__url;
}
public function init():void {
var request:URLRequest = new URLRequest(url);
soundFactory = new Sound();
soundFactory.addEventListener(Event.COMPLETE, completeHandler);
soundFactory.addEventListener(Event.ID3, id3Handler);
soundFactory.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
soundFactory.addEventListener(ProgressEvent.PROGRESS, progressHandler);
soundFactory.load(request);
}
public function stopsound():void {
if(song!=null)
{
song.stop();
}
}
private function positionTimerHandler(event:TimerEvent):void {
__parent.addOnSpeech();
}
public function playsound():void {
song = soundFactory.play();
song.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler);
//
positionTimer = new Timer(250,0);
positionTimer.addEventListener(TimerEvent.TIMER, positionTimerHandler);
positionTimer.start();
//
}
private function completeHandler(event:Event):void {
__parent.cplcounter();
}
private function id3Handler(event:Event):void {
}
private function ioErrorHandler(event:Event):void {
}
private function progressHandler(event:ProgressEvent):void {
//loader_txt.text="Loading"+" "+(event.bytesLoaded*100/event.bytesTotal);
}
private function soundCompleteHandler(event:Event):void {
positionTimer.removeEventListener(TimerEvent.TIMER, positionTimerHandler);
}
}
}
here is the screenshot

click here to download
Comments
Post a Comment