ffmpeg 视频 图片 转换 尺寸 修改 绿幕视频 抠像

参考文档

http://blog.csdn.net/pkueecser/article/details/8555261
http://www.cnblogs.com/Tmc-Blog/p/5090230.html
https://www.cnblogs.com/yongfengnice/p/7095846.html
https://jingyan.baidu.com/article/b87fe19e6904b65218356824.html

小程序兼容较好的视频

ffmpeg -i .\v.mov -c:v libx264 -profile high -level 3.1 -pix_fmt yuv420p -vf scale=480:-2 -y v1.mp4

色度抠像

ffmpeg -i user.mp4 -stream_loop 1 -i cover.mp4 -shortest -filter_complex "[1:v]chromakey=blue:0.3:0.0[ckout];[0:v][ckout]overlay[out]" -map "[out]" -map 0:a -c:v libx264 -c:a aac -t 30 output.mp4 -y

生成截图

这里的ss可以用数字秒数也可以用用00:00:00这种格式,放在前面据说速度快

ffmpeg -ss 2 -i xuzhiwei.mp4 -y -f mjpeg -frames:v 1 -y test.mp4.jpg

视频转图片

这里的r是截图频率如果和视频帧率一样就会每帧截图
ffmpeg -i ./audi.mp4 -r 30 -q:v 2 -f image2 tmp/%05d.png

图片转视频

ffmpeg -f image2 -i c:\temp\%02d.png test.mp4

ffmpeg -f image2 -i c:\temp\%02d.jpg -vcodec libx264 -r 10  test.mp4

ffmpeg -f image2 -i c:\temp\%02d.jpg -vcodec libx264 -r 10 -b 200k  test.mp4

视频剪裁

ffmpeg  -i  intput.avi  -vf  crop=iw/2:ih/2  output.avi 

视频缩放

ffmpeg  -i  intput.avi-s  1136x640  output.avi 
ffmpeg -i vvv.mp4 -c:a copy -c:v libx264 -vf scale=720:-1 -r 25 out.mp4 -y

视频旋转

ffmpeg -i v.mp4 -c copy -metadata:s:v:0 rotate=90 new.mp4

静态编译

https://johnvansickle.com/ffmpeg/

缩放+视频透明度

https://blog.csdn.net/yu540135101/article/details/92800740

ffmpeg -i in.mp4 -i in2.mp4 -filter_complex [0:v]scale=iw/2:ih/2[vscale];[vscale]format=yuva444p,colorchannelmixer=aa=0.5[valpha];[1:v][valpha]overlay=(W-w)/2:(H-h)/2 -y out.mp4

分离声音

ffmpeg -i 3.mp4 -vn -y -acodec copy 3.m4a

音视频合并

ffmpeg -i test.mp4 -i in.m4a -vcodec copy -acodec copy -y outnew.mp4

视频截取

时间
ffmpeg  -i ./SN.mp4 -vcodec copy -acodec copy -ss 00:00:00 -to 00:00:05 ./cutout1.mp4 -y
帧数
ffmpeg -i ./input.mp4 -vf "select=between(n\,20\,200)" -y -acodec copy ./output.mp4

截取第一帧

ffmpeg -i .\upload__success.mp4 -vf "select=eq(n\,0)" -vframes 1 first_fra%03d.jpg

视频拼接

  1. 这个方法速度非常快,似乎就是直接拼接,但是发现如果视频编码不一样,出来的视频到了编码改变地方无法播放
    需要一个视频列表文件

    file 'video.mp4'
    file 'videox264.mp4'

    执行

    ffmpeg -f concat -i concat.txt -c:v copy concat.mp4 -y

相关文章

已有 4 条评论
  1. 云璃

    支持视频多少秒获取一张作为封面吗?

    云璃
    1. king

      @云璃

      这个需要多写几条了,取出固定秒数的图没问题,设定封面没问题,要把这两句合起来

      king
  2. 云璃

    处理速度呢?还有这个是不是不支持转码?

    云璃
    1. king

      @云璃

      都支持的,处理速度网上说有个t参数,但是我用不好,我发现调节每秒播放帧数就可以控制时间了

      king

此处评论已关闭