用途
FFmpeg 是一套命令行音视频处理工具,本技能汇总了常见任务的命令写法,用于视频与音频的转换、压缩、裁剪、提取、合并、抽帧、录屏与变速等操作。适合在终端或脚本中批量处理媒体文件。
主要能力
探测与查看
使用 ffprobe 查看流信息(编解码器、分辨率、码率、时长),也可用 ffmpeg -codecs、-formats、-encoders 列出支持的编解码器、格式与编码器。
格式转换
支持 MP4、MKV、AVI、MOV、WebM 等容器互转。可直接复制流(-c copy)实现快速无损换容器,也可重新编码以适配目标容器。
压缩视频
通过 CRF 模式控制画质(数值越低画质越好、文件越大),配合 preset 调节编码速度与体积;也可用 H.265 获得更小文件,或通过两遍编码指定目标文件大小。
音频处理
可从视频中提取音频为 MP3、AAC、WAV、FLAC 等格式,也可在 WAV、MP3、AAC、FLAC、OGG、Opus 之间转换。
裁剪与剪切
支持按时间点剪切片段,可选择不重新编码(快速)或重新编码(帧精确),也可截取开头、结尾或去掉开头部分。
GIF 制作
支持基础 GIF 生成,以及通过调色板两遍法生成高质量 GIF,并可指定片段范围。
缩放与调整
可按固定尺寸、按宽度等比、按百分比或限制在最大尺寸内缩放,并保持宽高比。
字幕
支持将字幕硬编码烧录进视频(可自定义样式),或作为软字幕嵌入 MP4/MKV,也可从视频中提取字幕。
合并与拼接
可通过文件列表拼接多个同编码视频,也可在格式不同时重新编码拼接;还能合并独立视频与音频,或替换视频中的音轨。
抽帧与缩略图
可按时间点、按固定间隔或全部抽取帧,并可生成网格缩略图。
屏幕录制
提供 macOS(avfoundation)与 Linux(X11)的录屏命令,包括全屏、区域与带音频录制;Wayland 需使用 pipewire 相关方案。
变速与去音轨
可加速或减速视频与音频,支持通过链式 atempo 实现更大倍率;也可移除音轨仅保留视频。
使用方式
所有操作均通过命令行执行,核心命令为 ffmpeg,探测信息使用 ffprobe。常用参数包括 -y(覆盖输出)、-n(不覆盖)、-hide_banner、-v error、-movflags +faststart、-map、-shortest、-threads 0 等。资料还提供编解码器参考表,说明 H.264、H.265、VP9、AV1、AAC、Opus、MP3 的适用场景与编码参数。
适用场景
适合需要脚本化、批量化处理音视频的开发者与运维人员,例如网页视频转码、归档压缩、音频提取、字幕烧录、素材抽帧、录屏与格式统一等。
限制
资料未提供图形界面、收费方式、价格、平台支持范围或具体性能数据。部分操作(如不重新编码剪切)可能受关键帧影响;Wayland 下不支持 x11grab;AV1 编码速度很慢。具体效果取决于输入文件与参数设置。