我正在尝试创建一个iPad应用程序,我需要播放包含一些章节标记的快速电影。当达到每个标记时,我需要在视频顶部显示一个小的叠加层。 有没有办法在每次达到标记时触发事件/功能?如果是这样,怎么样?
我没有兴趣从头开始编写一个带编解码器处理的整个电影播放器,因为这超出了我的安慰范围 - 所以我希望这可以使用MPMoviePlayer或类似的东西。
非常感谢任何帮助! :)
答案 0 :(得分:0)
注册以接收以下通知:
#define MPAVControllerTimeDidJumpNotification @"MPAVControllerTimeDidJumpNotification"
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleTimeChanged:) name:MPAVControllerTimeDidJumpNotification object:nil];
-(void)handleTimeChanged:(NSNotification *)notification
{
static int i = 0;
NSDictionary * userInfo = notification.userInfo;
int lastPositionInSeconds = [[userInfo valueForKey:@"MPAVControllerTimeParameter"] intValue];
if(lastPositionInSeconds > markers[i])
{
i++;
[self showOverlay: i];
}
}
还注册接收MPMoviePlayerPlaybackDidFinishNotification通知以停止侦听MPAVControllerTimeDidJumpNotification通知。