1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
|
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.media.SoundLoaderContext;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.media.ID3Info;
stop();
// On commence par charger un son initial, et on initialise toutes les variables
var s:Sound = new Sound();
var req:URLRequest = new URLRequest("defaut.mp3");
var channel:SoundChannel;
var pausePosition:Number=0;
var playbackPercent:Number=0;
barrePosition.width = 0;
jouer(req); // Ensuite on le joue
this.lecture_btn.addEventListener(MouseEvent.CLICK,function_lecture);
this.arret_btn.addEventListener(MouseEvent.CLICK,function_arret);
this.morceau1_btn.addEventListener(MouseEvent.CLICK,function_1);
this.morceau2_btn.addEventListener(MouseEvent.CLICK,function_2);
function function_1(event:Event) {
req = new URLRequest("1.mp3");
jouer(req);
}
function function_2(event:Event) {
req = new URLRequest("2.mp3");
jouer(req);
}
//Cette fonction permet de lire ou de mettre en pause le morceau chargé
function function_lecture(event:Event) {
if (lecture_btn.currentFrame==1) {
channel = s.play(pausePosition);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
s.addEventListener(Event.SOUND_COMPLETE, onPlaybackComplete);
lecture_btn.gotoAndStop(2);
} else {
pausePosition = channel.position;
channel.stop();
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
lecture_btn.gotoAndStop(1);
}
}
// Cette fonction permet d'arreter la lecture du morceau
function function_arret(event:Event) {
channel.stop();
pausePosition=0;
barrePosition.width = 0;
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
lecture_btn.gotoAndStop(1);
}
// Cette fonction calcule le pourcentage du fichier lu
function onEnterFrame(event:Event):void
{
var estimatedLength:int =
Math.ceil(s.length / (s.bytesLoaded / s.bytesTotal));
playbackPercent =
Math.round(100 * (channel.position / estimatedLength));
barrePosition.width =playbackPercent;
}
function onPlaybackComplete(event:Event)
{
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
}
// Cette fonction sert à charger un nouveau morceau et de le lire : il est //ensuite controllable par les boutons lecture/pause et arret
function jouer(req:URLRequest) {
s = new Sound();
s.load(req);
s.addEventListener(Event.ID3, onID3InfoReceived);
pausePosition=0;
channel = s.play();
addEventListener(Event.ENTER_FRAME, onEnterFrame);
s.addEventListener(Event.SOUND_COMPLETE, onPlaybackComplete);
lecture_btn.gotoAndStop(2);
}
// Cette fonction permet d'afficher le nom de la chanson
function onID3InfoReceived(event:Event)
{
var id3:ID3Info = event.target.id3;
titre.text=id3.songName;
} |
Partager