关于AMR音频文件在不同设备上播放的问题

2023-12-23

我这里遇到了一个很奇怪的问题。 我正在开发一个IM软件,需要在Android上播放另一个客户端录制的音频文件。 我得到的相同音频文件可以在 3GS(IOS 4.2.1) 设备和模拟器 4.2 上使用 AVAudioPlayer 播放。 但是当我尝试在iPhone4(iOS 4.3.3)上播放时,函数“play”总是返回NO。

我也用两台iPhone设备进行了尝试,iPhone客户端录制的音频文件在3GS和iPhone4上都可以播放。 所以我向Android开发人员询问了他们使用的记录参数。他们说他们使用的“AudioEncoder”是“DEFAULT”。还有一些其他参数如下:

**private AudioEncoder() {}
        public static final int DEFAULT = 0;
        /** AMR (Narrowband) audio codec */
        public static final int AMR_NB = 1;
        /** @hide AMR (Wideband) audio codec */
        public static final int AMR_WB = 2;
        /** @hide AAC audio codec */
        public static final int AAC = 3;
        /** @hide enhanced AAC audio codec */
        public static final int AAC_PLUS = 4;
        /** @hide enhanced AAC plus audio codec */
        public static final int EAAC_PLUS = 5;**

有人知道怎么回事吗?


我已经解决了这个问题。

iOS4.3及以上版本不再支持AMR格式。如果你想播放或录制一个,你必须使用一些其他工具(我使用的opencore-amr库)来转换格式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于AMR音频文件在不同设备上播放的问题 的相关文章

随机推荐