#ifndef _PHOTOFAST_H_ #define _PHOTOFAST_H_ #include #include "hd_common.h" #include "UIAppPhoto.h" #include #define FLGPHOTOFAST_CHGMODE 0x00000001 #define FLGPHOTOFAST_SHUTDOWN 0x00000002 #define FLGPHOTOFAST_MASK FLGPTN_BIT_ALL #define PHOTOFAST_CAP_FRAME_CNT 6 // Naming rule & FileDB typedef struct { BOOL bIsSortBySn; CHAR* SortSN_Delim; ///< The delimiter string, e.g. underline "_", "AA" INT32 SortSN_DelimCount; ///< The delimiter count to find the serial number INT32 SortSN_CharNumOfSN; ///< The character number of the serial number } _FDB_SN_FASTBOOT; typedef struct _PBVIEW_HD_COM_BUF{ UINT32 pa; UINT32 va; UINT32 blk_size; HD_COMMON_MEM_VB_BLK blk; //block ID }PHOTOFAST_HD_COM_BUF, *PPHOTOFAST_HD_COM_BUF; /** bit rate control method */ typedef enum _PHOTOFAST_REENCTYPE { PHOTOFAST_REENCTYPE_FIXQ = 0, ///< depend on #CAP_SEL_QUALITY, encode jpeg file PHOTOFAST_REENCTYPE_RHO, ///< depend on CAP_SEL_RHO_xxxxx parameters, encode jpeg file PHOTOFAST_REENCTYPE_MAX_CNT, ENUM_DUMMY4WORD(PHOTOFAST_SEL_REENCTYPE) } PHOTOFAST_SEL_REENCTYPE; typedef struct _PHOTOFAST_ENC_SET{ UINT32 reenctype; UINT32 rho_targetbitrate; UINT32 rho_initqf; UINT32 rho_initqf_step; UINT32 rho_lboundsize; UINT32 rho_hboundsize; UINT32 rho_retrycnt; PHOTO_ENC_JPG_TYPE EncJpgType; }PHOTOFAST_ENC_INFO, *PPHOTOFAST_ENC_INFO; extern void PhotoFast_Cal_Jpg_Size(USIZE *psrc, USIZE *pdest , URECT *pdestwin); extern ER PhotoFast_Scale_YUV(VF_GFX_SCALE *pscale, HD_VIDEO_FRAME *psrc, PHOTOFAST_HD_COM_BUF *pComBufInfo, USIZE *pdest_sz, URECT *pdestwin, HD_VIDEO_PXLFMT pxl_fmt); extern THREAD_RETTYPE PhotoFast_InitFileNamingThread(void *arg); extern THREAD_RETTYPE PhotoFast_EncodeBsPullThread(void *arg); extern THREAD_RETTYPE PhotoFast_FlowPreviewThread(void *arg); extern void PhotoFast_PhotoClose(void); #endif //_UIAPP_PHOTO_H_