⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sdk_interface.h

📁 中兴提供的跨平台解码库的解码器的介绍源码和文档
💻 H
字号:
/****************************************************************************
* 版权信息:(C)2007,深圳市中兴通讯股份有限公司版权所有
* 系统名称:CMMB解码播放SDK子系统
* 文件名称:sdk_interface.h 
* 文件说明:SDK外部接口头文件
* 作    者:阮亚平 
* 版本信息:1.0 
* 设计日期:2007-5-22 
* 修改记录:
* 日    期			版    本		修改人 		修改摘要  
***************************************************************************/
#ifndef SDK_INTERFACE_H
#define SDK_INTERFACE_H

// 矩形结构
struct TRECT
{ 
	long left;
	long top;
	long right;
	long bottom;
};

// 显示参数结构
struct TDisplayParam
{    
	TRECT rectScreen;     
	TRECT rectClip;     
};

// SDP参数结构
struct TSDPParam
{    
	int	nSDPLen;		// SDP数据长度	
	char* pSDPData;     // SDP数据
};

// 声音设置
struct TVolume
{
	int	nLeftVol;	    //左声道音量
	int	nRightVol;		//右声道音量
};
 

enum EPlayerCfgType
{
	CFG_DISPLAY_PARAM,  // 显示参数
	CFG_COMMON_ROTATE,  // 旋转参数
	CFG_COMMON_ZOOM,    // 缩放参数
	CFG_SDP_PARAM,		// SDP参数
	CFG_SHOW_LOG_LEVEL,	// 显示日志级别(0-4)
	CFG_SET_VOLUME,		// 设置音量	
	CFG_PLAY_MODE,      // 播放模式:暂停、继续
	CFG_FULL_SCREEN,    // 设置全屏
    CFG_AUDIO_ONLY,     // 设置节目是否为纯音频
};

enum EResultCode
{
	RS_OK = 0,
	RS_FAIL,
	
	RS_UNEXPECTED,
	RS_NOTIMPL,
	RS_OUTOFMEMORY,
	RS_INVALIDARG,
	RS_NOINTERFACE,
	RS_INVALIDPOINTER,
	RS_INVALIDHANDLE,

	RS_OPEN_DEVICE	,	 //打开播放设备失败
	RS_VIDEO_SET	,	 //视频播放参数设置失败
	RS_AUDIO_SET	,	 //音频播放参数设置失败
	RS_OPEN_DECODER ,     //打开解码器失败
	RS_VIDEO_DECODE ,    //视频解码失败
	RS_AUDIO_DECODE ,    //音频解码失败
	RS_FRAME_ERROR ,     //帧错误
	RS_DATA_MISSING ,     //帧数据丢失

    // Buffer Manager RS.
    RS_BUFFER_OK,        // 操作成功
    RS_BUFFER_NONODE,    // Buffer中无所需类型的节点
    RS_BUFFER_NOSPACE,   // Buffer中无空间供插入新的节点
    RS_BUFFER_OVERFLOW,   // Buffer上溢

	RS_AUDIO_DECODE_CONTINUE,
    
};

enum PLAYER_CALLBACK_EVENT_ID
{
	PLAYER_CALLBACK_READ_DATA,	// 读数据
	PLAYER_CALLBACK_NOTIFY,		// 通知消息
};


enum EStatType  //定义工作线程的状态类型
{
    STAT_TYPE_DEFAULT=0,      // 默认值
	TYPE_FULL_SCREEN,		// 是否全屏
	TYPE_VOLUMN_SET,		// 音量设置: 增大、减小
};

enum EStatValue  //定义工作线程的状态值
{
    STAT_ON = 1,	//开、播放、增加
    STAT_OFF,		//关、暂停、减小
};

typedef int  (*PFN_PLAYER_CALLBACK) (void* wParam, void* lParam, long& bHandled);
typedef int  (*PFN_PLAYER_DESCRAMBLE_MSF) (unsigned char* pInMSFData, int nInMSFLength, 
											unsigned char* pOutMSFData, int *pOutMSFLength);
struct PLAY_CALLBACK_ARRAY
{
	PFN_PLAYER_CALLBACK	GetStreamData;
	PFN_PLAYER_CALLBACK	GetCMMBMuxFrame;
	PFN_PLAYER_DESCRAMBLE_MSF GetDescrambleMSF;   
};

#endif // SDK_INTERFACE_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -