我想要播放.mov文件一次,然后在播放第二个重复播放的.mov文件后直接播放。我试过使用睡眠和计时器,以及AVqueue播放器,我只是不能让他们中的任何一个工作。有没有办法使用playbackState或持续时间播放视频?
我正在使用MPMoviePlayer执行以下操作(没有复杂的事情)..
NSString *stringPath1 = [[NSBundle mainBundle] pathForResource:@"Movie1" ofType:@"mov"];
NSURL *url1= [NSURL fileURLWithPath:stringPath1];
mpc = [[MPMoviePlayerController alloc] initWithContentURL:url1];
[mpc setMovieSourceType:MPMovieSourceTypeFile];
mpc.controlStyle = MPMovieControlStyleNone;
mpc.view.frame = CGRectMake(-200, 100, 1152, 600);
mpc.repeatMode = MPMovieRepeatModeNone;
[self.view addSubview:mpc.view];
[mpc play];
NSString *stringPath2 = [[NSBundle mainBundle] pathForResource:@"Movie2" ofType:@"mov"];
NSURL *url2= [NSURL fileURLWithPath:stringPath2];
mpc2 = [[MPMoviePlayerController alloc] initWithContentURL:url2];
[mpc2 setMovieSourceType:MPMovieSourceTypeFile];
mpc.controlStyle = MPMovieControlStyleNone;
mpc.view.frame = CGRectMake(-200, 100, 1152, 600);
mpc.repeatMode = MPMovieRepeatModeOne;
[self.view addSubview:mpc.view];
[mpc play];
我可以在这些代码之间加入什么,以便第二部电影只在第一部电影播放完毕后加载?
感谢。
答案 0 :(得分:0)
您应该尝试MPMoviePlayerPlaybackStateDidChangeNotification
注册此通知,添加观察者,一旦收到通知,您就可以播放下一部电影。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayerPlaybackStateChanged:) name:MPMoviePlayerPlaybackStateDidChangeNotification object:nil];