一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于视频会议系统的音视频同步方法与流程

2021-12-01 01:08:00 来源:中国专利 TAG:


1.本发明涉及视频会议技术领域,具体涉及一种用于视频会议系统的音视频同步方法。


背景技术:

2.当前在线办公市场非常火热,对于一些大型企业和组织机构来说,分支机构遍布全国各地,员工参会人数众多,大规模音视频会议已经成为刚需。
3.然而,目前基于mcu(multipoint conferencing unit,多点控制单元)架构的大规模视频会议方案,是不适用与大规模音视频会议使用场景的,因为服务器需要解码、混流、重新编码,需要消耗异常多的资源;基于sfu(selective forwarding unit,选择性转发单元)架构的大规模视频会议方案相对而言比较灵活,可以按需订阅所需的音视频流,但是会议中视频可以选择性观看某几路视频,音频却是需要被全部订阅的,对于大规模音视频会议,如果音频全部订阅并转发给客户端处理,必定给客户端带来很大压力,同时服务端信令通道压力也是非常大,另外还会导致客户端响应速度变慢、延时增加。
4.目前现有的解决方案是组合使用sfu架构和mcu架构,音频由服务器统一进行混音,然后再发送混音后的数据给客户端,这样有效解决了纯sfu架构下存在的问题,但是却引入了新的技术问题,即音视频无法有效同步。


技术实现要素:

