gpt4 book ai didi

objective-c - SeekToTime 只为前进顺利工作,向后卡住

转载 作者:可可西里 更新时间:2023-11-01 00:36:41 25 4
gpt4 key购买 nike

我知道有很多帖子,但没有一个有帮助。我的设备上有不同 FPS 的视频(如果有关系的话)。我正在计算准确的 CMTime(如果我们将它们转换为秒,它们将为 10.33333、10.4444 等)。我正在寻找使用此代码:

  self.player.seekToTime( time, toleranceBefore: kCMTimeZero, toleranceAfter: kCMTimeZero)

它只能顺畅地向前运行,而向后则不然。有什么想法吗?

最佳答案

这是因为压缩视频使用“关键帧”。关键帧是完全渲染的视频帧,但并非每一帧都是关键帧。关键帧之后的帧仅存储为与该关键帧的增量差异。这意味着当你在视频中向前移动时,播放器显示一个关键帧,移动到下一帧并绘制变化,移动到下一帧,等等。当通过视频向后移动时,播放器唯一可以实际显示的东西是关键帧。通常它会使用编码数据来显示关键帧以及关键帧之后的几帧,这样您就可以看到视频中那个点发生了什么。解决此问题的唯一方法是将视频解压缩到缓冲区中并通过缓冲区向后扫描 - 出于显而易见的原因,这对于大多数用途来说太慢了。

http://www.dacast.com/blog/what-is-a-key-frame-for-video/

关于objective-c - SeekToTime 只为前进顺利工作,向后卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36575419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com