我在我的应用程序中使用了seekToTime,它的工作正常。但我想知道更多关于它的信息。这就是,如果我有一个1分钟的流媒体视频文件,现在我想播放它从第15次到第2次45 (前15秒和最后15秒将不会播放)。
我该怎么做呢?
我知道使用seekToTime,我可以从15秒开始播放一个视频,但是如何在45秒时停止播放,并通过视频在指定时间内播放的方法得到注意?
CMTime timer = CMTimeMake(15, 1);
[player seekToTime:timer];上面的代码将我带到第15秒的流文件,但是如何在45秒停止它并得到通知呢?
我搜了很多遍,但没有得到任何信息。
谢谢
编辑:
正如@codeghost建议的那样,只需使用forwardPlaybackEndTime即可。
您可以简单地使用:
yourAVPlayerItem.forwardPlaybackEndTime = CMTimeMake(10, 1);这里10点是AVPlayerItem比赛的时间。
发布于 2012-05-16 08:57:07
在您的forwardPlaybackEndTime上设置AVPlayerItem属性。
发布于 2012-05-16 09:50:06
我不知道在AVPlayer中是否存在内置功能,但我要做的是构建一个函数并使用以下方法调用它:
[self performSelector:@selector(stopPlaying) withObject:nil afterDelay:45];
-(void)stopPlaying{
[player pause];
}这将停止播放45秒后,当然,你可以把45秒,任何数量的时间,你想。
发布于 2013-05-03 08:39:35
为此,您可以使用[AVPlayer addPeriodicTimeObserverForInterval:queue:usingBlock:]。
定期获取AVPlayer.currentTime,并在确切的时间暂停或停止。
https://stackoverflow.com/questions/10615038
复制相似问题