v4l2采集MJPG然后保存为JPG

来源:互联网 发布:windows微信是什么 编辑:程序博客网 时间:2024/06/05 21:07

目的:绕过yuyv的格式,不需要yuyv转换为jpg的算法。要点:

1、一个支持MJPG的摄像头

2、初始化设备时候,将V4L2_PIX_FMT_YUYV改为V4L2_PIX_FMT_MJPEG

将       fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_YUYV;改为      fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_MJPEG;

这样就将从摄像头获取的YUYV数据改为MJPG格式的图片了

3、可以通过如下函数测试,将从摄像头读取的buffer保存到本地的硬盘

//保存为图片  test.jpgFILE *fp = NULL;fp = fopen("test.jpg", "w");if(fp != NULL){    fwrite(buffers[buf.index].start, 1,buffers[buf.index].length, fp);    sync();    fclose(fp);}

源码链接:
http://download.csdn.net/detail/fendoubasaonian/9352255

0 0