ffmpeg常见命令
1.基本信息查询命令
-version显示版本-demuxers显示可用的demuxers-muxers显示可用的muxers-devices显示可用设备-codecs显示所有编解码器-decoders显示所有的解码器-encoders显示所有的编码器-bsfs显示比特流filter-formats显示可用的格式-protocols显示可用的协议-filters显示可用的过滤器-pix_fmts显示可用的像素格式-sample_fmts显示可用的采样格式-layouts显示channel名称-colors显示识别的颜色名称
2.录制命令
windows 录制视频桌面(无声)
bash
ffmpeg -f gdigrab -i desktop -pix_fmt yuv420p out.mp43.分解/复用命令
多媒体视频转换
- 将out.mp4转化为out.flv
bash
ffmpeg -i out.mp4 -vcodec copy -acodec copy out.flv- 分离视频
ffmpeg -i .\out.mp4 -an -vcodec copy out.h264
分离声音
ffmpeg -i .\out.mp4 -acodec copy -vn out.mp3
4.处理原始数据命令
提取YUV数据
bash
ffmpeg -i .\out.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuvffmpeg [输入文件]-i .\out.mp4 [不要声音]-an [原始格式]-c:v rawvideo [像素格式]-pix_fmt yuv420p [输出文件]out.yuv
提取PCM数据
bash
ffmpeg -i out.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcmffmpeg [输入文件]-i out.mp4 [去视频]-vn [声音采样率]-ar 44100 [声道]-ac 2 [格式]-f s16le [输出文件]out.pcm
5.裁剪与合并命令
视频裁剪
bash
ffmpeg -i input.mp4 -ss 00:00:00 -t 1 out.tsffmpeg [输入文件]-i input.mp4 [开始时间]-ss 00:00:00 [持续时间]-t 1 [输出文件]out.ts
视频合并
bash
ffmpeg.exe -f concat -i inputs.txt concat.flvinputs.txt file filename
text
file 1.mp4
file 2.mp46.图片/视频转换命令
视频转图片
bash
ffmpeg -i .\tmp.mp4 -r 1 -f image2 image-%3d.jpegffmpeg [输入视频]-i .\tmp.mp4 [帧率]-r 1 [格式]-f image2 [输出文件]image-%3d.jpeg
图片转视频
bash
ffmpeg -i image-%3d.jpeg out.mp47.直播相关命令
直播推流
bash
ffmpeg.exe -re -i .\out.flv -c copy -f flv rtmp://server/live/streamName直播拉流
bash
ffmpeg -i rtmp://server/live/streamName -c copy dump.flv8.各种滤镜命令
滤镜入门
裁剪视频
bash
ffmpeg -i .\out.mp4 -vf crop=in_w-400:in_h-200 -c:v libx264 -c:a copy out.mp4