Rvi*_*idD 5 ffmpeg x264 video-encoding
如果我在 x264 (FFmpeg) 中使用低于 17/18 的 CRF(恒定速率因子)值,我会获得任何视觉上的好处吗?除了大小之外还会有什么不同吗?
CRF 17/18 在视觉上无损。
CRF 0 表示帧的每个像素都由它自己的数据决定。CRF 17/18 意味着,如果它们相同,则该帧的每个像素要么由其自己的数据确定,要么根据前一帧确定。
所以在视觉上两者都是一样的。那么较低值的CRF(0-16)编码有什么好处呢?
我已经测试了大部分可用的 CRF 值(包括 CRF 0)。我使用“CRF 0”编码了一部 1080P 蓝光电影。输出最终比蓝光源大 2.5 倍 (110GB)。
据我所知,我没有看到使用低于 CRF17/18 的 CRF 值的理由。而且我无法在任何地方找到证明使用较低 CRF 值的理由。那么较低的 CRF 值有什么好处呢?
CRF 17/18 中的代数损失会更多,而较低 CRF 值编码的代数损失会更少吗?
简短的回答是:不,您不太可能获得视觉上的好处,或者至少没有大多数人会注意到的好处。
为简单起见,假设使用 17 的 CRF 等于使用 17 的恒定QP。QP越低,比特率越高,反之亦然。QP 0 表示没有量化损失;QP 51 是可能的最大值(对于 8 位 H.264)。这种通过量化减少信息的技术已有数十年历史,并且是大多数有损视频压缩算法的基础。问题是:压缩收益大于质量损失的主观点在哪里?
主观测试中,用户一个接一个地查看压缩剪辑并评价其质量,表明对于使用 压缩的超高清视频libx264,平均意见分数饱和约 30–40 Mbit/s(使用 2-pass 编码,中等预设)。这意味着人类受试者无法区分以更高比特率编码的剪辑(或不会给出更高的评级)。如果 CRF 低于 17,通常会达到 50 Mbit/s 或更高,具体取决于内容。因此,使用较低的 CRF 通常是一种浪费,而人类不会注意到它。*
因此,存在一个感知阈值,在此阈值之后,使用较低的 QP 不会为您提供更好的质量——这只会意味着您会浪费更多的比特。这个阈值取决于内容的空间特征:有些东西比其他东西更容易压缩。那里绝对没有硬性门槛,但大多数建议都在 H.264 的 QP/CRF 17-18 左右徘徊。
重要的是要澄清您可以选择指定这些特定的 QP/CRF 参数,因为它们在技术上是可行的,而不是因为它们具有内在的用处。就像你可以以高转速和废气驾驶汽车一样,你可以以不合理的高比特率编码视频,它会完成工作。
选择高于感知阈值的 QP/CRF 值的可能原因是什么?
您的目标是找出与特定内容的 QP 相关的感知阈值。(这里的例子。)
您希望以尽可能最好的质量存档视频并且不关心文件大小,但您不想拥有非常大的文件(即远大于原始视频的大小)。
您知道您的视频将在某个阶段再次进行有损压缩,在这种情况下,它有助于在第一阶段尽可能多地保留细节,以免产生更多的代损失。
由于您已经询问了后一点:将有多少生成损失取决于原始视频中的空间细节量以及在任何未来编码阶段应用的量化量。因此,您在第一步中丢弃的越少,您在以后的任何步骤中保持质量的机会就越大。
那么,较低的 QP/CRF 值有什么好处呢?至少对于普通用户来说并不多。
* 当然,这取决于测试方法。有一些测试范式比我描述的更重要。例如,如果您显示未压缩剪辑和压缩版本之间的明确比较,用户可以检测到更细粒度的差异。这同样适用于基于JND的测试。
| 归档时间: |
|
| 查看次数: |
11175 次 |
| 最近记录: |