美文网首页
10 ffmpeg剪辑视频

10 ffmpeg剪辑视频

作者: 滔滔逐浪 | 来源:发表于2020-08-21 18:12 被阅读0次

ffmpeg剪辑视频文件非常简单,一个命令就可以搞定。

ffmpeg -ss 00:03:00 -i video.mp4 -t 60 -c copy cut.mp4
-ss后面指定的时间轴,-t后面指定时长单位为秒。为什么要将-ss放在-i前面?因为官方文档推荐这样做,这样做剪辑出来的视频时间轴更精准,并且速度更快。还有一个参数-to放在-i video.mp4后面,作用是指定剪辑时长,例如-to 00:02:00,当-ss放在-i前面的时候,这个-to剪辑出来的是-ss指定的时间轴加上-to指定的时间,比如-ss 00:01:00 -i video.mp4 -to 00:02:00,则剪辑出来的视频,是原视频00:01:00到00:03:00的片段。如果想把片头给去掉则指定了时间轴就不要添加-to和-t参数。

-to参数实例
ffmpeg -ss 00:03:00 -i video.mp4 -to 00:02:00 -c copy cut.mp4
以上命令代表将原视频文件00:03:00到00:05:00的片段剪辑出来,生成为cut.mp4文件在当前文件夹,并且使用编码为copy复制源视频文件的编码格式。

去除片头
ffmpeg -ss 00:03:00 -i video.mp4 -c copy cut.mp4
去除片头,就不需要添加-to或者-t参数,那么则是剪辑00:03:00到视频结尾

1.分离视频音频流
ffmpeg -i input_file -vcodec copy -an output_file_video  //分离视频流
ffmpeg -i input_file -acodec copy -vn output_file_audio  //分离音频流
2.视频解复用
ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264
ffmpeg –i test.avi –vcodec copy –an –f m4v test.264
3.视频转码
ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264              //转码为码流原始文件
ffmpeg –i test.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v test.264  //转码为码流原始文件
ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi            //转码为封装文件
//-bf B帧数目控制,-g 关键帧间隔控制,-s 分辨率控制
4.视频封装
ffmpeg –i video_file –i audio_file –vcodec copy –acodec copy output_file
5.视频剪切
ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg        //提取图片
ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi    //剪切视频
//-r 提取图像的频率,-ss 开始时间,-t 持续时间
6.视频录制
ffmpeg –i rtsp://192.168.3.205:5555/test –vcodec copy out.avi
7.YUV序列播放
ffplay -f rawvideo -video_size 1920x1080 input.yuv
8.YUV序列转AVI
ffmpeg –s w*h –pix_fmt yuv420p –i input.yuv –vcodec mpeg4 output.avi
9.视频转帧序列
ffmpeg -i split.avi %d.bmp
10.帧序列合并为视频
ffmpeg -i %d.bmp -y list.mp4

.获取视频流信息 
用ffprobe可以获取到视频的所有流的具体信息

ffprobe -print_format json -show_streams -i input.mp4
1
2.多个视频拼接 
可以将几个视频拼接成一个视频 -f 表示采用concat协议,-c 表示采用什么编码器 copy表示不重新编码,如果是x264 表示将采用x264进行重新编码。

ffmpeg -y -f concat -i videolist.txt -c copy  output.mp4
1
3.视频截图 
截一张图 
-ss 表示在视频的多少S 截取一张图

ffmpeg -y -ss 8 -i input.mp4 -f image2 -vframes 1 output.jpg
1
截多张图 
-r 表示每秒截多少张图; -qscale 表示生成的截图质量,该值越小图片质量越好;%5d.jpg 表示生成的截图的命令规则,5位数的整数命名。

ffmpeg -y -ss 0 -i input.mp4 -f image2  -r 1 -t 8 -qscale 1 ./jpgs/%5d.jpg
1
4.给视频加上水印图片

ffmpeg -y -i input.mp4  -i ./logo.png filter_complex "overlay=0:0:enable=between(t,0,2)" -c:v libx264 -c:a aac -strict -2 output.mp4
1
5.图片合成视频

