不能够从MPMediaItem(mp3歌曲)转换到NSData
我曾尝试以下代码:
这些是我的MPMediPickerController的委托方法:
- (void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection { // Dismiss the media item picker. [self dismissModalViewControllerAnimated: YES]; NSLog(@"%@ %d",mediaItemCollection,mediaItemCollection.count); NSArray *newMediaItem= [mediaItemCollection items]; MPMediaItem *item=[[newMediaItem objectAtIndex:0] retain]; [self uploadMusicFile:item]; }
这是我的自定义方法MPMediaItem NSData:
- (void) uploadMusicFile:(MPMediaItem *)song { 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; [exporter exportAsynchronouslyWithCompletionHandler: ^{ NSData *data = [NSData dataWithContentsOfFile: [documentsDirectory stringByAppendingPathComponent: @"exported.mp4"]]; NSLog(@"%@",data); }]; }
我在NSlog中得到“null”。
我也检查这个post:
如何将nsdata转换为MPMediaitem的歌曲iOS Sdk
但没有得到解决scheme。
我正在使用xcode 4.6和ios 6.1。
有人可以告诉我这里有什么问题吗?
- 100天学习编码。 100天制作一个应用程序。 我可以做吗?
- iOS – 用MagicalRecordpipe理两个CoreData模型
- 用AVCaptureSession在iOS上读取QRCodes – alignment问题?
- iOS上通过RTMP上的H264videostream
- 我的代码年— If(2017 isEnding){reflectAndSetNewGoals()};
- 如何生成离子apk或ios没有额外的应用程序?
- NSNotification.Name.UIKeyboardWillShow崩溃 – 无法找到原因
- 模块“Alamofire”没有名为“请求”的成员
- iOS AVExportSession仅在修剪video时失败