FFmpeg 使用命令
查询可用设备
1 | ffmpeg -list_devices true -f dshow -i dummy |
录制
-
摄像头录制
1
ffmpeg -f dshow -r 30 -i video="USB2.0 HD UVC WebCam" output.yuv
-
麦克风录制
1
ffmpeg -f dshow -i audio="麦克风阵列 (Realtek(R) Audio)" output.pcm
播放
-
播放视频
1
ffplay -i output.yuv -video_size 1280x720 -framerate 30 -pixel_format yuvj422p
-
播放音频
1
ffplay -i output.pcm -ar 48000 -f s16le
处理原始数据
-
提取 YUV 视频数据
1
ffmpeg -i input.mp4 -an -c:v rawvideo -pixel_format yuv420p out.yuv
-
提取 PCM 音频数据
1
ffmpeg -i input.mp4 -vn -ar 48000 -channels 2 -f s16le output.pcm
视频滤镜
-
裁剪视频宽高各减 200
1
ffmpeg -i input.mp4 -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy output.mp4
-
从指定时间开始裁剪 10 秒
1
ffmpeg -i input.mp4 -ss 00:00:00 -t 10 output.mp4
-
拼接多个视频
1
ffmpeg -f concat -i input.txt output.mp4
input.txt文件内容示例:1
2file 'file1.mp4'
file 'file2.mp4'
图片与视频转换
-
将视频转换为图片
1
ffmpeg -i input.mp4 -r 1 -f image2 image-%3d.jpeg
-
将图片转换为视频
1
ffmpeg -i image-%3d.jpeg out.mp4
FFprobe 使用命令
获取视频帧信息
1 | ffprobe -show_frames -select_streams v:0 -print_format json output.mp4 |
说些什么吧!