9

如何获取 iPod 曲目的内容(原始/样本数据)?我见过像“铃声设计器”和 iMovie 这样的应用程序可以做到这一点,但我不知道他们使用哪个 api 或他们做了什么。我可以想象 iMovie 使用私有 api,但“铃声设计器”是第三方应用程序,因此必须使用公共 api 功能。

4

1 回答 1

14

我自己没有这样做,但根据文档,这些是步骤(大致):

  1. 创建一个以从 iPod 库MPMediaQuery中检索一个或多个对象。MPMediaItem
  2. 使用 向这些媒体项询问其 URL -[MPMediaItem valueForProperty: MPMediaItemPropertyAssetURL]
  3. AVURLAsset从 URL创建一个。
  4. AVAssetReader为资产创建一个实例。
  5. 创建一个或多个实例AVAssetReaderTrackOutput(一个用于资产的每个轨道)并将它们添加到资产阅读器中-[AVAssetReader addOutput:]
  6. 打电话-[AVAssetReader startReading]
  7. 调用-copyNextSampleBuffer每个AVAssetReaderTrackOutput对象,直到您读取所有数据。

有关详细信息,请参阅所有这些类的文档。

于 2010-10-11T10:54:15.657 回答