# EasyRTSPClient **Repository Path**: fensnote/EasyRTSPClient ## Basic Information - **Project Name**: EasyRTSPClient - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-11-21 - **Last Updated**: 2024-11-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EasyRTSPClient SDK # EasyRTSPClient是EasyDarwin开源流媒体团队开发、提供的一套非常稳定、易用、支持重连的RTSPClient工具,SDK形式提供,接口调用非常简单,再也不用像调用live555那样处理整个RTSP OPTIONS/DESCRIBE/SETUP/PLAY的复杂流程,担心内存释放的问题了,全平台支持(包括Windows/Linux 32&64,ARM各平台,Android,iOS),接口简单且成熟稳定! ## 调用示例 ## - **EasyRTSPClient**:以RTSPClient的形式,从RTSP URL将音视频获取到本地; Windows编译方法, Visual Studio 2010 编译:./EasyRTSPClient-master/win/EasyRTSPClient.sln Linux编译方法, chmod +x ./Buildit ./Buildit Usage, -------------------------------------------------------------- EasyRTSPClient.exe -d [ -m -s ] Help Mode: EasyRTSPClient.exe -h rtsp-url : source rtsp address transport-mode : tcp or udp, default is tcp save-file : yes or no, default is yes For example: EasyRTSPClient.exe -d rtsp://admin:admin@192.168.2.100/11 -m tcp -s yes -------------------------------------------------------------- - **EasyPlayer调用**:EasyPlayer是由EasyDarwin开源团队开发和维护的一个RTSP播放器项目,目前支持Windows(支持多窗口、包含ActiveX,npAPI Web插件)、Android平台,iOS平台,EasyRTSPClient作为其RTSP/RTP部分组件,为EasyPlayer提供稳定可靠、高兼容性的数据连接; - **EasyClient客户端**:EasyClient是EasyDarwin开源流媒体云平台的客户端实现,包含:Windows、Android、iOS三个部分,EasyRTSPClient为EasyClient提供RTSP/RTP/RTCP协议支撑;
支持平台芯片目录位置
Windowsx86./Lib/
Windowsx64./Lib/x64/
Linuxx86./Lib/
Linuxx64./Lib/x64/
海思arm-hisiv100-linux./Lib/hisiv100/
海思arm-hisiv200-linux./Lib/hisiv200/
海思arm-hisiv300-linux./Lib/hisiv300/
海思arm-hisiv400-linux./Lib/hisiv400/
AndroidarmeabilibEasyRTSPClient.so:https://github.com/EasyDarwin/EasyPlayer_Android
iOSarmlibEasyRTSPClient.a:https://github.com/EasyDarwin/EasyPlayer_iOS
aragoarm-arago-linux./Lib/arago/
邮件获取更多平台版本
## 调用流程 ## ![](http://www.easydarwin.org/skin/easydarwin/images/easyrtspclient20160909.gif) ## 设计方法 ## 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_H265 /* H265 */ #define EASY_SDK_VIDEO_CODEC_H264 /* H264 */ #define EASY_SDK_VIDEO_CODEC_MJPEG /* MJPEG */ #define EASY_SDK_VIDEO_CODEC_MPEG4 /* MPEG4 */ 视频帧标识支持 #define EASY_SDK_VIDEO_FRAME_I /* I帧 */ #define EASY_SDK_VIDEO_FRAME_P /* P帧 */ #define EASY_SDK_VIDEO_FRAME_B /* B帧 */ #define EASY_SDK_VIDEO_FRAME_J /* JPEG */ > ***当回调出RTSP_FRAME_INFO->codec为EASY\_SDK\_VIDEO\_CODEC\_H264数据,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*/ #define EASY_SDK_AUDIO_CODEC_G726 /* G726 */ ## 技术支持 ## - 邮件:[support@easydarwin.org](mailto:support@easydarwin.org) - Tel:13718530929 - QQ交流群:[544917793](http://jq.qq.com/?_wv=1027&k=2IDkJId "EasyPlayer") > **我们同时提供Windows、Linux、ARM、Android、IOS版本的EasyRTSPClient库**:EasyRTSPClient SDK商业使用需要经过授权才能永久使用,商业授权方案可以通过以上渠道进行更深入的技术与合作咨询; ## 获取更多信息 ## **EasyDarwin**开源流媒体服务器:[www.EasyDarwin.org](http://www.easydarwin.org) **EasyDSS**商用流媒体解决方案:[www.EasyDSS.com](http://www.easydss.com) **EasyNVR**无插件直播方案:[www.EasyNVR.com](http://www.easynvr.com) Copyright © EasyDarwin Team 2012-2017 ![EasyDarwin](http://www.easydarwin.org/skin/easydarwin/images/wx_qrcode.jpg)