gpt4 book ai didi

ffmpeg - 使用 ffmpeg 从电影文件创建的 GIF 尺寸非常大

转载 作者:行者123 更新时间:2023-12-02 07:24:57 27 4
gpt4 key购买 nike

我使用以下命令使用 ffmpeg 创建了一个 GIF:

ffmpeg -i foo.mp4 -ss 00:00:18 -t 00:00:06 -pix_fmt rgb24 bar.gif

但是,生成的 bar.gif 大小超过 300 MB,而电影文件 foo.mp4 大小约为 15 MB!

什么给出了?

最佳答案

要全面回答这个问题很困难:-p 简而言之,这取决于每种格式的压缩方式。

在 GIF 动画中,每一帧在概念上都是一个单独的 GIF 图像。然后,所有 GIF 图像都存储在一个大 GIF 文件中,并附有以帧之间一定延迟播放帧的指令。要优化帧,您可以通过程序运行 GIF,该程序可以删除从一帧到下一帧的重复信息(GIMP“动画优化”过滤器是执行此操作的好方法:GIMP – Simple Animations)。

另一方面,MP4 等视频格式则采用不同的方法。他们假设帧将相似,并且仅存储两个帧之间的差异。此外,每帧的数据量仅限于开始压缩时指定的视频比特率。执行有损压缩以使视频文件降低到所需的比特率。为了进一步优化视频文件,大多数视频转码器都包含“两次编码”选项。这会在视频中运行两次:第一次它只是收集有关文件的哪些部分更复杂的信息,然后第二次它会更积极地压缩视频中每个不复杂的部分。

作为视频编码过程一部分的许多其他优化在 GIF 文件格式中完全缺失。另外,值得指出的是,GIF 动画将仅限于 256 色调色板,这可能会导致图像抖动。 MP4 对视频帧使用更类似于 JPEG 压缩的东西(尽管有专门针对视频的额外优化……旧的 MJPEG 格式基本上只是 JPEG 图像的堆栈,就像 GIF 动画是 GIF 图像的堆栈一样)。

如果您可以提供有关您的具体用例的更多信息,我们也许能够帮助您找到更好的解决方案。

关于ffmpeg - 使用 ffmpeg 从电影文件创建的 GIF 尺寸非常大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12573604/

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