FFmpeg——常用命令行

1、列出ffmpeg 支持的所有格式:

ffmpeg -formats

2、剪切一段音视频文件:

ffmpeg -i input.mp4 -ss 00:00:50 -codec copy -t 20 output.mp4
讲input.mp4从第10s开始剪切20s的时间且编码格式不变,其中-ss指定偏移时间,-t指定的时长

3、切割成多段视频文件:

ffmpeg -i input.mp4 -t 00:00:30 -c copy output1.mp4 -ss 00:00:30 -codec copy output2.mp4s

4、提取一个视频文件中的音频文件:

ffmpeg -i input.mp4 -vn -acodec copy output.m4a

5、使一段视频静音,即只保留视频:

ffmpeg -i input.mp4 -an -vcodec copy output.mp4

6、从视频文件中抽取视频流导出为裸H264数据:

ffmpeg -i input.mp4 -an -vcodec copy -bsf: v h264_mp4toannexb output.h264
mp4toannexb 是bitsrteam filter可以转换为原始的H264数据

7、使用AAC音频数据和H264的视频生成MP4文件:

ffmpeg -i audio.aac -i video.h264 -acodec copy -bsf:a aac_adtstoasc -vcodec copy -f mp4 output.mp4
aac_adtstoasc 也是一种bitstream filter,用来指定aac的封装格式

8、转换音频文件的编码格式:

ffmpeg -i input.wav -acodec libfdk_aac output.aac

9、从音频文件中导出PCM裸数据:

ffmpeg -i input.wav -acodec pcm_s161e -f s161e output.pcm

10、重新编码视频文件,音频流不变,同时封装到MP4格式的文件中:

ffmpeg -i input.flv -vcodec libx264 -acodec copy output.mp4

11、将一个视频文件转换成gif格式的动图:

ffmpeg -i input.mp4 -vf scale=100:-1 -t 5 -r 10 output.gif
-vf scale=100:-1 宽度100,分辨率比例不变;-t 5视频前5s ;-r 10帧率10

12、将视频画面生成图片:

ffmpeg -i input.mp4 -r 0.25 frames_%04d.png
-r 0.25表示每4秒一帧视频画面生成图片

13、一组图片生成gif:

ffmpeg -i frames_%02d.png -r 5 output.gif
Frames_%02d.png表示图片是以frames_开头后两位变化,例如frames_01.png frames_02.png….

14、改变音频文件的播放音量:

ffmpeg -i input.wav -af volume=0.5 output.wav
声音是原来的一半

15、淡入效果:

ffmpeg -i input.wav -filter_complex afade=t=in:ss=0:d=5 output.wav
前5s淡入效果

16、淡出效果:

ffmpeg -i input.wav -filter_complex afade=t=out:ss=200:d=5 output.wav
从200s开始做5s的淡出效果

17、合并两路声音:

ffmpeg -i input1.wav -i input2.wav -filter_complex amix=inputs=2:duration=shortest output.wav
duration=shortest时间以最短的为主

18、对声音进行变速但是不变调:

ffmpeg -i input.wav -filter_complex atempo=0.5 output.wav

19、给视频增加水印:

ffmpeg -i input.mp4 -i logo.png -filter_complex overlay=10:main_h-overlay_h-10 output.mp4
Main_w主视频宽,overlay_w水印宽
即视频左上角:overlay=0:0
视频右下角:overlay=main_w-overlay_w:0
视频右下角:overlay=main_w-overlay_w:main_h-overlay_h
视频左下角:overlay=0:main_h-overlay_h

20、去掉视频水印:

ffmpeg -i input.mp4 -vf delogo=x=72:y=32:w=168:h=86:show=1 output.mp4
show=1有个绿色的线框表示delogo的位置,当然可以先使用ffplay预览来确定水印的位置

21、提高视频亮度:

ffmpeg -i input.flv -c:v libx264 -b:v 800k -c:a libfdk_aac -vf eq=brightness=0.25 -f mp4 output.mp4
brightness的取值范围是-1.0~1.0

22、为视频增加对比度:

ffmpeg -i input.flv -c:v libx264 -b:v 800k -c:a libfdk_aac -vf eq=contrast=1.5 -f mp4 output.mp4
contrast取值是-2.0~2.0默认是1.0

23、图片格式转换:

ffmpeg -f rawvideo -pix_fmt rgba -s 480*480 -i input.rgb -f image2 -vcodec mjpeg output.jpg

猜你喜欢

转载自blog.csdn.net/memory_of_the_wind/article/details/81031784