質問

どのように私はAVAudioPlayerへのiPodライブラリの音楽ファイルを得ることができますか?

役に立ちましたか?

解決

SDKは、おそらく著作権侵害防止の理由から、(あなたがそれを使用して下さいAVAudioPlayerに行う必要があるだろうと)iPodのライブラリからファイルを読み込むための規定を持っていません。 iPodのライブラリの項目を再生するには、MPMusicPlayerControllerクラスを使用します。

編集:これはもはや正確であるのAVPlayerクラスの使用を記載している答えは、以下を参照してくださいません。

他のヒント

として、ダビデは、たとえば、あなたがメディアアイテムのコレクションに次のトラックの再生を管理する必要がこれより行うには多くの作業がある言及が、ここでMPMediaItemsのセットでそれを行うための一つの方法は、ユーザから選択ということですiPodのピッカー。 AssetURLは、それはあなたのMP3ファイルへのパスを与えるもの、あなたが使用している(例えばiPodのライブラリ:?//item/item.mp3 ID = -6889145242935454020)

NSURL *anUrl = [[mediaItems objectAtIndex: 0] valueForProperty:MPMediaItemPropertyAssetURL];
self.audioPlayerMusic = [[[AVPlayer alloc] initWithURL:anUrl] retain];                      
[self.audioPlayerMusic play];

はい、あなたはMPMusicPlayerControllerクラスに頼らずにSDKを使用してのiPodライブラリから曲を再生することができます。

より基本的なAVPlayerクラスが曲のNSUrlプロパティからMPMediaItemPropertyAssetURL値を使用してiPodのライブラリからオーディオファイルを扱うことができます。あなたは適切にすべての設定を取得するために多くの仕事をしなければならないが、それは行うことができます。

MPMusicPlayerControllerにdBの計量についての情報を取得するための任意の可能性はありますか?おそらく、仕事をするだろう、並列に記録するためのAVAudioSessionを開始?私は、ボリューム・スペクトログラフのいくつかの種類を構築するためにdBの値を必要としています。

- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection {
    NSURL *url = [[mediaItemCollection.items objectAtIndex:0] valueForProperty:MPMediaItemPropertyAssetURL];

    NSError *error;
    self.player = [[AVAudioPlayer alloc] url error:&error];

    if (!error) {
        [self.player prepareToPlay];
        [self.player play];
    }

    [mediaPicker dismissModalViewControllerAnimated:YES];
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top