我目前正在使用AVAudioPCMBuffer在一个简单的游戏中播放一个.wav文件。但是,在检查文档时,我遇到了其他地方从未见过的另外两种类型的缓冲区: AVAudioBuffer和AVAudioCompressedBuffer。
我应该使用哪个缓冲区,为什么?任何帮助都将不胜感激!
发布于 2017-06-26 19:21:43
AVAudioBuffer是AVAudioPCMBuffer和AVAudioCompressedBuffer的超类。
您不应该在实践中处理AVAudioBuffer它,通常您只是使用它的子类。
AVAudioPCMBuffer用于播放未压缩的、PCM编码的数据(例如.wav文件包含的内容)。AVAudioCompressedBuffer支持不同的压缩格式(参见Supported Audio file formats in iPhone)对于您的特定用例,我建议使用一种更简单的方式来播放该文件:AVAudioFile(forReading: URL),您可以使用自动处理缓冲的scheduleFile(_:, at:)将它直接输入到AVAudioPlayerNode中。
https://stackoverflow.com/questions/44390034
复制相似问题