C语言高级应用---操作linux下V4L2摄像头应用程序

Posted Engineer-Bruce_Yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言高级应用---操作linux下V4L2摄像头应用程序相关的知识,希望对你有一定的参考价值。

我们都知道,想要驱动linux下的摄像头,其实很简单,照着V4L2的手册一步步来写,很快就可以写出来,但是在写之前我们要注意改变系统的一些配置,使系统支持framebuffer,在dev下产生fb0这样的节点,这样我们才能在linux系统上操作Camera摄像头,framebuffer在之前的博文已经有说过了,这里就不再提了。

有需要了解framebuffer的那么请点击:http://baike.baidu.com/view/3351639.htm

       最重要的,我们需要改一个脚本,在/dev/grub.conf,我们来看看怎么改:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sdb2
#          initrd /initrd-[generic-]version.img
#boot=/dev/sdb
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-431.el6.i686)
	root (hd0,0)
	kernel /vmlinuz-2.6.32-431.el6.i686 ro root=UUID=2bc12537-d6c1-4e67-b4e5-e9c466205554 nomodeset rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet vga=0x318
	initrd /initramfs-2.6.32-431.el6.i686.img

通常情况下,要让framebuffer生效,要加一句vga=???(这里是参数),简单介绍一下:

我写vga=0x318就是默认就设置为1024x768x24bpp模式。当然还有其它的模式:如下图,根据自己的系统来配置。

以上是关于C语言高级应用---操作linux下V4L2摄像头应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Camera | 4.瑞芯微平台MIPI摄像头应用程序编写

深入学习Linux摄像头v4l2应用编程

摄像头驱动的使能配置V4L2编程接口的设计应用

Linux应用开发第七章摄像头V4L2编程应用开发

linux下怎么样进行摄像头编程

Linux v4l2编程(摄像头信息采集)