CN114979692A - 音视频拉流模式的切换方法、装置、系统和存储介质 - Google Patents

音视频拉流模式的切换方法、装置、系统和存储介质 Download PDF

Info

Publication number
CN114979692A
CN114979692A CN202210565585.6A CN202210565585A CN114979692A CN 114979692 A CN114979692 A CN 114979692A CN 202210565585 A CN202210565585 A CN 202210565585A CN 114979692 A CN114979692 A CN 114979692A
Authority
CN
China
Prior art keywords
mode
audio
live broadcast
stream
video data
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
CN202210565585.6A
Other languages
English (en)
Other versions
CN114979692B (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.)
Guangzhou Huancheng Culture Media Co ltd
Original Assignee
Guangzhou Huancheng Culture Media 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 Guangzhou Huancheng Culture Media Co ltd filed Critical Guangzhou Huancheng Culture Media Co ltd
Priority to CN202210565585.6A priority Critical patent/CN114979692B/zh
Publication of CN114979692A publication Critical patent/CN114979692A/zh
Application granted granted Critical
Publication of CN114979692B publication Critical patent/CN114979692B/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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44245Monitoring the upstream path of the transmission network, e.g. its availability, bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请提供一种音视频拉流模式的切换方法,应用于云端决策系统,包括:根据获取的直播间麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下直播间传输指标值;根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。上述音视频拉流模式的切换方法能够根据直播间的麦上客户端数量和麦下客户端数量灵活调整麦下客户端的拉流模式,在保障直播间整体实时性良好状态的情况下,提高直播间通信资源的利用率。

Description

