1

MPMediaItemをNSDataに変換してデータベースに保存しました。次に、そのNSDataをMPMediaItemに変換して、メディアプレーヤーでその曲を再生する必要があります。以下のコードを使用して、MPMediaItemをNSDataに変換します。

NSURL *url = [song valueForProperty: MPMediaItemPropertyAssetURL];

AVURLAsset *songAsset = [AVURLAsset URLAssetWithURL: url options:nil];

AVAssetExportSession *exporter = [[AVAssetExportSession alloc] initWithAsset: songAsset
                                                                  presetName: AVAssetExportPresetPassthrough];

exporter.outputFileType = @"public.mpeg-4";
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *exportFile = [documentsDirectory stringByAppendingPathComponent:           
                        @"exported.mp4"];

NSURL *exportURL = [[NSURL fileURLWithPath:exportFile] retain];
exporter.outputURL = exportURL; 

// do the export
// (completion handler block omitted) 
[exporter exportAsynchronouslyWithCompletionHandler:
 ^{
     NSData *data = [NSData dataWithContentsOfFile: [documentsDirectory 
                                                     stringByAppendingPathComponent: @"exported.mp4"]];


 }];

NSDataをMPMediaItemに変換する方法を教えてください。

4

1 に答える 1

1

できません。は iPod ライブラリ内のMPMediaItemアイテムを表しますが、サードパーティのアプリはそのライブラリに何も追加できません。

ただし、オブジェクトをファイルに書き込み、NSDataその URL をAVPlayerItem/AVPlayerまたはMPMoviePlayerController(名前に惑わされないでください。音声のみのファイルも再生できます) とともに使用することもできます。

于 2012-04-23T10:37:21.257 に答える