ffmpeg分割视频,制作gif图,加水印、去水印,视频拼接

  一、分割视频

进入ffmpeg的目录:
(1)执行从0分钟开始,剪切5分钟:
./ffmpeg -ss 00:00:00 -i /111/Movies/a2009.mp4 -t 00:05:00 a2009-1.mp4 -c copy

各参数解释:
-ss 00:00:00  【从0分钟开始】
-i /111/Movies/a2009.mp4 【原始视频】
-t  00:05:00 【一共剪切5分钟】
a2009-1.mp4 【输出文件名】
-c copy 【编解码器,使用源文件解码器】

(2)执行从5分钟开始,剪切到第8分钟:
./ffmpeg -ss 00:05:00 -i /111/Movies/a2009.mp4 -to 00:08:00  a2009-2.mp4 -c copy
各参数解释:
-to 00:08:00  【剪切到第8分钟】

参数参考:
​​​​​​​​​​​​​使用ffmpeg分割视频_weixin_46021205的博客-CSDN博客_ffmpeg切割视频使用ffmpeg分割视频时,想指定开始、结束时间。使用以下命令:ffmpeg -ss [start] -i [input] -to [end] -c copy [output]结果[end]结束时间一直被处理为[duration]持续时间。最后发现把-ss放在-i后面就好了。原因是-i会重置-ss的时间戳。ffmpeg -i [input] -ss [start] -to [end] -...https://blog.csdn.net/weixin_46021205/article/details/105078552https://blog.csdn.net/weixin_46021205/article/details/105078552

 二、制作gif图

把一个视频从12秒开始剪切,然后截取5秒,生成gif
./ffmpeg -i /111/adn.mp4 -ss 12 -t 5 -vf "scale=480:-1" -r 15  adn.gif

参数解释:
-i /111/adn.mp4【输入的视频】
-ss 12 【从第12秒开始转换】
-t 5 【转换5秒的视频】
-vf "scale=360:-1" 【调整画面分辨率,降低到480p,宽高等比例缩放】
-r 15  【原始的input.mp4是30帧的,可以用-r 15来降低成15帧。】
adn.gif 【输出的gif文件】

参考:

用ffmpeg将视频转成gif动图_xindoo的博客-CSDN博客_ffmpeg gif今天分享一个我制作表情包的技巧。现在视频编辑的门槛已经非常低了,只要装个剪映稍微学一下,很容易就能把你想要的内容剪出来,真的是有手就行。但是视频剪出来的视频是无法直接用做表情包的,只有gif格式的动图才是真正可以用的表情包。我这里分享一些用ffmpeg来生成gif动图的命令行示例,助力大家生产出更多有趣的表情包。是不是相当简单。https://blog.csdn.net/xindoo/article/details/127603896

三,加水印

./ffmpeg -i /111/Movies/adn.mp4 -ss 12 -t 5 -vf "scale=480:-1,drawtext=fontsize=40:fontfile=lazy.ttf:text='我是水印':x=30:y=30:fontcolor=gray" -r 15  adn5.gif

参数解释:
-vf "scale=480:-1,drawtext=fontsize=40:fontfile=lazy.ttf:text='我是水印':x=30:y=30:fontcolor=gray" 
【
-vf参数用,分隔2个子参数,drawtext是水印子参数,可设置:
fontsize=40 字体大小
fontfile=lazy.ttf 字体样式
text='我是水印' 水印内容
x=30:y=30 坐标
fontcolor=gray 水印文字颜色
】

详细参数,参考:

