作者回复: A1: 可以的; A2: mp3貌似不支持,并且现在App场景下生产几乎不会再使用mp3格式了; A3:底层应该使用的是OpenMax,硬件设备方面我没有了解过; A4: 不可以 A5:将填充好的PCM交给MediaCodec进行编码,时间相当于是这个PCM buffer代表的时间 A6: 看A5 A7: MediaCodec.createEncoderByType("audio/mp4a-latm"); A8:就是将outputBuffer放回MediaCodec中,这样MediaCodec才可以将编码成功的AAC再放进去,可以看那个原理图理解 A9: 一般底层(与音视频息息相关)用OC,上层(业务层)用swift A10: 你看的还是比较仔细的,这里是苹果自己的命名,使用这一个是兼容性最好的,如果真用另外的常量,兼容性不好的,但是即便使用这个速度也比ffmpeg编码AAC快的多。
作者回复: 理解是对的。