MPMoviePlayerController Performance Hit

我使用MPMoviePlayerController,因为我想播放电影。MPMoviePlayerController Performance Hit

一个问题。当我创建MPMoviePlayerController时,该应用会停下来。

这是我的代码:

NSString *path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"m4v"]; 

NSURL *videoURL = [NSURL fileURLWithPath:path];

moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];

moviePlayer.scalingMode=MPMovieScalingModeFill;

moviePlayer.controlStyle=MPMovieControlStyleNone;

moviePlayer.shouldAutoplay=NO;

[[NSNotificationCenter defaultCenter] addObserver:self

selector:@selector(movieRestartCallback:)

name:MPMoviePlayerPlaybackStateDidChangeNotification

object:nil];

[moviePlayer.view setFrame:CGRectMake(20, 20, 280, 200)];

[self.view addSubview:moviePlayer.view];

`

为什么应用程序停止? 这个问题解决方法吗?

回答:

我认为你可以使用多线程功能。

NSOperationQueue是线程安全的(您可以在不需要锁的情况下从不同的线程向其添加操作),并且可以将NSOperation对象链接在一起。

您可以使用以下代码捕捉来使用它们。

NSOperationQueue *queue = [NSOperationQueue mainQueue]; 

NSBlockOperation *operation = [NSBlockOperation blockOperationWithBlock:^{

// your code here

}];

[queue addOperation:operation];

我希望对你有帮助。

回答:

如果您查看MPMoviePlayerController的文档,您会发现在示例中,即使将电影播放器​​添加到视图之前,它们也会调用prepareToPlay

我会加上[mediaPlayer prepareToPlay]你设置的球员。

MPMediaPlayback Protocol Reference说: “以尽量减少播放延迟,可以调用播放以前调用此方法”

以上是 MPMoviePlayerController Performance Hit 的全部内容, 来源链接: utcz.com/qa/265764.html

回到顶部