ffmpeg常用命令汇总

图片格式转换

jpg, bmp到yuv

ffmpeg -i image.jpg -pix_fmt yuv420p image.yuv

yuv到jpg(单张图片)

ffmpeg -s 1024x768 -i image.yuv image.jpg

jpg到nv12

ffmpeg -i image.jpg -f rawvideo -pix_fmt nv12 image0.nv12

播放视频

播放yuv

ffplay -f rawvideo -video_size 1024x768 video.yuv

播放nv12

ffplay -s 1920x1080 -pix_fmt nv12 -f rawvideo image0.nv12

下采样

下采样mp4

ffmpeg -i orig.mp4 -vf scale=1920:1080 smaller.mp4 

下采样yuv

ffmpeg -s 1920x1080 -pix_fmt yuv420p -i image0.yuv -f rawvideo -s 960x540 image0_1.yuv

一般ffmpeg都是8bit的编解码器,如果要下采样10bit的yuv,需要将ffmpeg编译为10bit的编码器

采集,编码,封装,推流

参考雷霄骅的博客:https://blog.csdn.net/leixiaohua1020/article/details/38283297 , https://blog.csdn.net/leixiaohua1020/article/details/38284961(博客非常好,音视频领域力荐)

#列出设备,-f dshow表示列出所有支持direct show的设备,-i dummy表示直接列出所有设备
ffmpeg -list_devices true -f dshow -i dummy
#保存视频流到本地,-f dshow表述使用哦dshow方式采集,-i "camera name"表示输入源的名字,可以由上一部列出,-vcodec表示编码该视频使用的编码器,最后的mp4为保存本地文件的名字
ffmpeg -f dshow -i "camera name" -vcodec libx264 videoname.mp4

你可能感兴趣的:(开源,视频处理)