如何在第2帧中嵌入音频?

时间:2011-10-10 12:34:38

标签: flash actionscript-3

我的音频工作,但存储在第1帧。我希望它将音频移动到第2帧。这是因为我将帧1用于小型预加载器,并将帧2用于所有内容。

在图书馆中,mp3在“导出为ActionScript”中有复选标记,并且“Class”设置为“Song”。 “导出在第1帧”中没有选中标记,但尽管如此,似乎将mp3导出到第1帧。我已经生成了一个大小报告,并看到mp3数据在第1帧结束。如果我删除了mp3再次从项目中,我可以看到第1帧的大小从大约1.7 Mb下降到20 Kb。

这是暂停/播放按钮的文件代码

// filename: PausePlay.as
var song:Song = null;
this.song = new Song();
this.song.play();

这是加载歌曲的代码

// filename: Song.as 
package {
    import flash.media.Sound;
    import flash.media.SoundChannel;
    public class Song extends Sound {
        public function Song()
        {
            trace("Song called");
        }
    }
}

在搜索加载音频的其他方法时,我看到类似[Embed source="song.mp3"]的内容,但是当我使用它时,我会收到一条提示,说明此语法需要FLEX。

如何在闪存AS3中播放音频,音频嵌入第2帧?

1 个答案:

答案 0 :(得分:1)

解决了!

我从mp3中删除了“export to actionscript”复选标记。

我创建了一个包含mp3的MovieClip,并为其指定了实例名称“song”。

我将切换按钮代码更改为:

if (this.is_playing) {
    this.song.soundTransform = new SoundTransform(0, 0);
    this.is_playing = false;
} else {
    this.song.soundTransform = new SoundTransform(1, 0);
    this.is_playing = true;
}

现在音频存储在第2帧中。