音视频拉流模式的切换方法、装置、系统和存储介质
技术领域
本发明涉及音视频技术领域,具体涉及一种音视频拉流模式的切换方法、装置、系统和存储介质。
背景技术
随着在线教育、电商直播、泛娱乐社交直播的普及,实时音视频技术的应用需求也越来越多元化。其中,互动要求较高的直播场景,对于直播互动过程中实时性、时延的要求也越来越高。而直播互动过程中实时性以及低时延的实现,主要取决于音视频拉流模式。
目前常见的音视频拉流模式有两种,一种是直接采用RTC(Real TimeCommunication,实时音视频通信)模式,将麦上客户端采集的数据直接传输至麦下客户端;另外一种是将麦上客户端采集的数据混合后,通过CDN(Content Delivery Network,内容分发网络)节点传输至麦下客户端。一般在直播间开启以及用户进入直播间时,就选定该直播间对应的音视频拉流模式。随着直播间并发数量的不断变化,上述音视频拉流模式固定,在直播间并发数量波动较大时,容易出现不必要通信资源占用导致通信资源浪费、或通信资源不足导致直播卡顿的两种极端情况。
发明内容
基于此,本发明提供一种音视频拉流模式的切换方法、装置、系统和存储介质,可根据直播间实时的麦上客户端数量和麦下客户端数量调整音视频的拉流模式,使直播间通信资源充分利用、并且保障直播整体实时性较高、减少卡顿。
第一方面,本发明提供一种音视频拉流模式的切换方法,应用于云端决策系统,包括:
获取直播间的麦上客户端数量和麦下客户端数量;
根据所述麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下所述直播间的传输指标值;
根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
第二方面,本发明提供一种音视频拉流模式的切换方法,包括:
云端决策系统获取直播间的麦上客户端数量和麦下客户端数量;
云端决策系统根据所述麦上客户端数量和麦下客户端的数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值;
云端决策系统根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令;
流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
第三方面,本发明提供给一种音视频拉流模式的切换装置,包括:
并发数量获取模块,用于获取直播间的麦上客户端数量和麦下客户端数量;
拉流模式参数计算模块,用于根据所述麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值;
拉流模式切换模块,用于根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
第四方面,本发明提供一种音视频拉流模式的切换系统,包括:
麦上客户端、麦下客户端、云端决策系统、流媒体服务器和分发服务器,所述流媒体服务器分别于所述麦上客户端、所述麦下客户端、所述云端决策系统和所述分发服务器通信连接,所述分发服务器与所述麦下客户端通信连接;
所述麦上客户端,用于采集音视频数据,并将所述音视频数据传输至流媒体服务器;
所述云端决策系统,用于执行第一方面的音视频拉流模式的切换方法;
所述流媒体服务器,用于接收并存储麦上客户端传输的音视频数据,接收云端决策系统发送的拉流模式切换指令,向麦下客户端传输存储的音视频数据,以及向流媒体分发服务器转发混流后的音视频数据;
所述分发服务器,用于接收流媒体服务器转发的混流后的音视频数据,向距离麦下客户端最近的CDN节点推送混流后的音视频数据。
第五方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面音视频拉流模式的切换方法的步骤。
采用上述技术方案的有益效果为:本申请的音视频拉流模式的切换方法,根据直播间实时的麦上客户端数量和麦下客户端数量,灵活调整直播间的音视频拉流模式,使直播间的通信资源得到充分的利用,并且避免直播卡顿的现象。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为在混合模式下音视频拉流模式的切换系统示意图;
图2为在单拉流模式下音视频拉流模式的切换系统示意图;
图3为应用于云端决策系统的音视频拉流模式的切换方法示意图;
图4为混合模式下流媒体分发服务器将混流的音视频数据传输到麦下客户端的系统示意图;
图5为音视频拉流模式的切换装置的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了更详细说明本发明,下面结合附图对本发明提供的一种音视频拉流模式的切换方法、系统、存储介质和设备,进行具体地描述。
随着直播的发展,目前的直播呈现两个特点,分别是在线观看直播的观众越来越多,以及直播的实时互动性越来越强。直播的实时互动主要分为以下几个情景:直播间主播与其他主播连线、直播间主播与观众连麦、直播购物的购买链接开放、以及网课直播与学生连麦互动。不同于过往只有主播一人进行直播、观众仅仅在线观看的情景,上述互动型直播对观众客户端的实时性要求高,为了达到良好的观看效果,需要缩短在观众客户端的时延。
观众客户端的直播观看涉及到直播间的音视频信息的推流、拉流操作。直播间的内容一般是以音视频信息进行传递的,而音视频信息的推流是指麦上客户端采集的信息传输到流媒体服务器的过程,一般包括直播间主播客户端音视频信息的上传、连麦主播客户端音视频信息的上传、以及连麦观众客户端音视频信息的上传;音视频信息的拉流是指流媒体服务器将采集并存储的音视频信息发送至麦上客户端和麦下客户端的过程,主要包括直播间主播接收连麦主播或连麦观众的音视频信息、连麦主播或连麦观众接收直播间主播的音视频信息、和直播间非连麦观众客户端的音视频信息接收。
一般来说,为了保证直播过程中的流畅性,直播间的音视频信息推流过程主要采集RTC(Real Time Communication,实时通信)流,RTC流的麦上用户客户端的推流和拉流过程都具有较强的实时性,保证在麦上用户客户端的音视频信息能够及时上传到流媒体服务器,也能够及时地接收到其他麦上用户客户端的音视频信息,并对接收地音视频信息做出下一步响应。
相对于推流过程主要采用RTC流,拉流过程主要有两种类型,分别是RTC流和CDN流,RTC流此处不再赘述。CDN(Content Delivery Network,内容分发网络)流,CDN流是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的CDN节点,通过分发服务器的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。在CDN流下传输直播间的音视频数据时,需要先将流媒体服务器接收到的音视频数据进行混流处理,混流处理可以在流媒体服务器上进行,也可以在直播间主播客户端上进行。混流处理后的音视频数据通过流媒体服务器转发至分发服务器,再由分发服务器传送至部署在各地的CDN节点,能够及时将音视频数据传输给大量的观众客户端。
现有的直播间音视频拉流模式中,RTC流对应拉流模式中的单拉流模式,CDN流对应拉流模式中的混合模式,一般在直播间开启时固定选取单拉流模式或混合模式,该拉流模式设置方法对于不同的场景不具有普适性,例如麦下客户端可能不需要非常高的实时性,只要能够看到和听到直播间的音视频即可,一般采用混合模式进行拉流;而麦上客户端,例如连麦主播或连麦观众,则需要较高的实时性,需要与直播间主播的音视频达到同步的效果,一般采用单拉流模式进行拉流。
参见附图1及附图2,附图1及附图2分别示出了本发明实施例提供的在单拉流模式和混合拉流模式下音视频拉流的切换方法的应用场景的示意图。该应用场景包括本发明实施例提供的音视频拉流模式的切换系统,所述音视频拉流模式的切换系统包括麦上客户端、麦下客户端、云端决策系统、流媒体服务器和分发服务器,其中分发服务器连接部署在各地的CDN节点。
具体的,麦上客户端用于采集直播的音视频数据,并将采集的音视频数据传输至流媒体服务器。麦上客户端一般为直播间的直播间主播的客户端、连麦主播的客户端或连麦观众的客户端任意一个或多个组合。同时,麦上客户端还可以从流媒体服务器上接收流媒体服务器存储的直播间音视频数据。所述麦上客户端具备音视频数据采集的功能,包括但不限于智能手机和计算机设备,其中计算机设备可以是台式计算机、便携式计算机、膝上型计算机、平板电脑等设备中的至少一种。
流媒体服务器用于接收麦上客户端上传的音视频数据,并将存储的直播间音视频数据发送至麦上客户端;还用于接收云端决策系统发送的拉流传输切换指令,根据拉流传输切换指令按照不同的拉流模式向麦下客户端发送直播间音视频数据。另外,在流媒体服务器接收到RTC系统切换为CDN系统的指令时,流媒体服务器将接收的所有麦上客户端的音视频数据进行混流处理,并将混流后的音视频数据转发至分发服务器,用于向麦下客户端传送混合后的音视频数据。所述流媒体服务器具备存储和数据处理的功能,包括但不限于计算机设备和云服务器,其中计算机可以是台式计算机、便携式计算机、光子计算机、量子计算机、工业控制计算机和超级计算机中的至少一种。
云端决策系统用于根据麦上客户端数量和麦下客户端数量分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值,并根据不同模式下的直播间传输指标值发出拉流传输切换指令。其中,拉流传输切换指令包括CDN系统切换为RTC系统的指令和RTC系统切换为CDN系统的指令。所述云端决策系统具有数据处理的功能,包括但不限于计算机设备、云服务器和上述设备中的数据处理模块,其中,计算机可以是台式计算机、便携式计算机、光子计算机、量子计算机、工业控制计算机和超级计算机中的至少一种。
分发服务器,用于接收流媒体服务器转发的混流的音视频数据,向距离麦下客户端最近的CDN节点推送混流的音视频数据。
麦下客户端,用于接收流媒体服务器转发的直播间音视频数据,或接收CDN节点推送混流的音视频数据。麦下客户端为直播间不连麦的观众客户端。所述麦下客户端具备音视频数据播放功能,包括但不限于智能手机和计算机设备,其中计算机设备可以是台式计算机、便携式计算机、膝上型计算机、平板电脑等设备中的至少一种。
其中,麦上客户端A和麦上客户端B向流媒体服务器上传音视频数据的过程即为推流,而麦上客户端A、麦上客户端B、麦下客户端C、麦下客户端D和麦下客户端E接收流媒体服务器上的音视频数据的过程即为拉流。
为了保证麦上客户端互动的流畅性,一般设置麦上客户端与流媒体服务器之间的音视频数据传输采用实时性较高的单拉流模式,即麦上客户端A通过RTC流向流媒体服务器传输采集的音视频数据,并且同样通过RTC流从流媒体服务器中接收麦上客户端B上传的音视频数据,达到与麦上客户端B实时互动的效果;同理,麦上客户端B通过RTC流向流媒体服务器传输采集的音视频数据,并通过RTC流从流媒体服务器中接收麦上客户端A上传的音视频数据,达到与麦上客户端A实时互动的效果。在本发明实施例中,麦上客户端的推流模式或拉流模式固定采用RTC流,在后续的拉流模式切换过程中不进行切换。
本发明实施例的音视频拉流模式的切换方法,主要针对麦下客户端的拉流模式,使直播间并发数量波动较大时,在保障直播流畅、并且具有良好实时性的情况下充分利用直播间通信资源。
基于此,本发明实施例中提供了一种音视频拉流模式的切换方法。如附图3所示,附图3示出了本发明实施例提供的一种音视频拉流模式的切换方法的示意图,该方法以图1中的云端决策系统为执行主体,包括以下步骤:
步骤S101:获取直播间的麦上客户端数量和麦下客户端数量。
其中,麦上客户端数量是指在直播间中进行连麦的客户端数量,包括直播间主播的客户端、连麦主播的客户端、连麦观众的客户端的任意一种或多种。麦下客户端数量是指在直播间中不连麦的客户端数量,为直播间的不连麦观众的客户端。一般情况下,麦下客户端数量大于麦上客户端的数量。
另外,在步骤S101的执行过程中,获取麦上客户端数量的同时,云端决策系统还可获取麦上客户端的身份标签信息,根据身份标签信息确定直播历史观众人数平均值;其中,麦上客户端的身份标签信息可以为直播大V、流量明星、游戏主播、体育赛事、游戏赛事或社会热点事件等;
若得到的历史观众人数平均值大于设定阈值,向流媒体服务器切换为混流模式切换指令,流媒体服务器采用混流模式向麦下客户端传输音视频数据;具体的,可根据直播间卡顿的历史数据或根据直播间的具体需求设置设定阈值的大小,例如设定阈值可为10000。
通过上述设置,在预测直播间的观众人数可能大于设定阈值的情况下,将直播间设置为混流模式向麦下客户端传输音视频数据,在成千上万的麦下客户端瞬间涌入直播间的情况下,能够应对突发访问流量,借助负载均衡系统将麦上客户端采集的音视频数据推送至数千个CDN节点,当麦下客户端发起请求时,就可以就近取得资源,减少网络抖动风险,增加直播链路的稳定性和流畅性。
步骤S102:根据麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值。
其中,单拉流模式采用RTC流传输直播间的音视频数据,混流模式采用CDN流传输直播间的音视频数据。针对麦下客户端在单拉流模式和混合模式下直播间的传输指标值的计算,具有多种实施方式,具体如下:
第一种实施方式,在单拉流模式下直播间的传输指标值的具体表达式为:
Figure BDA0003658075790000091
其中,costRTC为单拉流模式下直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratecode为音视频数据的码率,rateRTC为RTC流量权重,RTC流量权重为设定值,一般取3。
在混合模式下直播间的传输指标值的具体表达式为:
Figure BDA0003658075790000092
Figure BDA0003658075790000093
其中,costmix为混合模式下直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratecode为音视频数据的码率,rateRTC为RTC流量权重,rateCDN为CDN流量权重,CDN流量权重为设定值,一般取1。
第二种实施方式,本实施例中步骤S102麦下客户端在单拉流模式和混合模式下直播间的传输指标值在计算过程中,还可增加用户区域分散度的参数,用户区域分散度为麦下客户端的地理位置分散度,其取值范围为[0,1],用户区域分散度越高则麦下客户端的地理位置分散程度越高。
融合用户区域分散度的单拉流模式下,直播间的传输指标值的具体表达式为:
Figure BDA0003658075790000094
其中,costRTC_DIS为融合用户区域分散度单拉流模式下直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratecode为音视频数据的码率,rateRTC为RTC流量权重,RTC流量权重为设定值,一般取3,rateDIS为用户区域分散度,取值范围为[0,1]。
融合用户区域分散度的混合模式下,直播间的传输指标值的具体表达式为:
Figure BDA0003658075790000101
rateDIS,其中,costmix_DIS为融合用户区域分散度混合模式下直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratecode为音视频数据的码率,rateRTC为RTC流量权重,rateCDN为CDN流量权重,CDN流量权重为设定值,一般取1,rateDIS为用户区域分散度,取值范围为[0,1]。
步骤S103:根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
具体的,若单拉流模式下直播间的传输指标值大于混合模式下直播间的传输指标值,也就是costRTC>costmix或者costRTC_DIS>costmix_DIS,向流媒体服务器发送单拉流模式切换指令,以使流媒体服务器从混流模式切换成单拉流模式,并采用单拉流模式向麦下客户端传输音视频数据。
若单拉流模式下直播间的传输指标小于混合模式下直播间的传输指标值,也就是costRTC<costmix或者costRTC_DIS<costmix_DIS,向流媒体服务器发送切换为混流模式切换指令,以使流媒体服务器从单拉流模式切换成混流模式,并采用混流模式向麦下客户端传输音视频数据。其中,在流媒体服务器切换至混流模式后,流媒体服务器将所有麦上客户端传输的音视频数据进行混合处理,形成混流的音视频数据;流媒体服务器再将混流的音视频数据转发至分发服务器,由于各个麦下客户端的实际地理位置并不相同,为了达到各个麦下客户端在几乎一致的时间观看到直播间的音视频数据的效果,令分发服务器将混流的音视频数据传送至距离麦下客户端最近的多个CDN节点,从而各个麦下客户端可以在几乎一致的时间从距离最近的CND节点接收到直播间的音视频数据,具体可参见附图4。
针对上述实施例,为了更好地理解,以下给出相关具体实施例,例如,在该直播间的麦下客户端数量超过1000时切换至混流模式;在该直播间的麦上客户端数量大于或等于4、并且麦下客户端数量超过500时切换至混流模式;在该直播间的麦上客户端数量大于或等于4、麦下客户端数量超过300、以及用户区域分散度大于0.5时切换至混流模式。
需要说明的是,在麦下客户端拉流模式的切换过程中,为了保持麦下客户端观看效果流畅,还包括以下步骤:
步骤S201:麦下客户端同时获取切换前拉流模式和切换后拉流模式的音视频数据,此时,令切换后拉流模式的音视频数据处于静音状态;
步骤S202:当切换后拉流模式的音视频数据与切换前拉流模式的音视频数据达到相同的时间戳,将切换前拉流模式的音视频数据调整为静音状态,并且停止获取切换前拉流模式的音视频数据;
步骤S203:解除切换后拉流模式的音视频数据的静音状态,此时,麦下客户端播放的音视频信息从切换前拉流模式的音视频数据切换至切换后拉流模式的音视频数据。
例如,流媒体服务器接收到切换为混流模式的指令后,为了保持麦下客户端观看直播的流畅性,并不会在麦下客户端接收到拉流模式切换指令后立刻更换为混流模式的音视频数据,而是延长原来单拉流模式的音视频数据,此处的延长可以为单拉流模式的音视频数据时间的延长,与此同时,麦下客户端也获取流媒体服务器混合后的混流模式的音视频数据,为了避免混流模式的音视频数据对直播观看的影响,此时混流模式的音视频数据处于静音状态,需要注意的是,此时麦下客户端既有切换前单拉流模式的音视频数据,也有切换后混流模式的音视频数据,播放的仍然是切换前单拉流模式的音视频数据;当单拉流模式的音视频数据与混流模式的音视频数据达到相同的时间戳时,例如都达到直播间开启的10min时,将原来单拉流模式的音视频数据调整为静音状态,并且停止获取单拉流模式的音视频数据;与此同时,解除混流模式的音视频数据的静音状态,此时麦下客户端播放的音视频数据就从单拉流模式的音视频数据切换到混流模式的音视频数据。当流媒体服务器接收到切换为单拉流模式的指令时,流程原理相同,此处不再赘述。
本实施例根据采集的直播间麦上客户端和麦下客户端的数量,实时灵活调节直播间麦下客户端的拉流模式,在直播间并发数量波动较大时,直播间的音视频播放整体保持高实时性,不发生卡帧的情况下,充分利用直播间的通信资源,避免出现不必要通信资源占用,导致通信资源浪费,或者通信资源不足导致直播卡帧的极端情况。
进一步的,本发明实施例还提供一种音视频拉流的切换系统中各个模块的实时方法,该方法以图1中的云决策系统和流媒体服务器未执行主体,具体方法描述如下:
云端决策系统获取直播间的麦上客户端数量和麦下客户端数量;
云端决策系统根据所述麦上客户端数量和麦下客户端的数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值;
云端决策系统根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令;
流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
其中,云端决策系统、流媒体服务器、分发服务器以及麦下客户端的具体实施步骤可以参见上文中的限定,此处不再赘述。
应该理解的是,虽然附图3的流程图中各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以按其他的顺序执行。而且附图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子阶段或者阶段的至少一部分轮流或者交替地执行。
上述本发明公开的实施例中详细描述了音视频拉流模式的切换方法,对于本发明公开的上述方法可以采用多种形式的设备实现,因此本发明还公开了对应上述方法的音视频拉流模式的切换装置,下面给出具体的实施例进行详细说明。
如附图5所示,本发明实施例还提供音视频拉流模式的切换装置,包括:
并发数量获取模块301,用于获取直播间的麦上客户端数量和麦下客户端数量。
拉流模式参数计算模块302,用于根据所述麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值。
拉流模式切换模块303,用于根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
关于音视频拉流模式的切换装置的具体限定可以参见上文中对于方法的限定,在此不再赘述。上述装置中的各个模块可全部或者部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或者独立于终端设备的处理器中,也可以以软件形式存储与终端设备的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面音视频拉流模式的切换方法的步骤。
所述计算机可读存储介质可以是诸如闪存、EEPROM(电可擦除可编只读程存储器)、EPROM(可擦除可编只读程存储器)、硬盘或者ROM之类的电子存储器。可选的,计算机可读存储介质包括非瞬时性计算机可读介质(non-transitory computer-readable storagemedium)。计算机可读存储介质具有执行上述方法中的任何方法步骤的程序代码的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入这一个或者多个计算机程序产品中,所述程序代码可以以适当形式进行压缩。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种音视频拉流模式的切换方法,其特征在于,应用于云端决策系统,包括:
获取直播间的麦上客户端数量和麦下客户端数量;
根据所述麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值;
根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
2.如权利要求1所述的方法,其特征在于,所述根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据,包括:
若单拉流模式下直播间的传输指标值大于混合模式下直播间的传输指标值,向流媒体服务器发送单拉流模式切换指令,以使所述流媒体服务器从混流模式切换成单拉流模式,并采用所述单拉流模式向麦下客户端传送音视频数据;
若单拉流模式下直播间的传输指标小于混合模式下直播间的传输指标值,向流媒体服务器发送切换为混流模式切换指令,以使所述流媒体服务器从所述单拉流模式切换成混流模式,并采用所述混流模式向麦下客户端传送音视频数据。
3.如权利要求1所述的方法,其特征在于,所述单拉流模式下的直播间的传输指标值的具体表达式为:
Figure FDA0003658075780000011
其中,costRTC为单拉流模式下的直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratrcode为音视频数据的码率,rateRTC为RTC流量权重;
所述混合模式下的直播间的传输指标值的具体表达式为:
Figure FDA0003658075780000021
其中,costmix为混合模式下的直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratrcode为音视频数据的码率,rateRTC为RTC流量权重,rateCDN为CDN流量权重。
4.如权利要求1所述的方法,其特征在于,所述单拉流模式下的直播间的传输指标值的具体表达式为:
Figure FDA0003658075780000022
其中,costRTC_DIS为融合用户区域分散度单拉流模式下的直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratrcode为音视频数据的码率,rateRTC为RTC流量权重,rateDIS为用户区域分散度;
所述混合模式下的直播间的传输指标值的具体表达式为:
Figure FDA0003658075780000023
其中,costmix_DIS为融合用户区域分散度混合模式下的直播间的传输指标值,nanchor为麦上客户端的数量,naudience为麦下客户端的数量,ratrcode为音视频数据的码率,rateRTC为RTC流量权重,rateCDN为CDN流量权重,rateDIS为用户区域分散度。
5.如权利要求1所述的方法,其特征在于,还包括:
获取的麦上客户端的身份标签信息,根据所述身份标签信息确定直播历史观众人数平均值;
若所述历史观众人数平均值大于设定阈值,向流媒体服务器发送切换为混流模式切换的指令,以使所述流媒体服务器采用切换后的混流模式向麦下客户端传输音视频数据。
6.如权利要求1所述的方法,其特征在于,所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据,包括:
所述麦下客户端同时获取切换前拉流模式和切换后拉流模式的音视频数据,其中,切换后拉流模式的音视频数据处于静音状态;
当切换后拉流模式的音视频数据与切换前拉流模式的音视频数据达到相同的时间戳,将切换前拉流模式的音视频数据调整为静音状态并停止获取切换前拉流模式的音视频数据;
解除切换后拉流模式的音视频数据的静音状态,所述麦下客户端播放的音视频信息从切换前拉流模式的音视频数据切换至切换后拉流模式的音视频数据。
7.一种音视频拉流模式的切换方法,其特征在于,包括:
云端决策系统获取直播间的麦上客户端数量和麦下客户端数量;
云端决策系统根据所述麦上客户端数量和麦下客户端的数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值;
云端决策系统根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令;
流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
8.一种音视频拉流模式的切换装置,其特征在于,包括:
并发数量获取模块,用于获取直播间的麦上客户端数量和麦下客户端数量;
拉流模式参数计算模块,用于根据所述麦上客户端数量和麦下客户端数量,分别计算麦下客户端在单拉流模式和混合模式下直播间的传输指标值;
拉流模式切换模块,用于根据单拉流模式下直播间的传输指标值和混合模式下直播间的传输指标值,向流媒体服务器发送拉流模式切换指令,以使所述流媒体服务器采用切换后的拉流模式向麦下客户端传送音视频数据。
9.一种音视频拉流模式的切换系统,其特征在于,包括:
麦上客户端、麦下客户端、云端决策系统、流媒体服务器和分发服务器,所述流媒体服务器分别与所述麦上客户端、所述麦下客户端、所述云端决策系统和所述分发服务器通信连接,所述分发服务器与所述麦下客户端通信连接;
所述麦上客户端,用于采集音视频数据,并将所述音视频数据传输至流媒体服务器;
所述麦下客户端,用于从流媒体服务器或分发服务器接收音视频数据;
所述云端决策系统,用于执行权利要求1-6中任一项音视频拉流模式的切换方法;
所述流媒体服务器,用于接收并存储麦上客户端传输的音视频数据,接收云端决策系统发送的拉流模式切换指令,向麦下客户端传输存储的音视频数据,以及向分发服务器转发混流后的音视频数据;
所述分发服务器,用于接收流媒体服务器转发的混流后的音视频数据,向距离麦下客户端最近的CDN节点推送混流后的音视频数据。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6中任一项音视频拉流模式的切换方法的步骤。
CN202210565585.6A 2022-05-23 2022-05-23 音视频拉流模式的切换方法、装置、系统和存储介质 Active CN114979692B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210565585.6A CN114979692B (zh) 2022-05-23 2022-05-23 音视频拉流模式的切换方法、装置、系统和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210565585.6A CN114979692B (zh) 2022-05-23 2022-05-23 音视频拉流模式的切换方法、装置、系统和存储介质

