直播间连麦视频混流方法、存储介质、电子设备及系统技术方案

技术编号:23898939 阅读:40 留言:0更新日期:2020-04-22 09:54
本发明专利技术公开了一种直播间连麦视频混流方法、存储介质、电子设备及系统,涉及互联网移动端应用开发领域,该方法包括异步的混流步骤和推流步骤。混流步骤包括:连麦发起客户端和被连麦客户端从服务器获取连麦参数;连麦发起客户端和被连麦客户端对连麦参数进行参数校验,若连麦参数无误,则均向服务器发送混流数据;服务器接收连麦发起客户端和连麦接收客户端的混流数据后,生成合成数据流以及混流视频地址,并向混流视频地址发送合成数据流。推流步骤包括:观众客户端获取推流参数;观众客户端生成播放窗口,并向服务器请求混流视频地址;观众客户端在获取混流视频地址后,从混流视频地址获取合成数据流,并在连麦窗口播放合成数据流。

Mixed streaming method, storage medium, electronic equipment and system of live broadcast room

【技术实现步骤摘要】
直播间连麦视频混流方法、存储介质、电子设备及系统
本专利技术涉及互联网移动端应用开发领域,具体涉及一种直播间连麦视频混流方法、存储介质、电子设备及系统。
技术介绍
随着手机移动端的快速发展,在直播中很多地方都需要使用连麦技术。所谓的连麦是主播和主播/观众之间进行语音通话或者视频通话,所有的用户可以看到主播和主播/观众的视频通话或者语音通话,这样的技术叫做连麦技术。主播与主播/观众语音,所有的用户可以看到主播的语音这样的技术叫做语音连麦,主播和主播/观众进行视频,所有的用户能看到主播和主播/观众的视频,这样的技术叫做视频连麦,在连麦的过程中需要客户端和服务端,需要客户端和播放器模块多方面的协作,如果三者不能很好的配合就会出现连麦过程建立缓慢,用户体验差的情况。连麦技术中比较核心的技术就是音视频混流,混流的过程包括解码,混流,编码,和推流这四个步骤。混流这个环节包括做抖动缓冲,目的是把多路流进行画面对齐和音画同步,同时通过缓冲对抗网络抖动,以便混合成一路流以后能够达到良好的效果。混流本身是一个相对比较耗费计算资源的运算,也是一个比较耗费时间的环节。说它耗费计算资源是因为这个过程涉及到多路流的实时转码,这是比较耗费CPU的事情。说它耗费时间,是因为这个环节涉及到抖动缓冲,会造成一定的延迟。实时转码本身耗费的时间一般会低于一帧的时间,相对不算显著;但是根据网络情况的不同,抖动缓冲会消耗大概80毫秒到1秒的时间。在连麦互动直播中,抖动缓冲造成的延迟对观众的体验十分关键。然而,在连麦直播混流之前,从主播发起连麦到主播建立连麦用户就需要等待比较久的时间,相对于抖动延迟,这种等待是更加影响用户体验的。因此,为了解决上述问题,亟须了一种优化的连麦视频流建立的方案,在保证连麦的建立的同时,能够更快更可靠。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种直播间连麦视频混流方法、存储介质、电子设备及系统,能够更快更可靠保证连麦的建立供观众观看,提升用户的观看体验。为达到以上目的,第一方面,本专利技术实施例提供一种直播间连麦视频混流方法,其包括异步的混流步骤和推流步骤:所述混流步骤包括:连麦发起客户端和被连麦客户端从服务器获取连麦参数,所述连麦参数包括:当前直播间ID、连麦发起方ID、被连麦方ID;连麦发起客户端和被连麦客户端对连麦参数进行参数校验,若所述连麦参数无误,则均向服务器发送混流数据;所述服务器接收连麦发起客户端和连麦接收客户端的混流数据后,生成合成数据流以及混流视频地址,并向混流视频地址发送合成数据流;所述推流步骤包括:观众客户端获取推流参数,所述推流参数包括:连麦直播间ID、连麦发起方ID、连麦窗口参数;观众客户端生成播放窗口,并向服务器请求混流视频地址;观众客户端在获取混流视频地址后,从混流视频地址获取合成数据流,并在连麦窗口播放合成数据流。作为一个可选的实施方案,还包括连麦发起步骤:连麦发起客户端发起连麦请求;服务器接收连麦请求并连麦匹配;在完成连麦发起步骤后,执行所述混流步骤,在所述混流步骤完成前,执行所述推流步骤。作为一个可选的实施方案,,在完成连麦发起步骤后进行同时执行所述混流步骤和所述推流步骤。作为一个可选的实施方案,所述客户端对连麦参数进行参数校验具体包括以下步骤:校验连麦发起方ID和被连麦方ID是否相同,若相等则报错,并终止连麦;判断连麦参数是否存在为空值,若是则报错并终止连麦。作为一个可选的实施方案,所述向服务器发送混流数据具体包括以下步骤:客户端获取主动发起连麦的直播间的ID,被动接收连麦的直播间ID、发起连麦的直播间的客户端的类型、被动接收连麦的直播间的类型;客户端将主动发起连麦的直播间的ID,被动接收连麦的直播间ID、发起连麦的直播间的客户端的类型、被动接收连麦的直播间的类型组成数组后,发送至服务器,服务器根据所述数组中的数据,对接受到的混流数据合成。作为一个可选的实施方案,所述客户端、服务器以及观众客户端之间通过socket进行通信,并在php上实现向用户播放连麦视频。作为一个可选的实施方案,所述连麦窗口参数包括:窗口坐标,窗口高度、窗口宽度。第二方面,本专利技术实施例提供一种直播间连麦视频混流系统,其包括相互独立的混流模块和推流模块:所述混流模块用于:从服务器获取连麦参数,所述连麦参数包括:当前直播间ID、连麦发起方ID、被连麦方ID;对连麦参数进行参数校验,若所述连麦参数无误,则均向服务器发送混流数据;接收连麦发起客户端和连麦接收客户端的混流数据后,生成合成数据流以及混流视频地址,并向混流视频地址发送合成数据流;所述推流模块用于:获取推流参数,所述推流参数包括:连麦直播间ID、连麦发起方ID、连麦窗口参数;生成播放窗口,并向服务器请求混流视频地址;在获取混流视频地址后,从混流视频地址获取合成数据流,并在连麦窗口播放合成数据流。基于第二方面,作为一个可选的实施方式,所述系统还包括:连麦发起模块,其用于连麦发起客户端发起连麦请求;匹配模块,其用于接收连麦请求并进行连麦匹配;执行控制模块,其用于控制所述混流模块和推流模块,使混流模块未执行完之前开始执行推流模块。基于第二方面,作为优选的实施方式,同时执行混流模块和推流模块。第三方面,本专利技术实施例还提供一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面实施例中的方法。第四方面,本专利技术实施例还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面实施例中的方法。与现有技术相比,本专利技术的优点在于:(1)本专利技术一种直播间连麦视频混流方法、存储介质、电子设备及系统将本应该按照次序进行的混流步骤和推流步骤独立化,并异步进行,使得从主播开始连麦到观众看到直播视频或者听到直播语音能够更加迅速。其中,混流步骤中生成混流视频地址,而推流步骤从混流视频地址中获取混流步骤中生成的合成数据流,保证了两个步骤是相互独立,且能够异步进行的,即在两个步骤独立运行时候,不会相互影响,而在在运行完成后,能够相互关联保证连麦的稳定、迅速的运行。(2)本专利技术一种直播间连麦视频混流方法、存储介质、电子设备及系统在连麦步骤发起步骤后,执行混流步骤,并在该混流步骤完成前,执行推流步骤,保证了两个步骤用时至少是部分重叠的,而本来应该顺序进行的步骤,在本专利技术中部分交叠后,相当于部分进行了并行,进而缩短了用户的等待时间。优选的,混流步骤和推流步骤同时进行,这样能够保证最大化的交叠,最大化的缩短用户的等待时间,提升用户体验(3)本专利技术一种直播间连麦视频混流方法、存储介质、电子设备及系统通过socket进行通信,并在php上实现向用户播放连麦视频能够相较于其他连麦方式更快,同时更本文档来自技高网
...

