2013-01-12 94 views
7

我想使用MPMoviePlayerController從選定的視頻文件中提取多個圖像。以下是我寫的代碼。無法使用MPMoviePlayerController從視頻獲取多個圖像。 OSStatus -12433

movie = [[MPMoviePlayerController alloc] initWithContentURL:[info objectForKey:UIImagePickerControllerMediaURL]]; 

NSNumber *time1 = [NSNumber numberWithInt:1]; 
NSNumber *time2 = [NSNumber numberWithInt:3]; 
NSNumber *time3 = [NSNumber numberWithInt:5]; 

NSArray *times = [NSArray arrayWithObjects:time1,time2,time3,nil]; 

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleThumbnailImageRequestFinishNotification:) name:MPMoviePlayerThumbnailImageRequestDidFinishNotification object:movie]; 

[movie requestThumbnailImagesAtTimes:times timeOption:MPMovieTimeOptionExact]; 

這裏是通知

-(void)handleThumbnailImageRequestFinishNotification:(NSNotification*)note 
    { 
    NSDictionary *userinfo = [note userInfo]; 
    NSError* value = [userinfo objectForKey:MPMoviePlayerThumbnailErrorKey]; 

    if (value!=nil) 
    { 
     NSLog(@"Error: %@", [value debugDescription]); 
    } 
    else 
    { 
     _imageView.image = [userinfo valueForKey:MPMoviePlayerThumbnailImageKey]; 
    } 
    } 

處理程序不過,我得到以下錯誤信息:

Error: Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x1d8a63d0 {NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x1d8b7b50 "The operation couldn’t be completed. (OSStatus error -12433.)", NSLocalizedFailureReason=An unknown error occurred (-12433)} 

誰知道OSStatus錯誤-12433說明?我試圖搜索有關OSStatus錯誤代碼的文檔,但不成功。

任何幫助將不勝感激。

回答

0

我得到確切同樣的錯誤OSStatus -12433,我使用AVAssetImageGenerator

原來我的問題是造成我正在請求縮略圖的時間。以下是工作時間和發生錯誤的時間示例。

CMTime timeGivesError = CMTimeMakeWithSeconds(0.0, 0.0); 
CMTime timeWorks = CMTimeMakeWithSeconds(0.0, 1.0); 
CGImageRef image = [gen copyCGImageAtTime:timeWorks actualTime:&actualTime error:&error]; 

我會嘗試調整你的時間,看看是否有將工作的另一種選擇。

3

我不得不加倍漂浮這樣:

NSNumber *time1 = [NSNumber numberWithFloat:1.f]; 
+1

這使得它爲我工作。 [self.videoPlayer requestThumbnailImagesAtTimes:@ [@(1.f)] timeOption:MPMovieTimeOptionNearestKeyFrame]; – user1270061

相關問題