Publications (2)

Publication Number Publication Date
CN114979692A true CN114979692A (zh) 2022-08-30
CN114979692B CN114979692B (zh) 2023-09-15

Family

ID=82985450

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210565585.6A Active CN114979692B (zh) 2022-05-23 2022-05-23 音视频拉流模式的切换方法、装置、系统和存储介质

Country Status (1)

Country Link
CN (1) CN114979692B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105635755A (zh) * 2015-12-30 2016-06-01 合一网络技术(北京)有限公司 直播流传输方法和装置
CN106453289A (zh) * 2016-09-29 2017-02-22 广州市千钧网络科技有限公司 一种视频直播的数据传输方法及传输装置
CN107396206A (zh) * 2017-09-05 2017-11-24 广州华多网络科技有限公司 一种直播数据的推流方法及系统
WO2019075581A1 (en) * 2017-10-19 2019-04-25 Lazar Entertainment Inc. SYSTEMS AND METHODS FOR LIVE MULTIMEDIA STREAM BROADCAST
CN111083521A (zh) * 2019-12-27 2020-04-28 杭州当虹科技股份有限公司 一种rtmp发布主备快速切换方法
US20200137461A1 (en) * 2018-10-30 2020-04-30 Shenzhen Zhongjing Electronic Co, Ltd. Audio-video resources sharing device and sharing method thereof
CN111385592A (zh) * 2018-12-29 2020-07-07 广州市百果园信息技术有限公司 跨房间直播连线方法、装置、存储介质和服务器
CN112019927A (zh) * 2020-09-23 2020-12-01 Oppo广东移动通信有限公司 视频直播方法、连麦设备、rtc媒体服务器及主播设备
CN113301359A (zh) * 2020-07-30 2021-08-24 阿里巴巴集团控股有限公司 音视频处理方法、装置及电子设备
US20220107994A1 (en) * 2020-04-10 2022-04-07 Avila Technology Llc Secure web rtc real time communications service for audio and video streaming communications

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105635755A (zh) * 2015-12-30 2016-06-01 合一网络技术(北京)有限公司 直播流传输方法和装置
CN106453289A (zh) * 2016-09-29 2017-02-22 广州市千钧网络科技有限公司 一种视频直播的数据传输方法及传输装置
CN107396206A (zh) * 2017-09-05 2017-11-24 广州华多网络科技有限公司 一种直播数据的推流方法及系统
WO2019075581A1 (en) * 2017-10-19 2019-04-25 Lazar Entertainment Inc. SYSTEMS AND METHODS FOR LIVE MULTIMEDIA STREAM BROADCAST
US20200137461A1 (en) * 2018-10-30 2020-04-30 Shenzhen Zhongjing Electronic Co, Ltd. Audio-video resources sharing device and sharing method thereof
CN111385592A (zh) * 2018-12-29 2020-07-07 广州市百果园信息技术有限公司 跨房间直播连线方法、装置、存储介质和服务器
CN111083521A (zh) * 2019-12-27 2020-04-28 杭州当虹科技股份有限公司 一种rtmp发布主备快速切换方法
US20220107994A1 (en) * 2020-04-10 2022-04-07 Avila Technology Llc Secure web rtc real time communications service for audio and video streaming communications
CN113301359A (zh) * 2020-07-30 2021-08-24 阿里巴巴集团控股有限公司 音视频处理方法、装置及电子设备
CN112019927A (zh) * 2020-09-23 2020-12-01 Oppo广东移动通信有限公司 视频直播方法、连麦设备、rtc媒体服务器及主播设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄海平: "融媒体直播系统轻量化技术优化改造", 现代电视技术 *

