FFmpeg开源音视频转换:从零到上手,5个实操案例全搞定
什么是FFmpeg
FFmpeg是一套完全开源免费的音视频处理工具,支持Windows、macOS、Linux三大平台,没有任何付费门槛,也不需要注册账号。
- 官方主页:https://ffmpeg.org/
- Windows下载:https://www.gyan.dev/ffmpeg/builds/(选择release版)
- 官方文档:https://ffmpeg.org/documentation.html
它的核心优势在于功能全、速度快、格式支持广泛,能把MP4转GIF、把MOV转MP4、批量加水印、截取视频片段,统统一条命令搞定。
安装与基础语法
Windows用户下载后解压,将FFmpeg的bin目录添加到系统环境变量,打开命令行输入ffmpeg -version,出现版本号即安装成功。
基础命令结构如下:
ffmpeg [输入参数] -i 输入文件 [输出参数] 输出文件
案例一:视频格式互转
把MOV格式转换为兼容性更好的MP4:
ffmpeg -i input.mov -c:v libx264 -c:a aac output.mp4
-c:v libx264表示视频编码用H.264,体积与画质兼顾-c:a aac表示音频编码用AAC- 实际转换速度非常快,比很多在线转换工具快数倍
案例二:提取视频中的音频
从视频中分离音频,输出MP3格式:
ffmpeg -i video.mp4 -vn -acodec libmp3lame -q:a 9 output.mp3
-vn表示忽略视频流,只保留音频-q:a 9控制音质,数值越大文件越小,9为推荐值
案例三:截取指定片段
截取视频第30秒到第1分钟的内容:
ffmpeg -ss 30 -i input.mp4 -to 30 -c copy output.mp4
-ss 30指定起始时间-to 30指定时长(持续30秒)-c copy表示直接复制不做重新编码,速度极快
案例四:视频添加字幕
将SRT字幕烧录进视频:
ffmpeg -i input.mp4 -vf "subtitles=sub.srt" output.mp4
需要确认字幕文件路径正确,否则命令会报错提示找不到文件。
案例五:批量转换文件夹内所有视频
使用一行命令批量处理当前目录所有MP4文件:
for %f in (*.mp4) do ffmpeg -i "%f" -c:v libx264 -c:a aac "%~nf_transcoded.mp4"
%~nf表示去掉扩展名,新文件名自动追加_transcoded- 注意命令在CMD中用单百分号,批处理脚本中用双百分号
常见问题提示
转换过程中如果遇到卡顿,可以用Ctrl+C终止,不会损坏源文件。输出文件默认保存在命令运行目录,建议使用绝对路径以避免混淆。