【发布时间】:2021-01-08 16:11:12
【问题描述】:
您能否提供指向 ffmpeg 中处理视频/图像质量和压缩的 -q:v 1 参数的链接或解释。
让我解释一下……
for f in *
do
extension="${f##*.}"
filename="${f%.*}"
ffmpeg -i "$f" -q:v 1 "$filename"_lq."$extension"
rm -f "$f"
done
上面的 ffmpeg for 循环会压缩工作目录中的所有图像和视频,它基本上会降低质量,从而导致文件更小(所需的结果)。
我对这个 for 循环的 -q:v 1 参数最感兴趣。 -q:v 1 参数中的 1 控制压缩量。但是我找不到任何描述如何更改1 的值以及描述它的作用的文档。是百分比吗?乘数?这个旋钮怎么调节?我可以/应该使用负值吗?只有整数?最小值/最大值?等等
我从the official documentation 开始,但我能找到的最好的是关于视频质量的部分,-q 标志描述很少。
-frames[:stream_specifier] 帧数(输出,每个流)
在帧数帧之后停止写入流。
.
-q[:stream_specifier] q(输出,每个流)
-qscale[:stream_specifier] q(输出,每个流)
使用固定质量等级 (VBR)。 q/qscale 的含义取决于编解码器。如果 qscale 在没有 stream_specifier 的情况下使用,则它仅适用于视频流,这是为了保持与先前行为的兼容性,并且为 2 个不同的编解码器指定相同的编解码器特定值,即音频和视频通常不是没有 stream_specifier 时的预期被使用了。
【问题讨论】:
-
您使用的是什么编码器?如果您不知道,那么
$extension是什么? -
@llogan 我在命令行输入了
extension,但什么也没发生。我想我不明白这个问题。 -
-q:v/-qscale:v取决于编码器。我想知道您使用什么编码器来给出准确的答案。我询问了输出文件的扩展名(.mp4、.mkv、.avi、.mov等),以防您不确定自己使用的是哪个编码器。 -
@llogan 输出文件是 .mp4
标签: linux ffmpeg compression video-processing video-compression