CN111818091B - 多人语音交互系统及方法 - Google Patents
多人语音交互系统及方法 Download PDFInfo
- Publication number
- CN111818091B CN111818091B CN202010788348.7A CN202010788348A CN111818091B CN 111818091 B CN111818091 B CN 111818091B CN 202010788348 A CN202010788348 A CN 202010788348A CN 111818091 B CN111818091 B CN 111818091B
- Authority
- CN
- China
- Prior art keywords
- client
- clients
- user
- server
- management end
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
- H04L65/4038—Arrangements for multi-party communication, e.g. for conferences with floor control
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明提供一种多人语音交互方法,包括:获取多个客户端中的每个客户端的标识;根据所述多个客户端中每个客户端的标识设定该每个客户端的关联客户端,并将该每个客户端的关联客户端的标识发送到服务器;利用麦克风录制所述任一客户端的用户的音频流,并将所录制的音频流发送到所述服务器;及接收所述服务器所发送的所述关联客户端所录制的音频流。本发明还提供实现所述多人语音交互方法的多人语音交互系统。本发明可在多人语音交互的环境中实现客户端的用户对声音的定制。
Description
技术领域
本发明涉及多人语音交互技术领域,具体涉及一种多人语音交互系统及方法。
背景技术
本部分旨在为权利要求书及具体实施方式中陈述的本发明实施例的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
目前最常使用的多人语音交流方案中,用户将自己麦克风声音录制并实时发送到服务器上,服务器将所有用户的声音混合到一起,发送给各个应用程序,导致各个应用程序内听到是服务器器处理过后统一的声音,无法进行定制的处理。
发明内容
鉴于以上内容,有必要提出一种多人语音交互系统及方法,可实现客户端的用户对声音的定制的同时还可以对各路声音进行处理控制并优化,避免杂音嘈杂等问题,使得用户可以更好地分辨声音的来源。
所述多人语音交互方法,应用于与服务器通讯连接的多个客户端中的任一客户端,该方法包括:获取所述多个客户端中的每个客户端的标识;根据所述多个客户端中每个客户端的标识设定该每个客户端的关联客户端,并将该每个客户端的关联客户端的标识发送到所述服务器;利用麦克风录制所述任一客户端的用户的音频流,并将所录制的音频流发送到所述服务器;及接收所述服务器所发送的所述关联客户端所录制的音频流。
优选地,当所述任一客户端作为管理端,所述其他客户端中的每个客户端作为被管理端时,该方法还包括:作为管理端的所述任一客户端响应用户的操作,更新所述多个客户端中的每个客户端的关联客户端;及作为管理端的所述任一客户端向所述服务器发送更新信号,该更新信号携带了所述多个客户端中的每个客户端的关联客户端的标识。
优选地,该方法还包括:当所述任一客户端作为管理端时,作为管理端的所述任一客户端响应用户的操作向所述服务器发送禁言指令,该禁言指令携带了指定的客户端的标识,所述指定的客户端为所述多个客户端中的任一客户端。
优选地,该方法还包括:作为管理端的所述任一客户端响应用户的操作或者于该指定的客户端满足指定的条件时向所述服务器发送解除禁言的请求。
优选地,该方法还包括:作为管理端的所述任一客户端通过为作为被管理端的每个客户端设置关联客户端,将作为被管理端的所述其他客户端划分为至少两组。
所述多人语音交互方法,应用于与多个客户端通讯连接的服务器中,该方法包括:为所述多个客户端中的每个客户端分配一个标识;将所述多个客户端中的每个客户端的标识发送给所述多个客户端中的每个客户端;接收所述多个客户端中的每个客户端所发送的该每个客户端的关联客户端的标识,基于所述标识确定该每个客户端的关联客户端;接收所述多个客户端中的每个客户端所发送的该每个客户端所录制的用户的音频流;及将该每个客户端的关联客户端所录制的用户的音频流对应发送到该每个客户端。
优选地,该方法还包括:从所述多个客户端中确定一个客户端作为管理端,以及将所述多个客户端中的其他客户端作为被管理端;接收作为管理端的客户端所发送的所述多个客户端中的每个客户端的关联客户端的标识;及将所述多个客户端中的每个客户端的关联客户端所录制的音频流对应发送给该每个客户端。
优选地,该方法还包括:所述服务器于接收到作为管理端的所述客户端发送的禁言指令时,控制指定的客户端关闭麦克风,其中,该禁言指令携带了所述指定的客户端的标识,所述指定的客户端为所述多个客户端中的任一客户端。
优选地,该方法还包括:当作为管理端的所述客户端通过为作为被管理端的每个客户端设置关联客户端,将作为被管理端的所述其他客户端划分为两组时,所述服务器获取作为管理端的所述客户端的用户与所述两组中的每组所包括的每个客户端的用户在虚拟场景中的距离;当作为管理端的所述客户端的用户与所述两组中的任意一组所包括的任意一个客户端的用户在所述虚拟场景中的距离,小于作为管理端的所述客户端的用户与另一组所包括的每个客户端的用户在所述虚拟场景中的距离时,所述服务器将作为管理端的所述客户端的关联客户端更新为所述任意一组所包括的所有客户端;及所述服务器将作为管理端的所述客户端的关联客户端所录制的音频流发送给作为管理端的所述客户端。
所述多人语音交互系统,包括多个客户端,以及与该多个客户端通讯连接的服务器,所述服务器为所述多个客户端中的每个客户端分配一个标识;所述服务器将所述多个客户端中的每个客户端的标识发送给所述多个客户端中的每个客户端;所述多个客户端中的每个客户端接收所述服务器发送的该多个客户端中的每个客户端的标识;所述多个客户端中的每个客户端,根据所述多个客户端中每个客户端的标识设定该每个客户端的关联客户端,并将该每个客户端的关联客户端的标识发送到所述服务器;所述服务器接收所述多个客户端中的每个客户端所发送的该每个客户端的关联客户端的标识;所述多个客户端中的每个客户端利用麦克风录制该每个客户端的用户的音频流,并将所录制的音频流发送到所述服务器;所述服务器接收所述多个客户端中的每个客户端所发送的该每个客户端所录制的音频流;所述服务器将所述每个客户端的关联客户端所录制的音频流对应发送到该每个客户端。
相较于现有技术,本发明提供的多人语音交互系统及方法,可实现客户端的用户对声音的定制的同时还可以对各路声音进行处理控制并优化,避免杂音嘈杂等问题,使得用户可以更好地分辨声音的来源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明较佳实施例提供的多人语音交互方法的应用环境图。
图2是本发明较佳实施例提供的多人语音交互方法的流程图。
图3是本发明较佳实施例提供的多人语音交互系统的功能模块图。
图4是本发明较佳实施例提供的客户端和服务器的结构图。
主要元件符号说明
客户端 | 1 |
多人语音交互系统 | 30 |
第一执行模块 | 301 |
第二执行模块 | 302 |
存储器 | 11、21 |
处理器 | 12、22 |
麦克风 | 10 |
显示屏 | 13 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
图1是本发明较佳实施例提供的多人语音交互系统的框架图。
在本实施例中,多人语音交互系统100包括多个客户端1(图1中示意了4个为例)和服务器2。所述多个客户端1分别与所述服务器2有线或者无线通讯连接。
本实施例中,所述多个客户端1可以为VR、MR等各种三维立体可交互的形态中,在教学、社交、游戏等应用场景中的每个用户所持有的终端例如头戴式显示器(如VR头盔、MR头盔)、手机、平板电脑、个人电脑等设备。
本实施例中,所述客户端1内置或者外接了麦克风10。
所述客户端1可以利用麦克风10录制用户的音频流,并将所录制的音频流实时发送到服务器2。每个客户端1可以根据用户的操作选择从所述服务器2所需拉取的其他客户端1的音频流。所述服务器2根据客户端1的选择将该其他客户端1的音频流对应转发给该客户端1,由此实现客户端1的用户所听到的声音可以定制,给用户更好的交流体验。
图2是本发明较佳实施例提供的多人语音交互方法的流程图。
在本实施例中,所述多人语音交互方法可以应用于所述多人语音交互系统100所包括的客户端1和服务器2中,对于需要进行多人语音交互的客户端1和服务器2,可以直接在客户端1和服务器2上分别对应集成本发明的方法所提供的用于多人语音交互的功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在该客户端1和服务器2上。
如图2所示,所述多人语音交互方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S1、所述服务器2为所述多个客户端1中的每个客户端1分配一个标识(也即是ID号)。
本实施例中,分配给每个客户端1的标识也即是该每个客户端1所对应的标识,用于唯一标识该每个客户端1,由此使得所述多个客户端1可以互相区分。
在一个实施例中,每个客户端1所对应的标识可以由数字、字母、特殊字符,或者其中一者或多者的结合所构成。
步骤S2、所述服务器2将所述多个客户端1中的每个客户端1的标识发送给所述多个客户端1中的每个客户端1,由此每个客户端1都可以获得所述多个客户端1分别所对应的标识。
步骤S3、所述多个客户端1中的每个客户端1接收所述服务器2发送的该多个客户端1中的每个客户端的标识。
步骤S4、所述多个客户端1中的每个客户端1,根据所述多个客户端1中每个客户端1的标识设定该每个客户端1的关联客户端,并将该每个客户端的关联客户端的标识发送到所述服务器2,由此通知所述服务器2该每个客户端1的关联客户端。
在一个实施例中,所述多个客户端1中每个客户端1可以响应用户的操作来设定该每个客户端1的关联客户端。
具体地,所述多个客户端1中的任意一个客户端1可以生成一个用户界面,在该用户界面显示所述多个客户端1分别所对应的标识,该任意一个客户端1可以根据用户对所显示的标识的选择来设定该任意一个客户端1的关联客户端,该任意一个客户端1的关联客户端也即是用户所选择的标识所对应的客户端。
举例而言,假设所述多个客户端1包括四个客户端,该四个客户端分别对应的标识为C1、C2、C3、C4,该四个客户端分别是第一客户端、第二客户端、第三客户端、第四客户端,所述第一客户端可以响应的用户的选择设定对应标识C2的第二客户端、对应标识C3的第三客户端为该第一客户端的关联客户端。
在一个实施例中,所述任意一个客户端1可以默认将所述多个客户端1中的其他所有客户端均设置为所述任意一个客户端1的关联客户端。该其他所有客户端也即是所述多个客户端1中除该任意一个客户端1之外的所有客户端。
步骤S5、所述服务器2接收所述多个客户端1中的每个客户端1所发送的该每个客户端1的关联客户端的标识,由此所述服务器2可以基于所述标识确定该每个客户端1的关联客户端。
举例而言,假设所述服务器2接收到所述第一客户端所发送的关联客户端的标识是C2和C3,那么所述服务器2则确定该第一客户端的关联客户端是所述第二客户端和所述第三客户端。
步骤S6、所述多个客户端1中的每个客户端1利用麦克风10实时录制该每个客户端1的用户的音频流,并将所录制的音频流发送到所述服务器2。
步骤S7、所述服务器2接收所述多个客户端1中的每个客户端1所发送的该每个客户端1所录制的音频流。
步骤S8、所述服务器2将所述每个客户端1的关联客户端实时录制的音频流对应发送到该每个客户端1。该每个客户端1接收所述服务器2发送的该每个客户端1的关联客户端所录制的音频流,并播放该音频流。
举例而言,仍然以所述多个客户端1包括第一客户端、第二客户端、第三客户端、第四客户端,该四个客户端分别对应的标识为C1、C2、C3、C4为例。假设所述服务器2接收到所述第一客户端所发送的关联客户端的标识是C2和C3,那么所述服务器2则将该第二客户端实时录制的视频流,以及所述第三客户端实时录制的视频流发送到所述第一客户端。
需要说明的是,对于每个客户端1而言,由于从服务器2接收的各个关联客户端所录制的音频流互相之间是独立的,每个客户端1还可以对各个关联客户端所录制的音频流作进一步的处理、优化等。在一个实施例中,当每个客户端1接收到关联客户端所录制的音频流时,在播放该音频流之前,该每个客户端1还对该音频流进行处理,包括去除或弱化部分杂音背景音等。
在一个实施例中,当任一客户端1有多个关联客户端时,该任一客户端1还可以对所述多个关联客户端中的任意一个关联客户端所录制的音频流进行音量衰减或音量增强处理。
以在VR、MR等各种三维立体可交互形态中的教学应用场景为例,假设所述任一客户端1为学生的终端,该任一客户端1的关联客户端既包括老师的终端,又包括学生A的终端,那么该任一客户端1可以在从服务器2接收到老师的终端所录制的音频流以及学生A的终端所录制的音频流时,可以将该老师的终端所录制的音频流的音量作增强处理,以及将学生A的终端所录制的音频流作音量衰减处理或者不作处理,由此使得该任一客户端1的用户可以更好的区分老师的终端所录制的音频流与学生A的终端所录制的音频流。即能更好地分别老师的声音和学生的声音。
在其他实施例中,所述步骤S1-S3中所提及的服务器与所述步骤S4-S8中所提及的服务器可以为不同的服务器。即用于为所述多个客户端1分配标识的服务器与用于接收该每个客户端1所录制的视频流的服务器可以是不同的服务器。
在其他实施例中,所述服务器2还可以从所述多个客户端1中设定一个客户端1作为管理端,以及将所述多个客户端中的其他客户端设定为被管理端。需要说明的是,所述服务器2可以将所述多个客户端1中的任意一个客户端1设定为管理端。
在一个实施例中,作为管理端的客户端1可以响应用户的操作,为作为管理端的客户端1更新关联客户端,还可以为作为被管理端的其他客户端中的每个客户端更新关联客户端。作为管理端的客户端1还向所述服务器2发送更新信号。该更新信号可以携带作为管理端的客户端1的关联客户端的标示,还可以携带作为被管理端的客户端1的标识以及该作为被管理端的客户端1的关联客户端的标识。
所述服务器2接收作为管理端的客户端1所发送的更新信号,所述服务器2可根据该更新信号,重新确定作为被管理端的客户端1的关联客户端,以及作为被管理端的客户端1的关联客户端。所述服务器2还可以将每个客户端1所对应的更新后的关联客户端所录制的音频流对应发送给该每个客户端。
举例而言,仍然以所述多个客户端1包括第一客户端、第二客户端、第三客户端、第四客户端,该四个客户端分别对应的标识为C1、C2、C3、C4为例。假设所述服务器2将所述第一客户端设置为了管理端,以及将所述第二客户端、第三客户端、第四客户端设置为了被管理端,所述服务器2接收到所述第一客户端所发送的更新信号,该更新信号携带了作为被管理端的所述第二客户端的标识以及该第二客户端的关联客户端的标识C1和C3,那么所述服务器2则可确定所述第二客户端的更新后的关联客户端为所述第一客户端和所述第三客户端,所述服务器2则将所述第一客户端实时录制的视频流和所述第三客户端实时录制的视频流发送到所述第二客户端。
在一个实施例中,作为管理端的所述客户端1还可以响应用户的操作向所述服务器2发送禁言指令,该禁言指令携带了指定的客户端的标识,所述指定的客户端为所述多个客户端1中的任一客户端。所述服务器2还可以于接收到所述禁言指令时,控制该指定的客户端关闭麦克风,或者不将该指定的客户端所录制的音频流发送给对应的客户端,该对应的客户端是指所述多个客户端1中,设定了该指定的客户端为关联客户端的客户端1。
举例而言,仍然假设所述服务器2将所述第一客户端设置为了管理端,所述第一客户端响应用户的操作向所述服务器2发送禁言指令,该禁言指令携带了所述第三客户端的标识,所述服务器2则可以于接收到该禁言指令时,控制该第三客户端关闭麦克风。
具体地,在实际运用中,以在VR、MR等各种三维立体可交互形态中的教学应用场景为例,假设将老师的终端(也即是客户端)设定为了管理端,以及将各个学生的终端(也即是客户端)设定了被管理端,若老师根据其中某个学生的音频流发现该某个学生的声音影响到教学,则老师的终端可以响应老师的操作向所述服务器2发送所述禁言指令,该禁言指令携带了该某个学生的终端的标识。所述服务器2则可以控制该某个学生的终端关闭麦克风,或者不将该某个学生的终端所录制的音频流发送给对应的终端,该对应的终端是指设定了该某个学生的终端为关联终端的客户端。
在一个实施例中,作为管理端的所述客户端1或者所述指定的客户端还可以响应用户的操作向所述服务器2发送解除禁言的请求。所述服务器2可以于接收到该请求时控制所述客户端1开启麦克风。
在其他实施例中,所述指定的客户端1也可以于该指定的客户端1满足第一指定条件时,向所述服务器2发送所述禁言指令,或者直接将麦克风10关闭。所述指定的客户端还可以于该指定的客户端满足第二指定条件时向所述服务器2发送解除禁言的请求。所述服务器2可以于接收到该请求时控制所述客户端1开启麦克风。
所述第一指定条件可以是指该指定的客户端1检测到所述麦克风10出现故障的信号。所述第二指定条件可以是指该指定的客户端1检测到所述指定的客户端的麦克风没有出现故障的信号。
在其他实施例中,当所述服务器2从所述多个客户端1中设定了一个客户端1作为管理端,以及将所述多个客户端中的其他客户端设定为了被管理端时,作为管理端的所述客户端1还可以通过为作为被管理端的每个客户端1设置关联客户端,将作为被管理端的所述其他客户端划分为两组或多组。
所述服务器2还获取作为管理端的所述客户端1的用户与所述两组中的每组所包括的每个客户端1的用户在虚拟场景中的距离。
当作为管理端的所述客户端1的用户与所述两组中的任意一组所包括的任意一个客户端1的用户在所述虚拟场景中的距离,小于作为管理端的所述客户端1的用户与另一组所包括的每个客户端1的用户在所述虚拟场景中的距离时,所述服务器2将作为管理端的所述客户端1的关联客户端更新为所述任意一组所包括的所有客户端1;并将作为管理端的所述客户端1的关联客户端所录制的音频流发送给作为管理端的所述客户端1。
如前面所述,所述虚拟场景可以是指在VR、MR等各种三维立体可交互形态中的教学应用场景。
在一个实施例中,所述获取作为管理端的所述客户端1的用户与所述两组中的每组所包括的每个客户端1的用户在虚拟场景中的距离包括:根据作为管理端的所述客户端1的用户在所述虚拟场景中的三维坐标与所述两组中的每组所包括的每个客户端1的用户在所述虚拟场景中的三维坐标,计算作为管理端的所述客户端1的用户与所述两组中的每组所包括的每个客户端1的用户在虚拟场景中的距离。
举例而言,仍然以所述多个客户端1包括第一客户端、第二客户端、第三客户端、第四客户端为例。假设所述服务器2将所述第一客户端设置为了管理端,以及将所述第二客户端、第三客户端、第四客户端设置为了被管理端,作为管理端的所述第一客户端可以通过为作为被管理端的所述第二客户端、第三客户端、第四客户端分别设置关联客户端,将作为被管理端的所述第二客户端、第三客户端、第四客户端划分为两组。例如,作为管理端的所述第一客户端可以设置所述第三客户端为所述第二客户端的关联客户端,并设置所述第二客户端为所述第三客户端的关联客户端,以及设置所述第三客户端没有关联客户端,由于所述服务器2是根据关联客户端来转发音频流的,因此,将所述第二客户端和第三客户端划分到了第一组,互相之间可以听到对方的语音,将所述第三客户端划分到了第二组,听不到所述第一组的语音。
上述图2详细介绍了本发明的多人语音交互方法,下面结合图3和图4,对实现所述多人语音交互方法的软件系统的功能模块以及实现所述多人语音交互方法的硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
参阅图3所示,是本发明较佳实施例提供的多人语音交互系统的模块图。请同时参阅图4示,是本发明较佳实施例提供的客户端1和服务器2的框架图。
在一些实施例中,所述多人语音交互系统30运行于客户端1和服务器2中。所述多人语音交互系统30可以包括多个由程序代码段所组成的功能模块。所述多人语音交互系统30中的各个程序段的程序代码可以存储于客户端1的存储器11中,并由客户端1的至少一个处理器12所执行;所述多人语音交互系统30中的各个程序段的程序代码还可以存储于服务器2的存储器21中,并由服务器2的至少一个处理器22所执行,以实现多人语音交互功能(详见图2描述)。
本实施例中,所述多人语音交互系统30根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:第一执行模块301、第二执行模块302。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。
在一个实施例中,当所述多人语音交互系统30运行于服务器2中时,所述服务器2的处理器22执行所述第一执行模块301。当所述多人语音交互系统30运行于客户端1中时,所述客户端1的处理器12执行所述第二执行模块302。在本实施例中,关于各模块的功能将在后续的实施例中详述。
具体地,所述第一执行模块301为所述多个客户端1中的每个客户端1分配一个标识;所述第一执行模块301将所述多个客户端1中的每个客户端1的标识发送给所述多个客户端1中的每个客户端1;所述第二执行模块302接收所述第一执行模块301发送的该多个客户端1中的每个客户端1的标识;所述第二执行模块302根据所述多个客户端1中每个客户端1的标识设定该每个客户端1的关联客户端,并将该每个客户端1的关联客户端的标识发送到所述服务器2;所述第一执行模块301接收所述多个客户端1中的每个客户端1所发送的该每个客户端1的关联客户端的标识,根据所述标示确定所述多个客户端1中的每个客户端1的关联客户端;所述第二执行模块302利用麦克风录制该每个客户端1的用户的音频流,并将所录制的音频流发送到所述服务器2;所述第一执行模块301接收所述第二执行模块302所发送的该每个客户端1所录制的音频流;所述第一执行模块301将所述每个客户端1的关联客户端所录制的音频流对应发送到该每个客户端1;及所述第二执行模块302接收所述第一执行模块301发送的该每个客户端1的关联客户端所录制的音频流,并播放该音频流。
请再参阅图4所示,为本发明较佳实施例提供的客户端1和服务器2的框架图。在本发明较佳实施例中,所述客户端1包括麦克风10、存储器11、至少一个处理器12、显示屏13。所述服务器2包括存储器21、至少一个处理器22。本领域技术人员应该了解,图4示出的客户端1和服务器2的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述客户端1和服务器2还可以分别包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述客户端1和服务器2分别包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
需要说明的是,所述客户端1和服务器2仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器11用于存储程序代码和各种数据,例如所述存储器11用于存储安装在客户端1中的多人语音交互系统30,并在客户端1的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器11包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的计算机可读的存储介质。
在一些实施例中,所述至少一个处理器12可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述客户端1的控制核心(Control Unit),利用各种接口和线路连接整个客户端1的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行客户端1的各种功能和处理数据,例如执行多人语音交互的功能。
尽管未示出,所述客户端1还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器12逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述客户端1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是服务器、个人电脑等)或处理器(processor)执行本发明各个实施例所述方法的部分。
在进一步的实施例中,结合图3,所述至少一个处理器12可执行所述客户端1的操作装置以及安装的各类应用程序(如所述的多人语音交互系统30)、程序代码等,例如,上述的各个模块。
所述存储器11中存储有程序代码,且所述至少一个处理器12可调用所述存储器11中存储的程序代码以执行相关的功能。例如,图3中所述的各个模块是存储在所述存储器11中的程序代码,并由所述至少一个处理器12所执行,从而实现所述各个模块的功能以达到多人语音交互的目的。
在本发明的一个实施例中,所述存储器11存储一个或多个指令(即至少一个指令),所述至少一个指令被所述至少一个处理器12所执行以实现图2所示的多人语音交互的目的。
在一些实施例中,所述存储器21用于存储程序代码和各种数据,例如所述存储器21用于存储安装在所述服务器2中的多人语音交互系统30,并在服务器2的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器21包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的计算机可读的存储介质。
在一些实施例中,所述至少一个处理器22可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器22是所述服务器2的控制核心(Control Unit),利用各种接口和线路连接整个服务器2的各个部件,通过运行或执行存储在所述存储器21内的程序或者模块,以及调用存储在所述存储器21内的数据,以执行服务器2的各种功能和处理数据,例如执行多人语音交互的功能。
尽管未示出,所述服务器2还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器22逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述服务器2还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是服务器、个人电脑等)或处理器(processor)执行本发明各个实施例所述方法的部分。
在进一步的实施例中,结合图3,所述至少一个处理器22可执行所述服务器2的操作装置以及安装的各类应用程序(如所述的多人语音交互系统30)、程序代码等,例如,上述的各个模块。
所述存储器21中存储有程序代码,且所述至少一个处理器22可调用所述存储器21中存储的程序代码以执行相关的功能。例如,图3中所述的各个模块是存储在所述存储器21中的程序代码,并由所述至少一个处理器22所执行,从而实现所述各个模块的功能以达到多人语音交互的目的。
在本发明的一个实施例中,所述存储器21存储一个或多个指令(即至少一个指令),所述至少一个指令被所述至少一个处理器22所执行以实现图2所示的多人语音交互的目的。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (5)
1.一种多人语音交互方法,应用于与多个客户端通讯连接的服务器中,其特征在于,该方法包括:
为所述多个客户端中的每个客户端分配一个标识;
将所述多个客户端中的每个客户端的标识发送给所述多个客户端中的每个客户端;
接收所述多个客户端中的每个客户端所发送的该每个客户端的关联客户端的标识,基于所述标识确定该每个客户端的关联客户端;
接收所述多个客户端中的每个客户端所发送的该每个客户端所录制的用户的音频流;及
将该每个客户端的关联客户端所录制的用户的音频流对应发送到该每个客户端;
从所述多个客户端中确定一个客户端作为管理端,以及将所述多个客户端中的其他客户端作为被管理端;
当作为管理端的所述客户端通过为作为被管理端的每个客户端设置关联客户端,将作为被管理端的所述其他客户端划分为两组时,获取作为管理端的所述客户端的用户与所述两组中的每组所包括的每个客户端的用户在虚拟场景中的距离;
当作为管理端的所述客户端的用户与所述两组中的任意一组所包括的任意一个客户端的用户在所述虚拟场景中的距离,小于作为管理端的所述客户端的用户与另一组所包括的每个客户端的用户在所述虚拟场景中的距离时,将作为管理端的所述客户端的关联客户端更新为所述任意一组所包括的所有客户端;及
将作为管理端的所述客户端的关联客户端所录制的音频流发送给作为管理端的所述客户端。
2.如权利要求1所述的多人语音交互方法,其特征在于,
所述获取作为管理端的所述客户端的用户与所述两组中的每组所包括的每个客户端的用户在虚拟场景中的距离包括:
根据作为管理端的所述客户端的用户在所述虚拟场景中的三维坐标与所述两组中的每组所包括的每个客户端的用户在所述虚拟场景中的三维坐标,计算作为管理端的所述客户端的用户与所述两组中的每组所包括的每个客户端的用户在虚拟场景中的距离。
3.如权利要求1所述的多人语音交互方法,其特征在于,该方法还包括:
所述服务器于接收到作为管理端的所述客户端发送的禁言指令时,控制指定的客户端关闭麦克风,其中,该禁言指令携带了所述指定的客户端的标识,所述指定的客户端为所述多个客户端中的任一客户端。
4.如权利要求3所述的多人语音交互方法,其特征在于,该方法还包括:
所述服务器于接收到作为管理端的所述客户端发送解除禁言的请求时,控制所述指定的客户端开启麦克风。
5.一种多人语音交互系统,包括多个客户端,以及与该多个客户端通讯连接的服务器,其特征在于:
所述服务器为所述多个客户端中的每个客户端分配一个标识;
所述服务器将所述多个客户端中的每个客户端的标识发送给所述多个客户端中的每个客户端;
所述多个客户端中的每个客户端接收所述服务器发送的该多个客户端中的每个客户端的标识;
所述多个客户端中的每个客户端,根据所述多个客户端中每个客户端的标识设定该每个客户端的关联客户端,并将该每个客户端的关联客户端的标识发送到所述服务器;
所述服务器接收所述多个客户端中的每个客户端所发送的该每个客户端的关联客户端的标识;
所述多个客户端中的每个客户端利用麦克风录制该每个客户端的用户的音频流,并将所录制的音频流发送到所述服务器;
所述服务器接收所述多个客户端中的每个客户端所发送的该每个客户端所录制的音频流;
所述服务器将所述每个客户端的关联客户端所录制的音频流对应发送到该每个客户端;
所述服务器从所述多个客户端中确定一个客户端作为管理端,以及将所述多个客户端中的其他客户端作为被管理端;
当作为管理端的所述客户端通过为作为被管理端的每个客户端设置关联客户端,将作为被管理端的所述其他客户端划分为两组时,所述服务器获取作为管理端的所述客户端的用户与所述两组中的每组所包括的每个客户端的用户在虚拟场景中的距离;
当作为管理端的所述客户端的用户与所述两组中的任意一组所包括的任意一个客户端的用户在所述虚拟场景中的距离,小于作为管理端的所述客户端的用户与另一组所包括的每个客户端的用户在所述虚拟场景中的距离时,所述服务器将作为管理端的所述客户端的关联客户端更新为所述任意一组所包括的所有客户端;及
所述服务器将作为管理端的所述客户端的关联客户端所录制的音频流发送给作为管理端的所述客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010788348.7A CN111818091B (zh) | 2020-08-07 | 2020-08-07 | 多人语音交互系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010788348.7A CN111818091B (zh) | 2020-08-07 | 2020-08-07 | 多人语音交互系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111818091A CN111818091A (zh) | 2020-10-23 |
CN111818091B true CN111818091B (zh) | 2022-10-25 |
Family
ID=72864631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010788348.7A Active CN111818091B (zh) | 2020-08-07 | 2020-08-07 | 多人语音交互系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111818091B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1997009A (zh) * | 2006-01-05 | 2007-07-11 | 华为技术有限公司 | 一种即时消息过滤方法 |
CN102176713A (zh) * | 2011-03-22 | 2011-09-07 | 宋健 | 一种强化单路视频质量的多人网络视频聊天系统的实现方法 |
CN103297434A (zh) * | 2013-06-03 | 2013-09-11 | 腾讯科技(深圳)有限公司 | 一种数据处理的方法、用户端、服务器及系统 |
CN103338145A (zh) * | 2013-06-03 | 2013-10-02 | 腾讯科技(深圳)有限公司 | 控制语音数据传输的方法、装置及系统 |
CN105009599A (zh) * | 2012-12-31 | 2015-10-28 | 谷歌公司 | 精彩时刻的自动标识 |
CN105207899A (zh) * | 2015-10-21 | 2015-12-30 | 苏州乐聚一堂电子科技有限公司 | 即时通讯群组会话方法及设备 |
CN105357208A (zh) * | 2015-11-20 | 2016-02-24 | 深圳联友科技有限公司 | 一种多人网络音频会话方法及系统 |
WO2016150270A1 (zh) * | 2015-03-23 | 2016-09-29 | 腾讯科技(深圳)有限公司 | 群组会话消息处理方法和装置 |
CN106230611A (zh) * | 2015-06-02 | 2016-12-14 | 杜比实验室特许公司 | 具有智能重传和插值的服务中质量监视系统 |
CN106506177A (zh) * | 2016-10-17 | 2017-03-15 | 捷开通讯(深圳)有限公司 | 一种群组聊天的方法、服务器及客户端 |
CN108234790A (zh) * | 2018-01-10 | 2018-06-29 | 网易(杭州)网络有限公司 | 多人语音通信方法、装置、终端设备和存储介质 |
CN109615961A (zh) * | 2019-01-31 | 2019-04-12 | 华中师范大学 | 一种课堂教学师生互动网络系统与方法 |
CN111367493A (zh) * | 2020-03-06 | 2020-07-03 | 广州视源电子科技股份有限公司 | 多媒体会议中音频的控制方法和装置 |
CN111951821A (zh) * | 2020-08-13 | 2020-11-17 | 腾讯科技(深圳)有限公司 | 通话方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060221869A1 (en) * | 2005-03-29 | 2006-10-05 | Teck-Kuen Chua | System and method for audio multicast |
US20120182384A1 (en) * | 2011-01-17 | 2012-07-19 | Anderson Eric C | System and method for interactive video conferencing |
-
2020
- 2020-08-07 CN CN202010788348.7A patent/CN111818091B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1997009A (zh) * | 2006-01-05 | 2007-07-11 | 华为技术有限公司 | 一种即时消息过滤方法 |
CN102176713A (zh) * | 2011-03-22 | 2011-09-07 | 宋健 | 一种强化单路视频质量的多人网络视频聊天系统的实现方法 |
CN105009599A (zh) * | 2012-12-31 | 2015-10-28 | 谷歌公司 | 精彩时刻的自动标识 |
CN103297434A (zh) * | 2013-06-03 | 2013-09-11 | 腾讯科技(深圳)有限公司 | 一种数据处理的方法、用户端、服务器及系统 |
CN103338145A (zh) * | 2013-06-03 | 2013-10-02 | 腾讯科技(深圳)有限公司 | 控制语音数据传输的方法、装置及系统 |
WO2016150270A1 (zh) * | 2015-03-23 | 2016-09-29 | 腾讯科技(深圳)有限公司 | 群组会话消息处理方法和装置 |
CN106230611A (zh) * | 2015-06-02 | 2016-12-14 | 杜比实验室特许公司 | 具有智能重传和插值的服务中质量监视系统 |
CN105207899A (zh) * | 2015-10-21 | 2015-12-30 | 苏州乐聚一堂电子科技有限公司 | 即时通讯群组会话方法及设备 |
CN105357208A (zh) * | 2015-11-20 | 2016-02-24 | 深圳联友科技有限公司 | 一种多人网络音频会话方法及系统 |
CN106506177A (zh) * | 2016-10-17 | 2017-03-15 | 捷开通讯(深圳)有限公司 | 一种群组聊天的方法、服务器及客户端 |
CN108234790A (zh) * | 2018-01-10 | 2018-06-29 | 网易(杭州)网络有限公司 | 多人语音通信方法、装置、终端设备和存储介质 |
CN109615961A (zh) * | 2019-01-31 | 2019-04-12 | 华中师范大学 | 一种课堂教学师生互动网络系统与方法 |
CN111367493A (zh) * | 2020-03-06 | 2020-07-03 | 广州视源电子科技股份有限公司 | 多媒体会议中音频的控制方法和装置 |
CN111951821A (zh) * | 2020-08-13 | 2020-11-17 | 腾讯科技(深圳)有限公司 | 通话方法和装置 |
Non-Patent Citations (2)
Title |
---|
Controllable Multi-party Audio/Video Collaboration Based on Multicast over CERNET;XuanZhang et al;《Springer》;20071231;全文 * |
基于服务器转发的实时语音会议系统的设计与实现;陈兴鹏等;《重庆科技学院学报(自然科学版)》;20090615(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111818091A (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015517709A (ja) | コンテキストに基づくメディアを適応配信するシステム | |
CN112995691A (zh) | 直播数据处理方法、装置、电子设备及存储介质 | |
US20200110461A1 (en) | Virtual reality device | |
CN109887505A (zh) | 用于唤醒设备的方法和装置 | |
CN112184469B (zh) | 群组互动方法、装置、设备以及存储介质 | |
CN108600680A (zh) | 视频处理方法、终端及计算机可读存储介质 | |
CN111258530B (zh) | 音频播放控制方法和服务器以及音频播放系统 | |
CN113709151A (zh) | 用于登录云应用的方法、装置、设备、介质和产品 | |
CN110134480B (zh) | 用户触发操作的处理方法、装置、电子设备和存储介质 | |
CN111259066A (zh) | 服务器集群数据同步方法及装置 | |
US10755707B2 (en) | Selectively blacklisting audio to improve digital assistant behavior | |
CN111818091B (zh) | 多人语音交互系统及方法 | |
CN102984370A (zh) | 一种基于安卓的无线网络下变声通话的方法 | |
CN116450347A (zh) | 视频的多任务处理方法、视频分析设备和存储介质 | |
CN109686415A (zh) | 一种数据传输方法、管理平台、电子设备及存储介质 | |
CN114124591A (zh) | 发言用户选定方法、装置、电子设备及存储介质 | |
CN111135557B (zh) | 用于多屏的交互方法和装置 | |
CN106878761A (zh) | 直播互动方法、装置及服务器 | |
CN112433613A (zh) | 启动功能的方法、系统、电子设备及介质 | |
CN109246281B (zh) | 一种来电接听方法、系统、服务器和存储介质 | |
CN109241787A (zh) | 图像输入设备的调用检测方法、设备及计算机可读存储介质 | |
CN109559013A (zh) | 基于小游戏的风险测试方法及装置、电子设备及可读存储介质 | |
CN111142740A (zh) | 一种数据更新方法、装置及存储介质 | |
CN108734765A (zh) | 一种虚拟主持人的显示方法和系统、存储介质 | |
CN112783860B (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 |