FFmpeg 是一个功能强大、灵活且开源的命令行工具,主要用于处理音频和视频文件。它可以对各种格式的音频和视频文件进行转换、编辑、处理等操作。
1、下载 FFmpeg:https://github.com/BtbN/FFmpeg-Builds/releases
ffmpeg-n7.1-latest-win64-gpl-7.1.zip
FFmpeg 的各个版本主要区别在于所包含的库和许可证的不同。选择哪个版本,取决于你的具体需求和项目的许可证要求。
gpl 版本:
包含所有依赖库,即使是那些需要完全 GPL 许可证的库。
功能最全面,兼容性最好。
如果你的项目是开源的,或者你不需要考虑许可证的限制,那么 gpl 版本是最适合的。
lgpl 版本:
排除了需要完全 GPL 许可证的库,比如 libx264 和 libx265。
适用于那些需要 LGPL 或其他较宽松许可证的项目。
如果你的项目需要闭源,或者不想受到 GPL 许可证的约束,那么 lgpl 版本是一个不错的选择。
nonfree 版本:
包含了 fdk-aac 库,这个库是非自由软件。
提供了对 AAC 音频编码和解码的支持。
如果你的项目需要 AAC 编码解码功能,那么 nonfree 版本是必需的。
带 shared 后缀的版本:
与不带 shared 后缀的版本相比,这些版本使用共享库而不是静态链接库。
共享库可以减少可执行文件的大小,提高兼容性。
如果你的项目对文件大小和兼容性有较高要求,那么带 shared 后缀的版本是一个不错的选择。
2、解压出来,bin
里面就是要用到的主程序
├─ffmpeg-n7.1-latest-win64-gpl-7.1
│ │ LICENSE.txt
│ │
│ ├─bin
│ │ ffmpeg.exe
│ └─doc
3、在 bin
打开 cmd 终端,使用指令查看视频信息
ffmpeg -i 学习资料.mp4
这里的 6987 kb/s
就是 视频比特率
Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 6987 kb/s, 59.94 fps, 59.94 tbr, 11988 tbn (default)
压缩视频,一般 视频比特率 对半压缩 ,观看效果几乎不影响
ffmpeg -i 学习资料.mp4 -c:v hevc_nvenc -b:v 3500k 学习资料_FFmpeg.mp4
-i
指定输入文件-c:v
指定视频编码器。hevc_nvenc
使用 NVIDIA 的 HEVC 编码器。HEVC 是一种高效的视频编码标准,可以提供更高的压缩比和更好的画质。-b:v
设置视频比特率。3500k
: 将输出视频的比特率设置为 3500kbps。比特率越高,视频质量越好,但文件大小也会越大。常用的视频编码器
h264_nvenc
:NVIDIA NVENC H.264 编码器,用于将视频编码为 H.264 格式。hevc_nvenc
:NVIDIA NVENC H.265/HEVC 编码器,用于将视频编码为 H.265/HEVC 格式。av1_nvenc
:NVIDIA NVENC AV1 编码器,用于将视频编码为 AV1 格式。h264_amf
:AMD AMF H.264 Encoder。这是一个利用 AMD GPU 加速的 H.264 编码器hevc_amf
:AMD AMF HEVC Encoder。这是 AMD GPU 加速的 H.265/HEVC 编码器av1_amf
:AMD AMF AV1 Encoder。这是 AMD GPU 加速的 AV1 编码器h264_qsv
:Intel QSV H.264/AVC 编码器,用于将视频编码为 H.264 格式。hevc_qsv
:Intel QSV H.265/HEVC 编码器,用于将视频编码为 H.265/HEVC 格式。mjpeg_qsv
:Intel QSV MJPEG 编码器,用于将视频编码为 MJPEG 格式。mpeg2_qsv
:Intel QSV MPEG-2 编码器,用于将视频编码为 MPEG-2 格式。如视频模糊,可以适当增加 视频比特率,大小也会随着变大。