首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >FFmpeg的下载、配置以及命令的使用

FFmpeg的下载、配置以及命令的使用

原创
作者头像
coffee1
修改2025-09-26 00:19:47
修改2025-09-26 00:19:47
5740
举报

什么是FFmpeg?

FFmpeg是领先的多媒体框架,能够解码、编码、 转码、复用、解复用、流、过滤和播放几乎所有人类和机器创建的东西。它支持最模糊的古老格式,直到最前沿(来自FFmpeg 中文网)。可以理解为,FFmpeg是专门用于音频和视频的编码、解码、转码等操作的开源软件。与其他音频、视频处理软件不同的是,ffmpeg使用的是命令行。

FFmpeg的Windows版本的下载

在Windows系统,进入FFmpeg下载页面: https://www.ffmpeg.org/download.html

不要点击Download Source Code,因为下载的是源代码。

点击页面左下角的Windows图形按钮,选择Windows EXE Files,这里选择第二个--Windows builds by BtbN,

进入FFmpeg build的github页面https://github.com/BtbN/FFmpeg-Builds/releases,最新的release点击展开Show all xx assets,

展开之后选择版本,点击下载。这里选择ffmpeg-n8.0-latest-win64-gpl-8.0.zip

把FFmpeg添加到Windows环境变量

在D盘创建文件夹ffmpeg,把下载的文件复制到目录D:\ffmpeg,并解压,点击查看解压出来的目录

可以看到ffmpeg的可执行程序在目录D:\ffmpeg\ffmpeg-8.0-essentials_build\bin,点击进入这个目录之后,点击上图搜索框区域,复制路径。

在桌面右键点击此电脑-属性

在弹出的页面点击高级系统设置

在弹出的系统属性页面点击 环境变量 按钮

在弹出的环境变量弹窗中,在系统变量区域上下滑动,点击选中Path, 点击编辑按钮

在弹出的编辑环境变量弹窗中,点击新建按钮

点击新建之后,可以看到所有其他环境变量下面的一行可以编辑

这时,粘贴之前复制的路径,如D:\ffmpeg\ffmpeg-8.0-essentials_build\bin,然后点击确定按钮

这时,编辑环境变量弹窗已经关闭。点击环境变量弹窗的确定按钮

这时,环境变量弹窗已经关闭。点击系统属性的确定按钮,系统属性弹窗关闭

打开命令提示符,输入命令ffmpeg, 如果有以下信息输出,表示环境变量配置成功。

命令提示符切换到视频文件所在目录

首先要用视频截取软件(如QQ影音)截取出需要的视频片段,命名为input,如这里的input.mp4

右键点击视频文件,在弹出的菜单中点击属性

查看文件位置,并复制路径,这里是C:\Users\Administrator\Desktop,然后关闭属性弹窗

在Windows底部的搜索框,搜索命令提示符,然后在右侧点击 以管理员身份运行

打开命令提示符之后,使用cd命令切换到文件目录:cd [文件目录]

如cd C:\Users\Administrator\Desktop, 点击Enter键运行

如果是切换到另外一个盘, 这时从C盘切换到D盘

cd D:\video

按钮Enter键执行之后,发现没有反应

解决办法是输入要[切换到的盘符]:

这里是要输入 D:

或者d:

按Enter键执行之后,发现已经切换到想要切换的目录,也就是截取的视频存放的目录

FFmpeg命令使用

命令提示符切换到截取的视频所在目录之后,接下来,只要使用ffmpeg命令进行转码就可以

这时需要注意,要转码的视频需要重命名为input.mkv、input.webm

、input.mp4这种形式

mkv转mp4,视频H264、音频AAC编码(微信视频号要求视频是视频H264、音频AAC编码

ffmpeg -i input.mkv -c:v libx264 -c:a aac -strict experimental output.mp4

截取webm视频片段并转为gif

ffmpeg -i input.webm -ss <开始时间> -t <时长> -vf "fps=<帧率>,scale=<宽度>:<高度>" output.gif

ffmpeg -i input.webm -ss 00:00:42 -t 8 -vf "fps=60,scale=2560:1328" output.gif

整个mp4转gif

ffmpeg -i input.mp4 -vf "fps=30,scale=948:1134" output.gif

gif文件压缩到10M以内,无脑压缩(腾讯云开发者社区要求图片大小在10M以内

ffmpeg -i input.gif -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -pix_fmt yuv420p -r 15 -b:v 2M -movflags +faststart -fs 10M output.gif

使用ffmpeg用比较精细的方式压缩gif文件大小的思路

(1)减少动画时长,这一步在截取视频的时候操作,减小截取的视频的长度。可以使用QQ影音等工具截取视频

(2)减小帧数值,即减小fps数值,可能是24-60帧设置减小到5-8帧

ffmpeg -i input.mp4 -vf "fps=30,scale=1024:800" output.gif

ffmpeg -i input.mp4 -vf "fps=5,scale=1024:-1:flags=lanczos" output.gif

这里第2个参数为-1表示高度自适应,flags=lanczos表示采用lanczos算法进行重采样,以获得更好的质量

(3)减小视频分辨率

ffmpeg -i input.mp4 -vf "fps=5,scale=1024:-1:flags=lanczos" output.gif

ffmpeg -i input.mp4 -vf "fps=5,scale=800:-1:flags=lanczos" output.gif

ffmpeg -i input.mp4 -vf "fps=5,scale=480:-1:flags=lanczos" output.gif

ffmpeg -i input.mp4 -vf "fps=5,scale=360:-1:flags=lanczos" output.gif

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档