当 Android 设备不支持强制音频编码器时,您会得到:(X=编码器的数字索引)
E/MediaProfiles(4048):找不到给定的音频编码器 X A/AudioSource(4048):frameworks/base/media/libstagefright/AudioSource.cpp:58 CHECK(channels == 1 || channels == 2) 失败。A/libc(4048): 0xdeadbaad (code=1) 处的致命信号 11 (SIGSEGV) 在本机代码中。没有例外的反应。应用程序只是强制关闭。
如果实际支持 AAC AMR-NB 和 AMR-WB,有什么方法可以查询 Android >3.x 设备?文档(http://developer.android.com/guide/appendix/media-formats.html)说这些是核心媒体格式,因此始终受支持。一些实际和普通的手机(主要品牌)没有。
MediaCodec.createByCodecName(String name)
和
Get supported Codec for Android device
仅适用于 API16=Android 4.1 但有问题的设备是 4.0.x 。它也没有列出 AMR-NB 和 AAC。