【发布时间】:2019-02-25 01:42:13
【问题描述】:
我有一个使用 ffmpeg 作为后端的 C++ 图像编码器。我正在输入视频并将帧保存为 jpeg,但我很难调整输出 jpeg 的质量。
我尝试过的事情:
设置AVCodecContext 的global_quality 和compression_level 字段。
我还尝试使用AVDictionary 选项设置qscale,但在那里也没有成功。
我知道这是可能的,因为我可以通过命令行ffmpeg -i INPUT -q:v 2 output_frame_%02d.jpg 获得更高质量的图像。
【问题讨论】:
-
C 和 C++ 是两个不同的东西。你想要 C++ 解决方案还是 C 解决方案?
-
Ffmpeg 是一个 C 库,所以我不相信会有 C++ 解决方案,只有 C,对吧?我只需要知道如何让 ffmpeg 表现良好。
-
如果您使用 C++,您可以无缝地与 C 代码交互。如果您只使用 C,那么 C++ 解决方案是无关紧要的。 C 库也用于其他应用程序,但我们不会将 Python/C 或 Node.js/C 视为一回事。