ffmpeg 转码两次进一步压缩?

ffmpeg 转码两次进一步压缩?

我收集了一些 avi 视频(说A)。

我首先将它们转换为 MPEG4 Part2(例如) 使用ffmpeg -i ${inname} -vf scale=340:256,setsar=1:1 -q:v 1 -c:v mpeg4 -g 12 -f rawvideo ${outname}。文件总大小为3.5G。

然后使用作为输入,我应用相同的命令进行转码再次进入C,大小为3.1G。

我想C格式相同,因此文件大小也应该相同?为什么不相同?如何解决以确保在第二次转码过程中不会丢失信息?

答案1

你的程序如下:

  1. (来源)A → B (结果)
  2. (来源)B → C (结果)

有损编码产生的视频与其源不同,因此 B 的帧与 A 的帧不同。这意味着上述过程中的两个源是不同的。

我以为 B 和 C 格式相同,因此文件大小也应该相同?为什么不呢?

因为它们是由不同的源视频制作的。

我该如何解决这个问题以确保第二次转码过程中不会丢失信息?

  • 使用无损编码
  • 或者不要进行多次转码。

相关内容