[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit

Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/cp/ps/plat/inc/msp/zte_audio.h b/cp/ps/plat/inc/msp/zte_audio.h
new file mode 100644
index 0000000..35db9d5
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_audio.h
@@ -0,0 +1,118 @@
+/************************************************************

+*************************************************************

+            MSP±¾µØÒôƵ²¥·ÅºÍ¼Òô¶ÔÍâ½Ó¿ÚÍ·Îļþ

+*************************************************************

+************************************************************/

+

+#ifndef ZTE_AUDIO_H

+#define ZTE_AUDIO_H

+

+#ifndef FOR_2960

+#include "mm_error.h"

+#endif

+#include "msm_type.h"

+#include "mm_def.h"

+#include "zte_display.h"

+

+typedef VOID (*MSP_NOTIFY_ERROR) (MM_MODULE_ID_E uiModule, DWORD dwParam);

+typedef VOID (*MSP_NOTIFY_END) (MM_MODULE_ID_E uiModule);

+

+typedef enum

+{

+    dd_volume_lev_0,

+    dd_volume_lev_1,

+    dd_volume_lev_2,

+    dd_volume_lev_3,

+    dd_volume_lev_4,

+    dd_volume_lev_5,        

+}VOLUME_DD_level;

+

+typedef enum

+{

+    DD_RECEIVER = 1,

+    DD_SPEAKER,

+    DD_HEADPHONE,

+    DD_SPEAKER_AND_HEADPHONE,

+    DD_BLUETOOTH_PHONE,     

+}DD_CODEC_PATHOUT;

+

+SINT32 Msp_SetEndCallback(MSP_NOTIFY_END EndCallbackFunc);

+SINT32 Msp_SetErrorCallback(MSP_NOTIFY_ERROR ErrorCallbackFunc);

+

+AUDIO_RESULT_E	Audio_Init(void);

+

+AUDIO_RESULT_E	Audio_Release(void);

+

+FILE_HANDLE		Audio_Open_File(unsigned char *filename);

+

+AUDIO_RESULT_E	Audio_Close(FILE_HANDLE handle);

+

+AUDIO_RESULT_E	PLAYER_AUDIO_StartPlay(FILE_HANDLE handle, unsigned long offset, unsigned short play_times);

+

+AUDIO_RESULT_E	Audio_StopPlay(FILE_HANDLE handle);

+

+AUDIO_RESULT_E	Audio_PausePlay(FILE_HANDLE handle);

+

+AUDIO_RESULT_E	Audio_ResumePlay(FILE_HANDLE handle);

+

+

+AUDIO_RESULT_E	Audio_GetCurTime(FILE_HANDLE handle, long *curtime);

+

+AUDIO_RESULT_E	Audio_GetTotalTime(FILE_HANDLE handle, unsigned long *totaltime);

+

+AUDIO_RESULT_E	Audio_Seek(FILE_HANDLE handle, unsigned long offset);

+

+

+AUDIO_RESULT_E	Audio_Mute(FILE_HANDLE handle, BOOL enable_mute);

+

+AUDIO_RESULT_E	Audio_Volume_Get(FILE_HANDLE handle, AUDIO_VOLUME_LEVEL_E *volume_level);

+

+AUDIO_RESULT_E	Audio_Volume_Set(FILE_HANDLE handle, AUDIO_VOLUME_LEVEL_E volume_level);

+

+

+AUDIO_RESULT_E	Audio_ChannelOut_Set(FILE_HANDLE handle, AUDIO_CHANNEL_OUT_E channel);

+

+/*

+AUDIO_RESULT_E Audio_Effect3D_Set(FILE_HANDLE handle,UINT8 *enable);

+

+AUDIO_RESULT_E Audio_EQmode_Set(FILE_HANDLE handle,MM_AUDIO_EQMODE_E audioEqMode);

+

+AUDIO_RESULT_E Audio_GetAuthorInfo(FILE_HANDLE handle, MP3_ID3_INFO_T *info);

+

+AUDIO_RESULT_E Audio_GetFileInfo(FILE_HANDLE handle, T_MM_AUDIO_PLAY_INFO *info);

+*/

+

+DRECORDER_RETURN_E REC_Open(BOOL record_in_cc, SINT32 uiVoiceFd);

+

+DRECORDER_RETURN_E REC_Close(void);

+

+RECORD_HANDLE REC_StartRecord(AUDIORECORDER_START_RECORD_T *record_param);

+

+DRECORDER_RETURN_E REC_StopRecord(RECORD_HANDLE handle);

+

+DRECORDER_RETURN_E REC_PauseRecord(RECORD_HANDLE handle);

+

+DRECORDER_RETURN_E REC_ResumeRecord(FILE_HANDLE handle);

+

+DRECORDER_RETURN_E  REC_GetCurTime(UINT32 *cur_time, FILE_HANDLE handle);

+

+

+/*LFX 20090507 for tone play begin*/

+AUDIO_RESULT_E Tone_Play(char toneID, char volume_level, char Priority);

+

+AUDIO_RESULT_E Tone_Stop(char toneID, char stop_type);

+/*LFX 20090507 for tone play end*/

+

+/* zhanghaoting add for 2960 tone 2009-08-14 */

+#ifdef FOR_2960

+extern void Audio_Open_Tone(VOID);

+

+extern void Audio_Play_Tone(T_MM_TONE_PARAM *ptParam);

+

+extern void Audio_Stop_Tone(VOID);

+

+extern void Audio_Close_Tone(VOID);

+#endif

+/* zhanghaoting add for 2960 tone 2009-08-14 end */

+

+#endif

diff --git a/cp/ps/plat/inc/msp/zte_dc.h b/cp/ps/plat/inc/msp/zte_dc.h
new file mode 100644
index 0000000..0648fed
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_dc.h
@@ -0,0 +1,114 @@
+/*****************************************************************************

+ *  °æ±¾ËùÓÐ (C)2008ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾

+ *  Ä£¿éÃû £º

+ *  ʵÏÖ¹¦ÄÜ £º

+ *  ×÷Õß £º

+ *  °æ±¾ £º

+ *  Íê³ÉÈÕÆÚ £º

+ *  ÆäËü˵Ã÷ £º MSPÅÄÕÕ¶ÔÍâ½Ó¿ÚÍ·Îļþ

+ *  ÐÞ¸ÄÈÕÆÚ     °æ±¾ºÅ      ÐÞ¸ÄÈË	     ÐÞ¸ÄÄÚÈÝ

+ *  ---------------------------------------------------------------------

+ *  2008/08/01	 V1.0	     XXXX	      XXXX

+************************************************************************/

+#ifndef	ZTE_DC_H

+#define	ZTE_DC_H

+

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+#include "zte_display.h"

+

+/**************************************************************************

+ *                        ºê                                     *

+ **************************************************************************/

+

+ 

+/**************************************************************************

+ *                        Êý¾ÝÀàÐÍ                                     *

+ **************************************************************************/

+/*³ß´ç*/

+typedef struct

+{

+    UINT16 dwWidth;

+    UINT16 dwHeight;

+}CAM_SIZE;

+typedef struct

+{

+    LCD_ID_E  			     lcd_id;

+    APP_PREVIEW_E          previewtype;

+    DCAMERA_SENSOR_E       sensor;

+    RECT_T		           disp_rect;		  // ÏÔÊ¾ÇøÓò

+    EFFECT_TYPE_E          effect;           //ÌØÊâЧ¹û

+    ZOOM_LEVEL_E           zoomlevel;        //Ëõ·Åˮƽ

+    MAN_ROTATE_TYPE	     rotation_mode;	  // Ðýת½Ç¶È	

+    BRITENESS_E            brightness;       //ÁÁ¶È

+    CONTRAST_E             contrastness;     //¶Ô±È¶È

+    CAPTURE_MODE_E         mode;             //ģʽ

+    CAM_SIZE               resolution;       //·Ö±çÂÊ

+    QUALITY_MODE_E         quality;          //ÖÊÁ¿

+    WHITEBALANCE_MODE_E    whitebalance;     //°×ƽºâ

+    MIRROR_PARAM_T         mirror;           //¾µÏñ

+}PREVIEW_PARAM_T;

+

+typedef struct

+{

+    UINT8                 *data_buffer;

+    UINT32                 data_length;

+    CHAR                  *data_display_ptr;  //ÔÚLCDÉÏÏÔʾµÄbufferÖ¸Õë

+    BOOL	                 flash_enable;		//ÊÇ·ñÉÁ¹â	

+    UINT16                  photonumber;

+}SNAPSHOT_PARAM_T;

+

+typedef struct

+{

+    UINT8                 *data_buffer;

+    UINT32                 data_length;

+    CHAR                  *data_display_ptr;  //ÔÚLCDÉÏÏÔʾµÄbufferÖ¸Õë

+    RECT_T  		           display_rect;	   // ÏÔʾÕÕÆ¬ÇøÓò

+    MAN_ROTATE_TYPE	     rotation_mode;	   // Ðýת½Ç¶È	

+}REVIEW_PARAM_T;

+

+typedef struct

+{	

+    UINT8                 *buf_ptr;          //Êý¾ÝÖ¸Õë

+    UINT16                 color;	         //͸Ã÷É«                      

+}FRAME_PARAM_T;

+

+/**************************************************************************

+ *                        º¯ÊýÔ­ÐÍ                                    *

+ **************************************************************************/

+DCAMERA_RETURN_VALUE_E DC_Open(DCAMERA_SENSOR_E param);

+

+DCAMERA_RETURN_VALUE_E DC_Close(void);

+

+DCAMERA_RETURN_VALUE_E DC_Startpreview(PREVIEW_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E DC_Stoppreview(void);

+

+DCAMERA_RETURN_VALUE_E DC_CaptureOne(SNAPSHOT_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E DC_PhotoReview(REVIEW_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E DC_SetRotate(MAN_ROTATE_TYPE param);

+

+DCAMERA_RETURN_VALUE_E DC_SetZoom(ZOOM_LEVEL_E param);

+

+DCAMERA_RETURN_VALUE_E DC_SetBright(BRITENESS_E level);

+

+DCAMERA_RETURN_VALUE_E DC_SetContrast(CONTRAST_E level);

+

+DCAMERA_RETURN_VALUE_E DC_SetEffect(EFFECT_TYPE_E effect);

+

+DCAMERA_RETURN_VALUE_E DC_SetCaputureMode(CAPTURE_MODE_E mode);

+

+DCAMERA_RETURN_VALUE_E DC_SetFrame(FRAME_PARAM_T *frame);

+

+DCAMERA_RETURN_VALUE_E DC_SetWhiteBalance(WHITEBALANCE_MODE_E param);

+

+DCAMERA_RETURN_VALUE_E DC_SetResolution(CAM_SIZE *param);

+

+DCAMERA_RETURN_VALUE_E DC_SetQuality(QUALITY_MODE_E param);

+

+DCAMERA_RETURN_VALUE_E DC_SetMirror(MIRROR_PARAM_T *param);

+

+#endif

diff --git a/cp/ps/plat/inc/msp/zte_dv.h b/cp/ps/plat/inc/msp/zte_dv.h
new file mode 100644
index 0000000..0f08bb5
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_dv.h
@@ -0,0 +1,91 @@
+/*****************************************************************************

+ *  °æ±¾ËùÓÐ (C)2008ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾

+ *  Ä£¿éÃû £º

+ *  ʵÏÖ¹¦ÄÜ £º

+ *  ×÷Õß £º

+ *  °æ±¾ £º

+ *  Íê³ÉÈÕÆÚ £º

+ *  ÆäËü˵Ã÷ £ºMSPÉãÏñ¶ÔÍâ½Ó¿ÚÍ·Îļþ

+ *  ÐÞ¸ÄÈÕÆÚ     °æ±¾ºÅ      ÐÞ¸ÄÈË	     ÐÞ¸ÄÄÚÈÝ

+ *  ---------------------------------------------------------------------

+ *  2008/08/01	 V1.0	     XXXX	      XXXX

+************************************************************************/

+#ifndef ZTE_DV_H

+#define ZTE_DV_H

+

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+#include "zte_display.h"

+/**************************************************************************

+ *                        ºê                                     *

+ **************************************************************************/

+

+ 

+/**************************************************************************

+ *                        Êý¾ÝÀàÐÍ                                     *

+ **************************************************************************/

+typedef enum

+{

+    VIDEO_MIC = 1,

+    VIDEO_HEADSET	

+}VIDEO_CODEC_PATH;

+

+typedef enum

+{

+    FILE_3GP,

+    FILE_MP4

+}VIDEO_FILE_TYPE;

+

+typedef enum

+{

+    DV_TYPE,

+    VIDEO_TYPE,

+    STREAM_TYPE,

+    VT_TYPE

+}DV_APP_TYPE;

+

+typedef struct

+{	

+    CHAR                            *savefile_path;		 

+    VIDEO_CODEC_PATH     codec_path;

+    RECT_T                         rec_rect;

+    MIRROR_PARAM_T         mirror;

+    MAN_ROTATE_TYPE        rotate;

+    QUALITY_MODE_E          quality; 

+    UINT32                          maxStreamSize;

+    BOOL                            audioenable;

+    EFFECT_TYPE_E             effect;

+    VIDEO_FILE_TYPE          filetype;

+}DV_RECORD_START_PARAM_T;

+

+/**************************************************************************

+ *                        º¯ÊýÔ­ÐÍ                                    *

+ **************************************************************************/

+DCAMERA_RETURN_VALUE_E DV_Open(DCAMERA_SENSOR_E param);

+

+DCAMERA_RETURN_VALUE_E DV_Close(void);

+

+DCAMERA_RETURN_VALUE_E DV_StartRecord(DV_RECORD_START_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E DV_StopRecord(void);

+

+DCAMERA_RETURN_VALUE_E DV_PauseRecord(void);

+

+DCAMERA_RETURN_VALUE_E DV_ResumeRecord(void);

+

+DCAMERA_RETURN_VALUE_E DV_SetRotate(MAN_ROTATE_TYPE param);

+

+DCAMERA_RETURN_VALUE_E DV_SetZoom(ZOOM_LEVEL_E param);

+

+DCAMERA_RETURN_VALUE_E DV_SetBright(BRITENESS_E level);

+

+DCAMERA_RETURN_VALUE_E DV_SetContrast(CONTRAST_E level);

+

+DCAMERA_RETURN_VALUE_E DV_SetEffect(EFFECT_TYPE_E effect);

+

+DCAMERA_RETURN_VALUE_E DV_GetFileSize(UINT32 *length);

+

+DCAMERA_RETURN_VALUE_E DV_GetCurTime(UINT32 *uitime);

+

+#endif

diff --git a/cp/ps/plat/inc/msp/zte_osd.h b/cp/ps/plat/inc/msp/zte_osd.h
new file mode 100644
index 0000000..ccfd77b
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_osd.h
@@ -0,0 +1,119 @@
+/************************************************************************

+* °æÈ¨ËùÓÐ(C)2007,ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾¡£

+* Ä£¿éÃû  £º OSD²Ù×÷Ä£¿é

+* ÎļþÃû³Æ£º zte_osd.h

+* Îļþ±êʶ£º 

+* ÄÚÈÝÕªÒª£º ´ËÎļþÊÇMSP¶ÔÍâÌṩµÄÍ·Îļþ

+* 

+* ÐÞ¸ÄÈÕÆÚ      °æ±¾ºÅ     Ð޸ıê¼Ç       ÐÞ¸ÄÈË       ÐÞ¸ÄÄÚÈÝ      

+* ----------------------------------------------------------------------

+* 2009/3/25    1.0                        ³ÂÓÐöÎ                        

+************************************************************************/

+

+#ifndef ZTE_OSD_H

+#define ZTE_OSD_H

+

+#ifdef __cplusplus

+   extern "C"

+   {

+#endif 

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+//#include "pub.h"

+/**************************************************************************

+ *                         ³£Á¿                                           *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         ºê¶¨Òå                                         *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         Êý¾ÝÀàÐÍ                                       *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         ÀàÉùÃ÷ £¨¶ÔÓÚCÓïÑÔµÄÍ·Îļþ£¬¿É²Ã¼ô£©           *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         Ä£°å  £¨¶ÔÓÚCÓïÑÔµÄÍ·Îļþ£¬¿É²Ã¼ô£©            *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         È«¾Ö±äÁ¿ÉùÃ÷                                    *

+ **************************************************************************/

+

+/**************************************************************************

+ *                        È«¾Öº¯ÊýÔ­ÐÍ                                     *

+ **************************************************************************/ 

+

+/**

+ * º¯ÊýÃû³Æ£º Zte_SetTransformColor 

+ * ¹¦ÄÜÃèÊö£º OSDÄ£¿é͸Ã÷É«ºÍ͸Ã÷¶ÈÉèÖÃ

+ * ²ÎÊý˵Ã÷£º (IN) uiTransColoor: ͸Ã÷É«

+                   uiAlpha      : ͸Ã÷¶È

+ * ·µ »Ø Öµ£º ÎÞ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+VOID Zte_SetLcdFd(UINT32 uiLcdFd);

+

+

+/**

+ * º¯ÊýÃû³Æ£º Zte_SetTransformColor 

+ * ¹¦ÄÜÃèÊö£º OSDÄ£¿é͸Ã÷É«ºÍ͸Ã÷¶ÈÉèÖÃ

+ * ²ÎÊý˵Ã÷£º (IN) uiTransColoor: ͸Ã÷É«

+                   uiAlpha      : ͸Ã÷¶È

+ * ·µ »Ø Öµ£º ÎÞ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+VOID Zte_SetTransformColor(UINT16 uiTransColoor, UINT8 uiAlpha);

+

+

+/**

+ * º¯ÊýÃû³Æ£º Zte_SetScreenSize 

+ * ¹¦ÄÜÃèÊö£º ÉèÖÃÆÁÄ»¿í¸ß

+ * ²ÎÊý˵Ã÷£º (IN) uiWidth : ¿í¶È

+                   uiHeight: ¸ß¶È

+ * ·µ »Ø Öµ£º ÎÞ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+VOID Zte_SetScreenSize(UINT32 uiWidth, UINT32 uiHeight);

+

+/**

+ * º¯ÊýÃû³Æ£º Zte_GuiDestroyUpdateScreenThread 

+ * ¹¦ÄÜÃèÊö£º ³õʼ»¯Ê±´´½¨µÄË¢ÐÂÏ̵߳ĽӿÚ

+ * ²ÎÊý˵Ã÷£º (IN) priority       ÐèÒª´´½¨Ï̵߳ÄÓÅÏȼ¶

+ *            (IN) stack_size     ÐèÒªµÄÕ»¿Õ¼ä´óС

+ *            (IN) LcdFd          LCDµÄÉ豸¾ä±ú

+ *            (IN) pBuffer        LCDµÄÉ豸ÏÔ´æ

+ * ·µ »Ø Öµ£º BOOL    FALSE: ´´½¨Ê§°ÜºÍÈë²Î´íÎó

+ *                    TRUE:  ´´½¨³É¹¦          

+ * ÆäËü˵Ã÷£º Õâ¸öº¯ÊýÔÚGUI³õʼ»¯Ê±µ÷Ó㬵«ÒªÔڳɹ¦´ò¿ªLCDÉ豸֮ºó£¬¾Í·ÅÔÚsystem_initializeº¯ÊýµÄ×îºóÃæ

+ */

+BOOL Zte_GuiCreateUpdateScreenThread(UINT32 priority, UINT32 stack_size, VOID *pBuffer);

+

+

+/**

+ * º¯ÊýÃû³Æ£º Zte_GuiUpdateScreenRect 

+ * ¹¦ÄÜÃèÊö£º GUIË¢ÆÁ֪ͨº¯Êý

+ * ²ÎÊý˵Ã÷£º (IN) left        ¾Ö²¿Ë¢ÐÂµÄÆðʼx×ø±ê

+ *            (IN) top         ¾Ö²¿Ë¢ÐÂµÄÆðʼy×ø±ê

+ *            (IN) right       ¾Ö²¿Ë¢ÐµÄÖÕÖ¹x×ø±ê

+ *            (IN) bottom      ¾Ö²¿Ë¢ÐµÄÖÕÖ¹y×ø±ê

+ *            (IN) pAlphaTable ÓÉMMIÉèÖõÄ͸Ã÷¶È±í£¬´óСΪ240*320¡£Ö»ÓÐÔÚOSD״̬ÏÂÓÐЧ

+ *                             Õý³£×´Ì¬Îª¿Õ

+ * ·µ »Ø Öµ£º ÎÞ

+ * ÆäËü˵Ã÷£º Õâ¸öº¯ÊýÔÚprimaryUpdateRegionÖÐʹÓÃ,Ìæ»»µô֮ǰˢÆÁµÄ²¿·Ö.

+ */

+VOID Zte_GuiUpdateScreenRect(UINT32 left, UINT32 top, UINT32 right, UINT32 bottom,  unsigned char  *pAlphaTable);

+

+

+

+#ifdef __cplusplus

+   } 

+#endif

+

+#endif

+

diff --git a/cp/ps/plat/inc/msp/zte_pcm.h b/cp/ps/plat/inc/msp/zte_pcm.h
new file mode 100644
index 0000000..712baaf
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_pcm.h
@@ -0,0 +1,154 @@
+/************************************************************************

+ * °æÈ¨ËùÓÐ (C)2007,ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾¡£

+ * Ä£¿éÃû  £º PCMÊý¾ÝÒôƵ²¥·ÅÄ£¿é

+ * ÎļþÃû³Æ£º Zte_pcmdriver.h

+ * Îļþ±êʶ£º 

+ * ÄÚÈÝÕªÒª£º Ö÷Òª¶¨ÒåPCMÊý¾ÝÒôƵ²¥·ÅÄ£¿éµÄºê¶¨Òå¡¢³£Á¿¡¢È«¾Ö±äÁ¿ÒÔ¼°º¯ÊýµÄÉùÃ÷

+ *                      ´Ë½Ó¿ÚÖ÷ÒªÊÇÓÃÓڹ̶¨Ì¨ÓïÒô²¥±¨

+ *

+ * ÐÞ¸ÄÈÕÆÚ      °æ±¾ºÅ     Ð޸ıê¼Ç    ÐÞ¸ÄÈË          ÐÞ¸ÄÄÚÈÝ      

+ * ----------------------------------------------------------------------

+ * 2010/01/13    1.0                    Âíΰ          ´´½¨

+ ************************************************************************/

+

+#ifndef ZTE_PCMDRIVER_H

+#define ZTE_PCMDRIVER_H

+

+#ifdef __cplusplus

+extern "C"

+{

+#endif

+

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         ³£Á¿                                           *

+ **************************************************************************/

+typedef enum 

+{

+    PCM_MONO_CHANNEL,

+    PCM_DUAL_CHANNEL

+}DD_PCM_CHANNEL;

+

+typedef enum

+{

+    PCM_VOL_LEV_0,

+	PCM_VOL_LEV_1,

+	PCM_VOL_LEV_2,

+	PCM_VOL_LEV_3,

+	PCM_VOL_LEV_4,

+	PCM_VOL_LEV_5

+}DD_PCM_VOL_LEVEL;

+

+typedef enum

+{

+    DD_PCM_OUTPUT_RECEIVER = 1,       /* ÌýͲ         */

+    DD_PCM_OUTPUT_SPEAKER,            /* ÑïÉùÆ÷       */

+    DD_PCM_OUTPUT_HEADPHONE,          /* ¶ú»ú         */

+    DD_PCM_OUTPUT_SPEAKER_HEADPHONE,  /* ÑïÉùÆ÷ºÍ»°Í² */

+    DD_PCM_OUTPUT_BLUETOOTH           /* À¶ÑÀ         */

+}DD_PCM_CHANNEL_OUTPUT;

+

+typedef enum 

+{

+    DD_PCMRATE_8_KHZ = 0,

+    DD_PCMRATE_11_KHZ,

+    DD_PCMRATE_16_KHZ,

+    DD_PCMRATE_44_1_KHZ,

+    DD_PCMRATE_UNKNOW

+}DD_PCM_SAMPLERATE;

+

+/**************************************************************************

+ *                         ºê¶¨Òå                                         *

+ **************************************************************************/

+                         

+/**************************************************************************

+ *                         Êý¾ÝÀàÐÍ                                       *

+ **************************************************************************/

+typedef struct PCM_PLAY_PARAM_

+{

+	DD_PCM_CHANNEL    eChannel;

+	DD_PCM_VOL_LEVEL      eVol;

+	DD_PCM_CHANNEL_OUTPUT eChannelOutput;

+	DD_PCM_SAMPLERATE eSampleRate;

+}PCM_PLAY_PARAM;

+

+

+/**************************************************************************

+ *                         È«¾Ö±äÁ¿ÉùÃ÷                                    *

+ **************************************************************************/

+

+/**************************************************************************

+ *                        È«¾Öº¯ÊýÔ­ÐÍ                                     *

+ **************************************************************************/

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Init

+ * ¹¦ÄÜÃèÊö£º PCMÒôƵģ¿é³õʼ»¯

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ´ò¿ªÉ豸³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º 

+ */

+SINT32 PCM_Audio_Init(void);

+

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Release

+ * ¹¦ÄÜÃèÊö£º ÊÍ·ÅPCMÒôƵģ¿é

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ÊÍ·ÅÉ豸³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º 

+ */

+SINT32 PCM_Audio_Release(void);

+

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Open_Buffer

+ * ¹¦ÄÜÃèÊö£º ´ò¿ªPCMÊý¾Ýbuffer

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º 

+ */

+SINT32 PCM_Audio_Open_Buffer(PCM_PLAY_PARAM tPcmPlayParam, VOID *pPcmBuffer, UINT32 uiBufSize);

+

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Play

+ * ¹¦ÄÜÃèÊö£º PCMÊý¾Ý¿ªÊ¼²¥·Å

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º Óë³õʼ»¯º¯Êý³É¶ÔʹÓÃ

+ */

+SINT32 PCM_Audio_Play(UINT32 uiOffset, UINT32 uiRepeatCount);

+

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Data_Input

+ * ¹¦ÄÜÃèÊö£º PCMÊý¾ÝÊäÈë

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º Óë³õʼ»¯º¯Êý³É¶ÔʹÓÃ

+ */

+SINT32 PCM_Audio_Data_Input(VOID *pDataBuf, UINT32 uiDataLen);

+

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Stop

+ * ¹¦ÄÜÃèÊö£º PCMÊý¾ÝÍ£Ö¹²¥·Å

+ * ²ÎÊý˵Ã÷£º (IN)ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º 

+ */

+SINT32 PCM_Audio_Stop(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º PCM_Audio_Close

+ * ¹¦ÄÜÃèÊö£º PCMÒôƵ²¥·ÅÄ£¿é¹Ø±Õ

+ * ²ÎÊý˵Ã÷£º (IN)ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»Ø0;·ñÔò·µ»Ø-1¡£

+ * ÆäËü˵Ã÷£º 

+ */

+SINT32 PCM_Audio_Close(VOID);

+

+#ifdef __cplusplus

+}

+#endif

+

+#endif  /* ZTE_PCMDRIVER_H */

+

diff --git a/cp/ps/plat/inc/msp/zte_stream.h b/cp/ps/plat/inc/msp/zte_stream.h
new file mode 100644
index 0000000..b792199
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_stream.h
@@ -0,0 +1,183 @@
+/************************************************************************

+ * °æÈ¨ËùÓÐ (C)2007,ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾¡£

+ * Ä£¿éÃû  £º Á÷ýÌåÄ£¿é

+ * ÎļþÃû³Æ£º Zte_stream.h

+ * Îļþ±êʶ£º 

+ * ÄÚÈÝÕªÒª£º Ö÷Òª¶¨ÒåÁ÷ýÌåÄ£¿éµÄºê¶¨Òå¡¢³£Á¿¡¢È«¾Ö±äÁ¿ÒÔ¼°º¯ÊýµÄÉùÃ÷

+ *

+ * ÐÞ¸ÄÈÕÆÚ      °æ±¾ºÅ     Ð޸ıê¼Ç    ÐÞ¸ÄÈË          ÐÞ¸ÄÄÚÈÝ      

+ * ----------------------------------------------------------------------

+ * 2009/06/08    1.0                    ½¯±¾±ø          ´´½¨

+ ************************************************************************/

+

+#ifndef ZTE_STREAM_H

+#define ZTE_STREAM_H

+

+#ifdef __cplusplus

+extern "C"

+{

+#endif

+

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         ³£Á¿                                           *

+ **************************************************************************/

+typedef enum 

+{

+    DD_STREAMING_NONE = 0,

+    DD_STREAMING_MP3 = 0x80,

+    DD_STREAMING_MIDI,

+    DD_STREAMING_ONE,

+    DD_STREAMING_AMR_NB,

+    DD_STREAMING_AAC,

+    DD_STREAMING_DRA,

+    DD_STREAMING_UNKNOW

+}DD_STEAMING_AUDIO;

+

+/**************************************************************************

+ *                         ºê¶¨Òå                                         *

+ **************************************************************************/

+                         

+/**************************************************************************

+ *                         Êý¾ÝÀàÐÍ                                       *

+ **************************************************************************/

+

+

+typedef struct _DD_AUDIO_STREAM_AAC_PARAM_

+{

+	UINT32 headerLength;

+	UINT8 *headerAddr;

+}DD_AUDIO_STREAM_AAC_PARAM;

+

+typedef struct DD_STREAM_AUDIO_SET_

+{

+   

+   UINT8 *bConfig;

+   DD_AUDIO_STREAM_AAC_PARAM dd_aac;

+      

+}DD_STREAM_AUDIO_SET;

+

+typedef struct STREAM_AUDIO_PARAM_

+{

+

+    DD_STEAMING_AUDIO stream_audio_type;

+    

+    DD_STREAM_AUDIO_SET stream_param_set;

+    

+

+}STREAM_AUDIO_PARAM;

+

+typedef STREAM_AUDIO_PARAM *STREAM_AUDIO_HANDLE;

+

+/* ÊÓÆµ¸ñʽ */

+typedef enum

+{

+    STREAM_VIDEO_NONE =0,

+    STREAM_VIDEO_H263,         /* H263 */

+    STREAM_VIDEO_H264,         /* H264 */

+    STREAM_VIDEO_MP4,          /* MP4  */

+    STREAM_VIDEO_MAX

+}STREAM_VIDEO_FORMAT;

+

+/**************************************************************************

+ *                         È«¾Ö±äÁ¿ÉùÃ÷                                    *

+ **************************************************************************/

+

+/**************************************************************************

+ *                        È«¾Öº¯ÊýÔ­ÐÍ                                     *

+ **************************************************************************/

+/**

+ * º¯ÊýÃû³Æ£º Stream_Video_Open

+ * ¹¦ÄÜÃèÊö£º ´ò¿ªÁ÷ýÌåÊÓÆµÉ豸¡£

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ´ò¿ªÉ豸³É¹¦·µ»ØDCAMERA_OP_SUCCESS;·ñÔò·µ»ØDCAMERA_OP_ERROR¡£

+ * ÆäËü˵Ã÷£º 

+ */

+DCAMERA_RETURN_VALUE_E Stream_Video_Open(void);

+

+/**

+ * º¯ÊýÃû³Æ£º Stream_Video_Close

+ * ¹¦ÄÜÃèÊö£º ÊÍ·ÅÁ÷ýÌå´ò¿ªµÄÊÓÆµÉ豸¡£

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ÊÍ·ÅÉ豸³É¹¦·µ»ØDCAMERA_OP_SUCCESS;·ñÔò·µ»ØDCAMERA_OP_ERROR¡£

+ * ÆäËü˵Ã÷£º 

+ */

+DCAMERA_RETURN_VALUE_E Stream_Video_Close(void);

+

+/**

+ * º¯ÊýÃû³Æ£º Stream_Video_Init

+ * ¹¦ÄÜÃèÊö£º Á÷ýÌåÄ£¿é³õʼ»¯¡£

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS;·ñÔò·µ»ØDCAMERA_OP_ERROR¡£

+ * ÆäËü˵Ã÷£º 

+ */

+DCAMERA_RETURN_VALUE_E Stream_Video_Init(STREAM_VIDEO_FORMAT eStreamVideoType);

+

+/**

+ * º¯ÊýÃû³Æ£º Stream_Video_Release

+ * ¹¦ÄÜÃèÊö£º ÊÍ·ÅÁ÷ýÌåÄ£¿é×ÊÔ´¡£

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS;·ñÔò·µ»ØDCAMERA_OP_ERROR¡£

+ * ÆäËü˵Ã÷£º Óë³õʼ»¯º¯Êý³É¶ÔʹÓÃ

+ */

+DCAMERA_RETURN_VALUE_E Stream_Video_Release(void);

+

+/**

+ * º¯ÊýÃû³Æ£º Stream_Video_Decode

+ * ¹¦ÄÜÃèÊö£º Á÷ýÌåÊÓÆµ½âÂë¡¢Êä³ö¡£

+ * ²ÎÊý˵Ã÷£º (IN)param:ÊÓÆµÊý¾Ý½á¹¹Ö¸Õ룬°üÀ¨Êý¾ÝÖ¸ÕëÓ볤¶È

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS;·ñÔò·µ»ØDCAMERA_OP_ERROR¡£

+ * ÆäËü˵Ã÷£º ¸Ãº¯Êý²»½öÌṩ½âÂë¶øÇÒ°üÀ¨½âÂëºóµÄÊÓÆµÊä³ö¹¦ÄÜ

+ */

+DCAMERA_RETURN_VALUE_E Stream_Video_Decode(STREAM_DATA *param);

+

+/**

+ * º¯ÊýÃû³Æ£º Stream_Video_SetParam

+ * ¹¦ÄÜÃèÊö£º Á÷ýÌåÊÓÆµÉèÖá£

+ * ²ÎÊý˵Ã÷£º (IN)param:ÉèÖòÎÊý£¬ÉèÖÃÊÓÆµÏÔʾµÄÇøÓò¼°Ðýת½Ç¶È

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS;·ñÔò·µ»ØDCAMERA_OP_ERROR¡£

+ * ÆäËü˵Ã÷£º 

+ */

+DCAMERA_RETURN_VALUE_E Stream_Video_SetParam(STREAM_SET_PARAM *param);

+

+/**

+ * º¯ÊýÃû³Æ£ºStream_Audio_Open

+ * ¹¦ÄÜÃèÊö£º´ò¿ªÁ÷ýÌåÒôƵÉ豸¡£

+ * ²ÎÊý˵Ã÷£º(IN)data_type:Á÷ýÌåÊý¾ÝÀàÐÍ

+ *           (IN)stream_param:ÉèÖòÎÊý

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØÁ÷ýÌåÒôƵ²¥·Å¾ä±ú;·ñÔò·µ»ØNULL¡£

+ * ÆäËü˵Ã÷£º 

+ */

+STREAM_AUDIO_HANDLE Stream_Audio_Open(DD_STEAMING_AUDIO data_type, DD_STREAM_AUDIO_SET *stream_param);

+

+/**

+ * º¯ÊýÃû³Æ£ºStream_Audio_Close

+ * ¹¦ÄÜÃèÊö£º¹Ø±ÕÁ÷ýÌåÒôƵÉ豸¡£

+ * ²ÎÊý˵Ã÷£º(IN)handle:Á÷ýÌåÒôƵ²¥·Å¾ä±ú

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØAUDIO_NO_ERROR;·ñÔò·µ»ØÏàÓ¦µÄ´íÎóÂë¡£

+ * ÆäËü˵Ã÷£º 

+ */

+AUDIO_RESULT_E Stream_Audio_Close(STREAM_AUDIO_HANDLE handle);

+

+/**

+ * º¯ÊýÃû³Æ£ºStream_Audio_Open

+ * ¹¦ÄÜÃèÊö£ºÁ÷ýÌåÒôƵÊý¾Ý½âÂëÊä³ö¡£

+ * ²ÎÊý˵Ã÷£º(IN)handle:Á÷ýÌåÒôƵ²¥·Å¾ä±ú

+ *           (IN)buffer:ÒôƵÊý¾ÝÖ¸Õë

+ *           (IN)buffer_size:ÒôƵÊý¾Ý³¤¶È

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØAUDIO_NO_ERROR;·ñÔò·µ»ØÏàÓ¦µÄ´íÎóÂë¡£

+ * ÆäËü˵Ã÷£º 

+ */

+AUDIO_RESULT_E Stream_Audio_Decode(STREAM_AUDIO_HANDLE handle,

+                                   UINT32 *buffer,

+                                   UINT32 buffer_size);

+

+#ifdef __cplusplus

+}

+#endif

+

+#endif  /* ZTE_STREAM_H */

+

diff --git a/cp/ps/plat/inc/msp/zte_video.h b/cp/ps/plat/inc/msp/zte_video.h
new file mode 100644
index 0000000..5c5083d
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_video.h
@@ -0,0 +1,129 @@
+/*****************************************************************************

+ *  °æ±¾ËùÓÐ (C)2008ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾

+ *  Ä£¿éÃû £º

+ *  ʵÏÖ¹¦ÄÜ £º

+ *  ×÷Õß £º

+ *  °æ±¾ £º

+ *  Íê³ÉÈÕÆÚ £º

+ *  ÆäËü˵Ã÷ £ºMSPÊÓÆµ²¥·Å¶ÔÍâ½Ó¿ÚÍ·Îļþ

+ *  ÐÞ¸ÄÈÕÆÚ     °æ±¾ºÅ      ÐÞ¸ÄÈË	     ÐÞ¸ÄÄÚÈÝ

+ *  ---------------------------------------------------------------------

+ *  2008/08/01	 V1.0	     XXXX	      XXXX

+************************************************************************/

+#ifndef	ZTE_VIDEO_H

+#define	ZTE_VIDEO_H

+

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+#include "zte_display.h"

+

+/**************************************************************************

+ *                        ºê                                     *

+ **************************************************************************/

+#define  VIDEO_MAX_PATH_LEN     1024

+/**************************************************************************

+ *                        Êý¾ÝÀàÐÍ                                     *

+ **************************************************************************/

+typedef enum

+{

+    VIDEO_FILE_TYPE_MP4,

+    VIDEO_FILE_TYPE_3GP,

+    VIDEO_FILE_TYPE_K3G,

+    VIDEO_FILE_TYPE_UNKNOWN

+} VIDEO_BUFFER_FILE_TYPE_E;

+

+typedef enum

+{

+    CHANNEL_OUT_RECEIVER = 1,              /*ÌýͲ*/

+    CHANNEL_OUT_SPEAKER ,                    /*speaker*/		 

+    CHANNEL_OUT_EARPHONE,                   /*¶ú»ú*/

+    CHANNEL_OUT_SPEAKER_EARPHONE,   /*¶ú»ú + SpeakerͬʱÊä³ö*/

+    CHANNEL_OUT_BLUETOOTH

+}VIDEO_CHANNEL_OUT_TYPE_E;

+

+typedef enum

+{

+    VIDEO_VOLUME_LEVEL_0,

+    VIDEO_VOLUME_LEVEL_1,

+    VIDEO_VOLUME_LEVEL_2,

+    VIDEO_VOLUME_LEVEL_3,

+    VIDEO_VOLUME_LEVEL_4,

+    VIDEO_VOLUME_LEVEL_5

+}VIDEO_VOLUME_LEVEL_E;

+

+typedef enum

+{

+    VIDEO_SEEK_FROM_CUR,      /*´Óµ±Ç°Î»ÖÃseek*/

+    VIDEO_SEEK_FROM_BEGIN   /*´Ó¿ªÊ¼Seek*/

+}VIDEO_PLAY_SEEK_MODE;

+

+typedef enum

+{

+    VIDEO_PLAY_STATE_IDLE,

+    VIDEO_PLAY_STATE_READY,

+    VIDEO_PLAY_STATE_PLAY,

+    VIDEO_PLAY_STATE_PAUSE,

+    VIDEO_PLAY_STATE_STOP

+}VIDEO_PLAY_STATE;

+

+typedef struct

+{	

+    char                       filepath[VIDEO_MAX_PATH_LEN+1];  /*ÊÓÆµµÄ×ÊԴ·¾¶*/

+    RECT_T                     play_rect;

+    MAN_ROTATE_TYPE            rotate;                

+    VIDEO_CHANNEL_OUT_TYPE_E   channel;

+    VIDEO_VOLUME_LEVEL_E       volume;

+    VIDEO_PLAY_STATE           curstate;

+    UINT8                     *videoBuf;            /* Ö¸ÏòÊÓÆµbufferÊý¾ÝµÄÖ¸Õë */

+    UINT32                     videoBuffSize;      /* ÊÓÆµbufferµÄ´óС */

+    VIDEO_BUFFER_FILE_TYPE_E   videotype;           /* ÊÓÆµÀàÐÍ */

+}VIDEO_PLAY_PARAM_T;

+

+typedef struct

+{

+    UINT32                pos;

+    VIDEO_PLAY_SEEK_MODE  seekmode;

+}VIDEO_PLAY_SEEK_T; 

+

+typedef struct

+{   

+    UINT32          dwTotalTime;

+    DISPLAY_SIZE_T  tsize;              

+    UINT32          dwOnlyHaveAudio;

+}VIDEO_PLAY_INFO;

+

+/**************************************************************************

+ *                        º¯ÊýÔ­ÐÍ                                    *

+ **************************************************************************/

+DCAMERA_RETURN_VALUE_E Video_Open(void);

+

+DCAMERA_RETURN_VALUE_E Video_Close(void);

+

+DCAMERA_RETURN_VALUE_E Video_Play_Init(VIDEO_PLAY_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E Video_Play_Buffer_Init(VIDEO_PLAY_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E Video_Play_Release(void);

+

+DCAMERA_RETURN_VALUE_E Video_StartPlay(VIDEO_PLAY_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E Video_StopPlay(void);

+

+DCAMERA_RETURN_VALUE_E Video_PausePlay(void);

+

+DCAMERA_RETURN_VALUE_E Video_ResumePlay(void);

+

+DCAMERA_RETURN_VALUE_E Video_Seek(VIDEO_PLAY_SEEK_T *param);

+

+DCAMERA_RETURN_VALUE_E Video_Rotate(VIDEO_PLAY_PARAM_T *param);

+

+DCAMERA_RETURN_VALUE_E Video_GetCurTime(unsigned long *param);

+

+DCAMERA_RETURN_VALUE_E Video_GetTotalTime(unsigned long *param);

+

+DCAMERA_RETURN_VALUE_E Video_GetFileInfo(VIDEO_PLAY_INFO *param);

+

+#endif

+

+

diff --git a/cp/ps/plat/inc/msp/zte_vtdriver.h b/cp/ps/plat/inc/msp/zte_vtdriver.h
new file mode 100644
index 0000000..f3b5e9c
--- /dev/null
+++ b/cp/ps/plat/inc/msp/zte_vtdriver.h
@@ -0,0 +1,521 @@
+/************************************************************************

+* °æÈ¨ËùÓÐ(C)2007,ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾¡£

+* Ä£¿éÃû  £º ¿ÉÊӵ绰ҵÎñÖжàýÌåÇý¶¯Ä£¿é

+* ÎļþÃû³Æ£º zte_vtdriver.h

+* Îļþ±êʶ£º 

+* ÄÚÈÝÕªÒª£º 

+* 

+* ÐÞ¸ÄÈÕÆÚ      °æ±¾ºÅ     Ð޸ıê¼Ç       ÐÞ¸ÄÈË       ÐÞ¸ÄÄÚÈÝ      

+* ----------------------------------------------------------------------

+* 2009/6/3    1.0                        ´ú¿µ                        

+************************************************************************/

+

+#ifndef ZTE_VT_DRIVER_H

+#define ZTE_VT_DRIVER_H

+

+#ifdef __cplusplus

+   extern "C"

+   {

+#endif 

+/**************************************************************************

+ *                        Í·Îļþ°üº¬                                      *

+ **************************************************************************/

+ 

+/**************************************************************************

+ *                         ³£Á¿                                           *

+ **************************************************************************/

+typedef enum

+{

+    VT_VIDEO_H263 = 1,

+    VT_VIDEO_MP4

+}VT_VIDEO_FORMAT;

+

+/* AMRµÄÖ¡ÂÊ */

+typedef enum {

+    VT_VOICE_FRAME_MR475 = 0,

+    VT_VOICE_FRAME_MR515,

+    VT_VOICE_FRAME_MR59,

+    VT_VOICE_FRAME_MR67,

+    VT_VOICE_FRAME_MR74,

+    VT_VOICE_FRAME_MR795,

+    VT_VOICE_FRAME_MR102,

+    VT_VOICE_FRAME_MR122,

+

+    VT_MAX_VOICE_FRAME_TYPE 

+}VT_VOICE_FRAME_TYPE;

+

+/* AMRµÄÖ¡¸ñʽ */

+typedef enum {

+    VT_VOICE_AMR_IF2,

+    VT_VOICE_AMR_IF1,

+

+    VT_MAX_VOICE_AMR_IF

+}VT_VOICE_AMRIF;

+

+/* º¯Êý·µ»ØÖµ */

+typedef enum 

+{

+    MM_COM_OP_SUCCESS     = 0,             /* ²Ù×÷³É¹¦          */

+    MM_COM_OP_ERROR       = -1,            /* ²Ù×÷ʧ°Ü          */

+    MM_OPEN_AUDIO_FAILE   = -2,            /* ´ò¿ªAudioÉ豸ʧ°Ü */

+    MM_OPEN_VIDEO_FAILE   = -3,            /* ´ò¿ªVideoÉ豸ʧ°Ü */

+    MM_OPEN_CAM_FAILE     = -4,            /* ´ò¿ªCAMÉ豸ʧ°Ü   */

+    MM_AUDIO_DEV_UNOPENED = -5,            /* AudioÉ豸û´ò¿ª   */

+    MM_VIDEO_DEV_UNOPENED = -6,            /* VideoÉ豸û´ò¿ª   */

+    MM_CAM_DEV_UNOPENED   = -7,            /* CAMÉ豸û´ò¿ª     */

+    MM_PARAM_ERROR        = -8,            /* ²ÎÊýÊäÈë´íÎó      */

+}MM_COM_ERRCODE;

+

+/* ÊäÈëÒôÁ¿ */

+typedef enum

+{

+    MM_INPUT_VOLUME_LEVEL_0 = 0,

+    MM_INPUT_VOLUME_LEVEL_1,

+    MM_INPUT_VOLUME_LEVEL_2,

+    MM_INPUT_VOLUME_LEVEL_3,

+    MM_INPUT_VOLUME_LEVEL_4,

+    MM_INPUT_VOLUME_LEVEL_5,

+} T_MM_INPUT_VOLUME_LEVEL;

+

+/* Êä³öÒôÁ¿ */

+typedef enum

+{

+    MM_OUTPUT_VOLUME_LEVEL_0 = 0,

+    MM_OUTPUT_VOLUME_LEVEL_1,

+    MM_OUTPUT_VOLUME_LEVEL_2,

+    MM_OUTPUT_VOLUME_LEVEL_3,

+    MM_OUTPUT_VOLUME_LEVEL_4,

+    MM_OUTPUT_VOLUME_LEVEL_5,

+} T_MM_OUTPUT_VOLUME_LEVEL;

+

+/* ÊäÈëͨµÀ */

+typedef enum

+{

+    MM_CHANNEL_INPUT_MICPHONE    = 1,    /* Âó¿Ë·ç   */                 

+    MM_CHANNEL_INPUT_HEADSET,            /* ¶ú»ú»°Í² */                             

+

+} T_MM_CHANNEL_INPUT;

+

+/* Êä³öͨµÀ */

+typedef enum

+{

+    MM_CHANNEL_OUTPUT_RECEIVER = 1,              /* ÌýͲ */

+    MM_CHANNEL_OUTPUT_SPEAKER,                   /* ÑïÉùÆ÷ */

+    MM_CHANNEL_OUTPUT_HEADPHONE,                 /* ¶ú»ú */

+    MM_CHANNEL_OUTPUT_SPEAKER_HEADPHONE,         /* ÑïÉùÆ÷ºÍ»°Í² */

+    MM_CHANNEL_OUTPUT_BLUETOOTH,                 /* À¶ÑÀ */

+}T_MM_CHANNEL_OUTPUT;

+

+/* Ö÷¸±ÉãÏñÍ· */

+typedef enum

+{

+    MM_SENSOR_MAIN = 0,

+    MM_SENSOR_SUB

+} T_MM_CAM_SENSOR;

+

+/* »­ÃæËõ·Å */

+typedef enum

+{

+    MM_ZOOM_LEVEL_1= 0,          /* level 1 */

+    MM_ZOOM_LEVEL_2,             /* level 2 */

+    MM_ZOOM_LEVEL_3,             /* level 3 */

+    MM_ZOOM_LEVEL_4,             /* level 4 */

+    MM_ZOOM_LEVEL_5,             /* level 5 */

+} T_MM_ZOOM_LEVEL;

+

+

+/* ÉãÏñÍ·ÁÁ¶È */

+typedef enum

+{

+    MM_BRIGHTNESS_LEVEL_0 = 0,     /* level 0  */

+    MM_BRIGHTNESS_LEVEL_1,         /* level 1  */

+    MM_BRIGHTNESS_LEVEL_2,         /* level 2  */

+    MM_BRIGHTNESS_LEVEL_3,         /* level 3  */

+    MM_BRIGHTNESS_LEVEL_4,         /* level 4  */

+} T_MM_CamBrightness;

+

+/* ÉãÏñÍ·¶Ô±È¶È */

+typedef enum

+{

+    MM_CONTRAST_LEVEL_0 = 0,       /* level 0 */

+    MM_CONTRAST_LEVEL_1,           /* level 1 */

+    MM_CONTRAST_LEVEL_2,           /* level 2 */

+    MM_CONTRAST_LEVEL_3,           /* level 3 */

+    MM_CONTRAST_LEVEL_4,           /* level 4 */

+} T_MM_CamContrast;

+

+/* ÉãÏñͷЧ¹û */

+typedef enum

+{

+    MM_EFFECT_NORMAL,

+    MM_EFFECT_BLACK_AND_WHITE,

+    MM_EFFECT_NEGATIVE,      

+    MM_EFFECT_ANTIQUE,    

+    MM_EFFECT_BLUISH,

+    MM_EFFECT_GREENISH,

+    MM_EFFECT_REDISH,

+    MM_EFFECT_BW_NEGATIVE,

+} T_MM_CamEffect;

+

+/* °×ƽºâ */

+typedef enum

+{

+    MM_WHITEBALANCE_AUTO = 0,

+    MM_WHITEBALANCE_DAYLIGHT,

+    MM_WHITEBALANCE_CLOUDY,

+    MM_WHITEBALANCE_INCANDESCENCE,

+    MM_WHITEBALANCE_FLUORESCENCE

+} T_MM_WHITE_BALANCE;

+

+/* ÏÔÊ¾ÇøÓò */

+typedef struct

+{

+    UINT32 x;        /* Æðµãºá×ø±ê */

+    UINT32 y;        /* Æðµã×Ý×ø±ê */

+    UINT32 width;    /* ¿í¶È       */

+    UINT32 height;   /* ¸ß¶È       */

+} T_MM_DISPLAY_RECT;

+

+

+

+/**************************************************************************

+ *                         ºê¶¨Òå                                         *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         Êý¾ÝÀàÐÍ                                       *

+ **************************************************************************/

+/* ÓïÒôAMRÖ¡ÀàÐÍÐÅÏ¢ */

+typedef struct _VT_VOICE_AMRINFO_T

+{

+    VT_VOICE_AMRIF       amrif;     /* AMRµÄÖ¡ÀàÐÍ */

+    VT_VOICE_FRAME_TYPE  frametype; /* AMRµÄÖ¡ÂÊ   */    

+}VT_VOICE_AMRINFO_T;

+

+typedef struct _VT_VOICE_PARAM_T

+{

+    VT_VOICE_AMRINFO_T  tVoiceInfo;  /* ÓïÒôÅäÖÃÐÅÏ¢ */

+}VT_VOICE_PARAM_T;

+

+typedef struct _VT_VIDEO_DISPARAM_T

+{

+    RECT_T  tLocalRect;              /* ±¾¶ËͼÏñÏÔÊ¾ÇøÓò */

+    RECT_T  tRemoteRect;             /* ¶Ô¶ËͼÏñÏÔÊ¾ÇøÓò */

+}VT_VIDEO_DISPARAM_T;

+

+typedef struct _VT_ENCODE_PARAM_T

+{

+    UINT32           uiWidth;        /* ±àÂëÊä³öͼÏñ¿í¶È */

+    UINT32           uiHeight;       /* ±àÂëÊä³öͼÏñ¸ß¶È */

+    UINT32           uiFramerate;    /* ±àÂëÊä³öͼÏñÖ¡ÂÊ */

+    UINT32           uiBitrate;      /* ±àÂëÊä³öͼÏñλÂÊ */

+    VT_VIDEO_FORMAT  tVideoFormat;   /* ±àÂëÊä³öͼÏñ¸ñʽ */

+}VT_ENCPARAM_T;

+

+typedef struct _VT_DECPARAM_T

+{

+    UINT32           uiWidth;        /* ½âÂëÊäÈëͼÏñ¿í¶È */

+    UINT32           uiHeight;       /* ½âÂëÊäÈëͼÏñ¸ß¶È */

+    VT_VIDEO_FORMAT  tVideoFormat;   /* ½âÂëÊäÈëͼÏñ¸ñʽ */

+}VT_DECPARAM_T;

+

+typedef struct _VT_CODEC_PARAM_T

+{

+    VT_ENCPARAM_T        tEncParam;  /* ±¾¶ËͼÏñ±àÂë²ÎÊý   */

+    VT_DECPARAM_T        tDecParam;  /* ¶Ô¶ËͼÏñ½âÂë²ÎÊý   */

+    VT_VIDEO_DISPARAM_T  tDisParam;  /* ±¾¶Ô¶ËͼÏñÏÔÊ¾ÇøÓò */

+}VT_VIDEO_PARAM_T;

+

+/**************************************************************************

+ *                         ÀàÉùÃ÷ £¨¶ÔÓÚCÓïÑÔµÄÍ·Îļþ£¬¿É²Ã¼ô£©           *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         Ä£°å  £¨¶ÔÓÚCÓïÑÔµÄÍ·Îļþ£¬¿É²Ã¼ô£©            *

+ **************************************************************************/

+

+/**************************************************************************

+ *                         È«¾Ö±äÁ¿ÉùÃ÷                                    *

+ **************************************************************************/

+

+/**************************************************************************

+ *                        È«¾Öº¯ÊýÔ­ÐÍ                                     *

+ **************************************************************************/ 

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_Open 

+ * ¹¦ÄÜÃèÊö£º ´ò¿ªVTÓïÒôÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º (IN) iVoiceFd:VoiceÉ豸¾ä±ú

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Voice_Open(SINT32  iVoiceFd);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_Close 

+ * ¹¦ÄÜÃèÊö£º ¹Ø±ÕVTÓïÒôÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º (IN) ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Voice_Close(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_Init 

+ * ¹¦ÄÜÃèÊö£º ³õʼ»¯VTÓïÒôÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º (IN) pVoiceParam VTÓïÒôÇý¶¯Í¨µÀ³õʼ»¯²ÎÊý

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Voice_Init(VT_VOICE_PARAM_T *pVoiceParam);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_Release 

+ * ¹¦ÄÜÃèÊö£º ÊÍ·ÅVTÓïÒôÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º (IN) ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Voice_Release(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_Read 

+ * ¹¦ÄÜÃèÊö£º VTÓïÒôÊý¾Ý¶ÁÈ¡£¬Ò»´Î¶Áȡһ֡ÓïÒô

+ * ²ÎÊý˵Ã÷£º (IN/OUT) pVoiceBuf ´æ·Å¶ÁÈ¡µÄÓïÒôÊý¾Ý(AMR)

+ *            (IN)     uiBufLen  pVoiceBufµÄ³¤¶È£¬±ØÐë´óÓÚ32×Ö½Ú

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØÒѶÁÈ¡µÄ×Ö½ÚÊý£¬Ê§°Ü·µ»ØÐ¡ÓÚ0µÄÖµ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+SINT32 VT_Voice_Read(CHAR *pVoiceBuf, UINT32 uiBufLen);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_Write 

+ * ¹¦ÄÜÃèÊö£º VTÓïÒôÊý¾ÝÊä³ö£¬Ò»´ÎÊä³öÒ»Ö¡ÓïÒô

+ * ²ÎÊý˵Ã÷£º (IN) pVoiceBuf ´ýÊä³öµÄÓïÒôÊý¾Ý(AMR)µØÖ·

+ *            (IN) uiBufLen  ´ýÊä³öµÄÓïÒôÊý¾Ý(AMR)³¤¶È

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØÊä³öµÄ×Ö½ÚÊý£¬Ê§°Ü·µ»ØÐ¡ÓÚ0µÄÖµ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+SINT32 VT_Voice_Write(CHAR *pVoiceBuf, UINT32 uiBufLen);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Voice_SetCodecParam 

+ * ¹¦ÄÜÃèÊö£º ÉèÖÃVTÓïÒô±à½âÂë²ÎÊý

+ * ²ÎÊý˵Ã÷£º (IN) 

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ´Ë½Ó¿Ú±£Áô

+ */

+DCAMERA_RETURN_VALUE_E VT_Voice_SetCodecParam(VT_VOICE_AMRINFO_T *pVoiceInfo);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_Open 

+ * ¹¦ÄÜÃèÊö£º ´ò¿ªVTÊÓÆµÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_Open(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_Open 

+ * ¹¦ÄÜÃèÊö£º ¹Ø±ÕVTÊÓÆµÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_Close(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_Init 

+ * ¹¦ÄÜÃèÊö£º ³õʼ»¯VTÊÓÆµÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º (IN) pVodieParam VTÊÓÆµÇý¶¯Í¨µÀ³õʼ»¯²ÎÊý

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º Ŀǰ½öÖ§³Ö±à½âÂë¾ùΪH263¸ñʽ£¬±àÂë½öÖ§³ÖQCIF(176 * 144)

+ *            ¸ñʽµÄͼÏñ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_Init(VT_VIDEO_PARAM_T  *pCodecParam);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_Release 

+ * ¹¦ÄÜÃèÊö£º ÊÍ·ÅVTÊÓÆµÇý¶¯Í¨µÀ

+ * ²ÎÊý˵Ã÷£º (IN) ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_Release(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_LocalOpen 

+ * ¹¦ÄÜÃèÊö£º ±¾¶ËÏÔʾ´ò¿ª

+ * ²ÎÊý˵Ã÷£º (IN) ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_LocalOpen(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_LocalClose 

+ * ¹¦ÄÜÃèÊö£º ±¾¶ËÏÔʾ¹Ø±Õ

+ * ²ÎÊý˵Ã÷£º (IN) ÎÞ

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_LocalClose(VOID);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_Read 

+ * ¹¦ÄÜÃèÊö£º VTÊÓÆµÊý¾Ý¶ÁÈ¡

+ * ²ÎÊý˵Ã÷£º (IN/OUT) pFrameBuf ´æ·Å¶ÁÈ¡µÄÊÓÆµÍ¼ÏñÊý¾Ý

+ *            (IN)     uiBufLen  pFrameBufµÄ³¤¶È

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØÒѶÁÈ¡µÄ×Ö½ÚÊý£¬Ê§°Ü·µ»ØÐ¡ÓÚ0µÄÖµ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+SINT32 VT_Video_Read(CHAR *pFrameBuf, UINT32 uiBufLen);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_Write 

+ * ¹¦ÄÜÃèÊö£º VTÊÓÆµÊý¾ÝÊä³ö

+ * ²ÎÊý˵Ã÷£º (IN) pFrameBuf ´ýÊä³öµÄÊÓÆµÍ¼ÏñÊý¾ÝµØÖ·

+ *            (IN) uiBufLen  ´ýÊä³öµÄÊÓÆµÍ¼ÏñÊý¾Ý³¤¶È

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØÊä³öµÄ×Ö½ÚÊý£¬Ê§°Ü·µ»ØÐ¡ÓÚ0µÄÖµ

+ * ÆäËü˵Ã÷£º ÎÞ

+ */

+SINT32 VT_Video_Write(CHAR *pFrameBuf, UINT32 uiBufLen);

+

+/**

+ * º¯ÊýÃû³Æ£º VT_Video_SetDisplayParam 

+ * ¹¦ÄÜÃèÊö£º VTÊÓÆµÏÔÊ¾ÇøÓòÉèÖÃ

+ * ²ÎÊý˵Ã÷£º (IN) pDisplayParam VTÊÓÆµ±¾¶Ô¶ËͼÏñÏÔÊ¾ÇøÓò

+ * ·µ »Ø Öµ£º ³É¹¦·µ»ØDCAMERA_OP_SUCCESS

+ * ÆäËü˵Ã÷£º ½Ó¿Ú±ØÐëÔÚVT_Video_Initºóµ÷Óã¬ÓÉÓÚÊÜÓ²¼þÏÞÖÆ

+ *            ×ø±ê¡¢¿í¡¢¸ß²»ÄÜÊÇÈÎÒâµÄ×éºÏ

+ */

+DCAMERA_RETURN_VALUE_E VT_Video_SetDisplayParam(VT_VIDEO_DISPARAM_T *pDisplayParam);

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_inputvolume

+* ¹¦ÄÜÃèÊö£º  ÉèÖÃÉùÒôÊäÈëÒôÁ¿

+* ²ÎÊý˵Ã÷£º  (IN)£º InputVol: ÊäÈëÒôÁ¿´óС

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_inputvolume(T_MM_INPUT_VOLUME_LEVEL InputVol);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_volume

+* ¹¦ÄÜÃèÊö£º  ÉèÖÃÉùÒôÊä³öÒôÁ¿

+* ²ÎÊý˵Ã÷£º  (IN)£º OutPutVol: Êä³öÒôÁ¿´óС

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_volume(T_MM_OUTPUT_VOLUME_LEVEL OutPutVol);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_inputchannel

+* ¹¦ÄÜÃèÊö£º  ÉèÖÃÉùÒôÊäÈëͨµÀ

+* ²ÎÊý˵Ã÷£º  (IN)£º InChannel: ÉùÒôÊäÈëͨµÀ

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_inputchannel(T_MM_CHANNEL_INPUT InChannel);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_outputchannel

+* ¹¦ÄÜÃèÊö£º  ÉèÖÃÉùÒôÊä³öͨµÀ

+* ²ÎÊý˵Ã÷£º  (IN)£º OutChannel: ÉùÒôÊä³öͨµÀ

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_outputchannel(T_MM_CHANNEL_OUTPUT OutChannel);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_mute

+* ¹¦ÄÜÃèÊö£º  ÉèÖþ²Òô

+* ²ÎÊý˵Ã÷£º  (IN)£º bFlag: True : ÉèÖþ²Òô

+                            False: È¡Ïû¾²Òô

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_mute(BOOL bFlag);

+

+

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_zoom

+* ¹¦ÄÜÃèÊö£º  ÉèÖû­ÃæËõ·Å

+* ²ÎÊý˵Ã÷£º  (IN)£º ZoomLevel: »­ÃæËõ·Åˮƽ

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_zoom(T_MM_ZOOM_LEVEL ZoomLevel);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_brightness

+* ¹¦ÄÜÃèÊö£º  ÉèÖû­ÃæÁÁ¶È

+* ²ÎÊý˵Ã÷£º  (IN)  Brightness£º»­ÃæÁÁ¶È

+*             (OUT) ÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS: ³É¹¦

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_brightness(T_MM_CamBrightness Brightness);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_contrast

+* ¹¦ÄÜÃèÊö£º  ÉèÖû­Ãæ¶Ô±È¶È

+* ²ÎÊý˵Ã÷£º  (IN)  Contrast£º»­Ãæ¶Ô±È¶È

+*             (OUT) ÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS: ³É¹¦

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_contrast(T_MM_CamContrast Contrast);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_effect

+* ¹¦ÄÜÃèÊö£º  ÉèÖû­ÃæÐ§¹û

+* ²ÎÊý˵Ã÷£º  (IN)  Effect£º»­ÃæÐ§¹û

+*             (OUT) ÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS: ³É¹¦

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_effect(T_MM_CamEffect Effect);

+

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_set_whitebalance

+* ¹¦ÄÜÃèÊö£º  ÉèÖû­ÃæÐ§¹û

+* ²ÎÊý˵Ã÷£º  (IN)  WhiteBalance£º°×ƽºâÖµ

+*             (OUT) ÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS: ³É¹¦

+* ÆäËü˵Ã÷£º  

+**************************************************************************/

+SINT32 mm_dvm_set_whitebalance(T_MM_WHITE_BALANCE WhiteBalance);

+

+/**************************************************************************

+* º¯ÊýÃû³Æ£º  mm_dvm_camswitch

+* ¹¦ÄÜÃèÊö£º  Ñ¡ÔñÖ÷¸±ÉãÏñÍ·

+* ²ÎÊý˵Ã÷£º  (IN)£º Sensor: ÉãÏñÍ·ÀàÐÍ

+*             (OUT)£ºÎÞ

+* ·µ »Ø Öµ£º  MM_COM_OP_SUCCESS:  ³É¹¦ 

+* ÆäËü˵Ã÷£º  ±ØÐëÏȶԵ±Ç°µÄÉãÏñÍ·¹Ø±Õ£¬¶øºóÔÙÇл»

+**************************************************************************/

+SINT32 mm_dvm_camswitch(T_MM_CAM_SENSOR Sensor);

+

+#ifdef __cplusplus

+   } 

+#endif

+

+#endif

+