5.本发明为解决上述技术问题,提供了一种用于视频会议系统的音视频同步方法,能够在保证客户端和服务端播放资源占用少、响应及时的同时,保证音视频有效同步。
6.本发明采用的技术方案如下:一种用于视频会议系统的音视频同步方法,所述视频会议系统包括:信令服务器、多个媒体节点服务器、会议音频处理节点服务器和多个会议终端,所述方法包括以下步骤:所述信令服务器接收所述会议终端的创建/加入会议请求,并为与会的多个所述会议终端分配音视频数据的唯一标识符ssrc(synchronization source,同步信源)和媒体节点服务器;与会的多个所述会议终端向对应的所述媒体节点服务器发送音视频数据,并分别订阅m个会议终端的视频数据和会议音频数据输出,其中,音视频数据包括音频数据和视频数据,其中,m为正整数;所述会议音频处理节点服务器从多个所述媒体节点服务器上获取对应的所述会议终端上传的音频数据,并筛选出音频能量值最大的n路音频数据作为所述会议音频数据输出,其中,n为正整数;所述会议终端在接收到对应所述媒体节点服务器转发的m个会议终端的视频数据和所述会议音频数据输出后,根据唯一标识符ssrc将所述会议音频数据输出分发到对应的视频数据通道,并基于视频数据的时间戳进行音视频数据同步。
7.根据本发明的一个实施例,所述信令服务器,具体用于:在接收到所述会议终端的创建会议请求时,通知其他的所述会议终端参会,并启动所述会议音频处理节点服务器中的会议音频处理节点;在接收到所述会议终端的加入会议请求时,为多个所述会议终端分
配音视频数据的唯一标识符ssrc和媒体节点服务器。
8.根据本发明的一个实施例,所述会议音频处理节点服务器,还用于:获取历史发送的会议音频数据输出,并将历史发送的会议音频数据输出中的每一路音频数据放入历史音频库;判断所述历史音频库中的每一路音频数据是否被筛选进当前的所述会议音频数据输出中;如果所述历史音频库中存在一路或多路音频数据未被筛选进当前的所述会议音频数据输出中,则将所述历史音频库中的该一路或多路音频数据与当前的所述会议音频数据输出同时发送给订阅所述会议音频数据输出的所述会议终端,直至该一路或多路音频数据的能量值为零。
9.根据本发明的一个实施例,所述会议音频处理节点服务器,还用于:在所述历史音频库中存在一路或多路音频数据持续预设时间均未被筛选进所述会议音频数据输出中时,将该一路或多路音频数据从所述历史音频库中剔除。
10.根据本发明的一个实施例,所述媒体节点服务器将所述会议音频数据输出发送给对应的所述会议终端时,还用于:根据所述会议终端的音视频数据的唯一标识符ssrc过滤订阅的所述会议音频数据输出中自身的音频数据。
11.本发明的有益效果:本发明的同步方法,信令服务器统一为每个与会会议终端分配音视频数据的唯一标识符ssrc,ssrc是每个会议终端音视频码流的唯一标志,同时信令服务器会在创建会议后启动会议音频处理节点服务器中的会议音频处理节点,会议音频处理节点通过获取会议中所有与会会议终端的音频数据然后筛选出最大n路音频作为整个会议音频的最终输出;后续会议终端只需订阅展现在界面上的m个参会终端的视频资源和订阅包含n路音频数据的一个会议音频资源,收到视频数据后根据ssrc将会议音频数据分发到对应的视频通道,基于视频数据的时间戳进行音视频同步,这有效保证了音视频同步、减轻了客户端压力、降低资源消耗,同时信令交互减少还能提升客户端响应速度,并降低媒体节点服务器信令通道压力。
附图说明
12.图1为本发明实施例的用于视频会议系统的音视频同步方法的流程图;图2为本发明一个实施例的用于视频会议系统的示意图。
具体实施方式
13.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
14.图1为本发明实施例的用于视频会议系统的音视频同步方法的流程图。
15.在本发明的一个实施例中,视频会议系统包括:信令服务器、多个媒体节点服务器、会议音频处理节点服务器和多个会议终端。
16.其中,如图2所示,该视频会议系统的工作原理为:信令服务器用于处理会议终端注册、创建会议、加入会议、退出会议等各种信令请求响应,并根据创建请求,通知其他会议
终端并提供所需的音视频收发数据的订阅对象,同时还需启动会议音频处理节点服务器中的会议音频处理节点。在各个媒体节点服务器注册到信令服务器后,信令服务器会根据各个媒体节点服务器当前的负载情况为每个与会的会议终端分配相应的媒体节点服务器。会议终端在成功登录信令服务器后,向视频会议信令服务器发送创建请求或加入请求,并获取媒体节点服务器信息,以及接收会场其他会议终端的入会通知,并向媒体节点服务器发送音视频数据,同时还会向媒体节点订阅需要在终端界面上展示的视频资源以及订阅音频资源,最后获取音视频码流后进行显示。媒体节点服务器负责接收会议终端上传的音视频数据并将音频数据转发给会议音频处理节点服务器。会议音频处理节点服务器负责获取会场中所有与会人的音频数据,并筛选出n路音频数据作为整个会议音频的最终输出。媒体节点服务器还负责将会议终端订阅的视频资源和音频资源(即上述的整个会议音频的最终输出)转发给会议终端。
17.如图1所示,本发明实施例的用于视频会议系统的音视频同步方法,可包括以下步骤:s1,信令服务器接收会议终端的创建/加入会议请求,并为与会的多个会议终端分配音视频数据的唯一标识符ssrc和媒体节点服务器。
18.根据本发明的有个实施例,信令服务器,具体用于:在接收到会议终端的创建会议请求时,通知其他的会议终端参会,并启动会议音频处理节点服务器中的会议音频处理节点;在接收到会议终端的加入会议请求时,为多个会议终端分配音视频数据的唯一标识符ssrc和媒体节点服务器。
19.具体而言,需要创建会议的会议终端先向信令服务器发送创建会议的请求,信令服务器接收到请求后,创建会议,并通知其他会议终端参会,同时启动会议音频处理节点服务器中的会议音频处理节点。被通知参会的会议终端向信令服务器发送加入会议的请求,信令服务器在接收到加入会议请求时,为每个会议终端分配媒体节点服务器,并为每个会议终端的音视频数据分配唯一标识符ssrc,其中,每个音视频数据都是一个个rtp(real

time transport protocol,实时传输协议)包,信令服务器统一分配唯一标识码可以保证唯一性,便于后续音视频同步的工作。
20.在本发明的一个实施例中,信令服务器还用于在接收到新的入会请求时,通知其他与会会议终端有新的会议终端入会,同时通知会议音频处理节点在新入会的会议终端上传音视频数据后,获取新入会的音视频数据。
21.另外,在本发明的一个实施例中,每个入会的会议终端还需要计算各自音频能量值,并通过rtp扩展位进行传输。其中,音频能量值可表示音频数据能量的大小,在本发明的一个实施例中,可将模拟形式的音频数据经模数转换,将连续变化的模拟信号进行抽样、量化和编码形成二进制序列,得到pcm(pulse code modulation,脉冲编码调制)音频数据,然后对一段时间内的pcm音频数据计算均方根得到音频能量值。
22.s2,与会的多个会议终端向对应的媒体节点服务器发送音视频数据,并分别订阅m个会议终端的视频数据和会议音频数据输出,其中,音视频数据包括音频数据和视频数据,其中,m为正整数,在本发明的一个实施例中,m可以为25。
23.具体而言,与会的多个会议终端在接收到加入请求会议的响应后,将自身的音视频数据上传至信令服务器分配的媒体服务器上,并向对应的媒体服务器节点订阅需要展示
的m个已入会的会议终端的视频数据和订阅会议音频数据。其中,对于订阅的会议终端视频数据,媒体节点服务器的订阅响应信息中会返回订阅的视频数据对应的ssrc,便于会议终端进行视频数据分发。
24.s3,会议音频处理节点服务器从多个媒体节点服务器上获取对应的会议终端上传的音频数据,并筛选出音频能量值最大的n路音频数据作为会议音频数据输出,其中,n为正整数,在本发明的一个实施例中,n可以为小于等于5的正整数。
25.具体而言,会议音频处理节点服务器在收到信令服务器发出的新入会终端通知后,会向该会议终端对应的媒体服务器订阅新入会的会议终端的音频数据,在接收到会场中的各个会议终端的音频数据后,解析每个会议终端的音频数据的rtp扩展头,以获取其对应的音频能量值,并进行排序,选择能量最大的n路为整个会议音频的最后输出,即上述实施例中提到的会议音频数据输出,并发送给每个订阅会议音频的各个会议终端,其中,各个音频数据的ssrc值不能改变。
26.为了保证声音平滑过渡,在本发明的一个实施例中,会议音频处理节点服务器,还用于:获取历史发送的会议音频数据输出,并将历史发送的会议音频数据输出中的每一路音频数据放入历史音频库;判断历史音频库中的每一路音频数据是否被筛选进当前的会议音频数据输出中;如果历史音频库中存在一路或多路音频数据未被筛选进当前的会议音频数据输出中,则将历史音频库中的该一路或多路音频数据与当前的会议音频数据输出同时发送给订阅会议音频数据输出的会议终端,直至该一路或多路音频数据的能量值为零。
27.进一步地,根据本发明的一个实施例,会议音频处理节点服务器,还用于:在历史音频库中存在一路或多路音频数据持续预设时间均未被筛选进会议音频数据输出中时,将该一路或多路音频数据从历史音频库中剔除。其中,预设时间可根据实际情况进行标定,例如,预设时间可以为5s。
28.具体而言,由于单纯选择能量最大的n路作为最后声音的呈现,效果可能会显得不是很平滑,因此,会议音频处理节点服务器还根据历史发送数据的情况,找出除了当前发送最大的n路音频数据外,历史还发送过的音频数据,但不在当前最大的n路音频数据里面的那一路(或者多路),将该路音频数据也发送给订阅的各个会议终端,直到该路音频数据的能量值为0,或者已连续预设时间不满足发送条件(即,连续预设时间内,该路音频数据仍未被筛选进要发送的n路音频数据里),则将该路音频数据从历史音频库中清除,不再将其发送给订阅的各个会议终端,这样可以有效保证声音平滑过渡。
29.s4,会议终端在接收到对应媒体节点服务器转发的m个会议终端的视频数据和会议音频数据输出后,根据唯一标识符ssrc将会议音频数据输出分发到对应的视频数据通道,并基于视频数据的时间戳进行音视频数据同步。
30.具体而言,各个会议终端在收到对应的媒体节点服务器转发的订阅的m个会议终端的视频数据后,根据每个视频数据的唯一标识符ssrc将视频分发到各个视频通道中去。在接收到媒体节点服务器转发的会议音频数据输出后,则根据音频数据的ssrc将会议音频数据分发到同样对应的具有相同ssrc的视频通道中去,解码后根据视频数据rtp时间戳pts(presentation time stamp,呈现时间)和音频数据进行同步,与播放单路音视频时的音视频同步基本没有区别,但由于会议音频是选择的音频能量最大n路音频数据,音频不是一直存在的,所以在音视频同步策略中,我们需要以视频的播放速度为基准来同步音频;对于没
有和任何视频通道匹配的音频数据,则不需要考虑同步问题直接解码渲染即可。
31.根据本发明的一个实施例,媒体节点服务器将会议音频数据输出发送给对应的会议终端时,还用于:根据会议终端的音视频数据的唯一标识符ssrc过滤订阅的会议音频数据输出中自身的音频数据。
32.换句话说,多个媒体节点服务器负责收取对应的会议终端上传的音频数据,并根据订阅情况将数据转发给各订阅会议终端;由于会议终端不需要播放自身的音频数据,媒体节点服务器在向对应的会议终端转发会议音频数据输出时,根据自身的ssrc过滤会议终端自身那路音频数据。当然,如果会议音频数据输出中没有该会议终端的音频数据,则不需要进行过滤,所以需要媒体服务器节点在接收到会议音频处理节点服务器发送的会议音频数据输出后,先判断会议音频数据输出中是否有该媒体节点服务器对应的会议终端中的音频数据,如果有,则过滤掉,如果没有,则直接将会议音频数据输出发给对应的会议终端。
33.作为一个具体示例,需要创建会议的会议终端向信令服务器发送创建会议请求,信令服务器接收到创建请求后,创建会议,并启动会议音频处理节点服务器中的会议音频处理节点,同时通知其他会议终端参会。其他会议终端在接收到信令服务器的通知后,发送加入会议请求。信令服务器在接收到加入会议请求后进行响应,并为每个与会的会议终端分配媒体节点服务器,便于每个与会的会议终端将自身的音视频数据上传至对应的媒体节点服务器,同时还为每个与会的会议终端分配音视频数据的唯一标识ssrc,便于后续的音视频同步的工作。各个与会的会议终端将自身的音视频数据上传至信令服务器分配的媒体节点服务器,并向对应的媒体服务器节点订阅需要展示的m个已经入会的会议终端的视频数据和会议音频数据输出。会议音频处理节点服务器接收所有媒体节点服务器发送的会议终端的音频数据,解析每个会议终端的音频数据的rtp扩展头,以获取其对应的音频能量值,并进行排序,选择能量最大的n路为整个会议音频的最后输出。各个会议终端在收到对应的媒体节点服务器转发的订阅的m个会议终端的视频数据后,根据每个视频数据的唯一标识符ssrc将视频分发到各个视频通道中去。各个会议终端在接收到媒体节点服务器转发的会议音频数据输出后,根据音频数据的ssrc将会议音频数据分发到同样对应的具有相同ssrc的视频通道中去,解码后根据视频数据rtp时间戳pts(presentation time stamp,呈现时间)和音频数据进行同步。
34.综上,本发明的同步方法,信令服务器统一为每个与会会议终端分配音视频数据的唯一标识符ssrc,ssrc是每个会议终端音视频码流的唯一标志,同时信令服务器会在创建会议后启动会议音频处理节点服务器中的会议音频处理节点,会议音频处理节点通过获取会议中所有与会会议终端的音频数据然后筛选出最大n路音频作为整个会议音频的最终输出;后续会议终端只需订阅展现在界面上的m个参会终端的视频资源和订阅包含n路音频数据的一个会议音频资源,收到视频数据后根据ssrc将会议音频数据分发到对应的视频通道,基于视频数据的时间戳进行音视频同步,这有效保证了音视频同步、减轻了客户端压力、降低资源消耗,同时信令交互减少还能提升客户端响应速度,并降低媒体节点服务器信令通道压力。
35.综上所述,本发明的用于视频会议系统的音视频同步方法,信令服务器接收会议终端的创建/加入会议请求,并为与会的多个会议终端分配音视频数据的唯一标识符ssrc和媒体节点服务器;与会的多个会议终端向对应的媒体节点服务器发送音视频数据,并分
别订阅m个会议终端的视频数据和会议音频数据输出;会议音频处理节点服务器从多个媒体节点服务器上获取对应的会议终端上传的音频数据,并筛选出音频能量值最大的n路音频数据作为会议音频数据输出;会议终端根据唯一标识符ssrc将会议音频数据输出分发到对应的视频数据通道,并基于视频数据的时间戳进行音视频数据同步,在保证客户端和服务端播放资源占用少、响应及时的同时,保证音视频有效同步。
36.在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。“多个”的含义是两个或两个以上,除非另有明确具体的限定。
37.在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
38.在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
39.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献