使用 ActionScript®,可以在运行时控制声音。 使用 ActionScript,可以在 FLA 文件中创建交互和其他功能,仅使用时间轴是不能创建它们的。
AS3开发人员指南: 使用声音介绍了如何在ActionScript3.0中使用声音。
(仅限 Animate)Animate 不支持 ActionScript 2.0 和 ActionScript 1.0。
使用行为控制声音
通过使用声音行为(预先编写的 ActionScript 2.0)可以将声音添加至文档并控制声音的播放。 使用这些行为添加声音将会创建声音的实例,然后使用该实例控制声音。
ActionScript 3.0 和 Flash Lite 1.x 及 Flash Lite 2.x 不支持行为。
使用行为将声音载入文件
使用行为播放或停止声音
输入链接标识符和要播放或要停止的声音的实例名称,然后单击“确定”。
单击“确定”确认要停止所有声音。
使用 ActionScript 2.0 Sound 对象控制声音
使用 ActionScript 2.0 中的 Sound 对象将声音添加至文档并在文档中控制声音对象,例如在播放声音时调整音量或左右平衡。 有关详细信息,请参阅学习在 Flash 中使用 ActionScript 2.0 中的“创建声音控件”。
关于 ActionScript 2.0 onSoundComplete 事件
使用 ActionScript 2.0 Sound 对象的 onSoundComplete 事件可以在附加的声音文件结束时在 Animate 应用程序中触发一个事件。 Sound 对象是一个内置的对象,可用来控制 Animate 应用程序中的声音。 有关详细信息,请参阅《ActionScript 2.0 语言参考》中的“声音”部分。 附加的声音文件结束播放时,将自动调用 Sound 对象的 onSoundComplete 事件。 如果声音循环播放指定次数,则声音停止循环播放时将触发该事件。
Sound 对象有两个可与 onSoundComplete 事件结合使用的属性。 duration 属性是一个只读属性,表示附加到声音对象的声音样本的持续时间(以毫秒为单位)。 position 属性是一个只读属性,表示在每个循环中声音已播放的毫秒数。
使用 onSoundComplete 事件可以用多种方式处理声音,例如:
创建动态的播放列表或音序器
创建多媒体演示文稿,在进入下一个帧或场景前检查叙述是否结束
建立游戏,让声音和特定的事件或场景同步,并在不同的声音之间平滑地过渡
将图像变换与声音同步,例如当声音播放到一半时变换图像
用 Flash Player 访问 mp3 文件中的 ID3 属性
Adobe 的 Macromedia Flash Player 7 及更高版本支持 ID3 v2.4 和 v2.4 标记。 在此版本中,使用 ActionScript 2.0 attachSound() 或 loadSound() 方法加载 mp3 声音时,声音数据流的开始处就提供 ID3 标签属性。 onID3 事件在初始化 ID3 数据时执行。
Flash Player 6 (6.0.40.0) 和更高版本都支持带 ID3 v1.0 和 v1.1 标记的 mp3 文件。 使用 ID3 v1.0 和 v1.1 标记,属性在数据流的结束位置提供。 如果声音不包含 ID3v1 标签,则 ID3 属性将是未定义的。 用户必须安装 Flash Player 6 (6.0.40.0) 或更高版本,才能使 ID3 属性正常工作。
有关使用 ID3 属性的详细信息,请参阅《ActionScript 2.0 语言参考》中的 id3(Sound.id3 属性)。