CN115883501A - 一种多人即时通信方法、系统、介质及设备 - Google Patents
一种多人即时通信方法、系统、介质及设备 Download PDFInfo
- Publication number
- CN115883501A CN115883501A CN202211582052.5A CN202211582052A CN115883501A CN 115883501 A CN115883501 A CN 115883501A CN 202211582052 A CN202211582052 A CN 202211582052A CN 115883501 A CN115883501 A CN 115883501A
- Authority
- CN
- China
- Prior art keywords
- audio streams
- server
- sfu
- volume
- target audio
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012216 screening Methods 0.000 claims abstract description 25
- 238000005070 sampling Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 abstract description 21
- 238000010586 diagram Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本发明提供一种多人即时通信方法、系统、介质及设备,方法包括:利用SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流;利用MCU服务器对多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将M个目标音频流推送至SFU服务器中;利用SFU服务器将M个目标音频流推送至N个用户中;如此,基于SFU+MCU的架构中,MCU可从N个音频中只选取M个目标音频流推送至SFU服务器,在即时通信场景中,声音最大的用户数量为3~5个左右,因此相当于每个用户只需要向SFU服务器推送一路音频,同时从SFU中拉取3~5个目标音频流,大大降低带宽压力,即使在海量用户通信场景中,也可确保通信质量。
Description
技术领域
本申请涉及音视频通信技术领域,尤其涉及一种多人即时通信方法、系统、介质及设备。
背景技术
建立即时通信关系是社交软件中为保证用户之间能够进行有效的信息交流而设置的重要手段,用户在社交软件上与其他用户之间建立即时通信关系之后,就可以与建立即时通信关系的用户之间进行线上聊天、信息分享等活动。
目前,各类即时通信工具主要通过选择性转发单元(SFU,SelectiveForwardingUnit)的会议方案转发WebRTC客户端音视频数据流,实现多终端在线语音交互。但是若通信人数较多,会出现听不清用户声音的情况,所以此方案需要严格限制用户数量。若不限制用户数量,在海量用户通信场景中,用户带宽压力增大,会出现声音卡顿等现象,通信质量受到严重影响。
基于此,如何提高多人即时通信质量,是目前亟需解决的技术问题。
发明内容
针对现有技术存在的问题,本发明实施例提供了一种多人即时通信方法、系统、介质及设备,以解决或者部分解决现有技术中无法在不增加用户带宽压力下提高多人即时通信质量的技术问题。
本发明的第一方面,提供一种多人即时通信方法,所述方法包括:
利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流;
利用多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个当前音量最大的目标音频流推送至所述SFU服务器中;
利用所述SFU服务器将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中。
上述方案中,所述利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流,包括:
利用SFU服务器获取所述每个用户的音频流,确定每个音频流的音量信息;
根据每个音频流的音量信息确定出处于静音状态的音频流;
在N个用户的音频流中筛选掉处于静音状态的音频流,获得所述多个参考音频流。
上述方案中,利用所述多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,包括:
从所述SFU服务器中拉取所述多个参考音频流;
基于每个参考音频流的扩展头信息获取所述多个参考音频流的音量信息;
基于每个参考音频流的音量信息对所述多个参考音频流进行排序;
在排序后的多个参考音频流中,筛选出M个当前音量最大的音频流。
上述方案中,所述利用所述SFU服务器将所述M个当前音量最大的目标音频流推送至所述N个用户中,包括:
对所述M个当前音量最大的目标音频流的RTP扩展头进行解析,获得每个目标音频流的流ID;
针对当前用户,若确定所述当前用户的用户ID与当前目标音频流的流ID一致,则将除所述当前目标音频流之外的剩余M-1个目标音频流推送至所述当前用户中;所述当前用户为所述N个不同用户中的任一用户。
上述方案中,利用所述SFU服务器将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中,包括:
将所述M个当前音量最大的目标音频流依次推送至所述N个不同的用户中;两个相邻目标音频流的推送间隔小于等于预设的时间阈值。
上述方案中,所述获取每个音频流的音量信息,包括:
针对任一音频流,对所述音频流进行解码,获得每一帧语音信号;
基于采样频率以及每一帧语音信号的帧长确定语音采样点;
根据各所述语音采样点的脉冲调制编码PCM值确定第一音量;
基于公式V′=10*log10V确定所述音频流的音量信息V′;其中,所述V为所述第一音量。
上述方案中,所述根据各所述语音采样点的PCM值确定第一音量,包括:
本发明的第二方面,提供一种多人即时通信系统,所述系统包括:
SFU服务器,用于对N个用户的音频流进行筛选,获得多个参考音频流;
多点控制单元MCU服务器,用于对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个当前音量最大的目标音频流推送至所述SFU服务器中;
所述SFU服务器,还用于将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中。
本发明的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任一项所述方法的步骤。
本发明的第三方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面中任一项所述方法的步骤。
本发明提供了一种多人即时通信方法、系统、介质及设备,方法包括:利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流;利用多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个目标音频流推送至所述SFU服务器中;利用所述SFU服务器将所述M个目标音频流分别推送至所述N个不同的用户中;如此,基于SFU+MCU的架构中,MCU可从N个音频中只选取M个当前音量最大的目标音频流推送至SFU服务器,再由SFU服务器推送至用户;一般来说,在即时通信场景中,声音最大的用户数量为3~5个左右,因此相当于每个用户只需要向SFU服务器推送一路自身的音频,同时从SFU中拉取3~5个目标音频流,大大降低了带宽压力,即使在海量用户通信场景中,也可确保通信质量。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。
在附图中:
图1示出了现有技术中的多人即时通信系统结构示意图;
图2示出了根据本发明一个实施例的多人即时通信系统结构示意图;
图3示出了根据本发明一个实施例的多人即时通信系统的数据交互示意图;
图4示出了根据本发明一个实施例的多人即时通信方法流程示意图;
图5示出了根据本发明一个实施例的RTP扩展头结构示意图;
图6示出了根据本发明一个实施例的两个用户语音频繁切换时的语音信号图;
图7示出了根据本发明一个实施例的计算机设备结构示意图;
图8示出了根据本发明一个实施例的计算机可读存储介质结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为了能够更好地理解本实施例的技术方案,这里先介绍下传统的语音聊天逻辑。参考图1,传统的语音聊天架构中,假设有N个人进行语音聊天,单个用户需要推1路自己的音频流给流服务器,同时需要通过房间服务器1得到当前房间内所有的其他用户的N-1路流信息,通过流服务器2拉N-1路音频流来听其他用户的声音。一般情况下,一路音频流的码率在64kbps~192kbps左右,当用户数N为100时,大约需要6M~20M左右的带宽,这是大部分用户,特别是移动端用户所不能承受的。如果需要支撑千人甚至万人语音聊天,这种方案更加行不通。所以传统的多人语音聊天时,一般会对聊天人数进行限制,比如不超过9人。
基于此,为解决上述问题,本实施例提供一种多人即时通信系统,主要是通过构建SFU+MCU的架构来实现多人即时通信,如图2所示,系统包括:SFU服务器、MCU服务器以及房间服务器1;其中,
选择控制单元(SFU,Selective Forwarding Unit)服务器不需要对音视频进行混流,收到某个终端共享的音视频流后,就直接将该音视频流转发给房间内的其他终端。SFU服务器实际上是一个音视频路由转发器。
多点控制单元(MCU,Multipoint Conferencing Unit)服务器端会将在同一个房间中的所有终端的音视频流进行混合,最终生成一个混合后的音视频流再发给各个终端,这样各终端就可以看到/听到其他终端的音视频了。实际上,MCU服务器可以理解为是一个音视频混合器。
SFU服务器和MCU服务器可以是一个服务器,也可以是集群服务器。当SFU服务器和MCU服务器是集群服务器时,参考图3,SFU服务器可以是很多个流服务器streamserver的集群,MCU服务器可以是很多个混合服务器MixerServer的集群。
其中,SFU服务器,用于对N个用户的音频流进行筛选,获得多个参考音频流;将多个参考音频流发送至多点控制单元MCU服务器中;
MCU服务器,用于对多个参考音频流进行筛选,获得M个当前音量最大的目标音频流,将M个当前音量最大的目标音频流推送至所述SFU服务器中;
SFU服务器,还用于将M个当前音量最大的目标音频流推送至N个不同的用户中。其中,M的取值范围为3~5。
具体来讲,用户、SFU服务器、MCU服务器以及房间服务器1之间的数据交互流程可参考图2的步骤,假设用户数量为N,步骤如下:
步骤1.1:用户加入房间;
步骤2:用户把自己的流数据推送至SFU服务器;
步骤2.1:SFU服务器向房间服务器发送流通知信息;
步骤2.1.1:房间服务器基于流通知信息向MCU服务器发起混流请求;
步骤3:MCU服务器基于混流请求从SFU服务器中获取N个流数据,并筛选出M个SFU单流;
步骤3.1:MCU服务器将M个SFU单流推送至SFU服务器;
步骤3.1.1:SFU服务器向房间服务器发送M个流通知信息;
步骤3.1.1.1:房间服务器向用户转发M个流通知信息;
步骤4:用户从SFU服务器中获取M个流数据。
当有新的用户进入房间时,新用户的流数据处理过程与上述一致,不同的是,MCU服务器会更新M个流数据,并将新的M个流数据发送至SFU服务器中。
其中,SFU服务器及MCU服务器的具体实现逻辑会在后续实施例中详细描述,故在此不再赘述。
可以看出,在基于SFU+MCU的架构中,MCU可从N个音频中只选取M个当前音量最大的目标音频流推送至SFU服务器,再由SFU服务器推送至用户;一般来说,在即时通信场景中,声音最大的用户数量为3~5个左右,因此M取值为3~5,相当于每个用户只需要向SFU服务器推送一路自身的音频,同时从SFU中拉取3~5个目标音频,大大降低了带宽压力,即使在海量用户通信场景中,也可确保通信质量。
并且,值得注意的是,虽然MCU服务器具有混流功能,但是本实施例中MCU服务器并不需要对获取到的多个参考音频流进行混流,输出的目标音频流是单流,因此会进一步降低MCU服务器的压力,提高通信质量。
需要说明的是,本实施例的多人即时通信方法适用于多人语音通话、多人视频连麦、等多人即时通信应用场景,用户之间进行多人即时通信不受端的限制,即移动端和web端之间的用户可以流畅音频互动,浏览器端和客户端之间的用户也可以流畅音频互动。
基于与前述实施例同样的发明构思,本实施例提供一种多人即时通信方法,如图4所示,方法包括以下步骤:
S410,利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流;
在一种实施方式中,利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流,包括:
利用SFU服务器获取每个用户的音频流,确定每个音频流的音量信息;
根据每个音频流的音量信息确定出处于静音状态的音频流;
在N个用户的音频流中筛选掉处于静音状态的音频流,获得多个参考音频流。
在一种实施方式中,获取每个音频流的音量信息,包括:
针对任一音频流,对音频流进行解码,获得每一帧语音信号;
基于采样频率以及每一帧语音信号的帧长确定语音采样点;
根据各语音采样点的PCM值确定第一音量;
基于公式V′=10*log10V确定音频流的音量信息V′;其中,V为第一音量。
在一种实施方式中,根据各语音采样点的PCM值确定第一音量,包括:
具体来讲,在基于采样频率以及每一帧语音信号的帧长确定语音采样点时,相当于是将模拟模拟音频转换成数字音频。而本实施例主要是根据脉冲调制编码(PCM,PulseCode Modulation)来实现的,因此每个语音采样点均对应存在一个PCM值。
若MCU服务器直接从SFU服务器中拉取所有用户的音频流时,由于一路音频流的码率在64kbps~192kbps左右,当用户数量很多时,拉流会严重占用带宽,降低通信质量。
基于此,本实施例考虑到大部分用户平时都处于静音状态,只有很少的时间会开麦说话,因此可利用SFU服务器对N个用户的音频流进行筛选,根据音量信息确定出静音状态的用户,将静音状态的音频流过滤掉,获得参考音频流。
这里,由于本实施例中是通过webRTC协议传输流数据的,为了确定出音量信息,可以在每个音频流的RTP扩展头中设置音量信息。那么可以通过每个音频流的扩展头信息获取所述各音频流的音量信息。其中,本实施例中RTP扩展头为Two-Byte header格式,具体格式图可参考图5,在图5中,data用于存储音频流具体信息。
并且,RTP扩展头中还携带有每个音频流的流ID,后续可以根据流ID确定出每个音频流所属的用户。比如当流ID与某个用户ID一致时,则说明该音频流属于该用户。
其中,音量信息使用protobuf协议,定义如下:
当需要确定音频流的音量信息时,可以对RTP扩展头中的data字段进行解析。由于在webrtc中,每帧语音的时长一般为10ms,以48k的采样率为基准,共包包含480个采样点,那么在根据公式确定第一音量V时,S应该为480。
这样,通过利用SFU服务器对所有音频流进行筛选,最终获得处于非静音状态的少量参考音频流,那么MCU在拉取参考音频流时,可以大幅降低带宽压力。
S411,利用多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个当前音量最大的目标音频流推送至所述SFU服务器中;
本实施例中,由于MCU在推流过程也需要时间,所以从开麦说话,到声音传输给其他用户可能存在较高的延迟,为了降低声音的延迟率,提高通信质量,还需利用所述MCU服务器对所述多个参考音频流进行筛选,获得M个当前音量最大的目标音频流,将所述M个当前音量最大的目标音频流推送至SFU服务器中。
举例来说,假设参考音频流有10个,那么MCU服务器需要拉取10个参考音频流,然后基于参考音频流的音量信息继续筛选,最终获得M个当前音量最大的目标音频流。
一般来说,无论是在语音会议还是在家庭语音群聊中,可能有超过3~5个人同时说话时,通信体验会下降。因此M的取值一般为3~5个。
这样,MCU服务器只需要从SFU服务器中拉取多个参考音频流,想SFU服务器推送M个参考音频流,因此SFU服务器和MCU服务器的流数据交互所占用的带宽会大大降低,因此可提高通信质量。
值得注意的是,虽然MCU服务器具有混流功能,但是本实施例中MCU只需要对参考音频流进行筛选,并不需要进行混流,推送的M个目标音频流也是单流,又进一步降低了带宽占用。
S412,利用所述SFU服务器将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中。
SFU服务器获取到M个目标音频流后,将M个当前音量最大的目标音频流推送至N个用户中。
在一种实施方式中,利用SFU服务器将M个当前音量最大的目标音频流推送至N个用户中,包括:
将M个当前音量最大的目标音频流依次推送至N个不同的用户中;两个相邻目标音频流的推送间隔小于等于预设的时间阈值。
具体来讲,参考图6的划线框部分,若有两个用户说话频繁切换时,在M个目标音频流中会断断续续听到两个人的声音,因此本实施例通过增加平滑切换来优化通信质量。
比如,当选择推送当前用户的目标音频流时,经预设的推送间隔后才允许切换到其他用户的目标音频流进行推送。即使别的用户音量比当前用户的音量大,也不会立即切换,这样声音听起来更平滑。其中,预设的推送间隔为1~2s,也可基于实际情况设定,在此不做限制。
进一步地,在向用户推送M个目标音频流时,为了避免用户听到自己的声音,在一种实施方式中,利用SFU服务器将M个当前音量最大的目标音频流推送至所述N个不同的用户中,包括:
对M个当前音量最大的目标音频流的RTP扩展头进行解析,获得每个目标音频流的流ID;
针对当前用户,若确定当前用户的用户ID与当前目标音频流的流ID一致,则将除当前目标音频流之外的剩余M-1个目标音频流推送至当前用户中;当前用户为N个不同用户中的任一用户。
也即,SFU服务器在推送目标音频流时,不会将用户自己的音频流再推送至用户本身。
举例来说,假设目标音频流包括A用户的音频流,SFU服务器在向A用户推送目标音频流时,会将A用户自身的音频流过滤掉,再将剩余M-1个目标音频流推送至N个用户中。
这样,在向用户推送目标音频流时,通过对声音平滑切换确保通信质量,并且可避免用户自己听到自己的声音,提高用户体验。
基于同样的发明构思,本实施例提供一种计算机设备700,如图7所示,包括存储器710、处理器720及存储在存储器710上并可在处理器720上运行的计算机程序711,处理器720执行计算机程序711时实现前文所述方法的任一步骤。
基于同样的发明构思,本实施例提供一种计算机可读存储介质800,如图8所示,其上存储有计算机程序811,该计算机程序811被处理器执行时实现前文任一所述方法的步骤。
通过本发明的一个或者多个实施例,本发明具有以下有益效果或者优点:
本发明提供了一种多人即时通信方法、系统、介质及设备,方法包括:利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流;利用多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个目标音频流推送至所述SFU服务器中;利用所述SFU服务器将所述M个目标音频流推送至所述N个不同的用户中;如此,基于SFU+MCU的架构中,MCU可从N个音频中只选取M个当前音量最大的目标音频流推送至SFU服务器,再由SFU服务器推送至用户;一般来说,在即时通信场景中,声音最大的用户数量为3~5个左右,因此相当于每个用户只需要向SFU服务器推送一路自身的音频,同时从SFU中拉取3~5个目标音频流,大大降低了带宽压力,即使在海量用户通信场景中,也可确保通信质量。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网关、代理服务器、系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种多人即时通信方法,其特征在于,所述方法包括:
利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流;
利用多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个当前音量最大的目标音频流推送至所述SFU服务器中;
利用所述SFU服务器将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中。
2.如权利要求1所述的方法,其特征在于,所述利用选择性转发单元SFU服务器对N个用户的音频流进行筛选,获得多个参考音频流,包括:
利用SFU服务器获取所述每个用户的音频流,确定每个音频流的音量信息;
根据每个音频流的音量信息确定出处于静音状态的音频流;
在N个用户的音频流中筛选掉处于静音状态的音频流,获得所述多个参考音频流。
3.如权利要求1所述的方法,其特征在于,利用所述多点控制单元MCU服务器对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,包括:
从所述SFU服务器中拉取所述多个参考音频流;
基于每个参考音频流的扩展头信息获取所述多个参考音频流的音量信息;
基于每个参考音频流的音量信息对所述多个参考音频流进行排序;
在排序后的多个参考音频流中,筛选出M个当前音量最大的音频流。
4.如权利要求1所述的方法,其特征在于,所述利用所述SFU服务器将所述M个当前音量最大的目标音频流推送至所述N个不同的用户中,包括:
对所述M个当前音量最大的目标音频流的RTP扩展头进行解析,获得每个目标音频流的流ID;
针对当前用户,若确定所述当前用户的用户ID与当前目标音频流的流ID一致,则将除所述当前目标音频流之外的剩余M-1个目标音频流推送至所述当前用户中;所述当前用户为所述N个不同用户中的任一用户。
5.如权利要求1所述的方法,其特征在于,利用所述SFU服务器将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中,包括:
将所述M个当前音量最大的目标音频流依次推送至所述N个不同的用户中;两个相邻目标音频流的推送间隔小于等于预设的时间阈值。
6.如权利要求2所述的方法,其特征在于,所述获取每个音频流的音量信息,包括:
针对任一音频流,对所述音频流进行解码,获得每一帧语音信号;
基于采样频率以及每一帧语音信号的帧长确定语音采样点;
根据各所述语音采样点的脉冲调制编码PCM值确定第一音量;
基于公式V′=10*log10V确定所述音频流的音量信息V′;其中,所述V为所述第一音量。
8.一种多人即时通信系统,其特征在于,所述系统包括:
SFU服务器,用于对N个用户的音频流进行筛选,获得多个参考音频流;
多点控制单元MCU服务器,用于对所述多个参考音频流进行拉取并筛选,获得M个当前音量最大的目标音频流,将所述M个当前音量最大的目标音频流推送至所述SFU服务器中;
所述SFU服务器,还用于将所述M个当前音量最大的目标音频流分别推送至所述N个不同的用户中。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7任一项所述方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211582052.5A CN115883501A (zh) | 2022-12-08 | 2022-12-08 | 一种多人即时通信方法、系统、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211582052.5A CN115883501A (zh) | 2022-12-08 | 2022-12-08 | 一种多人即时通信方法、系统、介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115883501A true CN115883501A (zh) | 2023-03-31 |
Family
ID=85766891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211582052.5A Pending CN115883501A (zh) | 2022-12-08 | 2022-12-08 | 一种多人即时通信方法、系统、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115883501A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995946A (zh) * | 2019-12-25 | 2020-04-10 | 苏州科达科技股份有限公司 | 混音方法、装置、设备、系统及可读存储介质 |
EP3694146A1 (fr) * | 2019-02-07 | 2020-08-12 | Apizee | Procédé de traitement de flux audiovidéo en conférence multipartite, dispositifs, système et programme correspondants |
CN112235238A (zh) * | 2020-09-02 | 2021-01-15 | 武汉烽火众智数字技术有限责任公司 | 一种基于WebRTC的MCU系统及方法 |
CN114500914A (zh) * | 2020-11-11 | 2022-05-13 | 中兴通讯股份有限公司 | 音视频转发方法、装置、终端与系统 |
CN114915748A (zh) * | 2021-02-09 | 2022-08-16 | 华为技术有限公司 | 一种动态切换音视频通信方式的方法、系统及相关装置 |
CN115209163A (zh) * | 2022-06-28 | 2022-10-18 | 深圳市欢太科技有限公司 | 数据处理方法、装置、存储介质及电子设备 |
-
2022
- 2022-12-08 CN CN202211582052.5A patent/CN115883501A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3694146A1 (fr) * | 2019-02-07 | 2020-08-12 | Apizee | Procédé de traitement de flux audiovidéo en conférence multipartite, dispositifs, système et programme correspondants |
CN110995946A (zh) * | 2019-12-25 | 2020-04-10 | 苏州科达科技股份有限公司 | 混音方法、装置、设备、系统及可读存储介质 |
CN112235238A (zh) * | 2020-09-02 | 2021-01-15 | 武汉烽火众智数字技术有限责任公司 | 一种基于WebRTC的MCU系统及方法 |
CN114500914A (zh) * | 2020-11-11 | 2022-05-13 | 中兴通讯股份有限公司 | 音视频转发方法、装置、终端与系统 |
WO2022100528A1 (zh) * | 2020-11-11 | 2022-05-19 | 中兴通讯股份有限公司 | 音视频转发方法、装置、终端与系统 |
CN114915748A (zh) * | 2021-02-09 | 2022-08-16 | 华为技术有限公司 | 一种动态切换音视频通信方式的方法、系统及相关装置 |
CN115209163A (zh) * | 2022-06-28 | 2022-10-18 | 深圳市欢太科技有限公司 | 数据处理方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI440346B (zh) | 基於開放架構之域相依即時多語系通信服務 | |
JP5320406B2 (ja) | オーディオ処理の方法、システム、及び制御サーバ | |
US7689568B2 (en) | Communication system | |
US6167033A (en) | Multiple-party network communication system and method of troubleshooting thereof | |
EP1496700B1 (en) | Apparatus, method and computer program for supporting video conferencing in a communication system | |
US9143728B2 (en) | User interface control in a multimedia conference system | |
US10057426B2 (en) | Speaker priority for conference calls | |
CN110072021B (zh) | 一种在音频电话会议混合系统中的方法、装置和计算机可读介质 | |
CN110418098B (zh) | 一种视联网会议的开启方法和装置 | |
WO2023125350A1 (zh) | 音频数据推送方法、装置、系统、电子设备及存储介质 | |
US8358600B2 (en) | Method of transmitting data in a communication system | |
EP3796647A1 (en) | Video conference server capable of providing video conference by using plurality of terminals for video conference, and method for removing audio echo therefor | |
CN113194335A (zh) | 流媒体传输方法、传输设备和播放设备 | |
CN112019488B (zh) | 一种语音处理的方法、装置、设备和存储介质 | |
US20070129037A1 (en) | Mute processing apparatus and method | |
CN109714316B (zh) | 一种视联网的混音处理方法和一种视联网系统 | |
CN115883501A (zh) | 一种多人即时通信方法、系统、介质及设备 | |
CN111951821B (zh) | 通话方法和装置 | |
CN112565668B (zh) | 一种网络会议共享声音的方法 | |
CN114979545A (zh) | 多终端的通话方法和存储介质及电子设备 | |
US8363809B2 (en) | Teleconference terminal apparatus, relaying apparatus, and teleconferencing system | |
JP2008141348A (ja) | 通信装置 | |
JP2008227693A (ja) | 話者映像表示制御システム、話者映像表示制御方法、話者映像表示制御プログラム、通信端末及び多地点テレビ会議システム | |
CN110910892A (zh) | 会议系统终端、音频数据处理方法和远程会议系统 | |
JP2004304410A (ja) | 通信処理装置、および通信処理方法、並びにコンピュータ・プログラム |
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 |