Avifenc 命令大全
下面是 avifenc
命令的完整文档,包括各参数的详细说明和用法。这些选项涵盖了从基本质量设置到高级配置的各方面内容,适合初学者和进阶用户参考。
avifenc
是一个将图像文件(如 PNG、JPEG)编码为 AVIF 格式的工具,支持多种质量设置、元数据管理、动画配置等参数。
基础用法
avifenc [选项] 输入文件 输出文件
主要参数选项
质量与压缩相关
-
-q
/--qcolor
Q
色彩压缩质量,范围为0-100
,数值越高质量越高,100
表示无损。 -
--qalpha
Q
透明通道的压缩质量,范围0-100
,100
表示无损。 -
--cq-level
Q
主要用于恒定质量模式的量化级别,范围0-63
,数字越低质量越高(0 表示最高质量)。 -
--min
/--max
QP
色彩最小和最大量化参数,范围0-63
。0 表示无损,数值越高压缩越大。 -
--minalpha
/--maxalpha
QP
透明通道最小和最大量化参数,范围0-63
,数值越低质量越高。
基本输出设置
-
--output
输出文件路径。 -
--autotiling
自动设置平铺行列数,优化文件大小。 -
--tilerowslog2
/--tilecolslog2
N
手动设置平铺的行列数,0
表示不平铺,最大值为6
。
元数据设置
-
--xmp
FILENAME
指定 XMP 文件路径,将该文件的元数据嵌入图片。 -
--icc
FILENAME
指定 ICC 文件路径,用于嵌入色彩管理的 ICC 配置文件。 -
--ignore-exif
忽略输入文件中的 EXIF 元数据。 -
--ignore-xmp
忽略输入文件中的 XMP 元数据。 -
--ignore-icc
忽略输入文件中的 ICC 配置文件。
动画设置
-
--fps
V
设置帧率,等同于timescale
。若未指定,默认值为30
fps。 -
--keyframe
INTERVAL
设置最大关键帧间隔。设置0
可以禁用关键帧。 -
--repetition-count
N
/infinite
设置动画循环次数,默认为infinite
。
画面裁剪与比例
-
--pasp
H,V
设置像素宽高比,H
表示水平间隔,V
表示垂直间隔。 -
--crop
CROPX,CROPY,CROPW,CROPH
裁剪框设置,参数依次为裁剪起始点的 x 和 y 位置以及宽度和高度。 -
--clap
WN,WD,HN,HD,HON,HOD,VON,VOD
设置清晰边缘(clean aperture),常用于定义图片边框区域,参数格式为宽度、高度及偏移量(分子/分母形式)。
高级编码选项
-
-a
/--advanced
KEY=VALUE
传递高级编码器的 key-value 配置项,直接传递给编码器以调整特定编码参数。 -
--aq-mode
M
自适应量化模式(0:关闭,1:方差,2:复杂度,3:循环刷新)。 -
--sharpness
S
优化锐度(0-7),默认为0
。 -
--tune
METRIC
设置优化指标,支持psnr
和ssim
。默认值为psnr
。 -
--film-grain-test
TEST
设置测试用的胶片颗粒效果,可用于生成测试矢量。
视频处理相关
-
--scaling-mode
N[/D]
实验性选项,设置帧(或层)的缩放模式。默认值为1/1
。 -
--duration
D
设置每帧持续时间。
示例
1. 标准转换
将 input.png
转换为质量为 80 的 AVIF 格式:
avifenc -q 80 input.png output.avif
2. 使用恒定质量级别压缩
将 input.png
转换为恒定质量模式下的 AVIF 格式,使用 cq-level
参数控制压缩力度:
avifenc --cq-level 30 input.png output.avif
3. 嵌入元数据
转换并添加 ICC 和 XMP 元数据:
avifenc --icc profile.icc --xmp metadata.xmp input.png output.avif
4. 动画转换
将一组图像按 fps=24
转换为循环播放的动画 AVIF:
avifenc --fps 24 --repetition-count infinite frame*.png animated_output.avif
5. 高级编码配置
使用 aom
编码器并启用色度差分量化:
avifenc -a enable-chroma-deltaq=1 -a sharpness=4 input.png output.avif