ffmpeg -y -f image2 -framerate 10 -i ./jpgs/%05d.jpg -c:v libx264 -r 25 -pix_fmt yuv420p output.mp4
1
6.视频添加背景音乐

ffmpeg -y -i input.mp4 -i ainiyiwannian.wav -filter_complex "[0:a] pan=stereo|c0=1*c0|c1=1*c1 [a1], [1:a] pan=stereo|c0=1*c0|c1=1*c1 [a2],[a1][a2]amix=duration=first,pan=stereo|c0<c0+c1|c1<c2+c3,pan=mono|c0=c0+c1[a]" -map "[a]" -map 0:v -c:v libx264 -c:a aac -strict -2 -ac 2 output.mp4
1
7.将视频去除音频

ffmpeg -y -i source.mp4 -an -vcodec copy output.mp4
1
8.设置视频的音量 
-vol 设置视频的音量,是以%为单位,500表示500%

ffmpeg -y -i source.mp4 -vol 500 -strict -2 -vcodec copy output.mp4
1
9.视频转码 
-vcodec 指定视频编码器,-acodec 指定音频编码器
ffmpeg -y -i input.mp4 -vcodec libx264 -acodec copy output.mp4
音频处理

1.从视频中提取音频
ffmpeg -y -i source.mp4 -vn output.wav
2.将音频用lpcm格式重新编码,指定采样率
ffmpeg -y -i source.wav -acodec pcm_s16le -ar 44100 output.wav

视频打多个水印:


 ffmpeg -i 1.mp4 -i logo.png -i xh9.png -filter_complex "overlay=5:5,overlay=x=main_w-overlay_w-10 : main_h-overlay_h-10" 11.mp4 -y


水印图片位置
overlay值
左上角
10:10
右上角
main_w-overlay_w-10:10
左下角
10:main_h-overlay_h-10
右下角
main_w-overlay_w-10 : main_h-overlay_h-10

相关文章

  • 10 ffmpeg剪辑视频

    ffmpeg剪辑视频文件非常简单,一个命令就可以搞定。 ffmpeg -ss 00:03:00 -i video....

  • FFMpeg剪辑视频

    网上有很多视频剪辑的工具,不过大多收费,免费的不好用,还不如试试FFMPEG,可以通过命令方式实现,也可以使用py...

  • ffmpeg 剪辑视频

    根据偏移时间剪辑 -ss 表示开始时间 小时:分钟:秒-t 表示 要剪辑的时间,即偏移时间 (结束时间 - 开始时...

  • ffplay基本使用

    ffmpeg/ffplay/ffprobe的区别:ffmpeg:超快音视频编码器(类似于爱剪辑)ffplay:简单...

  • 完整的直播系统

    ffmpeg 音视频的抽取,剪辑,(WebRTC)ffplayflashplayer (播放RTMP流) 搭建流媒...

  • ffmpeg常用命令

    视频剪辑: ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec co...

  • NDK模块开发:音视频处理工具FFmpeg的基本字符命令

    前言 FFmpeg是非常强大的音视频处理工具,我们可以使用它来处理视频合成、剪辑、加特效等等操作。 关于音视频是什...

  • NDK模块开发:音视频处理工具FFmpeg的常用命令与高级命令整

    前言 FFmpeg是非常强大的音视频处理工具,我们可以使用它来处理视频合成、剪辑、加特效等等操作。 关于音视频是什...

  • 关于ffmpeg的常用

    使用 ffmpeg 缩放、裁剪、剪辑视频 我们平时使用手机拍摄的视频一般都在1080p及以上,在实际应用中,比如共...

  • 2018想要拥有的技能

    问题清单,技能清单,愿景。 1·剪辑视频会剪辑vlog(10月之前) 看10个小视频,进行分析。 2·会做简单的海...

网友评论

      本文标题:10 ffmpeg剪辑视频

      本文链接:https://www.haomeiwen.com/subject/sonvjktx.html