Невозможно встроить воспроизведение звуковых файлов MP3 в Flash Builder 4 - PullRequest
0 голосов
/ 23 марта 2011

В настоящее время я делаю проект Flash Builder с использованием Actionscript 3. Я отклеился, пытаясь встраивать и воспроизводить звуки MP3.Я знаю, что файл MP3 загружается, так как я отслеживаю загруженные байты, я также отслеживал функцию, которая воспроизводит 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

Ответы [ 3 ]

0 голосов
/ 23 марта 2011

Ваш код выглядит хорошо. Вы пробовали встроить другой mp3-файл?

Я заметил, что некоторые mp3-файлы в наших проектах встраивают компилятор mxml. Я опубликовал сообщение об ошибке, но оно еще не было просмотрено: https://bugs.adobe.com/jira/browse/SDK-29391

Кажется, что определенные mp3-файлы могут вызывать странные вещи в MP3 Transcoder.

0 голосов
/ 05 апреля 2011

Бен, я часами возился с тем, что, по моему мнению, является той же проблемой. ЗА ИСКЛЮЧЕНИЕМ: Мои звуки определенно играли. Если бы я взял звук в начале без пробела и выполнил .Play (0,100), я бы услышал, как очень короткий фрагмент (возможно, 0,2 секунды?) Воспроизводится 100 раз

Изначально я получил кучу .wavs от нашего звукорежиссера, и я использовал Switch Sound File Converter, чтобы превратить их в Mp3s. Тем не менее, я просто заставил его переконвертировать их для меня на своей машине, и теперь они все прекрасно играют. Не уверен, что он использовал, но вы можете попробовать изменить / преобразовать сами файлы.

0 голосов
/ 23 марта 2011

Если вы встраиваете звук следующим образом:

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(); куда хотите.

...