FFmpeg 视频截图、裁剪、压缩,分离音视频,合并视频
1. 从视频中截图
vframes
fps =
每隔一段时间截一张图:
每一秒输出一帧图像为图片,图片命名为out1.png,out2.png,out3.png依次顺序输出:
ffmpeg -i input.flv -vf fps=1 out%d.png
每一分钟截一张图, 图片命名为img001.jpg, img002.jpg,img003.jpg依次书序输出:
ffmpeg -i input.flv -vf fps=1/60 img%03d.jpg
每十分钟输出一张图片:
ffmpeg -i input.flv -vf fps=1/600 img%04d.jpg
截取视频前15秒的图片
ffmpeg -ss 0 -to 15 -i input.flv -vf fps=1 out%d.png
2. 压缩视频
修改分辨率 和 码率
ffmpeg -i input.mp4 -vf scale=720:1080 output.mp4 -hide_banner
scale = 宽:高
ffmpeg -i IMG_1054.MOV -vf scale=720:1080 output.mp4 -hide_banner -y
3. 分离音视频
只输出视频:
ffmpeg -i input.mp4 -vcodec copy -an output.mp4
-an : audio not
只输出音频:
ffmpeg -i input.mp4 -acodec copy -vn out.wav
4. 裁剪视频
裁剪1分22秒的视频
ffmpeg -ss 0 -t 01:22 -i input.mp4 -codec copy output.mp4
裁剪起始时间 1分30秒, 裁剪时长2分30秒
ffmpeg -ss 01:30 -t 02:30 -i input.mp4 -codec copy output.mp4
裁剪起始时间 1分钟, 裁剪结束时间 2分
ffmpeg -ss 01:00 -to 02:00 -i input.mp4 -codec copy output.mp4
-ss ,time offset,起始时间
-t ,duration, 持续时间
-to ,stop , 结束时间
5. 合并视频
使用concat分离器,需要ffmpeg 1.1以上
1. 创建文本文件 files.txt, 文件名注意下,有些字符识别不了需要转义
file 'input2.mp4'
file 'input2.mp4'
执行命令
ffmpeg -f concat -i files.txt -c copy output.mp4