运动较多的场景和运动较少的场景会影响总编码时间吗?

运动较多的场景和运动较少的场景会影响总编码时间吗?

我是个狂热的游戏玩家。有时我喜欢用 Fraps 录制我的游戏过程并上传到 YouTube。对于我的编码,我使用Komisar 的 x264 编解码器虚拟配音使用以下设置:链接到图片

现在,我正在尝试写一篇小博客文章,因为我最近退役了旧的 Q6600 并升级到了 2700k。

以下是草案的一小部分:

编码速度以每秒 (平均) 帧数来衡量。帧数越多越好。同样重要的是要知道,我喜欢将“动作多”和“动作少”的场景区分开来。

动作较多的场景比动作较少的场景需要更长的编码时间,至少这是我在那两年多的时间里的经验。当然,我可能完全错了,不幸的是,我没有确切的统计数据,即编码时的基准。不幸的是,这只是我的观察。

现在,关于链接的编解码器、使用的编码软件和链接的设置,我对运动较多和运动较少的场景的陈述是否正确?

我个人的经验是肯定的。与运动光场景相比,编码屏幕上发生很多事情的场景需要更长的时间。使用与上面链接相同的编解码器、相同的编码软件和相同的设置。

答案1

视频压缩基本上是编码一帧和下一帧之间的差异。因此,两个帧之间的差异越大,您需要写入的数据就越多。这实际上比这复杂得多,但这是基础。您会在 DVD 或任何其他固定的带宽压缩(MPEG1、MPEG2、h.264 等)时,静止图像几乎完美,而移动图像则模糊不清。这是因为大量移动需要写入更多数据,因此必须做出权衡。

答案2

我不确定要处理的数据量是否很大。由于每帧的像素数量完全相同,因此只有在运行了复杂的运动估计算法后才能生成“更多数据”,即便如此,生成的 P/B 帧也只会更小(否则运动补偿将毫无用处)。现代系统的内存带宽如此之高,以至于我认为数据量根本不会影响编码速度。

编码器必须首先针对每一帧运行某种算法,以确定应使用哪种帧类型。该算法可能很复杂,但复杂度对于每一帧应该大致相同(因此这里不是一个因素)。但是,当确定需要 P / B 时,必须使用不同的参数运行非常复杂的运动估计算法,以确定哪种方法是压缩帧中运动的最佳方法。当参考帧的选择发挥作用时,例如在 B 帧中,先前的复杂性将成倍增加。

这些是额外的复杂性,因此计算时间也随之增加,只有当编码器决定运动补偿比简单的像素差异更能压缩帧时才会发生,因此运动密集的场景需要更长的计算时间。这也解释了为什么更快的处理器比更快的存储更有利于压缩时间。

答案3

显然,使用大量运动进行编码时需要处理的数据要多得多。

所以从技术上来说,是的,它会影响总的编码时间,并且运动较重的编码时间将比较轻的运动更长。

相关内容