转换视频格式
一些在线录屏后产生的视频格式是webm,可以使用ffmpeg转化为gif格式
webm 转 gif 格式
ffmpeg -i input.webm -vf "scale=400:-1,fps=10" output.gif
#将 input.webm 格式的视频转换为横向宽度为 400px,纵向宽度保持比例的每秒 10 帧的 output.gif 图片
生成视频缩略图
生成封面
使用视频的第一帧作为封面:
ffmpeg -i your-video.mp4 -ss 00:00:00 -vframes 1 thumb.png
每 xx 秒生成一个缩略图
每分钟一张:
ffmpeg -i your-video.mp4 -vf fps=1/60 your-video-%03d.png
再将其合并:
ffmpeg -i your-video-%03d.png -filter_complex scale=-1:-1,tile=99x1:margin=10:padding=4 output.png
这里的 tile 长度设定为 99,应当改为缩略图的总数。
一步到位:
ffmpeg -ss 00:00:00 -i your-video.mp4 -vf 'select=not(mod(n,24)),scale=-1:-1,tile=991' out.png
意思是从视频的 00:00:00 处开始,每 24 帧(一般动换都是 24 帧的)取一张图片,长宽不进行压缩,最后合成在 991 的方格中
overlay滤镜用法-水印及画中画
- overlay 技术简介
overlay 技术又称视频叠加技术。overlay 视频技术使用非常广泛,常见的例子有,电视屏幕右上角显示的电视台台标,以及画中画功能。画中画是指在一个大的视频播放窗口中还存在一个小播放窗口,两个窗口不同的视频内容同时播放。
overlay 技术中涉及两个窗口,通常把较大的窗口称作背景窗口,较小的窗口称作前景窗口,背景窗口或前景窗口里都可以播放视频或显示图片。FFmpeg 中使用 overlay 滤镜可实现视频叠加技术。
overlay 滤镜说明如下
描述:前景窗口(第二输入)覆盖在背景窗口(第一输入)的指定位置。
语法:overlay[=x:y[[:rgb={0, 1}]]
参数 x 和 y 是可选的,默认为 0。
参数 rgb 参数也是可选的,其值为 0 或 1,默认为 0。
参数说明:
x 从左上角的水平坐标,默认值为 0
y 从左上角的垂直坐标,默认值为 0
rgb 值为 0 表示输入颜色空间不改变,默认为 0;值为 1 表示将输入的颜色空间设置为 RGB
变量说明:如下变量可用在 x 和 y 的表达式中
main_w 或 W 主输入(背景窗口)宽度
main_h 或 H 主输入(背景窗口)高度
overlay_w 或 w overlay 输入(前景窗口)宽度
overlay_h 或 h overlay 输入(前景窗口)高度
将视频叠加至右上角
ffmpeg -i ring.mp4 -i ring_100x87.png -filter_complex overlay=W-w:56 -max_muxing_queue_size 1024 ring_logo_t.mp4
来源:
https://www.cnblogs.com/leisure_chn/p/10434209.html
根据视频生成音频 ffmpeg
ffmpeg -i butterlflyes.mp4 -f mp3 -vn butterlflyes.mp3