iphone - 获取 iPod 轨道的音乐数据

标签 iphone objective-c ios4 ipod

<分区>

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

最佳答案

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

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

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

关于iphone - 获取 iPod 轨道的音乐数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3905240/

相关文章:

iphone - UIGestureRecognizers 的自定义操作(带有自定义参数)

ios - 当您尝试在电子邮件中打开 PDF 时如何列出我的应用程序?

iPhone - MFMailComposeViewController 委托(delegate)不兼容的类型

iphone - 用于我的 iPhone 应用程序的 Google Places API

iphone - VoiceOver 读取 iPhone 应用程序中上一个 View 的标签?漏洞?

objective-c - cocoa 释放静态变量

ios - 更改单元格 AccessoryView

ios - 延迟iOS中的http重试请求任务

iphone - OpenGL ES可滚动ListBox裁剪问题

objective-c - 不兼容的 Objective-c 类型警告