CN111083521A - 一种rtmp发布主备快速切换方法 - Google Patents

一种rtmp发布主备快速切换方法 Download PDF

Info

Publication number
CN111083521A
CN111083521A CN201911380156.6A CN201911380156A CN111083521A CN 111083521 A CN111083521 A CN 111083521A CN 201911380156 A CN201911380156 A CN 201911380156A CN 111083521 A CN111083521 A CN 111083521A
Authority
CN
China
Prior art keywords
transcoder
standby
rtmp
main
server
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.)
Granted
Application number
CN201911380156.6A
Other languages
English (en)
Other versions
CN111083521B (zh
Inventor
孙伟涛
应鸣
徐扬法
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Arcvideo Technology Co ltd
Original Assignee
Hangzhou Arcvideo Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Arcvideo Technology Co ltd filed Critical Hangzhou Arcvideo Technology Co ltd
Priority to CN201911380156.6A priority Critical patent/CN111083521B/zh
Publication of CN111083521A publication Critical patent/CN111083521A/zh
Application granted granted Critical
Publication of CN111083521B publication Critical patent/CN111083521B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • H04N21/2335Processing of audio elementary streams involving reformatting operations of audio signals, e.g. by converting from one coding standard to another
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种RTMP发布主备快速切换方法。它具体包括如下步骤:(1)主转码器在向RTMP服务器推流时在发送publish消息时,在streamName增加第一特殊标志,指示该流需要支持主备切换;(2)RTMP服务器检测到该第一特殊标志后,记录该第一特殊标记用于后续处理;(3)主转码器宕机时备转码器监测到心跳超时,把自己升级为主转码器,开始连接RTMP服务器推流;(4)如果RTMP服务器建立连接后,在发送publish消息时增加第二特殊标志,指示该流需要紧急切换;(5)RTMP服务器检测到该第二特殊标记后断开之前的TCP连接,把原来连接的处理逻辑切换到备转码器的连接上,并准备接收数据。本发明的有益效果是:做到无缝切换,不影响下游拉流观看。

Description

一种RTMP发布主备快速切换方法
技术领域
本发明涉及音视频转码处理相关技术领域,尤其是指一种RTMP发布主备快速切换方法。
背景技术
现场事件性直播(演唱会)、比赛直播(足球赛,篮球赛)中,常会用到RTMP服务器做中转。如果现场转码设备配备主备机,当主机宕机时,切换到备机转码输出,但是由于主机非正常退出,RTMP服务器原有的链接仍未断开,从而导致备机无法连接,影响直播效果。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种能够实现无缝切换的RTMP发布主备快速切换方法。
为了实现上述目的,本发明采用以下技术方案:
一种RTMP发布主备快速切换方法,具体包括如下步骤:
(1)主转码器在向RTMP服务器推流时在发送publish消息时,在streamName增加第一特殊标志,指示该流需要支持主备切换;
(2)RTMP服务器检测到该第一特殊标志后,记录该第一特殊标记用于后续处理;
(3)主转码器宕机时备转码器监测到心跳超时,把自己升级为主转码器,开始连接RTMP服务器推流;
(4)如果RTMP服务器建立连接后,在发送publish消息时增加第二特殊标志,指示该流需要紧急切换;
(5)RTMP服务器检测到该第二特殊标记后断开之前的TCP连接,把原来连接的处理逻辑切换到备转码器的连接上,并准备接收数据。
本方法引入一个主动夺取连接的命令,如果RTMP服务器收到这个连接命令,停止原有的连接,直接使用现有连接,可以做到无缝切换,不影响下游拉流观看。
作为优选,转码器与RTMP服务器推流的方法如下:
(a)转码器向RTMP服务器建立TCP连接,RTMP服务器在端口监听;
(b)连接TCP建立后进行RTMP握手,RTMP握手完成两件事,即校验客户端和服务器端的RTMP协议版本号以及测试网络状况;
(c)RTMP握手完成后,建立RTMP连接,转码器通知RTMP服务器流相关编码信息;
(d)转码器向RTMP服务器发送创建流命令;
(e)转码器向RTMP服务器发送发布流命令。
作为优选,主转码器与备转码器采用双机热备的方式,双机热备指的是:对于重要的服务,使用两台转码器互相备份,共同执行同一服务;当一台转码器出现故障时,由另一台转码器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务,由备用的转码器解决了在主转码器故障时服务不中断的问题。
作为优选,双机热备具体为:基于active/standby方式的转码器热备,在同一时间内只有一台转码器运行,当其中运行着的一台active转码器出现故障无法运行时,另一台备份standby转码器会通过通过心跳诊断将standby转码器激活,保证应用在短时间内完全恢复正常使用。
作为优选,所述的心跳诊断指的是:备转码器通过网络监听主转码器,备转码器与主转码器之间的监听采取请求与应答的方式,备转码器以预先设定的时间间隔向主转码器发出请求,主转码器应答表示工作正常,主转码器如果没有作出应答并超过设定的应答时限,备转码器将切断与主转码器的网络数据传输,转入活动状态,并产生报警和事件信息;之后备转码器还会定时监听主转码器状态,一旦主转码器恢复,就切换到热备状态。
本发明的有益效果是:引入一个主动夺取连接的命令,如果RTMP服务器收到这个连接命令,停止原有的连接,直接使用现有连接,可以做到无缝切换,不影响下游拉流观看。
附图说明
图1是本发明的方法框图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步的描述。
如图1所述的实施例中,一种RTMP发布主备快速切换方法,具体包括如下步骤:
(1)主转码器在向RTMP服务器推流时在发送publish消息时,在streamName增加特殊标志,指示该流需要支持主备切换;
(2)RTMP服务器检测到该特殊标志后,记录该特殊标记用于后续处理;
(3)主转码器宕机时备转码器监测到心跳超时,把自己升级为主转码器,开始连接RTMP服务器推流;
(4)如果RTMP服务器建立连接后,在发送publish消息时同样增加特殊标志,指示该流需要紧急切换;
(5)RTMP服务器检测到该特殊标记后断开之前的TCP连接,把原来连接的处理逻辑(如buffer等)切换到备转码器的连接上,并准备接收数据。
其中:转码器与RTMP服务器推流的方法如下:
(a)转码器向RTMP服务器建立TCP连接,RTMP服务器在端口监听;
(b)连接TCP建立后进行RTMP握手,RTMP握手完成两件事,即校验客户端和服务器端的RTMP协议版本号以及测试网络状况;
(c)RTMP握手完成后,建立RTMP连接,转码器通知RTMP服务器流相关编码信息;
(d)转码器向RTMP服务器发送创建流命令;
(e)转码器向RTMP服务器发送发布流命令。
主转码器与备转码器采用双机热备的方式,双机热备指的是:对于重要的服务,使用两台转码器互相备份,共同执行同一服务;当一台转码器出现故障时,由另一台转码器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务,由备用的转码器解决了在主转码器故障时服务不中断的问题。
双机热备具体为:基于active/standby方式的转码器热备,在同一时间内只有一台转码器运行,当其中运行着的一台active转码器出现故障无法运行时,另一台备份standby转码器会通过通过心跳诊断将standby转码器激活,保证应用在短时间内完全恢复正常使用。
心跳诊断指的是:备转码器通过网络监听主转码器,备转码器与主转码器之间的监听采取请求与应答的方式,备转码器以预先设定的时间间隔向主转码器发出请求,主转码器应答表示工作正常,主转码器如果没有作出应答并超过设定的应答时限,备转码器将切断与主转码器的网络数据传输,转入活动状态,并产生报警和事件信息;之后备转码器还会定时监听主转码器状态,一旦主转码器恢复,就切换到热备状态。
本方法引入一个主动夺取连接的命令,如果RTMP服务器收到这个连接命令,停止原有的连接,直接使用现有连接,可以做到无缝切换,不影响下游拉流观看。此方法可以实现RTMP推流快速切换,切换时长控制在1秒以内。后端几乎无感。

Claims (5)

1.一种RTMP发布主备快速切换方法,其特征是,具体包括如下步骤:
(1)主转码器在向RTMP服务器推流时在发送publish消息时,在streamName增加第一特殊标志,指示该流需要支持主备切换;
(2)RTMP服务器检测到该第一特殊标志后,记录该第一特殊标记用于后续处理;
(3)主转码器宕机时备转码器监测到心跳超时,把自己升级为主转码器,开始连接RTMP服务器推流;
(4)如果RTMP服务器建立连接后,在发送publish消息时增加第二特殊标志,指示该流需要紧急切换;
(5)RTMP服务器检测到该第二特殊标记后断开之前的TCP连接,把原来连接的处理逻辑切换到备转码器的连接上,并准备接收数据。
2.根据权利要求1所述的一种RTMP发布主备快速切换方法,其特征是,转码器与RTMP服务器推流的方法如下:
(a)转码器向RTMP服务器建立TCP连接,RTMP服务器在端口监听;
(b)连接TCP建立后进行RTMP握手,RTMP握手完成两件事,即校验客户端和服务器端的RTMP协议版本号以及测试网络状况;
(c)RTMP握手完成后,建立RTMP连接,转码器通知RTMP服务器流相关编码信息;
(d)转码器向RTMP服务器发送创建流命令;
(e)转码器向RTMP服务器发送发布流命令。
3.根据权利要求1或2所述的一种RTMP发布主备快速切换方法,其特征是,主转码器与备转码器采用双机热备的方式,双机热备指的是:对于重要的服务,使用两台转码器互相备份,共同执行同一服务;当一台转码器出现故障时,由另一台转码器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务,由备用的转码器解决了在主转码器故障时服务不中断的问题。
4.根据权利要求3所述的一种RTMP发布主备快速切换方法,其特征是,双机热备具体为:基于active/standby方式的转码器热备,在同一时间内只有一台转码器运行,当其中运行着的一台active转码器出现故障无法运行时,另一台备份standby转码器会通过通过心跳诊断将standby转码器激活,保证应用在短时间内完全恢复正常使用。
5.根据权利要求4所述的一种RTMP发布主备快速切换方法,其特征是,所述的心跳诊断指的是:备转码器通过网络监听主转码器,备转码器与主转码器之间的监听采取请求与应答的方式,备转码器以预先设定的时间间隔向主转码器发出请求,主转码器应答表示工作正常,主转码器如果没有作出应答并超过设定的应答时限,备转码器将切断与主转码器的网络数据传输,转入活动状态,并产生报警和事件信息;之后备转码器还会定时监听主转码器状态,一旦主转码器恢复,就切换到热备状态。
CN201911380156.6A 2019-12-27 2019-12-27 一种rtmp发布主备快速切换方法 Active CN111083521B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911380156.6A CN111083521B (zh) 2019-12-27 2019-12-27 一种rtmp发布主备快速切换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911380156.6A CN111083521B (zh) 2019-12-27 2019-12-27 一种rtmp发布主备快速切换方法

Publications (2)

Publication Number Publication Date
CN111083521A true CN111083521A (zh) 2020-04-28
CN111083521B CN111083521B (zh) 2022-02-01

Family

ID=70318844

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911380156.6A Active CN111083521B (zh) 2019-12-27 2019-12-27 一种rtmp发布主备快速切换方法

Country Status (1)

Country Link
CN (1) CN111083521B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333447A (zh) * 2020-11-02 2021-02-05 上海网达软件股份有限公司 音视频转码方法、装置、设备及存储介质
CN112565210A (zh) * 2020-11-24 2021-03-26 创盛视联数码科技(北京)有限公司 Cdn节点推荐方法、系统、电子设备及存储介质
CN114979692A (zh) * 2022-05-23 2022-08-30 广州欢城文化传媒有限公司 音视频拉流模式的切换方法、装置、系统和存储介质
CN115426503A (zh) * 2022-08-30 2022-12-02 百果园技术(新加坡)有限公司 一种转码服务切换方法、装置、设备及存储介质

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119187A (zh) * 2007-09-06 2008-02-06 上海可鲁系统软件有限公司 一种主从设备切换控制方法
CN101247213A (zh) * 2007-02-16 2008-08-20 华为技术有限公司 一种主备倒换的方法及系统
CN101631011A (zh) * 2008-07-16 2010-01-20 中国科学院声学研究所 适于进行ip流媒体实时处理及转发设备的热备方法及系统
CN102546250A (zh) * 2011-12-31 2012-07-04 山东中创软件商用中间件股份有限公司 一种基于主备机制的文件发布方法及系统
CN102868560A (zh) * 2012-09-28 2013-01-09 南京恩瑞特实业有限公司 一种服务器热备实现系统及方法
CN103138983A (zh) * 2011-12-01 2013-06-05 苏州达联信息科技有限公司 一种视频分发网络全局服务器的主备切换方法及装置
CN103441870A (zh) * 2013-08-20 2013-12-11 苏州迈科网络安全技术股份有限公司 一种智能实时无缝切换的双机备份方法
CN103685166A (zh) * 2012-09-06 2014-03-26 中兴通讯股份有限公司 起始会话协议终端切换主备服务器的方法及装置
CN104902289A (zh) * 2015-06-29 2015-09-09 秦永红 一种rtmp流媒体直播系统热备份的设计方法及其系统
CN106656593A (zh) * 2016-12-19 2017-05-10 北京华清伟业技术有限公司 流媒体直播录制冗余热备的方法及系统
CN107426756A (zh) * 2017-08-23 2017-12-01 京信通信系统(中国)有限公司 热备份通信系统及其通信接口控制模块
CN107835192A (zh) * 2017-11-29 2018-03-23 上海网达软件股份有限公司 一种检测实时转码系统中hls直播流是否正常的方法及系统
CN109428864A (zh) * 2017-08-30 2019-03-05 武汉斗鱼网络科技有限公司 提高nginx-rtmp拉流服务质量的方法及装置
CN109561320A (zh) * 2019-01-09 2019-04-02 广州视源电子科技股份有限公司 一种服务器切换方法、装置、设备及介质
CN109618174A (zh) * 2018-12-11 2019-04-12 深圳市网心科技有限公司 一种直播数据传输方法、装置、系统以及存储介质
CN110213598A (zh) * 2018-05-31 2019-09-06 腾讯科技(深圳)有限公司 一种视频转码系统、方法及相关产品
US20190327496A1 (en) * 2018-03-09 2019-10-24 Wangsu Science & Technology Co., Ltd. Method and system for providing a live-broadcasting service

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101247213A (zh) * 2007-02-16 2008-08-20 华为技术有限公司 一种主备倒换的方法及系统
CN101119187A (zh) * 2007-09-06 2008-02-06 上海可鲁系统软件有限公司 一种主从设备切换控制方法
CN101631011A (zh) * 2008-07-16 2010-01-20 中国科学院声学研究所 适于进行ip流媒体实时处理及转发设备的热备方法及系统
CN103138983A (zh) * 2011-12-01 2013-06-05 苏州达联信息科技有限公司 一种视频分发网络全局服务器的主备切换方法及装置
CN102546250A (zh) * 2011-12-31 2012-07-04 山东中创软件商用中间件股份有限公司 一种基于主备机制的文件发布方法及系统
CN103685166A (zh) * 2012-09-06 2014-03-26 中兴通讯股份有限公司 起始会话协议终端切换主备服务器的方法及装置
CN102868560A (zh) * 2012-09-28 2013-01-09 南京恩瑞特实业有限公司 一种服务器热备实现系统及方法
CN103441870A (zh) * 2013-08-20 2013-12-11 苏州迈科网络安全技术股份有限公司 一种智能实时无缝切换的双机备份方法
CN104902289A (zh) * 2015-06-29 2015-09-09 秦永红 一种rtmp流媒体直播系统热备份的设计方法及其系统
CN106656593A (zh) * 2016-12-19 2017-05-10 北京华清伟业技术有限公司 流媒体直播录制冗余热备的方法及系统
CN107426756A (zh) * 2017-08-23 2017-12-01 京信通信系统(中国)有限公司 热备份通信系统及其通信接口控制模块
CN109428864A (zh) * 2017-08-30 2019-03-05 武汉斗鱼网络科技有限公司 提高nginx-rtmp拉流服务质量的方法及装置
CN107835192A (zh) * 2017-11-29 2018-03-23 上海网达软件股份有限公司 一种检测实时转码系统中hls直播流是否正常的方法及系统
US20190327496A1 (en) * 2018-03-09 2019-10-24 Wangsu Science & Technology Co., Ltd. Method and system for providing a live-broadcasting service
CN110213598A (zh) * 2018-05-31 2019-09-06 腾讯科技(深圳)有限公司 一种视频转码系统、方法及相关产品
CN109618174A (zh) * 2018-12-11 2019-04-12 深圳市网心科技有限公司 一种直播数据传输方法、装置、系统以及存储介质
CN109561320A (zh) * 2019-01-09 2019-04-02 广州视源电子科技股份有限公司 一种服务器切换方法、装置、设备及介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
孙墀: "网络直播数字三维虚拟演播室系统改造方案", 《广州大学学报(自然科学版)》 *
蒋涛: "一种面向客户端的双机热备机制的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333447A (zh) * 2020-11-02 2021-02-05 上海网达软件股份有限公司 音视频转码方法、装置、设备及存储介质
CN112565210A (zh) * 2020-11-24 2021-03-26 创盛视联数码科技(北京)有限公司 Cdn节点推荐方法、系统、电子设备及存储介质
CN114979692A (zh) * 2022-05-23 2022-08-30 广州欢城文化传媒有限公司 音视频拉流模式的切换方法、装置、系统和存储介质
CN114979692B (zh) * 2022-05-23 2023-09-15 广州欢城文化传媒有限公司 音视频拉流模式的切换方法、装置、系统和存储介质
CN115426503A (zh) * 2022-08-30 2022-12-02 百果园技术(新加坡)有限公司 一种转码服务切换方法、装置、设备及存储介质
CN115426503B (zh) * 2022-08-30 2024-05-17 百果园技术(新加坡)有限公司 一种转码服务切换方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111083521B (zh) 2022-02-01

Similar Documents

Publication Publication Date Title
CN111083521B (zh) 一种rtmp发布主备快速切换方法
CN103237191B (zh) 在视频会议中同步推送音视频的方法
CN104902289A (zh) 一种rtmp流媒体直播系统热备份的设计方法及其系统
EP2451118A1 (en) Method and system for processing the failures of agents at call center
US20220209878A1 (en) Method, system and device for pushing information, and storage medium thereof
CN101448072A (zh) 网络视频监控系统的视频查看方法及系统
CN106534808B (zh) 一种基于虚拟摄像机的视频监控方法及装置
CN107124598B (zh) 一种交通信息播放控制方法和播放控制器
CN112565234B (zh) 基于WebRTC的跨网传输系统及方法
CN111447392B (zh) 数据传输方法、装置、服务器及计算机可读存储介质
CN108616914A (zh) 一种断线重连的方法及装置
CN103095480A (zh) 头端系统主备切换的方法、网管设备和头端系统
CN110933470B (zh) 一种视频数据的共享方法
CN100536566C (zh) 一种保障视频监控录像连续性的方法
JP6394591B2 (ja) 制御装置、制御方法、コンピュータプログラム及び映像伝送システム
CN112911325B (zh) 一种跨直播间连线的恢复方法和装置
CN102611717A (zh) 一种业务数据发送方法、系统、客户端代理及服务器代理
WO2021077736A1 (zh) 一种实现cmaf低延时直播高可用和高并发的方法
CN102572409A (zh) 一种应用于移动视频监控防止扇区切换过程视频中断的方法
CN114143569B (zh) 一种网页录制和直播方法及系统
TW201929551A (zh) 具有備援機制的串流系統及其備援方法
JP4917497B2 (ja) 映像配信装置,配信映像切替え方法,配信映像切替えプログラムおよび配信映像切替えプログラム記録媒体
CN105704422B (zh) 一种视频会议组网系统及其方法
CN100388781C (zh) 会议延时方法
CN110392285B (zh) 媒体流处理方法及装置

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
GR01 Patent grant
GR01 Patent grant