这是我参与[第五届青训营]伴学笔记创作活动的第13天
简单介绍了ffmpeg的安装与使用
ffmpeg
官方文档www.ffmpeg.org/
linux环境下安装ffmpeg
详细安装参考这篇(7条消息) linux下安装ffmpeg的详细教程戴国进的博客-CSDN博客ffmpeg4.2.7 linux 安装
bug解决参考这篇Linux编译ffmpeg - 简书 (jianshu.com)
(1)下载解压
wget http://www.ffmpeg.org/releases/ffmpeg-5.1.tar.gz
tar -xvf xx.tar.gz
(2)**进入解压后目录,输入如下命令/usr/local/ffmpeg为自己指定的安装目录
cd ffmpeg-5.1
sudo yum install yasm
./configure --prefix=/usr/local/ffmpeg
make && make install
(3)配置变量
vi /etc/profile
# 在最后PATH添加环境变量:
export PATH=$PATH:/usr/local/ffmpeg/bin
# 保存退出
# 查看是否生效
source /etc/profile 设置生效
echo $? 显示0则说明成功
(4)查看版本
ffmpeg -version 查看版本
优势
- 免费、强大、海量的命令库,支持对视频、音频的各种操作
- 简单的命令行操作容易上手,可以批量化执行。
主要用途:
FFmpeg可以用于各种视频处理任务,比如去噪、模糊视频、色彩转换,视频旋转、提取帧、缩放视频尺寸等。这些任务对于大部分视频处理、压缩和交付来说至关重要。
本项目主要视频提取帧,也就是截图作为封面。
命令
ffmpeg -ss 00:00:05(开始时间) -t 00:00:10(时长) -i input.mp4 -q 0 output.mp4 截取某段视频
ffmpeg -i [视频路径] -r 1 -q:v 2 -f image2 output.jpeg //生成一张截图
ffmpeg -i [视频路径] -r 1 -q:v 2 -f image2 image-%d.jpeg //生成多张截图
视频路径:如 "myvideo.mp4"(这时这个视频也在bin文件目录下才可以直接这么写),或者完整路径的
-r:每秒提取的帧数,如上面为每秒1帧,即一张图像
-q:v :图片质量
-f:图片格式,上述为image2
还有其他参数:
-t:持续时间,如-t 4表示持续4s
-ss:起始时间,如-ss 01:30:14,从01:30:14开始
image-%d.jpeg:生成图像的文件名,可以加上完整路径,%d会使文件名按整数编号,如上述生成图像为image-1.jpeg, image-2.jpeg, ...
如何要生成一张截图像下面这样,怎么做呢?
我们可以使用以下命令
ffmpeg -i bear1.map4 -r 1 -q:v 2 -f image2 output.jpeg //生成一张截图