Skip to the content.

ffmpeg操作

Contact me


获取长宽

ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of default=nw=1 .\demo.mp4

每秒采样帧

ffmpeg -i test.mp4 -r 1 image-%5d.jpeg

-r,指定抽取视频的帧率,即从视频中每秒抽取的帧数,默认是每秒24帧。 image-%5d.jpeg,指定输出文件的名字。

获取关键帧

ffmpeg -i demo.mp4 -vf "select=eq(pict_type\,I)"  -vsync vfr -qscale:v 2 -f image2 ./%08d.jpg

去水印

ffmpeg -i .\demo.mp4 -filter_complex "delogo=x=376:y=934:w=200:h=80:show=0" demo_delog.mp4

剪切合并视频

ffmpeg -ss 0 -i demo.mp4 -c copy -t 10 output.mp4

从时间0开始,截取10秒

合并要先转ts文件,然后写文件名到文本里,合并。

ffmpeg -i demo1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts 
ffmpeg -i demo2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts 
ffmpeg -f concat -i file.txt -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

file.txt里:

file '1.ts'
file '2.ts'