【技术保护点】
1.一种直播间连麦视频混流方法,其特征在于,其包括异步的混流步骤和推流步骤:/n所述混流步骤包括:/n连麦发起客户端和被连麦客户端从服务器获取连麦参数,所述连麦参数包括:当前直播间ID、连麦发起方ID、被连麦方ID;/n连麦发起客户端和被连麦客户端对连麦参数进行参数校验,若所述连麦参数无误,则连麦发起客户端以及被连麦客户端向服务器发送自身的混流数据;/n所述服务器接收连麦发起客户端和连麦接收客户端的混流数据后,生成合成数据流以及混流视频地址,并向混流视频地址发送合成数据流;/n所述推流步骤包括:/n观众客户端获取推流参数,所述推流参数包括:连麦直播间ID、连麦发起方ID、连麦窗口参数;/n观众客户端生成播放窗口,并向服务器请求混流视频地址;/n观众客户端在获取混流视频地址后,从混流视频地址获取合成数据流,并在连麦窗口播放合成数据流。/n

【技术特征摘要】
1.一种直播间连麦视频混流方法,其特征在于,其包括异步的混流步骤和推流步骤:
所述混流步骤包括:
连麦发起客户端和被连麦客户端从服务器获取连麦参数,所述连麦参数包括:当前直播间ID、连麦发起方ID、被连麦方ID;
连麦发起客户端和被连麦客户端对连麦参数进行参数校验,若所述连麦参数无误,则连麦发起客户端以及被连麦客户端向服务器发送自身的混流数据;
所述服务器接收连麦发起客户端和连麦接收客户端的混流数据后,生成合成数据流以及混流视频地址,并向混流视频地址发送合成数据流;
所述推流步骤包括:
观众客户端获取推流参数,所述推流参数包括:连麦直播间ID、连麦发起方ID、连麦窗口参数;
观众客户端生成播放窗口,并向服务器请求混流视频地址;
观众客户端在获取混流视频地址后,从混流视频地址获取合成数据流,并在连麦窗口播放合成数据流。


2.如权利要求1所述的方法,其特征在于,还包括连麦发起步骤:
连麦发起客户端发起连麦请求;
服务器接收连麦请求并连麦匹配;
在完成连麦发起步骤后,执行所述混流步骤,在所述混流步骤完成前,执行所述推流步骤。


3.如权利要求2所述的方法,其特征在于,在完成连麦发起步骤后进行同时执行所述混流步骤和所述推流步骤。


4.如权利要求1所述的方法,其特征在于,所述客户端对连麦参数进行参数校验具体包括以下步骤:
校验连麦发起方ID和被连麦方ID是否相同,若相等则报错,并终止连麦;
判断连麦参数是否存在为空值,若是则报错并终止连麦。


5.如权利要求1所述的方法,其特征在于,所述向服务器发送混流数据具体包括以下步骤:
客户端获取主动发起连麦的直播间的ID,被动接收连麦的直播...

【专利技术属性】
技术研发人员:汪刚
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1