如何暂停/恢复AVPlayer预加载

7

我正在使用AVPlayer播放来自互联网的视频,是否有一种方式可以在暂停/恢复播放时暂停/恢复预加载视频?


这可能会有所帮助 https://dev59.com/7Y_ea4cB1Zd3GeqPRa3f - J.Wang
3个回答

5

一种方法是将您的 AVURLAsset 保存到变量中 (tempAsset = player.playerItem.asset),然后将您的播放器中的 playerItem 替换为 nil。当你准备再次播放时,可以从之前保存的资源创建一个新的 playerItem


1

我有同样的问题,我在我的代码中使用了缓冲限制来停止预加载。这对我有效。

你也可以尝试设置缓冲限制,在暂停或恢复时停止预加载视频。

希望这能帮到你。


你如何使用AVFoundation在代码中设置缓冲区限制? - schmittsfn

0
播放器在播放头之前应该从网络缓冲媒体的持续时间,以防止播放中断。
player.currentItem?.preferredForwardBufferDuration

当你使用AVPlayerItem时,可以为缓冲区设置时间间隔。 示例:
AVPlayerItem(). preferredForwardBufferDuration = TimeInterval(exactly: 100)!

请解释一下你的解决方案,以便其他人可以从中获得一些见解。 - Alan
你应该为你的代码写一个简短的解释。 - Rajat Jain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接