我想解码缓冲区或音频文件中的音频,并将其写入缓冲区以便在macOS和iOS上播放(我不想将其直接路由到硬件(。如果支持的话,我也想把它转换成另一种格式。我应该使用AVFoundation/CoreAudio API中的哪些类/服务来实现这一点?
AVFoundation
有一些类可以做所有这些事情。
AVAudioFile
,用于将音频从文件解码到PCM(AVAudioPCMBuffer
(- 用于在格式之间转换的
AVAudioConverter
AVAudioEngine
与可以回放AVAudioPCMBuffer
的AVAudioPlayerNode
如果您需要对延迟、设备进行更多控制,或者如果您在AVFoundation
中遇到错误,您可能会选择使用CoreAudio
和AudioToolbox
。