gpt4 book ai didi

ffmpeg 创建幻灯片会导致文件非常大

转载 作者:行者123 更新时间:2023-12-04 23:08:35 25 4
gpt4 key购买 nike

我有一系列名为 0000.jpg 0001.jpg 0002.jpg 的 JPEG 图像...

我使用以下命令将这些转换为幻灯片视频,每帧播放 1 秒。

ffmpeg -framerate 1 -i %04d.jpg -c:v libx264 -vf fps=1 -pix_fmt yuv420p out.mp4

这很好用,除了生成的视频比我以正常帧速率(例如 25 FPS)编码完全相同的帧时得到的视频大 6 倍

我正在寻找一种方法来有效地获得与编码 25fps 时相同的高效编码,但每帧显示 1 秒。

最佳答案

H.264 是一种帧间编码的视频编解码器,即帧依赖于其他帧才能被解码。 x264(一种 H.264 编码器)在基本层面上所做的是观察帧之间图片内容的变化,然后仅保存该差异。

在没有明确指定速率控制模式(-b:v-crf-x264opts qp)时默认使用的 CRF 速率控制模式,x264 对帧率敏感。当以 25 fps 输入时,每帧显示 40 毫秒,因此查看器对每个单独帧的图像质量不是很敏感,因此 x264 对其进行了相当多的压缩。但是当该输入以 1 fps 编码时,每个输出帧将显示一整秒,因此 x264 的压缩效果要小得多。

解决方法是以 25 fps 编码,然后以较低的 fps 重新混合。

#1

ffmpeg -framerate 25 -i %04d.jpg -c:v libx264 -pix_fmt yuv420p out.264

#2 使用 mp4box*, GPAC 的一部分, 以较低的速率重新混合:
mp4box -add out.264:fps=1 -new out.mp4

*通常,使用 ffmpeg 可以做到这一点,但它不能正确地重新混合具有乱序帧存储的 H.264 原始流,即具有 B 帧的那些。

关于ffmpeg 创建幻灯片会导致文件非常大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44510361/

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