Leprachaun 发表于 2014-7-25 11:00:38

摄像头驱动分辨率的设置等问题

各位大侠,小弟最近在从事WINCE下的摄像头驱动开发。在摄像头驱动方面遇到了一些问题,在这里提出来希望有高手给予解答。
WINCE的摄像头驱动我是参考已有的驱动在同样的框架上进行修改,但是过程中很多地方不知道该如何修改。有以下几点:

1 分辨率的设置
我参考的是OV3640的摄像头驱动,其结构定义如下
#define OV3640_MODULE_ITUXXX         CAM_ITU601
#define OV3640_MODULE_INTERLACE      0
#define OV3640_MODULE_MIPI         (FALSE)
#define OV3640_MODULE_LANE         (DATA_LANE_1)
#define OV3640_MODULE_JPEG         (0)
#define OV3640_MODULE_YUVORDER       CAM_ORDER_YCBYCR
#define OV3640_MODULE_HSIZE          640
#define OV3640_MODULE_VSIZE          480
#define OV3640_MODULE_HOFFSET      0
#define OV3640_MODULE_VOFFSET      0
#define OV3640_MODULE_UVOFFSET       CAM_UVOFFSET_0
#define OV3640_MODULE_CLOCK          24000000
#define OV3640_MODULE_CODEC          CAM_FORMAT_YCBYCR422_1PLANE
#define OV3640_MODULE_HIGHRST      0      // This is affected by Electic circuit for reset or power control PIN, BB37->0, SMDK->1
#define OV3640_MODULE_INVPCLK      0
#define OV3640_MODULE_INVVSYNC       0
#define OV3640_MODULE_INVHREF      0

这里#define OV3640_MODULE_HSIZE          640和#define OV3640_MODULE_VSIZE          480两个参数决定了图像的大小,也是图像的分辨率。小弟想知道这个640和480是由什么决定的,是什么的图像的输出格式,与什么有关。我知道一般的输出图像有三种模式。CAPTURE——录像、STILL——拍照以及PREVIEW——预览,预览模式下的图像输出分辨率较大。我所用的摄像头是800万像素的MIPI接口的,分辨率录像和拍照以及预览都设置成多大的合适?为什么要这样设置。

另外还有这个#define OV3640_MODULE_CODEC          CAM_FORMAT_YCBYCR422_1PLANE 这个是图像的输出格式吧,这个1PLANE是什么意思,我在别的地方的代码中见过23PLANE,实际上定义的时候也确实有很多格式,如下
DWORD DMAOutFormat = OUTFMT_YUV422_23PLANE;             //Default value = 0
   DWORD OutRGBFormat = OUTRGB_RGB565;                     //Default value = 0(Don't care)
   //fightercui OUTDMA_YUV_3PLANE
   DWORD OutPlaneFormat = OUTDMA_YUV_2PLANE;               //Default value = 0(Don't care)
   DWORD OutOrderCbCr_2Plane = OUTDMA_YUV_2PLANE_CBCR_LITTLE;// Default value =0(Dont' care)
   DWORD OutOrder422_1Plane = OUTDMA_YUV422_1PLANE_YCBYCR; // Default value = 0(Don't care)
希望大家能给出一些解答或建议!

jiangyx1028 发表于 2016-10-21 08:41:38

页: [1]
查看完整版本: 摄像头驱动分辨率的设置等问题