EasyRTSPClient-pusher
所属分类:多媒体
开发工具:WINDOWS
文件大小:3293KB
下载次数:6
上传日期:2017-12-23 15:36:40
上 传 者:
no name
说明: 用于摄像机rtsp流抓取,推送到流媒体服务器
(RTSP stream capture for camera)
文件列表:
EasyRTSPClient-pusher (0, 2015-12-16)
EasyRTSPClient-pusher\Buildit (576, 2015-12-16)
EasyRTSPClient-pusher\Doc (0, 2015-12-16)
EasyRTSPClient-pusher\Doc\EasyRTSPClient.psd (494768, 2015-12-16)
EasyRTSPClient-pusher\Include (0, 2016-01-08)
EasyRTSPClient-pusher\Include\EasyPusherAPI.h (2489, 2015-12-22)
EasyRTSPClient-pusher\Include\EasyRTSPClientAPI.h (1655, 2015-12-16)
EasyRTSPClient-pusher\Include\EasyTypes.h (3601, 2015-12-22)
EasyRTSPClient-pusher\Lib (0, 2016-01-08)
EasyRTSPClient-pusher\Lib\arm版本编译,请将交叉编译工具链发送至support@easydarwin.org,说清需求 (0, 2015-12-16)
EasyRTSPClient-pusher\Lib\libEasyPusher.dll (25088, 2015-12-22)
EasyRTSPClient-pusher\Lib\libEasyPusher.lib (3186, 2015-12-22)
EasyRTSPClient-pusher\Lib\libeasyrtspclient.a (1926654, 2015-12-16)
EasyRTSPClient-pusher\Lib\libEasyRTSPClient.dll (326656, 2015-12-16)
EasyRTSPClient-pusher\Lib\libEasyRTSPClient.lib (3158, 2015-12-16)
EasyRTSPClient-pusher\Lib\x64 (0, 2015-12-16)
EasyRTSPClient-pusher\Lib\x64\libeasyrtspclient.a (2496950, 2015-12-16)
EasyRTSPClient-pusher\Lib\x64\libEasyRTSPClient.dll (250368, 2015-12-16)
EasyRTSPClient-pusher\Lib\x64\libEasyRTSPClient.lib (3070, 2015-12-16)
EasyRTSPClient-pusher\main.cpp (4648, 2015-12-16)
EasyRTSPClient-pusher\Makefile (3482, 2015-12-16)
EasyRTSPClient-pusher\nbproject (0, 2015-12-16)
EasyRTSPClient-pusher\nbproject\configurations.xml (3835, 2015-12-16)
EasyRTSPClient-pusher\nbproject\Makefile-Debug.mk (1556, 2015-12-16)
EasyRTSPClient-pusher\nbproject\Makefile-i386.mk (1564, 2015-12-16)
EasyRTSPClient-pusher\nbproject\Makefile-impl.mk (4211, 2015-12-16)
EasyRTSPClient-pusher\nbproject\Makefile-variables.mk (1494, 2015-12-16)
EasyRTSPClient-pusher\nbproject\Makefile-x64.mk (1567, 2015-12-16)
EasyRTSPClient-pusher\nbproject\project.xml (1103, 2015-12-16)
EasyRTSPClient-pusher\win (0, 2016-01-08)
EasyRTSPClient-pusher\win\Debug (0, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\cl.command.1.tlog (1510, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\CL.read.1.tlog (3424, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\CL.write.1.tlog (906, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\EasyRTSPClient.exe (407552, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\EasyRTSPClient.exe.intermediate.manifest (381, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\EasyRTSPClient.exe.manifest (406, 2016-01-08)
EasyRTSPClient-pusher\win\Debug\EasyRTSPClient.ilk (964076, 2016-01-08)
... ...
# EasyRTSPClient #
EasyRTSPClient是EasyDarwin开源流媒体团队提供的一套非常稳定、易用、支持重连的RTSPClient工具,接口调用非常简单,再也不用像调用live555那样处理整个RTSP OPTIONS/DESCRIBE/SETUP/PLAY的复杂流程,担心内存释放的问题了!
## 调用示例 ##
- **EasyRTSPClient**:以RTSPClient的形式,从RTSP URL将音视频获取到本地;
Windows编译方法,
Visual Studio 2010 编译:./EasyRTSPClient-master/win/EasyRTSPClient.sln
Linux编译方法,
chmod +x ./Buildit
./Buildit
- **EasyDarwin**:您也可以参考EasyDarwin中EasyHLSSession(HLS直播模块)、EasyRelaySession(RTSP转发模块)对EasyRTSPClient库的调用方法,详细请看:[https://github.com/EasyDarwin/EasyDarwin](https://github.com/EasyDarwin/EasyDarwin "EasyDarwin");
- **我们同时提供Windows、Linux、ARM版本的libEasyRTSPClient库**:arm版本请将交叉编译工具链发送至[support@easydarwin.org](mailto:support@easydarwin.org "EasyDarwin mail"),我们会帮您具体编译
## 调用流程 ##
![](http://www.easydarwin.org/skin/easydarwin/images/easyrtspclient.png)
## 设计方法 ##
EasyRTSPClient参考live555 testProg中的testRTSPClient示例程序,将一个live555 testRTSPClient封装在一个类中,例如,我们称为Class EasyRTSPClient,在EasyRTSP_Init接口调用时,我们新建EasyRTSPClient对象、在EasyRTSP_OpenStream接口调用时,我们建立线程,装载live555的TaskScheduler->SingleStep(0),然后再进行RTSP的具体流程,这个就可以直接用testRTSPClient的使用流程了、关闭RTSPClient,我们调用EasyRTSP_CloseStream接口,内部实现参考testRTSPClient中的shutdownStream方法,最后delete EasyRTSPClient类,这样整个过程就完整了!
### RTSPSourceCallBack数据回调说明 ###
EasyRTSPClient可以回调出多种类型的数据:
#define EASY_SDK_VIDEO_FRAME_FLAG /* 视频帧数据 */
#define EASY_SDK_AUDIO_FRAME_FLAG /* 音频帧数据 */
#define EASY_SDK_EVENT_FRAME_FLAG /* 事件帧数据 */
#define EASY_SDK_RTP_FRAME_FLAG /* RTP帧数据 */
#define EASY_SDK_SDP_FRAME_FLAG /* SDP帧数据 */
#define EASY_SDK_MEDIA_INFO_FLAG /* 媒体类型数据 */
EASY\_SDK\_VIDEO\_FRAME\_FLAG数据可支持多种视频格式:
#define EASY_SDK_VIDEO_CODEC_H2*** /* H2*** */
#define EASY_SDK_VIDEO_CODEC_MJPEG /* MJPEG */
#define EASY_SDK_VIDEO_CODEC_MPEG4 /* MPEG4 */
> ***当回调出RTSP_FRAME_INFO->codec为EASY\_SDK\_VIDEO\_CODEC\_H2***数据,RTSP_FRAME_INFO->type为EASY\_SDK\_VIDEO\_FRAME\_I关键帧时,我们输出的数据结构为SPS+PPS+I的组合***:
|---------sps---------|-------pps-------|---------------I Frame---------------|
| | | |
0-----------------reserved1---------reserved2-------------------------------length
EASY\_SDK\_AUDIO\_FRAME\_FLAG数据可支持多种音频格式:
#define EASY_SDK_AUDIO_CODEC_AAC /* AAC */
#define EASY_SDK_AUDIO_CODEC_G711A /* G711 alaw*/
#define EASY_SDK_AUDIO_CODEC_G711U /* G711 ulaw*/
## 获取更多信息 ##
邮件:[support@easydarwin.org](mailto:support@easydarwin.org)
WEB:[www.EasyDarwin.org](http://www.easydarwin.org)
Copyright © EasyDarwin.org 2012-2015
![EasyDarwin](http://www.easydarwin.org/skin/easydarwin/images/wx_qrcode.jpg)
近期下载者:
相关文件:
收藏者: