CN108270768A - 一种基于rtsp/rtmp协议的单端口双向交互协议 - Google Patents
一种基于rtsp/rtmp协议的单端口双向交互协议 Download PDFInfo
- Publication number
- CN108270768A CN108270768A CN201711210372.7A CN201711210372A CN108270768A CN 108270768 A CN108270768 A CN 108270768A CN 201711210372 A CN201711210372 A CN 201711210372A CN 108270768 A CN108270768 A CN 108270768A
- Authority
- CN
- China
- Prior art keywords
- rtsp
- rtmp
- single port
- way interactive
- tcp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于RTSP/RTMP协议的单端口双向交互协议,其采用RTSP over TCP扩展实现单端口双向交互,RTSP由RTSP客户端主动发起TCP连接,RTSP服务器进行指令识别/鉴权后再进行音视频传输。本发明在标准RTSP/RTMP协议基础上扩展指令,可自动识别对端是否为本协议的执行者;RTSP/RTMP通信和音视频传输都采用TCP,能充分保证通讯的正确性;双方交互只需要其中一方发起TCP连接,在正常完成握手后,双方的音视频数据即可通过同一个TCP句柄传输。
Description
技术领域
本发明涉及一种基于RTSP/RTMP协议的单端口双向交互协议。
背景技术
在教育教学培训活动中,越来越多的需求是双向交互,其中多方互动成为越来越迫切需要实现的功能.实现双方/多方交互,国际上比较常用的协议有SIP和H323,这两个协议已经非常完美的解决了双方/多方交互的问题,但这两个协议传输音视频有如下几个缺点:
(1)这两种协议采用的是基于UDP的RTP协议,在公网传输很容易出现丢包导致声音卡顿和图象马赛克等问题,虽然协议也支持RTCP协议可以做到自动流控,但实际使用中还是无法避免图声不正常的现象。由于音视频通过UDP传送,跨网的多方设备必须配置公网服务器,如负责SIP通讯的SIP服务器,负责UDP穿透用的STUN服务器等。如果采用端口映射的方法,需要映射非常多的端口到公网,不方便也不安全。
(2)采用SIP/H323协议的多方交互,一般情况下需要增加MCU设备,一般MCU设备使用高性能的X86机器,价格非常高,实现MCU协议栈也非常复杂,会带来很多的行业门槛。
(3)SIP/H323在交互过程中,若其中一方非正常断开(如断电),此时交互的其他方或者MCU不能及时获取该信息,很容易导致断开的设备重新加入会议提示"系统忙"或者只能采用新的Session加入会话(取决于系统实现)。
RTSP/RTMP是一个单向音视频传输的标准协议,没有规定双向音视频传输,如果完全采用RTSP/RTMP协议进行交互,则交互双方都必须同时具备客户端和服务器功能,此时需要双方互相向对方发起RTSP/RTMP 请求,双方都需要提供至少一个对方能访问的端口,而且需要额外的资源通知对方发起RTSP/RTMP请求,无疑又增加了通讯的难度。另外因为网络的原因,很容易出现其中一个方向断流而另外一个方向正常的情况。
发明内容
本发明要解决的技术问题是克服现有技术的缺陷,提供一种基于RTSP/RTMP协议的交互协议,该协议扩展RTSP/RTMP指令,可自动识别远端是否支持本协议,若不支持本协议则按标准RTSP/RTMP协议通讯。
为了解决上述技术问题,本发明提供了如下的技术方案:
本发明公开了一种基于RTSP/RTMP协议的单端口双向交互协议,其采用RTSP over TCP扩展实现单端口双向交互,RTSP由RTSP客户端主动发起TCP连接,RTSP服务器进行指令识别/鉴权后再进行音视频传输。
进一步地,为了在RTSP/RTMP协议基础上实现双向交互功能,控制指令和音视频数据采用TCP传输,因此扩展RTSP over TCP和RTMP协议。
进一步地,为了软件兼容性,必须完全兼容非本协议执行者的设备或软件,本协议有能力识别这种情况。
进一步地,扩展协议采用INVITE指令,添加字段用来支持多路交互和控制图象分辨率等信息。
进一步地,握手信息和标准RTSP/RTMP类似,反向的音视频配置和正向的配置完全一样,因此反向不再需要握手和协商。
本发明所达到的有益效果是:
本发明在标准RTSP/RTMP协议基础上扩展指令,可自动识别对端是否为本协议的执行者;RTSP/RTMP通信和音视频传输都采用TCP,能充分保证通讯的正确性;双方交互只需要其中一方发起TCP连接,在正常完成握手后,双方的音视频数据即可通过同一个TCP句柄传输,这也是本协议最大的特点。因此如果用端口映射的方法实现跨网访问,只需要其中一方映射一个端口即可实现交互,这个特点在多方交互的情况下非常有用,例如只需要把主讲端映射一个端口出去,那么其他的听讲端都可以正常连接上且实现双向音视频传输。
具体实施方式
以下对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
标准RTSP采用TCP 554端口传送控制指令(也支持UDP传送控制指令,实际实现一般使用TCP),使用UDP传送音视频数据,该方式称为”RTSP over UDP”,或使用TCP 554同时传输控制指令和音视频数据,该方式称为”RTSP over TCP”.本协议采用”RTSP over TCP”扩展实现.RTSP需要由RTSP客户端主动发起TCP连接,RTSP服务器进行指令识别/鉴权后再进行音视频传输.
RTSP控制流程如下:
RTSP客户端(C),RTSP服务端(S)。
(1)发送OPTIONS查询服务器支持的指令
客户端请求:”OPTIONS rtsp://192.168.2.22/live/av0 RTSP/1.0 \r\n”服务端回应:”Public:OPTIONS, DESCRIBE,SETUP,TEARDOWN,PLAY,PAUSE,GET_PARAMETER\r\n”
(2)发送DESCRIBE查询服务器媒体信息
客户端请求:”DESTRIBE rtsp://192.168.2.22/live/av0 RTSP/1.0 \r\n”
服务端返回200 OK和采用SDP描述的媒体信息
(3)发送SETUP配置媒体信息
客户端请求:”SETUP rtsp://192.168.2.22/live/av0/track1 RTSP/1.0\r\n”并附加端口等信息,若采用”RTP/AVP/TCP”则进行inteleave值的配置信息.
(4)发送PLAY开始传输数据
完成以上握手信息后,RTSP服务器即可立即传输音视频给客户端,客户端会定期发送心跳信息和RTCP数据给服务器,但不能传输音视频给服务端。
本协议就是规定客户端如何传输音视频给服务端的一个扩展协议。
本协议的详细流程如下(C代表客户端,S代表服务端):
Step 1:
C-->S:C发送OPTIONS给S
S-->C:S返回支持的指令"OPTIONS,DESCRIBE,SETUP,PLAY"等信息,如果S机支持交互,返回额外的支持指令"INVITE"
标准RTSP服务将返回如下字段:
”Public:OPTIONS,DESCRIBE,SETUP,TEARDOWN,PLAY,PAUSE,GET_PARAMETER\r\n”
而本协议的执行者将返回如下字段:
“Public:OPTIONS,DESCRIBE,SETUP,TEARDOWN,PLAY,PAUSE,GET_PARAMETER, INVITE\r\n”
Step 2:
C-->S:如果S端支持INVITE(即OPTIONS返回中包含INVITE指令支持),则发送INVITE指令给S端
“INVITE rtsp://192.168.1.22/live/av0 RTSP/1.0\r\n
Mode: %d\r\n
Profile: %d\r\n
Url: %s\r\n
Options: %d\r\n
Bufmax: %d\r\n
Idx: %d\r\n”
当前实现的参数如下:
Idx: 0 – n,交互的通道号
Mode: 0-音视频交互,1-仅音频交互
Profile:0—1080P@4Mbps,1—720P@2Mbps,2—D1@512Kbps,32—CIF@128kbps,其他—内部保存配置
Url: C相对S能被访问的RTSP url
Options: 交互模式,0—UDP单向,1—TCP单向,2—UDP交互,3—TCP交互
Bufmax:缓冲时间,用毫秒做单位
S--->C: RTSP 200/OK
Step 3:
C-->S:发送DESCRIBE给S
S-->C:RTSP 200/OK + SDP
Step 4:
C--->S:发送多个SETUP给S,协议必须使用RTP/AVP/TCP
S--->C:RTSP 200/OK
Step 5:
C-->S:发送PLAY给S
S-->C:RTSP 200/OK,建立一路RTP接收,用来准备接收C发送给S的RTP流
Step 6:
C-->S:建立一路RTP发送,准备发送数据给S
Step 7:
完成握手,C-->S和S-->C双向RTP流开始传输。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于RTSP/RTMP协议的单端口双向交互协议,其特征在于,采用RTSP over TCP扩展实现单端口双向交互,RTSP由RTSP客户端主动发起TCP连接,RTSP服务器进行指令识别/鉴权后再进行音视频传输。
2.根据权利要求1所述的一种基于RTSP/RTMP协议的单端口双向交互协议,其特征在于,为了在RTSP/RTMP协议基础上实现双向交互功能,控制指令和音视频数据采用TCP传输,因此扩展RTSP over TCP和RTMP协议。
3.根据权利要求1所述的一种基于RTSP/RTMP协议的单端口双向交互协议,其特征在于,为了软件兼容性,必须完全兼容非本协议执行者的设备或软件,本协议有能力识别这种情况。
4.根据权利要求1所述的一种基于RTSP/RTMP协议的单端口双向交互协议,其特征在于,扩展协议采用INVITE指令,添加字段用来支持多路交互和控制图象分辨率等信息。
5.根据权利要求1所述的一种基于RTSP/RTMP协议的单端口双向交互协议,其特征在于,握手信息和标准RTSP/RTMP类似,反向的音视频配置和正向的配置完全一样,因此反向不再需要握手和协商。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711210372.7A CN108270768A (zh) | 2017-11-28 | 2017-11-28 | 一种基于rtsp/rtmp协议的单端口双向交互协议 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711210372.7A CN108270768A (zh) | 2017-11-28 | 2017-11-28 | 一种基于rtsp/rtmp协议的单端口双向交互协议 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108270768A true CN108270768A (zh) | 2018-07-10 |
Family
ID=62771732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711210372.7A Pending CN108270768A (zh) | 2017-11-28 | 2017-11-28 | 一种基于rtsp/rtmp协议的单端口双向交互协议 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108270768A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112153022A (zh) * | 2020-09-11 | 2020-12-29 | 上海七牛信息技术有限公司 | 一种rtmp快速发布和订阅方法 |
CN113905026A (zh) * | 2021-10-22 | 2022-01-07 | 广西中科曙光云计算有限公司 | 一种流媒体视频数据处理方法、装置及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1619853A1 (en) * | 2004-07-21 | 2006-01-25 | Siemens Mobile Communications S.p.A. | RTSP proxy extended to detect streaming session events and report to valued streaming applications the notified ones |
CN101123718A (zh) * | 2007-09-13 | 2008-02-13 | 华为技术有限公司 | 多媒体点播的方法及系统、多媒体终端 |
CN101588342A (zh) * | 2008-05-19 | 2009-11-25 | 华为技术有限公司 | 一种实现录制业务的方法、装置及系统 |
CN101946458A (zh) * | 2008-02-25 | 2011-01-12 | 艾利森电话股份有限公司 | 组播数据的传送 |
-
2017
- 2017-11-28 CN CN201711210372.7A patent/CN108270768A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1619853A1 (en) * | 2004-07-21 | 2006-01-25 | Siemens Mobile Communications S.p.A. | RTSP proxy extended to detect streaming session events and report to valued streaming applications the notified ones |
CN101123718A (zh) * | 2007-09-13 | 2008-02-13 | 华为技术有限公司 | 多媒体点播的方法及系统、多媒体终端 |
CN101946458A (zh) * | 2008-02-25 | 2011-01-12 | 艾利森电话股份有限公司 | 组播数据的传送 |
CN101588342A (zh) * | 2008-05-19 | 2009-11-25 | 华为技术有限公司 | 一种实现录制业务的方法、装置及系统 |
Non-Patent Citations (2)
Title |
---|
CSDN: "ONVIF双向对讲(RTSP协议)", 《HTTPS://BLOG.CSDN.NET/YUANCHUNSI/ARTICLE/DETAILS/72877603?UTM_MEDIUM=DISTRIBUTE.DOWN_RELEVANT_RIGHT.NONE-TASK-BLOG-BLOGCOMMENDFROMBAIDU-1.NONECASE&DEPTH_1-UTM_SOURCE=DISTRIBUTE.DOWN_RELEVANT_RIGHT.NONE-TASK-BLOG-BLOGCOMMENDFROMBAIDU-1.NONECASE》 * |
罗素实验室: "RFC2326(中文版)-实时流协议(RTSP)", 《HTTP://WWW.ROSOO.NET/A/201109/14953.HTML》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112153022A (zh) * | 2020-09-11 | 2020-12-29 | 上海七牛信息技术有限公司 | 一种rtmp快速发布和订阅方法 |
CN112153022B (zh) * | 2020-09-11 | 2022-09-13 | 上海七牛信息技术有限公司 | 一种rtmp快速发布和订阅方法 |
CN113905026A (zh) * | 2021-10-22 | 2022-01-07 | 广西中科曙光云计算有限公司 | 一种流媒体视频数据处理方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106331581B (zh) | 一种移动终端与视联网终端通信的方法和装置 | |
CN103227788B (zh) | 实现网页应用程序与sip设备进行通信的方法和系统 | |
AU2013207642B2 (en) | Wireless communication system for offline participation in a display session | |
Shacham et al. | Session initiation protocol (SIP) session mobility | |
CN105763832B (zh) | 一种视频互动、控制方法及装置 | |
US20080209065A1 (en) | Method for sending stream media, signaling forwarding device and stream media system | |
US20110196973A1 (en) | Method and apparatus for inter-device session continuity (idsc) of multi media streams | |
KR101705440B1 (ko) | 미디어 통신용 하이브리드 클라우드 미디어 아키텍쳐 | |
US8199718B2 (en) | Apparatus and method for splicing multimedia session on communication networks | |
CN103327374B (zh) | 一种监控方法及网络电视机顶盒 | |
WO2013097457A1 (zh) | 云计算环境中实现voip通话的方法、装置和系统 | |
CN101674228B (zh) | 实现流媒体通信的方法、装置及系统 | |
US20130091291A1 (en) | Method and apparatus for improving voice or video transmission quality in cloud computing mode | |
WO2010045834A1 (zh) | 视频监控系统实现媒体穿越网络地址翻译的方法和系统 | |
JP2012501133A (ja) | 固定マルチメディア・デバイスと移動マルチメディア・デバイスの間でビデオ・セッションを移すための方法 | |
WO2012174927A1 (zh) | 一种视频监控系统及媒体穿越网络地址转换设备的方法 | |
US20130290517A1 (en) | Nat traversal under tcp for real time streaming protocol | |
WO2015180570A1 (zh) | 数据通道建立方法和通信设备 | |
WO2013116975A1 (zh) | 流媒体播放方法、设备及系统 | |
CN108270768A (zh) | 一种基于rtsp/rtmp协议的单端口双向交互协议 | |
CN101188601B (zh) | 一种多媒体数据快速发送和接收的方法 | |
EP2403204B1 (en) | Method and system for handling security in an IP multimedia gateway | |
US9100412B2 (en) | Method and apparatus for transmitting media resources | |
CN101977306B (zh) | 双向视频监控的方法及系统 | |
JP4868606B2 (ja) | ストリーミング送信制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100075 Beijing Daxing District, Beijing Economic and Technological Development Zone, No. 26 Kechuang 13th Street, 1 5-storey 501 Applicant after: Beijing Wen Xiang Information Technology Co., Ltd. Address before: 100176 Beijing Daxing District, Beijing Economic and Technological Development Zone, No. 26 Kechuang Thirteenth Street, No. 1 Building, 5 storeys 501 Applicant before: Beijing Wen Xiang Information Technology Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180710 |