blob: b792199dc3d87f5fe067d03a99c34d18bc4b7e7e [file] [log] [blame]
/************************************************************************
* °æÈ¨ËùÓÐ (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 */