我在 Android 4.1 上使用 MediaCodec 将 wav 文件的 pcm 轨道编码为 aac,在我的 S3 上,有两个编码器,OMX.google.aac.encoder 和 OMX.SEC.aac.enc,如果调用 createEncoderByType,则使用第一个,但它不起作用,无法播放输出(没有声音),如果用“OMX.SEC.aac.enc”调用createByCodecName,它可以工作。在我的 HTC ONE 上,只有“OMX.google.aac.encoder”,并且不起作用。我认为我的代码没有问题,因为它是从 google 复制的,并且第二个编码器可以工作。
顺便说一句,我在 aac 流中添加了 adts 标头。