如何从 iOS 中的音频剪辑中检索 PCM 样本数据?
Posted
技术标签:
【中文标题】如何从 iOS 中的音频剪辑中检索 PCM 样本数据?【英文标题】:How can I retrieve PCM sample data from an audio clip in iOS? 【发布时间】:2015-06-24 06:20:46 【问题描述】:我需要从 ios 中的 .wav 文件(或任何其他格式)中提取 PCM 音频样本。我还想使用麦克风从现场录音中获取相同的数据。
这可以使用 AVFoundation 来完成,还是我需要使用较低级别的 CoreAudio API?非常感谢 Swift 中的一个示例。我只是在寻找与单个音频样本相对应的基本浮点数组,以用于信号处理。
【问题讨论】:
嗨 Clay,很抱歉,如果您创建了这种类型的代码,如果您不介意,请提供给我。 【参考方案1】:AVFoundation
包含一个名为AVAssetReader
的类,可用于从声音文件中获取音频数据。 https://developer.apple.com/library/mac/documentation/AVFoundation/Reference/AVAssetReader_Class/index.html#//apple_ref/occ/instm/AVAssetReader/addOutput:
但是,最直接的方法可能是使用扩展音频文件服务和ExtAudioFileRead
函数:https://developer.apple.com/library/prerelease/ios/documentation/MusicAudio/Reference/ExtendedAudioFileServicesReference/index.html#//apple_ref/c/func/ExtAudioFileRead
扩展音频文件服务是一个 C API,因此您必须处理从 Swift 调用它。
【讨论】:
以上是关于如何从 iOS 中的音频剪辑中检索 PCM 样本数据?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 fread 和 fwrite 从文件中读取 pcm 样本?