Ios “与”的区别是什么;playbackBufferFull“播放;及;Playbackufferempty“;财产?

Ios “与”的区别是什么;playbackBufferFull“播放;及;Playbackufferempty“;财产?,ios,avplayer,avplayeritem,Ios,Avplayer,Avplayeritem,我已经看到了AVPlayerItem的两个属性: @property (nonatomic, readonly, getter=isPlaybackBufferFull) BOOL playbackBufferFull; @property (nonatomic, readonly, getter=isPlaybackBufferEmpty) BOOL playbackBufferEmpty; 现在,以下是苹果的文档说明: playbackufferfull: 此属性报告用于播放的数据缓冲区

我已经看到了AVPlayerItem的两个属性:

@property (nonatomic, readonly, getter=isPlaybackBufferFull) BOOL playbackBufferFull;

@property (nonatomic, readonly, getter=isPlaybackBufferEmpty) BOOL playbackBufferEmpty;
现在,以下是苹果的文档说明:

playbackufferfull:

此属性报告用于播放的数据缓冲区已达到 容量。尽管播放缓冲区已达到容量,但仍有可能 没有足够的统计数据支持
playbackLikelyToKeepUp
预测
YES

playbackufferempty:

它表示播放已消耗所有缓冲媒体,并且 播放将暂停或结束


从这些陈述中,我了解到:

playbackufferfull:

整个数据已加载以播放。例如,我正在从URL播放一段5分钟长的视频。当所有这些内容加载到最后时,这些将是真实的

playbackufferempty:

到目前为止,实际播放已经消耗了所有加载的缓冲区。例如,直到2.3分钟的数据已经加载,播放时间也已经达到,并且没有更多的内容可以显示。(我想现在是开始旋转木马的时候了,一个指示器)

我误解了什么吗?如果是,请纠正我


欢迎有深度的知识或建议

我不是这方面的专家,但我的理解是:

视频以压缩格式存储。在需要显示帧之前,它们不会被解压缩。这在播放缓冲区中实时发生,因为视频正在显示

回放缓冲区是准备显示的解压缩帧的缓冲区。 如果已满,并不意味着已准备好播放完整视频。播放缓冲区只有几秒钟长。这意味着播放缓冲区保留的几秒钟播放时间已满


如果它为空,则表示没有准备好播放的视频,因此播放要么完成,要么在加载更多内容时冻结并显示“缓冲”消息。

我对此不是专家,但我的理解是:

视频以压缩格式存储。在需要显示帧之前,它们不会被解压缩。这在播放缓冲区中实时发生,因为视频正在显示

回放缓冲区是准备显示的解压缩帧的缓冲区。 如果已满,并不意味着已准备好播放完整视频。播放缓冲区只有几秒钟长。这意味着播放缓冲区保留的几秒钟播放时间已满


如果它是空的,则表示没有准备好播放的视频,因此播放要么完成,要么将冻结并显示“缓冲”消息,同时加载更多内容。

Duncan C,这增加了我的理解。。。upvoted@NSPratik,如果我回答了你的问题,那么你应该接受我的回答。(支持投票很感激,但完全取决于你。)邓肯C,这增加了我的理解。。。upvoted@NSPratik,如果我回答了你的问题,那么你应该接受我的回答。(感谢您的支持,但完全由您决定。)