我正在使用AVPlayer播放来自互联网的直播 . AVPlayer可以暂停,但在恢复时它从暂停时开始,就像TiVO一样 . AVPlayer没有stop方法 .
如何让它继续播放当前正在播放的内容(就好像你关闭了汽车收音机并重新开启)?
-(void)seekToTime:(CMTime)time
使用此方法来获取文件的开头
要停止 AVPlayer :
AVPlayer
[player replaceCurrentItemWithPlayerItem:nil];
这将释放它及其相关资产消耗的所有内存和处理器资源 . 就那么简单 .
SeekToTime不会停止音频,所以一旦你到达终点,如果你只调用seekToTime,它就会像循环一样重新开始播放 . 您可以使用带有回调的以下版本,在搜索完成后立即暂停视频/音频,以便重置并同时停止 .
[_player seekToTime:CMTimeMake(0, 1) completionHandler:^(BOOL finished) { [_player pause]; }];
[player pause]; [item_ removeObserver:self forKeyPath:@"status" context:nil]; [item_ removeObserver:self forKeyPath:@"playbackBufferEmpty" context:nil]; [item_ removeObserver:self forKeyPath:@"playbackLikelyToKeepUp" context:nil]; [item_ removeObserver:self forKeyPath:@"timedMetadata" context:nil]; player=nil;
4 回答
-(void)seekToTime:(CMTime)time
使用此方法来获取文件的开头
要停止
AVPlayer
:这将释放它及其相关资产消耗的所有内存和处理器资源 . 就那么简单 .
SeekToTime不会停止音频,所以一旦你到达终点,如果你只调用seekToTime,它就会像循环一样重新开始播放 . 您可以使用带有回调的以下版本,在搜索完成后立即暂停视频/音频,以便重置并同时停止 .