MPMoviePlayerController视频无法播放

时间:2012-12-11 12:24:44

标签: ios mpmovieplayercontroller

我在我的应用程序中使用了MPMoviePlayerController  我得到了正确的URL,但MPMoviePlayer不播放视频,只显示黑屏  我的代码如下:

[video setImage:[UIImage imageNamed:@"video_active.png"] forState:UIControlStateNormal];
 NSString *filename=[NSString stringWithFormat:@"%@.mp4",[appdel.TempVideoUrl valueForKey:tag]];
 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 NSString *documentsDirectory = [paths objectAtIndex:0];
 NSString *filePath = [documentsDirectory stringByAppendingPathComponent:filename];
 NSURL *movieURL = [NSURL fileURLWithPath:filePath] ;
 theMovie = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
 theMovie.view.frame = CGRectMake(106, 18, 216, 235);
 [uploadview addSubview:theMovie.view];

  // Play the movie.
 [theMovie pause];

我得到了这样的网址:     文件://localhost/var/mobile/Applications/6E1D4CB7-A08D-438B-9FE7-E2FD9B7B5EEC/Documents/136_1355227629.mp4

1 个答案:

答案 0 :(得分:2)

在致电[theMovie prepareToPlay];之前添加[theMovie play];

  

<强> prepareToPlay

     

准备要播放的电影播放器​​。 (所需的)

     

- (void)prepareToPlay

     

<强>讨论

     

如果电话播放器在您拨打电话时尚未准备好播放   play方法,该方法自动调用此方法。但是,要   最小化播放延迟,请在调用播放前调用此方法。

     

调用此方法可能会中断电影播放器​​的音频会话。   有关中断以及如何重新安装的信息,请参阅音频   会话编程指南。可用性

Available in iOS 3.2 and later.
     

在MPMediaPlayback.h中声明

此外,您可以使用isPreparedToPlay 检查电影播放器​​是否已准备就绪。

请参阅此link了解更多信息。