9

iPodトラックのコンテンツ(生/サンプルデータ)を取得するにはどうすればよいですか?「RingtoneDesigner」やiMovieのようなアプリを見たことがありますが、どのapiを使用しているのか、何をしているのかわかりません。iMovieはプライベートAPIを使用していると想像できますが、「Ringtone Designer」はサードパーティのアプリであるため、パブリックAPI関数を使用できる必要があります。

4

1 に答える 1

14

私はこれを自分で行っていませんが、ドキュメントによると、これらは(大まかに)手順です:

  1. iPodライブラリからMPMediaQuery1つまたは複数のオブジェクトを取得するためのを作成します。MPMediaItem
  2. それらのメディアアイテムに、URLを付けて尋ねます-[MPMediaItem valueForProperty: MPMediaItemPropertyAssetURL]
  3. URLからを作成AVURLAssetします。
  4. AVAssetReaderアセットのインスタンスを作成します。
  5. のインスタンスを1つ以上作成しAVAssetReaderTrackOutput(アセットのトラックごとに1つ)、を使用してアセットリーダーに追加します-[AVAssetReader addOutput:]
  6. を呼び出し-[AVAssetReader startReading]ます。
  7. すべてのデータを読み取るまで-copyNextSampleBuffer、各オブジェクトを呼び出します。AVAssetReaderTrackOutput

詳細については、これらすべてのクラスのドキュメントを参照してください。

于 2010-10-11T10:54:15.657 に答える