Also Published As

Publication number Publication date
CN114979692B (zh) 2023-09-15

Similar Documents

Publication Publication Date Title
US11838563B2 (en) Switching between transmitting a preauthored video frame and a composited video frame
WO2020259448A1 (zh) 数据的处理方法及装置、计算机可读存储介质和电子装置
US10277865B2 (en) Data transmission method and system, and related devices
KR101178853B1 (ko) 채널 변경 응답 시간 향상 방법 및 채널 변경 응답 시간 향상 장치
CN109640029B (zh) 一种视频流上墙展示的方法和装置
US9948889B2 (en) Priority of uplink streams in video switching
US11863841B2 (en) Video playing control method and system
CN102571979A (zh) 多屏互动设备及其绑定方法
CN108881931B (zh) 一种数据缓冲方法及网络设备
KR20160086854A (ko) 네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치
US8230468B2 (en) Dynamically creating trick files to hide latency in streaming networks
CN110856011A (zh) 一种分组进行直播互动的方法、电子设备及存储介质
CN113766251A (zh) 直播连麦的处理方法、系统、服务器及存储介质
CN114501052A (zh) 直播数据处理方法、云平台、计算机设备和存储介质
CN111107387B (zh) 视频转码方法、装置及计算机存储介质
US10931984B2 (en) Consolidating content streams to conserve bandwidth
CN114979692A (zh) 音视频拉流模式的切换方法、装置、系统和存储介质
CN112383795B (zh) 一种视频同步播放系统
CN113766267A (zh) 基于无人机的多路视频直播方法、系统、设备及存储介质
KR101292422B1 (ko) Ip 방송 시 서버 접속형 방송 단말기의 접속 지연 및 데이터 손실을 극복하기 위한 ip 방송 시스템, 이를 이용한 ip 방송 방법
CN115499417A (zh) 一种数据分发方法、服务端和电子设备
US20190036838A1 (en) Delivery of Multimedia Components According to User Activity
US20180206003A1 (en) Distributed architecture for mobile streaming content delivery
CN111556274B (zh) 一种基于视联网的数据传输方法、装置及存储介质
CN113612728B (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