qu【FFmpeg】学会添加水印,只要这一篇就足够_音视频开发老马的博客-CSDN博客_ffmpeg 水印本文详细的介绍了通过FFmpeg为视频添加各种各样的水印的方法,包括文字,时间,图片,多个图片,透明,动图等,实在有些干燥,实在太有用了,真心希望能帮到大家。众所周知,FFmpeg可以为视频添加水印,主要用来标记视频所属标记,有时也可以兼顾美观,你可能没想到,用FFmpeg可以添加文字水印,可以添加图片水印,可以添加视频水印,还可以添加动态图片水印,可以实现水印的透明,还可以添加多个水印,而这一切都可以通过FFmpeg的诸多filter(可以理解为滤镜)来实现。点在看,分个享,触达更多有需要的人。...https://blog.csdn.net/yinshipin007/article/details/126125684本文详细的介绍了通过FFmpeg为视频添加各种各样的水印的方法,包括文字,时间,图片,多个图片,透明,动图等,实在有些干燥,实在太有用了,真心希望能帮到大家。众所周知,FFmpeg可以为视频添加水印,主要用来标记视频所属标记,有时也可以兼顾美观,你可能没想到,用FFmpeg可以添加文字水印,可以添加图片水印,可以添加视频水印,还可以添加动态图片水印,可以实现水印的透明,还可以添加多个水印,而这一切都可以通过FFmpeg的诸多filter(可以理解为滤镜)来实现。点在看,分个享,触达更多有需要的人。...https://blog.csdn.net/yinshipin007/article/details/126125684本文详细的介绍了通过FFmpeg为视频添加各种各样的水印的方法,包括文字,时间,图片,多个图片,透明,动图等,实在有些干燥,实在太有用了,真心希望能帮到大家。众所周知,FFmpeg可以为视频添加水印,主要用来标记视频所属标记,有时也可以兼顾美观,你可能没想到,用FFmpeg可以添加文字水印,可以添加图片水印,可以添加视频水印,还可以添加动态图片水印,可以实现水印的透明,还可以添加多个水印,而这一切都可以通过FFmpeg的诸多filter(可以理解为滤镜)来实现。点在看,分个享,触达更多有需要的人。...https://blog.csdn.net/yinshipin007/article/details/126125684本文详细的介绍了通过FFmpeg为视频添加各种各样的水印的方法,包括文字,时间,图片,多个图片,透明,动图等,实在有些干燥,实在太有用了,真心希望能帮到大家。众所周知,FFmpeg可以为视频添加水印,主要用来标记视频所属标记,有时也可以兼顾美观,你可能没想到,用FFmpeg可以添加文字水印,可以添加图片水印,可以添加视频水印,还可以添加动态图片水印,可以实现水印的透明,还可以添加多个水印,而这一切都可以通过FFmpeg的诸多filter(可以理解为滤镜)来实现。点在看,分个享,触达更多有需要的人。...https://blog.csdn.net/yinshipin007/article/details/126125684本文详细的介绍了通过FFmpeg为视频添加各种各样的水印的方法,包括文字,时间,图片,多个图片,透明,动图等,实在有些干燥,实在太有用了,真心希望能帮到大家。众所周知,FFmpeg可以为视频添加水印,主要用来标记视频所属标记,有时也可以兼顾美观,你可能没想到,用FFmpeg可以添加文字水印,可以添加图片水印,可以添加视频水印,还可以添加动态图片水印,可以实现水印的透明,还可以添加多个水印,而这一切都可以通过FFmpeg的诸多filter(可以理解为滤镜)来实现。点在看,分个享,触达更多有需要的人。...https://blog.csdn.net/yinshipin007/article/details/126125684

四、去掉原有水印

#1,先找logo区域
./ffmpeg -ss 00:00:00 -i ../Downloads/elon.mp4 -vf delogo=x=700:y=90:w=250:h=70:show=1 -to 00:00:30  elon4.mp4 -c copy

参数解释:
x=700:y=90:w=250:h=70:
x=行坐标,距离左边框距离;y=列坐标,距离上边框距离
w=沿x轴,向右边延续多少个像素;h=沿y轴,向下延伸多少距离。
wywh组成了一个矩形框。。。。
show=1:会显示一个绿色的框,定位位置

#2.通过多次调整xywh的数值,找到正确的位置和大小。

#3.真正执行时候,去掉show=1,就不会有绿框了。
./ffmpeg -ss 00:00:00 -i ../Downloads/elon.mp4 -vf delogo=x=700:y=90:w=250:h=70 -to 00:00:30  elon4.mp4 -c copy

五、合并视频:

#1.分别把视频剪成前后2段,速度很快
./ffmpeg  -ss 00:00:00.0 -i ../Downloads/ff.mp4 -codec copy -to 00:18:39 ../Downloads/ff1.mp4
./ffmpeg -ss 00:18:46.0 -i ../Downloads/ff.mp4 -codec copy -to 00:25:04 ../Downloads/ff2.mp4

#2.编写一个txt文件,内容如下:
file-list.txt 格式如下
 
file'/Users/xxx/Downloads/ff1.mp4'
file'/Users/xxx/Downloads/ff2.mp4'

#3.把2段视频组合成一个
./ffmpeg -f concat -safe 0 -i ../Downloads/file-list.txt -c copy ../Downloads/ffok.mp4  
参数解释:
-safe 0,不加这个会报错:
concat @ 0x7fe7af804100] Unsafe file name '/Users/xxx/Downloads/ff1.mp4'
../Downloads/file-list.txt: Operation not permitted

参考:

FFmpeg 从视频中间删除 2 秒并连接部分。单线解决方案 - IT工具网,

你可能感兴趣的:(ffmpeg,音视频)