在forwardPlaybackEndTime之后恢复AVPlayer

我已经创build了一个AVPlayer并设置forwardPlaybackEndTime使一个本地video停在给定的时间戳。 果然,video在我请求的时候停下来了。 都好。

现在,我希望video在用户操作触发后继续(例如,触摸button)。 不幸的是,如果没有从一开始就重新开始video,我似乎无法做到这一点。

我会把所有的AVPlayer设置代码(这些代码主要来自AV Foundation编程指南 ),但是给出这些variables:

 AVPlayer *avPlayer; AVPlayerItem *playerItem; 

我可以像这样设置结束时间:

 [playerItem setForwardPlaybackEndTime: CMTimeMake(30, 30)]; 

为了尝试简历,我试过这个:

 [playerItem setForwardPlaybackEndTime: CMTimeMake(30, 30)]; [avPlayer setRate: 1.0]; 

没有骰子。 我也尝试设置结束时间和调用play 。 没有运气。 我已经试过seekToTime把播放头放在video停止的地方,以防万一。 它不。

有人可以解释如何使这项工作? 谢谢!

尝试将forwardPlaybackEndTime设置回默认值, kCMTimeInvalid然后继续播放video。

 [playerItem setForwardPlaybackEndTime: kCMTimeInvalid]; [playerItem seekToTime: CMTimeMake(30, 30) toleranceBefore: kCMTimeZero toleranceAfter: kCMTimeZero]; [avPlayer play];