2012-04-04 164 views
0

我正在做一个应用程序在ipad上,它将捕获视频,它将保存在照片库中。但我想要的是我想播放该视频从照片库中选择,并需要在那里播放。我看到很多使用MPMoviePlayerController的例子,但我看到的是他们在那里添加视频,他们播放该视频。有没有办法为我下面提到的代码写道。 我的代码放在这里如何通过从PhotoLibrary获取视频播放视频

这其中我打电话的照片库

-(IBAction) goToPhotos:(id)sender { 

    ipc = [[UIImagePickerController alloc] init]; 
    ipc.delegate = self; 
    ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 
    ipc.allowsEditing = YES; 
    UIPopoverController *videoController = [[UIPopoverController alloc]initWithContentViewController:ipc]; 
    // pop.popoverContentSize = CGSizeMake(300, 900); 
    [videoController presentPopoverFromRect:[sender frame] inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES]; 
    [ipc release]; 
    [self presentModalViewController:ipc animated:YES]; 

} 

我在这里呼吁MPMoviePlayerController。代码放在这里

- (void)viewDidLoad 
{  
    NSString *url = [[NSBundle mainBundle] 
        pathForResource:@"Stock_Footage_Demobroadband" 
        ofType:@"mp4"]; 
    MPMoviePlayerViewController *playerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL fileURLWithPath:url]]; 

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(movieFinishedCallback:) name:MPMoviePlayerPlaybackDidFinishNotification object:[playerViewController moviePlayer]]; 

    [self.view addSubview:playerViewController.view]; 

    //---play movie--- 
    MPMoviePlayerController *player = [playerViewController moviePlayer]; 
    [player play]; 

    [super viewDidLoad];  
} 

- (void) movieFinishedCallback:(NSNotification*) aNotification 
{ 
    MPMoviePlayerController *player = [aNotification object]; 
    [[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification 
    object:player]; 
    [player stop]; 
    [self.view removeFromSuperview]; 
    [player autorelease];  
} 

任何一个可以告诉我,我怎样才能得到路径photolibrary我需要在那边播放视频。

NSString *url = [[NSBundle mainBundle] 
         pathForResource:@"Stock_Footage_Demobroadband" 
         ofType:@"mp4"]; 

我们可以修改这条线上,有什么办法,我可以得到路径的照片库,这样我可以在那里玩视频。帮助我谢谢!

回答

0

您需要为UIImagePickerController实现委托方法。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    NSURL *movieURL = [info objectForKey:UIImagePickerControllerMediaURL]; 

    MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL: movieURL]; 
    //finish implementing the movie player controller 

} 
+0

感谢,但我之前这种方法实现.. – Kiran 2012-04-04 09:08:52

+0

u能告诉我,我们可以改变这一行,是有,我们可以通过更换这行 – Kiran 2012-04-04 09:09:51

+0

的NSString * URL = [[一个NSBundle写照片库路径任何方式mainBundle] pathForResource:@“Stock_Footage_Demobroadband” ofType:@“mp4”]; – Kiran 2012-04-04 09:10:33