import flash.media.Sound; import flash.net.URLRequest; import flash.media.SoundChannel; import flash.media.SoundTransform; import flash.events.Event; import flash.text.TextFormat; import flash.events.MouseEvent; stop(); startPlayback.addEventListener(MouseEvent.CLICK, submitMedia); stopPlayback.addEventListener(MouseEvent.CLICK, stopMedia); volumeSlider.addEventListener(Event.CHANGE, changeVolume); mediaInput.addEventListener(MouseEvent.CLICK, selectLocationText); var mp3SoundChannel:SoundChannel = new SoundChannel(); var st:SoundTransform = new SoundTransform(); var lyd:Sound = new Sound(); function submitMedia(event:MouseEvent):void { startMediaPlayback(); } function refreshVars(){ lyd = new Sound(); } function startMediaPlayback() { if(mp3SoundChannel != null){ mp3SoundChannel.stop(); refreshVars(); } var url:URLRequest = new URLRequest(mediaInput.text); lyd.load(url); mp3SoundChannel = lyd.play(); //Sets initial volume st.volume = volumeSlider.value; mp3SoundChannel.soundTransform = st; addEventListener(Event.ENTER_FRAME, tikk); if(mediaInput.text.length > 40){ var half:int = (mediaInput.text.length/2); var firsthalf:String = mediaInput.text.substring(0, half-(mediaInput.text.length/6)); var secondhalf:String = mediaInput.text.substring(half+(mediaInput.text.length/6), mediaInput.text.length); currentMedia.text = firsthalf + "..." + secondhalf; } else { currentMedia.text = mediaInput.text; } } function tikk(evt:Event){ var pos:Number = mp3SoundChannel.position; var len:Number = lyd.length; var bLoaded:Number = lyd.bytesLoaded; var bTotal:Number = lyd.bytesTotal; var totalLength:Number = (bTotal/bLoaded) * len; var posPercent:Number = pos/totalLength; loadBar.scaleX = posPercent; leftChannel.scaleX = mp3SoundChannel.leftPeak; rightChannel.scaleX = mp3SoundChannel.rightPeak; } function selectLocationText(evt:MouseEvent){ var endIndex:int = mediaInput.text.length; mediaInput.setSelection(0, endIndex); } function stopMedia(evt:Event){ if(mp3SoundChannel != null){ mp3SoundChannel.stop(); refreshVars(); } } function changeVolume(evt:Event){ st.volume = volumeSlider.value; mp3SoundChannel.soundTransform = st; } //http://stream-94.shoutcast.com:80/smoothjazz_mp3_128kbps