#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; } }