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

📄 irtsp.h

📁 神龙卡 SDK_84xx_DShow_145_02.zip 这个是 windows 上二个是linux
💻 H
字号:
//********************************************************************************
//	irtsp.h
//
//
//	thyne richards 2/00
//********************************************************************************
#ifndef _IRTSP_H
#define _IRTSP_H


#define _WIN32_WINNT	0x0400
#define	 WINVER			0x0400

#include "osinc.h"
#include "rmstruct.h"
#include "isock.h"

//conversion macros
#define fix4endian(x)	(((DWORD)x << 24) | (((DWORD)x << 8) & (0x00FF0000))	| \
						(((DWORD)x >> 8) & (0x0000FF00)) | ((DWORD)x >> 24))

#define fix2endian(x)	((WORD)(((WORD)x << 8) | ((WORD)x >> 8)))


typedef struct tagIRtsp
{
	struct tagIRtspVtbl *lpVtbl;
} IRtsp;

typedef struct tagIRtspVtbl 
{
	BOOL	(*Close)		(IRtsp *This, CONN_DATA*);
	BOOL	(*GetInfo)		(IRtsp *This, CONN_DATA*, RTSPINFO*);
	BOOL	(*Open)			(IRtsp *This, CONN_DATA*, char*);
	BOOL	(*Pause)		(IRtsp *This, CONN_DATA*);
	BOOL	(*Ping)			(IRtsp *This, CONN_DATA*);
	BOOL	(*Play)			(IRtsp *This, CONN_DATA*);
	BOOL	(*SetPlayRate)	(IRtsp *This, CONN_DATA*, LONG);
	BOOL	(*SetPosition)	(IRtsp *This, CONN_DATA*, char*, char*);
	BOOL	(*Stop)			(IRtsp *This, CONN_DATA*);
	DWORD	(*Headers)		(IRtsp *This, char*);
	void	(*ParseSDP)		(IRtsp *This, RTSPINFO*, char*, char*);
	DWORD	(*Response)		(IRtsp *This, CONN_DATA*, char*, RTSPINFO*);
	int		(*GetSgiHeader)	(IRtsp *This, char*, char*);
	void	(*ParseSGI)		(IRtsp *This, RTSPINFO*, char*);
	void	(*Initialize)	(IRtsp *This, CONN_DATA*, char*, int, int);
} IRtspVtbl;

#define IRtsp_Close(This, condata) \
			(This)->lpVtbl->Close(This, condata)
#define IRtsp_GetInfo(This, condata, rtspin) \
			(This)->lpVtbl->GetInfo(This, condata, rtspin)
#define IRtsp_Open(This, condata, string) \
			(This)->lpVtbl->Open(This, condata, string)
#define IRtsp_Pause(This, condata) \
			(This)->lpVtbl->Pause(This, condata)
#define IRtsp_Ping(This, condata) \
			(This)->lpVtbl->Ping(This, condata)
#define IRtsp_Play(This, condata) \
			(This)->lpVtbl->Play(This, condata)
#define IRtsp_SetPlayRate(This, condata, number) \
			(This)->lpVtbl->SetPlayRate(This, condata, number)
#define IRtsp_SetPosition(This, condata, string1, string2) \
			(This)->lpVtbl->SetPosition(This, condata, string1, string2)
#define IRtsp_Stop(This, condata) \
			(This)->lpVtbl->Stop(This, condata)
#define IRtsp_Headers(This, string) \
			(This)->lpVtbl->Headers(This, string)
#define IRtsp_ParseSDP(This, rtspin, string1, string2) \
			(This)->lpVtbl->ParseSDP(This, rtspin, string1, string2)
#define IRtsp_GetSgiHeader(This, string1, string2) \
			(This)->lpVtbl->GetSgiHeader(This, string1, string2)
#define IRtsp_ParseSGI(This, rtspin, string) \
			(This)->lpVtbl->ParseSGI(This, rtspin, string)
#define IRtsp_Initialize(This, condata, string, num1, num2) \
			(This)->lpVtbl->Initialize(This, condata, string, num1, num2)




#ifdef __cplusplus
extern "C" {
#endif

ULONG CreateRtspInstance(void **ppv);
ULONG DeleteRtspInstance(void *pv);

#ifdef __cplusplus
}
#endif


#endif

⌨️ 快捷键说明

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