我正在尝试使用FFmpeg / libav使用不同的编解码器(WMV,MP4,H264,VP8,VP9)压缩视频。我不确定如何设置全局和每帧质量值。我什至不知道值的范围。该文档没有帮助。 目前我正在使用:
AVCodecContex::global_quality = FF_QP2LAMBDA * quality; // no idea about range, default seems to be 0
AVCodecContex::compression_level = 0; // There is FF_COMPRESSION_DEFAULT (-1), which seems to be the default
AVFrame::quality = FF_LAMBDA_MAX * quality; // docs say range is [1, FF_LAMBDA_MAX], default seems to be 0
质量在[0,1]范围内,其中0表示最佳图像质量。似乎只有0对我无能为力,而且可以制作出高质量的视频。所有其他值都会产生低质量的输出。
欢迎对如何设置这些值进行任何澄清。