# 基本语法

ffmpeg [ 全局选项] {[ 输入文件选项] -i 输入地址} ... {[ 输出文件选项] 输出地址} ...

# 打印帮助

ffmpeg -h
-L                    # show license
-h  -? -help --help   # show help
-version          # show version
-buildconf        # show build configuration
-formats          # show supported formats
-muxers           # 显示可用的音视频复用器(混合音视频)
-demuxers         # 显示可用的音视频分离器(分离音视频)
-devices          # 显示可用的设备
-codecs           # 显示可用的编解码器
-decoders
-encoders
-bsfs             # 显示可用的比特流筛选器
-protocols        # 显示可用的协议
-filters          # 显示可用的libavfilter过滤器
-pix_fmts         # 显示可用的像素格式
-layouts          # 显示频道名称和标准频道布局
-sample_fmts      # 显示可用的样本格式
-colors           # 显示公认的颜色名称
-sources device   # 显示输入设备的自动检测源
-sinks device     # 显示输出设备的自动检测接收器
-hwaccels         # 显示可用的硬件加速方法

# 全局选项

-loglevel loglevel
-v loglevel       # set logging level
-report
-y                # 覆盖输出文件,不要询问
-n                # 不要覆盖输出文件

# 主要选项

-f fmt       # 强制输入或输出的格式,不要经常使用
-i url       # 输入文件的地址
-codec:[a|v] libx264 (input/output)  # 选择一个编码器
-c:[a|v] libx264 (input/output)      # 缩写
-t duration       # 限制输入时的读取时间,限制输出时的写入时间
                  # [-][HH:]MM:SS[.m...] or [-]S+[.m...][s|ms|us]
-to position      # 停止写入输出或读取position处的输入,参考duration
-fs limit_size    # 设置文件大小限制,单位字节,byte
-ss position      # 设置起始位置(时间)
-qscale:v         # 控制视频质量 0 保持视频质量
-vframes number   # 设置要输出视频帧数 应该使用-frames:v
-r:v rate         # 设置帧率
-s size           # 设置帧的大小
-vcodec codec     # 设置视频编解码器 这是 -codec:v的别名
-preset           # 指定输出的视频质量,会影响文件的生成速度