Add new configuration field to skip frame when start preview or capture
[platform/core/multimedia/libmm-camcorder.git] / src / include / mm_camcorder_platform.h
index a9c747b..f1f2954 100644 (file)
@@ -37,6 +37,8 @@ extern "C" {
 /*=======================================================================================
 | GLOBAL DEFINITIONS AND DECLARATIONS FOR CAMCORDER                                    |
 ========================================================================================*/
+#define MM_CAMCORDER_ATTR_NONE -1
+
 
 /*=======================================================================================
 | MACRO DEFINITIONS                                                                    |
@@ -133,17 +135,16 @@ extern "C" {
 #define MMF_CROP_CIF_BOTTOM                    0
 
 /* Camera etc */
-#define _MMCAMCORDER_CAMSTABLE_COUNT           0               /* stablize count of camsensor */
 #define _MMCAMCORDER_MINIMUM_SPACE             (512*1024)      /* byte */
 #define _MMCAMCORDER_MMS_MARGIN_SPACE          (512)           /* byte */
 
 /**
  * Default None value for camera sensor enumeration.
  */
-#define _MMCAMCORDER_SENSOR_ENUM_NONE  -255
+#define _MMCAMCORDER_SENSOR_ENUM_NONE  -255
 
 /* camera information related */
-#define CAMINFO_CONVERT_NUM            40
+#define CAMINFO_CONVERT_NUM            45
 
 
 /*=======================================================================================
@@ -175,11 +176,20 @@ typedef enum {
        ENUM_CONVERT_EXPOSURE_MODE,
        ENUM_CONVERT_STROBE_MODE,
        ENUM_CONVERT_WDR,
+       ENUM_CONVERT_FLIP,
+       ENUM_CONVERT_ROTATION,
        ENUM_CONVERT_ANTI_HAND_SHAKE,
        ENUM_CONVERT_VIDEO_STABILIZATION,
        ENUM_CONVERT_NUM
 } MMCamConvertingEnum;
 
+typedef enum {
+       MM_CAMCONVERT_CATEGORY_CAMERA  = 1 << 0,
+       MM_CAMCONVERT_CATEGORY_DISPLAY = 1 << 1,
+       MM_CAMCONVERT_CATEGORY_AUDIO   = 1 << 2,
+       MM_CAMCONVERT_CATEGORY_ALL = MM_CAMCONVERT_CATEGORY_CAMERA | MM_CAMCONVERT_CATEGORY_DISPLAY | MM_CAMCONVERT_CATEGORY_AUDIO
+} MMCamConvertingCategory;
+
 /*=======================================================================================
 | STRUCTURE DEFINITIONS                                                                        |
 ========================================================================================*/
@@ -190,7 +200,7 @@ typedef struct {
        int total_enum_num;             /**< total enumeration count */
        int *enum_arr;                  /**< enumeration array */
        int category;                   /**< category */
-       char *keyword;                  /**< keyword array */
+       const char *keyword;                    /**< keyword array */
 } _MMCamcorderEnumConvert;
 
 
@@ -202,7 +212,7 @@ typedef struct {
        int category;                           /**< category of configuration */
        int attr_idx;                           /**< attribute index */
        int attr_idx_pair;                      /**< attribute index (only for 'pair' type) */
-       char *keyword;
+       const char *keyword;
        MMCamConvertingType conv_type;
        _MMCamcorderEnumConvert *enum_convert;  /**< converting value table */
 } _MMCamcorderInfoConverting;
@@ -224,15 +234,17 @@ typedef struct {
 ========================================================================================*/
 int _mmcamcorder_convert_msl_to_sensor(MMHandleType handle, int attr_idx, int mslval);
 int _mmcamcorder_convert_sensor_to_msl(MMHandleType handle, int attr_idx, int sensval);
+int _mmcamcorder_get_fps_array_by_resolution(MMHandleType handle, int width, int height,  MMCamAttrsInfo* fps_info);
 
 int _mmcamcorder_set_converted_value(MMHandleType handle, _MMCamcorderEnumConvert *convert);
 int _mmcamcorder_init_convert_table(MMHandleType handle);
-int _mmcamcorder_init_attr_from_configure(MMHandleType handle);
+int _mmcamcorder_init_attr_from_configure(MMHandleType handle, MMCamConvertingCategory category);
 
 int _mmcamcorder_convert_brightness(int mslVal);
 int _mmcamcorder_convert_whitebalance(int mslVal);
 int _mmcamcorder_convert_colortone(int mslVal);
 double _mmcamcorder_convert_volume(int mslVal);
+int  __mmcamcorder_set_info_to_attr(MMHandleType handle, _MMCamcorderInfoConverting *info, int table_size);
 
 #ifdef __cplusplus
 }