2011-03-23 115 views
0

我目前正在使用Actionscript 3制作Flash Builder项目。我尝试嵌入和播放MP3声音的时候出现了问题。我知道MP3文件正在加载,因为我有加载字节的痕迹,我也追踪了播放MP3的功能。无法在Flash Builder 4中嵌入播放MP3声音文件

import flash.media.Sound; 

public class Sounds 
{ 
    [Embed (source="bin/resources/Bounce1.mp3")] 
    private var bounce_01:Class; 
    private var bounce_01_mp3:Sound 

    public function Sounds() 
    { 
     bounce_01_mp3 = new bounce_01(); 
    } 

    public function play():void { 
     trace("play Sound"); 
     bounce_01_mp3.play(); 
    } 
} 

我把这个代码如下所示:

var sound_obj:Sounds = new Sounds(); 
sound_obj.play(); 

这是真的烦我,请可以有人告诉我,为什么这不播放声音?

问候,

-Ben

回答

0

如果将声音如下:

package assets.sounds 
{ 
    import flash.media.Sound; 

    [Embed (source="assets/embedded/audio/theme1.mp3")] 
    public class StartScreenSound extends Sound 
    { 
     public function StartScreenSound() 
     { 
      super(); 
     } 

    } 
} 

然后,你可以调用new StartScreenSound().play();不管你想要的。

0

你的代码看起来不错。你有没有尝试嵌入另一个MP3文件?

我注意到我们项目中的一些mp3文件在嵌入时会挂起mxml编译器。我已经发布了一个bug报告,但它还没有被查看:https://bugs.adobe.com/jira/browse/SDK-29391

似乎具体的mp3文件可能会导致MP3转码器中奇怪的事情。

0

本,我花了几个小时弄乱了我认为是同样的问题。除了:我的声音肯定是在玩。如果我在开始时没有空白的声音并且播放了一个.Play(0,100),我会听到一个非常短的片段(0.2秒或许?)播放100次

我最初得到了一堆来自我们的声音家伙的.wavs,我用Switch Sound File Converter将它们变成了MP3。但是,我只是让他在他的机器上将它们重新转换成我,并且现在他们都玩得很好。不知道他使用了什么,但你可以尝试修改/转换文件本身。