Centos8使用ffmpeg截图 | 青训营笔记

279 阅读2分钟

这是我参与[第五届青训营]伴学笔记创作活动的第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, ...

如何要生成一张截图像下面这样,怎么做呢?

1676635319535.png

我们可以使用以下命令

ffmpeg -i bear1.map4 -r 1 -q:v 2 -f image2 output.jpeg  //生成一张截图