一、下载
ffmpeg官网https://ffmpeg.org/
官网提供了源码和多个版本的可执行和库。在windows下做视频相关开发调试更顺手。
windows版本可执行文件下载地址Builds - CODEX FFMPEG @ gyan.devhttps://www.gyan.dev/ffmpeg/builds/Builds - CODEX FFMPEG @ gyan.dev
windwos下按编译器分:gyan.dev版(使用https://www.gyan.dev/ffmpeg/builds/MSVC编译器构建)、BtbN版(使用MinGW编译器)。
MSVC是微软自家的编译器,因此gyan.dev的版本可能更符合Windows标准,具有更好的兼容性和性能。MinGW是一个在Windows上提供GNU工具链的集合,它允许开发者在Windows上使用类Unix的开发环境,因此BtbN的版本可能更加开放和跨平台。
按功能范围分:essential(简版)、full(适用于终端用户)和full-shared(适用于开发者)。
二、安装
上述步骤下载到ffmpeg-6.1.1-full_build-shared.7z文件后,解压到任意目录。在windows环境变量的path变量里添加上述解压后的路径(一直到bin子目录)即可。
三、测试
ffmpeg提供了三个可执行命令ffmpeg.exe、ffplay.exe、ffprobe.exe。
在cmd里直接运行上述命令,会打印版本信息。后加-h运行,会打印帮助提示信息。
查看视频文件分辨率、时长、码率信息命令:
ffprobe -v error -show_entries format=duration,bit_rate -show_entries stream=width,height input.mp4
或者
ffprobe -v error -select_streams v:0 -show_streams -print_format json input.mp4
把大分辨率视频缩小为小分辨率视频:
ffmpeg -i input.mp4 -vf scale=640:480 -c:v libx265 -preset slow -crf 19 output.mp4
在这个命令中:
-i input.mp4 指定输入文件。
-vf "scale=640:480" 是一个视频滤镜,用于将视频缩放到指定的分辨率。
-c:v libx265 设置视频编码器为libx265,编码成H265。如果要H264编码,则设置为libx264。
-crf 19 设置恒定速率因子(CRF),这参数影响输出视频质量和文件大小。CRF值越低,质量越高,文件越大。通常CRF值在18到28之间是一个合理的范围。
output.mp4 是输出文件的名称。