2

我有兴趣使用 iPhone 上的媒体播放器框架来访问用户库中的音频。我希望能够加载给定的音频文件,然后对其进行一些专门的过滤。

理想情况下,我希望能够直接加载音频文件(或其中的一部分以进行流式传输),然后使用音频转换器服务执行解压缩。一旦我有了线性 PCM 数据,我想在将音频直接提供给音频队列之前对其执行一些过滤。

这在 iPhone 上可行吗?

如果是这样,谁能告诉我如何直接访问音频文件?是否只是使用“URL”使用 NSFile 加载它(大概我通过 MPMediaItemPropertyAssetURL 获得)?还是我需要做一些更复杂的事情?

干杯!

4

1 回答 1

2

您从中获取的 URLMPMediaItemPropertyAssetURL是资产库 URL。您可以使用它来初始化AVURLAsset. 然后使用资产创建一个AVAssetReader并添加一个AVAssetReaderOutputAVAssetReaderAudioMixOutput或的实例AVAssetReaderTrackOutput,具体取决于您的需要)。后一个对象最终将允许您访问媒体数据 ( -copyNextSampleBuffer)。

于 2011-03-22T13:44:08.673 回答