CN104244108A - 一种直播方法及系统 - Google Patents
一种直播方法及系统 Download PDFInfo
- Publication number
- CN104244108A CN104244108A CN201410490852.3A CN201410490852A CN104244108A CN 104244108 A CN104244108 A CN 104244108A CN 201410490852 A CN201410490852 A CN 201410490852A CN 104244108 A CN104244108 A CN 104244108A
- Authority
- CN
- China
- Prior art keywords
- live
- client
- server end
- agreement
- srtp
- 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
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种直播方法及系统,包括服务器端、客户端,客户端通过WebSocket协议与服务器端通信连接,服务器端通过RTMP协议连接直播方的第三方视频采集客户端;直播方使用第三方视频采集客户端采集所需直播的数据,并以RTMP协议的方式发送给服务器端,服务器端将收到的RTMP协议的数据流转化为SRTP协议的数据流,并以WebRTC的方式分发至客户端。
Description
技术领域
本发明涉及数据传输技术领域,特别涉及一种直播方法及系统。
背景技术
现有的视频直播平台通常的实现方法如图1所示,整个平台包括视频采集客户端、RTMP(Routing Table Maintenance Protocol,路由选择表维护协议)流媒体服务器、移动客户端、WEB客户端。系统主要通过RTMP协议进行直播视频的上传与分发。其中视频采集客户端负责采集音视频及其它相关数据,进行混合编码等处理,并最终以RTMP流的方式发送给RTMP流媒体服务器。
RTMP流媒体服务器负责接收采集客户端推送的直播视频,并分发给请求的客户端。其中移动客户端使用支持RTMP流解析的播放器接收相应的直播流,浏览器在安装Adobe Flash Player插件后,WEB客户端使用Flash播放器接收相应的直播流。
采用此种基于RTMP协议的实现方式存在如下不足之处:
1、此种方式并没有实现真正的免安装,不是所有的浏览器都安装有Adobe Flash Player。当用户没有安装或者因为网络原因等无法安装时,WEB端将无法观看直播视频;
2、RTMP基于TCP协议,虽然TCP保证了数据包的完整性,但是实时性不佳,会导致视频直播延迟的增加,对于诸如赛事等对延时要求较高的直播活动,会影响用户的观看体验,降低了产品的竞争力;
3、此种方式会增加整个系统的复杂性,并增加人力成本。视频直播平台通常要求具备互动性的要求,即需要支持IM功能,对在同一个直播间内(观看同一个直播视频)的用户,可以进行群聊。由于移动平台Android系统及iOS系统均不支持Flash技术,故在移动客户端,不能采用Flash的XmlSocket技术来实现IM模块,必须采用其它的技术来实现,例如采用XMPP协议。由于视频直播和IM两个模块各自采用独立的技术实现,会导致系统整体变得更加复杂,使得系统的稳定性和可维护性降低。并需要开发人员掌握不同的开发技术,进而增加了人力成本。
发明内容
本发明针对现有技术存在的上述不足,提供了一种直播方法。本发明通过以下技术方案实现:
一种直播方法,其特征在于,包括:
直播方使用第三方视频采集客户端采集所需直播的数据,并以RTMP协议的方式发送给服务器端,服务器端将收到的RTMP协议的数据流转化为SRTP协议的数据流,并以WebRTC的方式进行分发,客户端通过WebSocket协议与服务器建立连接后,观看直播内容。
较佳的,SRTP协议的数据流包括SRTP音频流和SRTP视频流。
较佳的,第三方视频采集客户端通过RTMP协议将采集到的需要直播的数据传输至服务器端。
较佳的,客户端包括移动客户端以及WEB客户端。
本发明另提供一种直播系统,包括服务器端、客户端,客户端通过WebSocket协议与服务器端通信连接,服务器端通过RTMP协议连接直播方的第三方视频采集客户端;
其中,直播方使用第三方视频采集客户端采集所需直播的数据,并以RTMP协议的方式发送给服务器端,服务器端将收到的RTMP协议的数据流转化为SRTP协议的数据流,并以WebRTC的方式分发至客户端。
较佳的,SRTP协议的数据流包括SRTP音频流和SRTP视频流。
较佳的,第三方视频采集客户端通过RTMP协议将采集到的需要直播的数据传输至服务器端。
较佳的,客户端包括移动客户端以及WEB客户端。
采用本方法后,直播系统取得了如下效果:
1、在支持WebRTC的浏览器上,可以真正实现免安装,无需任何插件。对于暂不支持WebRTC的浏览器,可以采用提供WebRTC插件的方式进行支持;
2、在直播视频上传阶段仍然采用基于TCP的RTMP协议上传,保证了源视频的完整性。但在分发阶段,直播视频的传输采用基于UDP的SRTP协议,降低了系统的延迟;
3、WebRTC的RTCDataChannel可以用来传输音视频之外的数据,可以实现直播平台所需的IM功能,直播间的视频直播及IM功能可全部采用WebRTC技术来实现,降低了系统的复杂性及开发成本。
附图说明
图1所示的是现有直播系统的结构示意图;
图2所示的是本发明直播系统的结构示意图;
图3所示的是本发明服务器端与客户端的通信示意图;
图4所示的是本发明服务器端的分发示意图。
具体实施方式
以下将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整的描述和讨论,显然,这里所描述的仅仅是本发明的一部分实例,并不是全部的实例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。
为了便于对本发明实施例的理解,下面将结合附图以具体实施例为例作进一步的解释说明,且各个实施例不构成对本发明实施例的限定。
如图2所示,直播系统,包括服务器端1、客户端2,第三方视频采集客户端负责采集音视频及其它相关数据,进行混合编码等处理,并最终以RTMP流的方式发送给服务器端1。第三方视频采集客户端通过RTMP协议将采集到的需要直播的数据传输至服务器端。
直播方使用第三方视频采集客户端采集所需直播的数据,并以RTMP协议的方式发送给服务器端1,服务器端1将收到的RTMP协议的数据流转化为SRTP协议的数据流,并以WebRTC的方式进行分发,客户端2通过WebSocket协议与服务器建立连接后,观看直播内容。SRTP协议的数据流包括SRTP音频流和SRTP视频流。
客户端可以包括移动客户端以及WEB客户端。
服务器端1为WebRTC服务器,基于GO语言开发,实现了转换、分发、信令控制的功能,具体如下:
1. 负责接收并解析RTMP数据流,并将RTMP数据流实时转换为SRTP(Secure Real-time Transport Protocol,安全实时传输协议)音频流和 SRTP视频流;
2. 维护客户端相关信息,并实现同客户端之间会话控制,包括会话的连接,断开,播放等信令的支持,以及超时和重连的处理,如图3所示;整个会话的协商基于WebSocket协议;
3. 直播视频流的分发,以及其它类型消息的接收与分发。
对于每一个客户端的请求,WebRTC服务器产生一个新的协程,如图4所示。由于GO语言对协程提供了语言级别的支持,可以方便的启动一个协程。因为协程十分轻量,内存成本低廉,可以在一个进程中实现数以万计的协程,并依旧保持高性能。故此系统采用GO语言进行开发,可以方便高效的实现大并发的客户端连接请求。
服务器同客户端建立连接后,收到播放信令后,开始向客户端发送SRTP数据流。当接受到断开信令后,服务器端停止向该客户端发送数据流,并断开连接。
对于支持WebRTC的浏览器,打开相应的URL地址,可直接观看直播视频;对于不支持WebRTC的浏览器,安装相应的插件后,可以观看直播视频;对于移动客户端,需要使用WebRTC的本地库进行支持。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (8)
1.一种直播方法,其特征在于,包括:
直播方使用第三方视频采集客户端采集所需直播的数据,并以RTMP协议的方式发送给服务器端,服务器端将收到的RTMP协议的数据流转化为SRTP协议的数据流,并以WebRTC的方式进行分发,客户端通过WebSocket协议与服务器建立连接后,观看直播内容。
2.根据权利要求1所述的直播方法,其特征在于,所述SRTP协议的数据流包括SRTP音频流和SRTP视频流。
3.根据权利要求1所述的直播方法,其特征在于,所述第三方视频采集客户端通过RTMP协议将采集到的需要直播的数据传输至所述服务器端。
4.根据权利要求1所述的直播方法,其特征在于,所述客户端包括移动客户端以及WEB客户端。
5.一种直播系统,其特征在于,包括服务器端、客户端,所述客户端通过WebSocket协议与所述服务器端通信连接,所述服务器端通过RTMP协议连接直播方的第三方视频采集客户端;
其中,直播方使用第三方视频采集客户端采集所需直播的数据,并以RTMP协议的方式发送给所述服务器端,所述服务器端将收到的RTMP协议的数据流转化为SRTP协议的数据流,并以WebRTC的方式分发至所述客户端。
6.根据权利要求5所述的直播系统,其特征在于,所述SRTP协议的数据流包括SRTP音频流和SRTP视频流。
7.根据权利要求5所述的直播系统,其特征在于,所述第三方视频采集客户端通过RTMP协议将采集到的需要直播的数据传输至所述服务器端。
8.根据权利要求5所述的直播系统,其特征在于,所述客户端包括移动客户端以及WEB客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410490852.3A CN104244108A (zh) | 2014-09-24 | 2014-09-24 | 一种直播方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410490852.3A CN104244108A (zh) | 2014-09-24 | 2014-09-24 | 一种直播方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104244108A true CN104244108A (zh) | 2014-12-24 |
Family
ID=52231311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410490852.3A Pending CN104244108A (zh) | 2014-09-24 | 2014-09-24 | 一种直播方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104244108A (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530553A (zh) * | 2015-12-24 | 2016-04-27 | 武汉鸿瑞达信息技术有限公司 | Rtmp与rudp结合的实时流媒体直播系统 |
CN105898620A (zh) * | 2015-11-26 | 2016-08-24 | 乐视移动智能信息技术(北京)有限公司 | 多媒体实时直播的方法和装置 |
CN106209949A (zh) * | 2015-05-07 | 2016-12-07 | 北京大学 | 基于WebRTC的交互式直播方法及装置 |
CN106357664A (zh) * | 2016-09-30 | 2017-01-25 | 北京奇虎科技有限公司 | 漏洞检测方法及装置 |
CN106506561A (zh) * | 2016-12-29 | 2017-03-15 | 广州华多网络科技有限公司 | 一种流媒体传输方法及装置 |
CN106921866A (zh) * | 2017-05-03 | 2017-07-04 | 广州华多网络科技有限公司 | 辅助直播的多视频导播方法和设备 |
CN107277612A (zh) * | 2016-04-05 | 2017-10-20 | 韩华泰科株式会社 | 用于在web浏览器上播放媒体流的方法和设备 |
CN107483972A (zh) * | 2017-07-24 | 2017-12-15 | 平安科技(深圳)有限公司 | 一种音视频的直播处理方法、存储介质和一种移动终端 |
CN107707533A (zh) * | 2017-09-18 | 2018-02-16 | 深圳市迅雷网文化有限公司 | 基于Web的连麦方法、系统及存储介质 |
CN107749834A (zh) * | 2017-08-31 | 2018-03-02 | 中建三局第二建设工程有限责任公司 | 一种自动化适应网络拓扑链路环境的多播流媒体的方法 |
CN108206833A (zh) * | 2018-01-11 | 2018-06-26 | 福建星网锐捷通讯股份有限公司 | 音视频数据传输方法及其系统 |
WO2018120967A1 (zh) * | 2016-12-30 | 2018-07-05 | 广州华多网络科技有限公司 | 一种网络视频批量转推的方法及系统 |
CN108616760A (zh) * | 2016-12-09 | 2018-10-02 | 武汉斗鱼网络科技有限公司 | 一种基于浏览器的直播方法、服务器、主播端和用户端 |
CN109032573A (zh) * | 2018-06-20 | 2018-12-18 | 深圳市编玩边学教育科技有限公司 | 一种硬件编程系统和方法 |
CN109194983A (zh) * | 2018-10-10 | 2019-01-11 | 贵阳朗玛信息技术股份有限公司 | 直播方法、系统、存储介质、广播服务器及服务器集群 |
CN109660570A (zh) * | 2017-10-10 | 2019-04-19 | 武汉斗鱼网络科技有限公司 | 低流量高实时性道具发放方法、存储介质、设备及系统 |
CN111031331A (zh) * | 2019-11-25 | 2020-04-17 | 深圳智播科技有限公司 | 一种直播内容被多方控制的方法 |
CN111613103A (zh) * | 2020-06-02 | 2020-09-01 | 河南优观大数据科技有限公司 | 一种多对多音视频交互式远程直播录播教培云系统 |
CN112291498A (zh) * | 2020-10-30 | 2021-01-29 | 新东方教育科技集团有限公司 | 音视频数据传输的方法、装置和存储介质 |
CN114025191A (zh) * | 2021-11-04 | 2022-02-08 | 北京睿芯高通量科技有限公司 | 一种基于Nginx-rtmp的webrtc低延迟直播方法及系统 |
CN115174539A (zh) * | 2022-06-28 | 2022-10-11 | 上海网达软件股份有限公司 | 一种安防视频流传输方法、系统、设备及存储介质 |
WO2023036258A1 (zh) * | 2021-09-10 | 2023-03-16 | 深圳市道通智能航空技术股份有限公司 | 基于无人机的视频直播方法、系统、设备及存储介质 |
CN117119216A (zh) * | 2023-10-25 | 2023-11-24 | 北京奇点智播科技有限公司 | 一种直播解说的方法、系统以及直播系统的使用方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202872837U (zh) * | 2012-02-24 | 2013-04-10 | 北京对角巷科技发展有限公司 | 一种在互联网发布和直播流媒体的系统 |
CN103327417A (zh) * | 2013-07-11 | 2013-09-25 | 亿览在线网络技术(北京)有限公司 | 一种实时远程音视频的直播方法及其装置 |
CN103379096A (zh) * | 2012-04-18 | 2013-10-30 | 中兴通讯股份有限公司 | 因特网与运营商网络业务共享方法、服务方及网页网关 |
US20140122664A1 (en) * | 2007-11-21 | 2014-05-01 | BitGravity, Inc. | Efficient video delivery |
-
2014
- 2014-09-24 CN CN201410490852.3A patent/CN104244108A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140122664A1 (en) * | 2007-11-21 | 2014-05-01 | BitGravity, Inc. | Efficient video delivery |
CN202872837U (zh) * | 2012-02-24 | 2013-04-10 | 北京对角巷科技发展有限公司 | 一种在互联网发布和直播流媒体的系统 |
CN103379096A (zh) * | 2012-04-18 | 2013-10-30 | 中兴通讯股份有限公司 | 因特网与运营商网络业务共享方法、服务方及网页网关 |
CN103327417A (zh) * | 2013-07-11 | 2013-09-25 | 亿览在线网络技术(北京)有限公司 | 一种实时远程音视频的直播方法及其装置 |
Non-Patent Citations (1)
Title |
---|
林鸿,王松,杨鑫,付斌: "基于WebRTC技术的应用及平台技术开发与设计", 《电信科学》 * |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106209949A (zh) * | 2015-05-07 | 2016-12-07 | 北京大学 | 基于WebRTC的交互式直播方法及装置 |
CN105898620A (zh) * | 2015-11-26 | 2016-08-24 | 乐视移动智能信息技术(北京)有限公司 | 多媒体实时直播的方法和装置 |
CN105530553B (zh) * | 2015-12-24 | 2018-09-11 | 武汉鸿瑞达信息技术有限公司 | Rtmp与rudp结合的实时流媒体直播系统 |
CN105530553A (zh) * | 2015-12-24 | 2016-04-27 | 武汉鸿瑞达信息技术有限公司 | Rtmp与rudp结合的实时流媒体直播系统 |
CN107277612A (zh) * | 2016-04-05 | 2017-10-20 | 韩华泰科株式会社 | 用于在web浏览器上播放媒体流的方法和设备 |
CN106357664A (zh) * | 2016-09-30 | 2017-01-25 | 北京奇虎科技有限公司 | 漏洞检测方法及装置 |
CN106357664B (zh) * | 2016-09-30 | 2020-07-21 | 北京奇虎科技有限公司 | 漏洞检测方法及装置 |
CN108616760A (zh) * | 2016-12-09 | 2018-10-02 | 武汉斗鱼网络科技有限公司 | 一种基于浏览器的直播方法、服务器、主播端和用户端 |
CN108616760B (zh) * | 2016-12-09 | 2021-03-16 | 武汉斗鱼网络科技有限公司 | 一种基于浏览器的直播方法、服务器、主播端和用户端 |
CN106506561A (zh) * | 2016-12-29 | 2017-03-15 | 广州华多网络科技有限公司 | 一种流媒体传输方法及装置 |
CN106506561B (zh) * | 2016-12-29 | 2019-10-29 | 广州华多网络科技有限公司 | 一种流媒体传输方法及装置 |
WO2018120967A1 (zh) * | 2016-12-30 | 2018-07-05 | 广州华多网络科技有限公司 | 一种网络视频批量转推的方法及系统 |
CN108260017A (zh) * | 2016-12-30 | 2018-07-06 | 广州华多网络科技有限公司 | 一种网络视频批量转推的方法及系统 |
CN106921866A (zh) * | 2017-05-03 | 2017-07-04 | 广州华多网络科技有限公司 | 辅助直播的多视频导播方法和设备 |
CN107483972B (zh) * | 2017-07-24 | 2019-05-07 | 平安科技(深圳)有限公司 | 一种音视频的直播处理方法、存储介质和一种移动终端 |
CN107483972A (zh) * | 2017-07-24 | 2017-12-15 | 平安科技(深圳)有限公司 | 一种音视频的直播处理方法、存储介质和一种移动终端 |
CN107749834A (zh) * | 2017-08-31 | 2018-03-02 | 中建三局第二建设工程有限责任公司 | 一种自动化适应网络拓扑链路环境的多播流媒体的方法 |
CN107707533A (zh) * | 2017-09-18 | 2018-02-16 | 深圳市迅雷网文化有限公司 | 基于Web的连麦方法、系统及存储介质 |
CN109660570A (zh) * | 2017-10-10 | 2019-04-19 | 武汉斗鱼网络科技有限公司 | 低流量高实时性道具发放方法、存储介质、设备及系统 |
CN108206833A (zh) * | 2018-01-11 | 2018-06-26 | 福建星网锐捷通讯股份有限公司 | 音视频数据传输方法及其系统 |
CN109032573A (zh) * | 2018-06-20 | 2018-12-18 | 深圳市编玩边学教育科技有限公司 | 一种硬件编程系统和方法 |
CN109194983A (zh) * | 2018-10-10 | 2019-01-11 | 贵阳朗玛信息技术股份有限公司 | 直播方法、系统、存储介质、广播服务器及服务器集群 |
CN111031331A (zh) * | 2019-11-25 | 2020-04-17 | 深圳智播科技有限公司 | 一种直播内容被多方控制的方法 |
CN111613103A (zh) * | 2020-06-02 | 2020-09-01 | 河南优观大数据科技有限公司 | 一种多对多音视频交互式远程直播录播教培云系统 |
CN112291498A (zh) * | 2020-10-30 | 2021-01-29 | 新东方教育科技集团有限公司 | 音视频数据传输的方法、装置和存储介质 |
WO2023036258A1 (zh) * | 2021-09-10 | 2023-03-16 | 深圳市道通智能航空技术股份有限公司 | 基于无人机的视频直播方法、系统、设备及存储介质 |
CN114025191A (zh) * | 2021-11-04 | 2022-02-08 | 北京睿芯高通量科技有限公司 | 一种基于Nginx-rtmp的webrtc低延迟直播方法及系统 |
CN114025191B (zh) * | 2021-11-04 | 2023-08-15 | 北京睿芯高通量科技有限公司 | 一种基于Nginx-rtmp的webrtc低延迟直播方法及系统 |
CN115174539A (zh) * | 2022-06-28 | 2022-10-11 | 上海网达软件股份有限公司 | 一种安防视频流传输方法、系统、设备及存储介质 |
CN117119216A (zh) * | 2023-10-25 | 2023-11-24 | 北京奇点智播科技有限公司 | 一种直播解说的方法、系统以及直播系统的使用方法 |
CN117119216B (zh) * | 2023-10-25 | 2024-01-26 | 北京奇点智播科技有限公司 | 一种直播解说的方法、系统以及直播系统的使用方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104244108A (zh) | 一种直播方法及系统 | |
US9282448B2 (en) | Method, system and apparatus for providing streaming media service | |
CN101872555B (zh) | 一种基于应用层组播的实时互动授课系统 | |
CN102739779B (zh) | 一种基于dlna的数字家庭交互方法、系统及相应设备 | |
CN105392020A (zh) | 一种互联网视频直播方法,及系统 | |
CN107135417A (zh) | 一种hls协议的投屏方法及系统 | |
CN101232565B (zh) | 电视机上网和交互娱乐的系统与方法及pc盒与tv盒 | |
CN101873219B (zh) | 一种基于应用层组播的视频会议直播系统 | |
CN102098558B (zh) | 三网融合数字电视机顶盒及其实现方法 | |
CN105791884A (zh) | 一种流媒体直播方法及系统 | |
CN111669606A (zh) | 一种线下线上同步教学的直播系统 | |
CN102625080A (zh) | 基于p2p的web视频会议系统 | |
CN104918132A (zh) | 一种智能电视音视频通讯的方法及系统 | |
CN106209824A (zh) | 数据的云编辑方法、系统以及云编辑的客户端 | |
CN109429108A (zh) | 一种iOS移动端基于Socket.IO和WebRTC的观看端视频连麦架构 | |
CN103796078A (zh) | 组播视频的播放方法和视频播放终端 | |
CN104539993B (zh) | 一种基于usb视频传输的广播高清电视接入装置及方法 | |
CN203801040U (zh) | 一种基于车载的数字化影音系统 | |
CN103248862A (zh) | 长距离管道输煤视频会议系统及系统设备的配制方法 | |
CN109788366A (zh) | 一种3d互动直播系统 | |
CN201414200Y (zh) | 实现实时转播多视频流媒体的系统 | |
CN103533291A (zh) | 电力高速3g双向音视频应急通信系统 | |
CN111031328B (zh) | 一种多平台网络同步直播控制方法与直播系统 | |
CN103067688A (zh) | 基于ip和hfc混合网络实现视频会议的方法 | |
CN203457239U (zh) | 电力高速3g双向音视频应急通信系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141224 |