搜课云网 > 郑州鬼谷门教育 > 资讯总汇 > flex里播放声音的方法

flex里播放声音的方法

机构:郑州鬼谷门教育 时间:2015-11-09 08:59:50 点击:730

  方法一:

  panFrom="-1" panTo="1" loops="1" volumeFrom = "1" volumeTo="0.1" duration="3000" useDuration="false"/>

  方法二:

  官方文档的 在编译器里 按下 ctrl + f12 搜索sound 就有例子,这里不多说!

  package { import flash.display.Sprite; import flash.net.URLRequest; import flash.media.Sound;import flash.media.SoundChannel; import flash.text.TextField; import flash.text.TextFieldAutoSize;import flash.events.Event; import flash.events.IOErrorEvent;public class Sound_playExample3 extends Sprite { private var snd:Sound = new Sound();private var channel:SoundChannel; private var statusTextField:TextField = new TextField();public function Sound_playExample3(){ statusTextField.autoSize = TextFieldAutoSize.LEFT;var req:URLRequest = new URLRequest(http://av.adobe.com/podcast/csbu_dev_podcast_epi_2.mp3);try { snd.load(req); channel = snd.play(); } catch (err:Error) { trace(err.message);} snd.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);addEventListener(Event.ENTER_FRAME, enterFrameHandler);channel.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler); this.addChild(statusTextField);} private function enterFrameHandler(event:Event):void{ var loadTime:Number = snd.bytesLoaded / snd.bytesTotal;var loadPercent:uint = Math.round(100 * loadTime);var estimatedLength:int = Math.ceil(snd.length / (loadTime));var playbackPercent:uint = Math.round(100 * (channel.position / estimatedLength));statusTextField.text = "Sound file's size is " + snd.bytesTotal + " bytes.\n" + "Bytes being loaded:" + snd.bytesLoaded + "\n" + "Percentage of sound file that is loaded " + loadPercent + "%.\n" +"Sound playback is " + playbackPercent + "% complete."; } private function errorHandler(errorEvent:IOErrorEvent):void errorEvent.text; } e playing." removeEventListener(Event.ENTER_FRAME,enterFrameHandler); }

  方法三:当有很多声音要同时处理时,这种方法非常实用!

  在flasf cs3 里的liberty 有声音 可以是 mp3 wav 等,右键选 linkage 填入类名(我这里填BTNsound),然后将它拖到场景中,发布出来(我的命名是sound.swf),放到工程src文件夹里。在flex里新建一个类(我的Loadsound.as)代码如下:

  package

  {

  public class Loadsound

  {

  [Embed(source="Sound.swf",symbol="BTNsound")]//按钮

  public static var btnSound:Class;

  }

  }

  然后在 mxml 里

  layout="absolute" creationComplete="init();" >

  private var Sbtn:Sound = new Loadsound.btnSound() as Sound;//按钮声音

  private var soundVol:SoundTransform = new SoundTransform();//音量

  internal function init():void{

  soundVol.volume = 1;

  }

  private function onClink():void{

  Sbtn.play(0,0,soundVol);

  }

  更多知识,请访问郑州影视动漫培训学校

师资介绍