#include "librtsp.h"
|
#include "RtspClient.h"
|
// ÕâÊǵ¼³ö±äÁ¿µÄÒ»¸öʾÀý
|
|
extern "C"{
|
|
////////////////////////////////////////////////////////////////////////////////
|
// º¯ÊýÃû£ºRTSPSTREAM_Open
|
// ÃèÊö£ºÉèÖûص÷º¯Êý¡£
|
// ²ÎÊý£ºrtspµØÖ·¡¢ ÂëÁ÷»Øµ÷º¯Êý¡¢Óû§Ö¸Õë
|
//
|
//
|
// ·µ»ØÖµ£º»á»°¾ä±ú
|
// ¡£
|
// ˵Ã÷£º
|
// ±£ÁôÔÄ£¿é½Ó¿Ú¡£
|
////////////////////////////////////////////////////////////////////////////////
|
long RTSPSTREAM_Open(const char *rtspurl, PlayCallBack2 streamcallback, long userdata)
|
{
|
CRtspClient *pRtspClient = new CRtspClient();
|
if (pRtspClient == NULL)
|
{
|
return -1;
|
}
|
int iret = pRtspClient->OpenRtspStream(rtspurl, streamcallback, userdata);
|
if (iret < 0)
|
{
|
delete pRtspClient;
|
pRtspClient = NULL;
|
return iret;
|
}
|
return (long)pRtspClient;
|
}
|
|
////////////////////////////////////////////////////////////////////////////////
|
// º¯ÊýÃû£ºRTSPSTREAM_Contrl
|
// ÃèÊö£ºÉèÖûص÷º¯Êý¡£
|
// ²ÎÊý£º»á»°¾ä±ú£¬ ¿ØÖÆÀàÐÍ£¬ ¿ØÖƲÎÊý
|
//
|
//
|
// ·µ»ØÖµ£º
|
// ¡£
|
// ˵Ã÷£º
|
// ±£ÁôÔÄ£¿é½Ó¿Ú¡£
|
////////////////////////////////////////////////////////////////////////////////
|
long RTSPSTREAM_Contrl(long handle, int ctrltype, double ctrlparam)
|
{
|
if(handle == 0 || handle == -1)
|
{
|
return RTSP_ERR_PARAM;
|
}
|
CRtspClient *pRtspClient = (CRtspClient *)handle;
|
if (pRtspClient == NULL)
|
{
|
return RTSP_ERR_PARAM;
|
}
|
return pRtspClient->RtspContrl(ctrltype, ctrlparam);
|
}
|
|
////////////////////////////////////////////////////////////////////////////////
|
// º¯ÊýÃû£ºRTSPSTREAM_Close
|
// ÃèÊö£ºÉèÖûص÷º¯Êý¡£
|
// ²ÎÊý£º»á»°¾ä±ú
|
//
|
//
|
// ·µ»ØÖµ£º
|
// ¡£
|
// ˵Ã÷£º
|
// ±£ÁôÔÄ£¿é½Ó¿Ú¡£
|
////////////////////////////////////////////////////////////////////////////////
|
long RTSPSTREAM_Close(long handle)
|
{
|
if(handle == 0 || handle == -1)
|
{
|
return RTSP_ERR_PARAM;
|
}
|
CRtspClient *pRtspClient = (CRtspClient *)handle;
|
if (pRtspClient == NULL)
|
{
|
return RTSP_ERR_PARAM;
|
}
|
pRtspClient->StopRtspStream();
|
|
delete pRtspClient;
|
pRtspClient = NULL;
|
return RTSP_ERR_OK;
|
}
|
|
}
|
|