2011-01-11 8 views
0

Kann man nur ein kleines Stück FLEX/AS-Code angeben, der mp3 spielt und nur Play-Taste, Ziel ist es, einen Sample-Sound für ca. 5 bis 10 Sekunden zu spielen die mp3 in ihmPlayer mit FLEX/AS

embeded

Antwort

2

Beispiel unten aus kopiert und eingefügt: http://livedocs.adobe.com/flex/3/html/help.html?content=embed_4.html

<?xml version="1.0"?> 
<!-- embed/EmbedSound.mxml --> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 

    <mx:Script> 
     <![CDATA[ 

      import flash.media.*; 

      [Embed(source="sample.mp3")] 
      [Bindable] 
      public var sndCls:Class; 

      public var snd:Sound = new sndCls() as Sound; 
      public var sndChannel:SoundChannel; 

      public function playSound():void { 
       sndChannel=snd.play(); 
      } 

      public function stopSound():void { 
       sndChannel.stop(); 
      } 
     ]]> 
    </mx:Script> 

    <mx:HBox> 
     <mx:Button label="play" click="playSound();"/> 
     <mx:Button label="stop" click="stopSound();"/> 
    </mx:HBox> 
</mx:Application> 
+0

und wo die sample.mp3 wohnen ?? – Rajeev

+0

In jedem Basisverzeichnis, das im Quell-Buildpfad enthalten ist, würde dies in Eclipse/Flash Builder in den Projekteigenschaften angegeben. Standardmäßig ist der Ordner src in eclipse/flash builder der Stamm des Kompilierungsprozesses und wird von dort gestartet, wenn Sie keine anderen Ordner als Basisordner angeben. Alle Pfade sind relativ zu src (unabhängig vom Speicherort der einbettenden Klasse)). – shaunhusain

+0

Da es während der Kompilierung in das swf eingebettet ist, sollte das mp3 selbst nicht im Ordner bin-debug oder irgendwo nach der Kompilierung vorhanden sein, wenn es entfernt werden kann, da es nicht extern referenziert wird. Um es extern zu referenzieren, würden Sie es nicht einbetten, sondern würden lieber einen Loader verwenden, um den Inhalt in den swf zu bekommen. In diesem Fall wäre der Pfad relativ zum Ort des swf. – shaunhusain