Luk*_*uke 2 media iphone video objective-c mpmovieplayercontroller
我无法让MPMoviePlayerController在设备上工作.它在模拟器中运行良好,播放五秒钟视频,然后将适当的回调(myMovieFinishedCallback:)发送到视图控制器.当它在设备上运行时,电影永远不会出现,即使我可以毫无问题地追踪[player play].myMovieFinishedCallback:永远不会被调用,也没有错误.正在复制所有正确的资源.知道发生了什么事吗?
这是我用来创建和使用播放器的代码,
更新:我已切换到使用MPMoviePlayerViewController.在设备上电影仍然无法播放,我只是无限期地获得旋转进度轮.即使我将播放器设置为MPMovieControlStyleNone,控件也会短暂闪烁 - 有人知道如何解决这个问题吗?电影是五秒钟,大约1.5 MB,如果这有任何区别.
更新:其他电影文件工作,但我无法弄清楚如何使我的工作.我已经尝试过它作为.mov和.mp4,设置似乎是正确的.知道什么会导致MPMoviePlayer仅在设备上永久显示进度轮吗?
- (void) playMovie
{
NSString *url = [[NSBundle mainBundle]
pathForResource:@"myMovie"
ofType:@"mp4"];
MPMoviePlayerViewController *playerViewController =
[[MPMoviePlayerViewController alloc]
initWithContentURL:[NSURL fileURLWithPath:url]];
playerViewController.moviePlayer.controlStyle = MPMovieControlStyleNone;
playerViewController.moviePlayer.scalingMode = MPMovieScalingModeFill;
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(myMovieFinishedCallback:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:[playerViewController moviePlayer]];
playerViewController.view.frame = movieView.frame;
[movieView addSubview:playerViewController.view];
//---play movie---
MPMoviePlayerController *player = [playerViewController moviePlayer];
[player play];
}
Run Code Online (Sandbox Code Playgroud)
你的代码对我来说很好,所以有两种可能性会浮现在脑海中(可能还有其他的):
我会尝试使用不同的视频.也许你可以确认你之前在设备上玩过.这是我投入的小型演示项目:http://www.cimgf.com/files/PlayMovie.zip