ffmpeg编程:读取摄像头信息,保存为裸yuv420p、yuyv422视频流

 

1. 源码下载:https://download.csdn.net/download/dijkstar/10898462

2. 编程环境使用Windows下的QT5.11 minGW32,源码中已经放好了fmpeg的bin、include、lib;

3. yuv420p:指的是 【planar YUV 4:2:0, 12bpp】,一帧图像的大小为1.5倍的长×宽;它的存放位置见源程序描述 AVFrame.data[0]、data[1]、data[2]三个位置;

yuyv422:指的是 【packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr】,一帧图像的大小为2倍的长×宽;它的存放位置为AVFrame.data[0]一个位置(RGB24也是AVFrame.data[0]一个位置存放);

本人用的联想笔记本自带的摄像头像素格式为:yuyv422,可以通过源码中的av_dump_format函数或者pCodecCtx->pix_fmt 查看摄像头原始格式;

4. 最后输出的为不含时间信息的裸原始视频帧文件,共100帧,使用 vooya 工具查看(备份:https://pan.baidu.com/s/1XQ-fbHN7reUdVS4qvGGFWA),注意选择正确的查看格式。

5. 如果使用ffmpeg的命令来转换yuv420p、yuyv422之间的格式,则:

ffmpeg -pix_fmt yuv420p -s 640x480 -i a.yuv -pix_fmt yuyv422 b.yuv

编程则是使用:sws_scale 函数完成,参考源码中的使用。


 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值