我添加了 <assets path="assets/audio" rename="audio" />
到 application.xml 文件。
我通过调用 Assets.getSound("2_3_1.mp3");
将“mp3”文件加载到音频文件夹中, 然后使用 .play();
该(声音)对象上播放文件的方法。
声音在 flash
中播放目标。
但不要玩 cpp
目标。我的应用主要针对 Android (cpp) 和 iOS (c#) 目标。
调试 windows (cpp)
时目标,它在控制台中显示这些错误:
Sound.hx:99: Error: Could not load "audio/2_3_1.mp3"
Error opening sound file, unsupported type.
Error opening sound data
Done(0)
最佳答案
我相信 mp3 在 Windows 和大多数其他目标上不受支持,因为与该格式的许可成本相关的决定。
Flash 目标是一个异常(exception),因为 Adobe 有一项协议(protocol),允许开发人员使用该格式而无需支付版税。此处对此进行了更多讨论:http://www.openfl.org/blog/2013/09/18/to-mp3-or-not-to-mp3/
解决方法是对非 Flash 平台的音频使用 .ogg 格式,并通过在 Project.xml 中指定 Assets 路径来包含每个平台的音频文件,例如:
<assets path="assets/music" type="music" if="flash"> <!-- mp3s --> </assets>
<assets path="assets/music" type="music" unless="flash"> <!-- oggs --> </assets>
关于android - openfl - 音频不适用于 cpp 目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31829211/