CameraDef.h 2.0 KB
/**
 ********************************************************************
 * @file   CameraDef.h
 *         Camera的头文件
 *
 *********************************************************************
 */

/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
#ifndef CMAERA_DEF_H
#define CMAERA_DEF_H

/* Includes ------------------------------------------------------------------*/
#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"

#ifdef __cplusplus
extern "C" {
#endif

/* Exported constants --------------------------------------------------------*/
/* 常亮定义*/
typedef struct JZsdk_CameraParam
{
    unsigned int Brightness; //亮度,该摄像头亮度范围为 1-255 默认128
    unsigned int Contrast; //对比度,该摄像头对比度范围为 1-255 默认128
    unsigned int Saturation; //饱和度,该摄像头饱和度范围为 1-255 默认128
    unsigned int expsure; //曝光,该摄像头曝光范围为 1-255 默认128
}JZsdk_CameraParam;


typedef struct JZsdk_CameraInfo
{
    /***************** 摄像头基础配置 ******************/ 

    int CameraFd; //摄像头文件描述符
    unsigned char CmeraDevPath[JZSDK_FILE_PATH_SIZE_MAX]; //摄像头设备路径
    int width;
    int height;
    int FrameNum;
    int CameraFormat;

    /***************** 摄像头参数配置 ******************/ 
    JZsdk_CameraParam CameraParam;

    /***************** 设置画面数据的输出配置 ******************/ 

    //相机拍摄的画面流的输出模式 分为单线程和多线程
    int ThreadMode; 
  
    //单线程时,需要提供一个数据输出的函数
    T_JZsdkReturnCode (*SingleDataOutput)(unsigned char *data, unsigned int len);

    //多线程时,输出的缓冲区索引值
    int VideoMgmt_index;
}JZsdk_CameraInfo;

/* Exported types ------------------------------------------------------------*/


/* Exported functions --------------------------------------------------------*/

#ifdef __cplusplus
}
#endif

#endif