CN113892080A - 将多个端点表示为一个端点的设备聚合 - Google Patents
将多个端点表示为一个端点的设备聚合 Download PDFInfo
- Publication number
- CN113892080A CN113892080A CN202080040166.XA CN202080040166A CN113892080A CN 113892080 A CN113892080 A CN 113892080A CN 202080040166 A CN202080040166 A CN 202080040166A CN 113892080 A CN113892080 A CN 113892080A
- Authority
- CN
- China
- Prior art keywords
- audio
- display devices
- buffer
- display device
- channels
- 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
Links
- 230000002776 aggregation Effects 0.000 title description 2
- 238000004220 aggregation Methods 0.000 title description 2
- 239000000872 buffer Substances 0.000 claims abstract description 204
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000004891 communication Methods 0.000 claims abstract description 32
- 230000004931 aggregating effect Effects 0.000 claims abstract description 9
- 230000007423 decrease Effects 0.000 claims description 12
- 238000012163 sequencing technique Methods 0.000 claims description 11
- 230000003247 decreasing effect Effects 0.000 claims 2
- 230000004044 response Effects 0.000 description 27
- 238000009877 rendering Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/165—Management of the audio stream, e.g. setting of volume, audio stream path
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
- H04R3/12—Circuits for transducers, loudspeakers or microphones for distributing signals to two or more loudspeakers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2499/00—Aspects covered by H04R or H04S not otherwise provided for in their subgroups
- H04R2499/10—General applications
- H04R2499/15—Transducers incorporated in visual displaying devices, e.g. televisions, computer displays, laptops
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Otolaryngology (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
用于聚合与计算机设备通信的多个显示设备并且将显示设备表示为单个音频端点的方法和设备,可以包括从应用接收音频数据。该方法和设备可以包括将与计算机设备通信的多个显示设备的音频数据组合到音频缓冲器中,该音频缓冲器具有由多个显示设备的音频信道的总数确定的大小。该方法和设备可以包括将音频缓冲器划分为区,并且标识对应于多个显示设备的每个显示设备的音频缓冲器的区的子集。该方法和设备可以包括传输对应于多个显示设备的每个显示设备的音频缓冲器区的子集。
Description
背景技术
本公开涉及与计算机设备通信的多个设备。
当你在会议室中连接多个设备时,每个设备可能具有音频,并且可能在会议期间被用于发出音频。当在会议室中设置设备和/或在会议期间协调设备的使用时,用户可能需要单独地管理每个设备。取决于设备的数目和/或设备的使用,这可能变得麻烦。
因此,本领域中有针对与计算机设备通信的多个设备的管理的改进的需要。
发明内容
以下呈现了本公开的一个或多个实现的简化的发明内容,以便提供对这样的实现的基本理解。本发明内容不是对所有预期的实现的广泛的概述,也不旨在标识所有实现的关键或者关键元素,也不旨在描绘任何或者所有实现的范围。其唯一目的是以简化的形式呈现本公开的一个或多个实现的一些概念,作为稍后呈现的具体实施方式的序言。
示例实现涉及计算机设备。计算机设备可以包括存储器以存储数据和指令、至少一个处理器被配置为与存储器通信、以及操作系统被配置为与存储器和处理器通信,其中操作系统可操作以:从应用接收音频数据;将针对与计算机设备通信的多个显示设备的音频数据组合到音频缓冲器中,该音频缓冲器具有由多个显示设备的音频信道的总数确定的大小;将音频缓冲器划分为区,其中区的总数对应于音频缓冲器的大小;标识对应于多个显示设备中的每个显示设备的音频缓冲器的区的子集;以及传输对应于多个显示设备中的每个显示设备的音频缓冲器的区的子集。
另一示例实现涉及一种用于聚合与计算机设备通信的多个显示设备的方法。方法可以包括在计算机设备上执行的操作系统处接收来自于应用的音频数据。方法可以包括将与计算机设备通信的多个显示设备的音频数据组合到音频缓冲器中,音频缓冲器的大小由多个显示设备的音频信道的总数确定。方法可以包括将音频缓冲器划分为区,其中区的总数对应于音频缓冲器的大小。方法可以包括标识对应于多个显示设备中的每个显示设备的音频缓冲器的区的子集。方法可以包括发送对应于多个显示设备中的每个显示设备的音频缓冲器的区的子集。
另一示例实现涉及存储由计算机设备可执行的指令的计算机可读介质。计算机可读介质可以包括用于使计算机设备接收来自于应用的音频数据的至少一个指令。计算机可读介质可以包括用于使计算机设备将与计算机设备通信的多个显示设备的音频数据组合到具有由多个显示设备的音频信道的总数确定的大小的音频缓冲器中的至少一个指令信道的总数。计算机可读介质可以包括用于使计算机设备将音频缓冲器划分为多个区的至少一个指令,其中区的总数对应于音频缓冲器的大小。计算机可读介质可以包括用于使计算机设备标识对应于多个显示设备中的每个显示设备的音频缓冲器的区的子集的至少一个指令。计算机可读介质可以包括用于使计算机设备发送对应于多个显示设备中的每个显示设备的音频缓冲器的区的子集。
与本公开的实现相关的附加的优点和新颖特征将在下文的描述中区地被阐述,并且在阅读下文或者通过实践学习后,区将对本领域的技术人员变得更加明显。
附图说明
在图中:
图1是根据本公开的实现的与多个显示设备通信的示例计算机设备的示意性框图;
图2A是根据本公开的实现的标识音频缓冲器中对应于多个显示设备中的每个显示设备的显示设备呈现缓冲器的区的示例;
图2B是根据本公开的实现的标识对应于多个显示设备中的每个显示设备的显示设备捕获缓冲器的音频缓冲器的区的示例;
图3是根据本公开的实现的使用与计算机设备通信的多个显示设备的视频会议的示例;
图4是根据本公开的实现的用于聚合与计算机设备通信的多个显示设备并且将显示设备表示为单个音频端点的方法的示例;以及
图5是根据本公开的实现的示例设备的示意性框图。
具体实施方式
本公开涉及用于聚合音频数据以发送到与计算机设备通信的多个显示设备和/或聚合从多个显示设备所捕获的所接收的音频的设备和方法。设备和方法可以将显示设备表示为单个音频端点。例如,多个显示设备可以经由通用串行总线(USB)与计算机设备通信。设备和方法可以包括与计算机设备通信的一个或多个显示设备。显示设备可以具有至少一个显示器和相应的音频输入和/或音频输出。显示设备可以是有能力呈现信息、捕获音频和/或发出音频的任何类型的显示器、监视器、可视呈现设备、计算机设备和/或物理面板。每个显示设备可以包括用于捕获音频或者发出音频的任何数目的信道(例如扬声器和/或麦克风)。显示设备的每个扬声器和/或麦克风可以对应于任何数目的信道。例如,扬声器和/或麦克风可以是具有左信道和右信道的双信道立体声。
设备和方法可以使用音频聚合器驱动器,该驱动器将来自所有显示设备的音频聚合成单个音频端点。因此,音频聚合器驱动器可以从每个显示设备创建扬声器阵列,使得应用和/或系统可以将所有显示设备作为单个立体声设备来查看,而不是将每个显示设备暴露给用户并且让用户独立地配置每个显示设备。
在一个实现方式中,设备和方法可以使用两层驱动器,诸如,计算机设备上的音频聚合器驱动器和计算机设备上的多个单元驱动器。每个单元驱动器可以与多个显示设备中的一个显示设备相关联,使得每个显示设备可以通过单元驱动器在计算机设备上被表示。在另外,每个单元驱动器可以与显示设备捕获缓冲器通信以收集由显示设备上的一个或多个麦克风所捕获的音频和/或与显示设备呈现缓冲器通信以接收音频以经由显示设备上的扬声器输出。音频可以由应用发送到音频聚合器驱动器,并且音频聚合器驱动器可以通过代表每个显示设备的单元驱动器将音频分发至每个显示设备。
另外,音频聚合器驱动器可以接收由显示设备捕获缓冲器所捕获的任何音频,并且可以将所捕获的音频发送到应用。例如,显示设备上的麦克风或者其他捕获端点可以获取对显示设备的音频输入,诸如,但不限于,说话的人、显示设备附近的任何音频、或者由显示设备播放的音乐或者显示设备附近的音乐。每个显示设备可以具有多个信道以发射和/或捕获音频,并且可以代表系统中的音频端点。在特定的显示设备上,可能具有对应于应用的多个窗口和/或虚拟面板。
方法和设备可以使用音频聚合器驱动器将所有显示设备组合成单个音频端点,并且将显示设备用作一个音频端点。例如,音频聚合器驱动器可以使用所有显示设备的聚合音频数据生成单个音频缓冲器。音频缓冲器可以具有对应于由多个显示设备所支持的信道的总数的大小。音频聚合器驱动器可以标识对应于每个显示设备的音频缓冲器的子区,使得音频数据可以从音频缓冲器被分发到对应的显示设备呈现缓冲器。通过将来自多个显示设备的所有信道一起交叉到单个音频缓冲器中,多个显示设备可以被表示为单个音频端点,并且可以被一起配置,而不用将每个显示设备单独暴露给计算机设备的应用和/或用户。因此,显示设备可以向应用表示为支持由多个显示设备所支持的信道的总数的单个端点。
另外,音频聚合器驱动器可以将从显示设备捕获缓冲器所接收的所捕获的音频组合成单个音频缓冲器。音频聚合器驱动器可以将接收到的所捕获的音频呈现给应用以由应用使用。
通过将音频聚合成单个端点,多个显示设备可以被表示为单个音频端点,并且可以被一起配置,而不用向应用和/或用户单独暴露每个显示设备。
现在参考图1,用于聚合显示设备并且将显示设备表示为单个端点的系统100,可以包括经由有线或者无线网络104与多个显示设备106、108、110、112通信的计算机设备102。在一个实现方式中,显示设备106、108、110、112可以经由USB与计算机设备102通信。多个显示设备106、108、110、112可以是能够呈现信息、捕获音频和/或发出音频的任何类型的显示器、监视器、可视呈现设备、计算机设备和/或物理面板。另外,每个显示设备106、108、110、112可以包括用于捕获音频和/或发出音频的任何数目的信道。例如,显示设备106可以包括支持两个信道(例如,左右信道)的扬声器28,并且可以包括麦克风30。显示设备108可以包括支持两个信道(例如,左信道和右信道)的扬声器32,并且可以包括麦克风34。显示设备110可以包括支持两个信道(例如,左信道和右信道)的扬声器36,并且可以包括麦克风38。显示设备112可以包括支持两个信道(例如,左信道和右信道)的扬声器40,并且可以包括麦克风42。显示设备106、108、110、112的每个扬声器28、32、36、40和/或麦克风30、34、38、42可以对应于任何数目的信道。
多个显示设备106、108、110、112中的每个显示设备可以包括用于捕获和/或输出音频的每个音频设备实体的音频缓冲器。例如,多个显示设备106、108、110、112可以包括单独的显示设备呈现缓冲器43、45、47、49,其可以接收音频数据12以经由扬声器28、32、36和/或40输出。显示设备呈现缓冲器43、45、47、49可以接收对应于特定显示设备106、108、110、112的特定信道的音频数据12。
另外,多个显示设备106、108、110、112可以包括单独的显示设备捕获缓冲器31、33、35、37,其可以由麦克风30、34、38、42接收捕获的音频16、17、19、21。例如,如果个人对显示设备106、108、110、112上的一个或多个麦克风30、34、38、42讲话,则由麦克风30、34、38、42所接收的所捕获的音频16、17、19、21可以被存储在显示设备捕获缓冲器31、33、35、37中。
多个显示设备106、108、110、112可以被组合在一起并且作为一个显示设备被使用。例如,在计算机设备102上执行的一个或多个应用10可以由显示设备106、108、110、112中的任何一个使用。应用10可以跨多个显示设备106、108、110、112分布,而不用被限于单个显示设备106、108、110、112。在特定显示设备106、108、110、112上,可以存在多个窗口和/或虚拟面板,其可以对应于一个或多个应用10。例如,应用10可以具有对应于显示设备106、108、110、112上的窗口的图形用户界面(UI)。因此,协作的和高效的工作的全新维度可以使用系统100被创建。
计算机设备102可以包括可连接到网络的任何移动或者固定计算机设备。计算机设备102可以是,例如计算机设备,诸如桌面型计算机或者膝上型计算机或者平板计算机、物联网(IOT)设备、蜂窝电话、游戏设备、混合现实或者虚拟现实设备、音乐设备、电视、导航系统、照相机、个人数字助理(PDA)或者手持设备,或者具有与一个或多个其他设备的有线和/或无线连接能力的任何其他计算机设备。
计算机设备102可以包括由处理器48和/或存储器50可执行的操作系统111。计算机设备102的存储器50可以被配置为存储定义操作系统111和/或与操作系统111相关联的数据和/或计算机可执行指令,并且处理器48可以执行这样的数据和/或指令以实例化操作系统111。存储器50的示例可以包括但不限于由计算机可用的存储器类型,诸如,随机存取存储器(RAM)、只读存储器(ROM)、磁带、磁盘、光盘、易失性存储器、非易失性存储器及其任何组合。处理器48的示例可以包括但不限于如本文所描述的专门地编程的任何处理器,包括控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上系统(SoC)或其他可编程逻辑或者状态机。
操作系统111可以包括可以初始化和/或配置系统100的设置组件14。例如,设置组件14可以确定与计算机设备102通信的显示设备18的总数。例如,显示设备18的总数可以由计算机设备102的用户预先确定,和/或可以经由例如显示器44的用户界面46接收用户输入,指示系统100的显示设备18的总数。随着显示设备被添加到系统100和/或从系统100移除,显示设备18的总数必要时可以增加和/或减少。
设置组件14还可以确定系统100中音频信道20的总数。每个显示设备106、108、110、112可以提供关于所支持的音频信道数目的信息。例如,设置组件14可以从显示设备106、108、110、112中的每个显示设备接收硬件信息,该硬件信息标识显示设备106、108、110、112可以具有多少信道,显示设备106、108、110、112可以支持多少信道,显示设备106、108、110、112可以是高速设备或者超高速设备,显示设备106、108、112可以支持多少音频呈现端点设置组件14可以捕获显示设备106、108、110、112的硬件信息,并且可以响应于从显示设备106、108、110、112学习的信息,构建针对系统100的拓扑。
音频信道20的总数可以通过将显示设备18的总数乘以所支持的音频信道的数目来计算。例如,显示设备106可以支持两个信道(例如,支持左和右两个信道的扬声器28);显示设备108可以支持两个信道(例如,支持左和右两个信道的扬声器32);显示设备110可以支持两个信道(例如,支持左和右两个信道的扬声器36);并且显示设备112可以支持两个信道(例如,支持左和右两个信道的扬声器40)。因此,音频信道20的总数可以是八个(例如,显示设备的总数乘以每个显示设备所支持的音频信道的数目)。
另外,设置组件14可以确定可以向显示设备106、108、110、112施加次序的设备定序25,使得音频可以响应于设备定序25被路由。例如,次序可以包括作为第一显示设备的显示设备106、作为第二显示设备的显示设备108、作为第三显示设备的显示设备110和作为第四显示设备的显示设备112。
来自设置组件14的信息可以由音频聚合器驱动器22用于组合多个显示设备106、108、110、112,并且将显示设备106、108、110、112表示为单个音频端点。
音频聚合器驱动器22可以从一个或多个应用10接收音频数据12。显示设备106、108、110、112可以作为所支持的音频信道的总数为20的单个音频端点被表示给应用10。因此,应用10可能不知道与计算机设备102通信的多个显示设备106、108、110、112。例如,应用10可以提供对应于两个数据信道的音频数据12,并且音频聚合器驱动器22可以在内部将音频数据12复制到显示设备106、108、110、112所支持的音频信道的总数20中(例如,八个信道)。音频数据12也可以在复制过程中被静音,以响应于确定一个或多个显示设备106、108、110、112可以不需要输出音频。
音频聚合器驱动器22可以针对音频数据12生成单个音频缓冲器24。音频缓冲器24可以具有对应于系统100所支持的音频信道20总数的大小23。因此,音频缓冲器24可以是基于系统100的参数动态的。随着显示设备106、108、110、112的数目增加和/或减少和/或音频信道20的总数增加和/或减少,音频缓冲器24的大小23可以增加和/或减少。
音频聚合器驱动器22还可以标识对应于每个显示设备106、108、110、112的音频缓冲器24的区,使得来自音频缓冲器24的音频数据12可以被分配到相应的显示设备呈现缓冲器43、45、47、49。通过将所有信道交叉到单个音频缓冲器24中,多个显示设备106、108、110、112可以被表示为单个音频端点,并且可以被一起配置,而不用将每个显示设备106、108、110、112单独暴露给应用10和/或计算机设备102的用户。因此,显示设备106、108、110、112可以作为支持八个信道的单个音频端点被表示给应用10。
音频聚合器驱动器22还可以向显示设备106、108、110、112发送音频控制26。音频控制26可以包括,但不限于,音量控制。例如,用户可以同时提高或者降低所有显示设备106、108、110、112的音量。音频聚合器驱动器22可以接收音量已经改变的通知,并且音频聚合器驱动器22可以向显示设备106、108、110、112发送音频控制26以修改音量。
音频聚合器驱动器22可以从显示设备捕获缓冲器31、33、35、37接收任何所捕获的音频16、17、19、21。所捕获的音频16、17、19、21可以包括来自麦克风30、34、38、42(例如,个人讲话)的音频和/或来自扬声器28、32、36、40的任何音频(例如,背景音乐)。例如,当个人(可能与显示设备106、108、110、112在同样的房间)在一个或多个麦克风30、34、38、42附近讲话时,从麦克风30、34、38、42所捕获的音频16、17、19、21可以被存储在一个或多个显示设备捕获缓冲器31、33、35、37中。
在一个实现方式中,音频聚合器驱动器22可以将所捕获的音频16、17、19、21组合到音频缓冲器24中。如上所述,音频聚合器驱动器22可以确定对应于每个显示设备106、108、110、112的音频缓冲器24的区。音频聚合器驱动器22可以使用设备定序25将所捕获的音频16、17、19、21组合成音频缓冲器24中对应于每个显示设备106、108、110、112的区,从而产生聚合的所捕获的音频数据15。
音频聚合器驱动器22可以向应用10提供组合的聚合的所捕获的音频数据15。例如,应用10可以使用所捕获的音频16、17、19、21来记录从扬声器28、32、36、40输出的和/或由麦克风30、34、38、42所接收的音频。
因此,通过将显示设备106、108、110、112聚合成单个音频端点,多个显示设备106、108、110、112可以被表示为应用10和/或用户的单个音频端点,并且可被一起配置,而不用将应用10和/或系统100的用户单独暴露给每个显示设备106、108、110、112。
现在参考图2A,示出了将音频缓冲器24划分为多个区并且识别对应于显示设备106、108、110、112的显示设备呈现缓冲器43、45、47、49的音频缓冲器24的区的示例。每个显示设备106、108、110、112可以具有相应的显示设备呈现缓冲器43、45、47、49,其可以接收音频数据12(图1)以通过扬声器28、32、36、40输出。例如,显示设备106可以具有显示设备呈现缓冲器43;显示设备108可以具有显示设备呈现缓冲器45;显示设备110可以具有显示设备呈现缓冲器47;并且显示设备112可以具有显示设备呈现缓冲器49。
音频聚合器驱动器22可以将音频缓冲器24划分为对应于音频缓冲器24的大小23(例如,所支持的音频信道20的总数)的多个区。例如,当音频缓冲器24的大小23等于八时,音频缓冲器24可以被分成八个不同的区。音频缓冲器24的每个区可以对应于显示设备106、108、110、112上的特定扬声器28、32、36、40。音频聚合器驱动器22可以标识多个区中对应于各种显示设备106、108、110、112的音频缓冲器24的子区。每个显示设备106、108、110、112的子区可以响应于每个显示设备106、108、110、112所支持的信道数目而被确定。
例如,显示设备106可以支持两个信道(例如,支持左右两个信道的扬声器28),并且音频聚合器驱动器22可以识别显示设备106的音频缓冲器24的前两个区(例如,区1和区2)。因此,音频缓冲器24的前两个区(例如,第1区和第2区)可以被传输到显示设备呈现缓冲器43。显示设备108可以支持两个信道(例如,支持左右两个信道的扬声器32),并且音频聚合器驱动器22可以标识显示设备108的音频缓冲器24的下两个区(例如,区3和区4)。因此,音频缓冲器24的第三区和第四区(例如,区3和区4)可以被传输到显示设备呈现缓冲器45。
显示设备110可以支持两个信道(例如,支持左右两个信道的扬声器36),并且音频聚合器驱动器22可以标识显示设备110的音频缓冲器24的下两个区(例如,区5和区6)。因此,音频缓冲器24的第五区和第六区(例如,区5和区6)可以被传输到显示设备呈现缓冲器47。显示设备112可以支持两个信道(例如,支持左右两个信道的扬声器40),并且音频聚合器驱动器22可以为显示设备112标识音频缓冲器24的剩余两个区(例如,区7和区8)。因此,音频缓冲器24的第七区和第八区(例如,区7和区8)可以被传输到显示设备呈现缓冲器49。
通过将音频数据12交织在一起,当从应用10接收音频数据12时,应用10可能仅知道支持多个信道的单个音频端点。因此,应用10可以提供对应于两个数据信道的音频数据12,并且音频聚合器驱动器22可以在内部将音频数据12复制到音频缓冲器24的八个区中。音频数据12也可以在复制过程中响应于确定一个或多个显示设备106、108、110、112可能不需要输出音频而被静音。音频聚合器驱动器22可以使用音频缓冲器24将音频数据12分配给每个显示设备106、108、110、112,以从扬声器28、32、36、40发出。
现在参考图2B,图示了将音频缓冲器24划分为多个区并且识别音频缓冲器24的对应于显示设备106、108、110、112的显示设备捕获缓冲器31、33、35、37的区的示例。如上文关于图2A所讨论的,音频缓冲器24可以被划分为对应于缓冲器的大小23的多个区。分配给特定显示设备捕获缓冲器31、33、35、37的区的数目的子集可以响应于显示设备106、108、110、112所支持的信道的总数20。例如,由于显示设备106、108、110、112支持两个信道,每个显示设备捕获缓冲器31、33、35、37可以接收音频缓冲器24中两个区的子集。
设备定序25可以被应用于区的数目,使得每个区可以对应于特定的显示设备捕获缓冲器31、33、35、37。设备定序25可以具有基于显示设备106、108、110、112与计算机设备102连接和/或通信的次序值的排列方式(或者相对位置)。例如,显示设备106可以是第一显示设备,并且音频缓冲器24的前两个区可以被分配到显示设备捕获缓冲器31。从显示设备106所捕获的音频16可以被存储在音频缓冲器24的前两个区中。
显示设备108可以是第二显示设备,并且音频缓冲器24的下两个区可以对应于显示设备捕获缓冲器31。从显示设备108所捕获的音频16可以被存储在音频缓冲器24的下两个区中。显示设备110可以是第三显示设备,并且音频缓冲器24的以下两个区可以与显示设备捕获缓冲器35相关联。从显示设备110所捕获的音频19可以被存储在音频缓冲器24的以下两个区中。
显示设备112可以是第四显示设备,并且音频缓冲器24的最后两个区可以对应于显示设备捕获缓冲器37。因此,从显示设备112所捕获的音频21可以被存储在音频缓冲器24的最后两个区中。
所捕获的音频16、17、19、21可以使用设备定序25被组合在一起,并且可以产生经聚合的所捕获的音频数据15。音频缓冲器24可以包括对应于从显示设备106、108、110、112输出音频的不同时间/序列的经聚合的所捕获的音频数据15。音频缓冲器24可以包括(在每个时间/序列)经聚合的所捕获的音频数据15的阵列。
另外,响应于显示设备106、108、110、112未捕获的音频16、17、19、21,经聚合的所捕获的音频数据15可以包括静音(例如,“0”)。例如,如果音乐正在显示设备106、108附近播放并且被麦克风30、34捕获,则所捕获的音频16、17可以包括所捕获的音乐。音乐可能不会被显示设备110、112的麦克风38、42捕获,并且显示设备110、112的所捕获的音频19、21可能包括静音。因此,经聚合的所捕获的音频数据15可以包括来自显示设备106、108的音乐的所捕获的音频16、17以及来自显示设备110、112的所捕获的音频19、21中的静音。
经聚合的所捕获的音频数据15可以被提供给应用10。通过将所捕获的音频16、17、19、21交织在一起,应用10可以仅知道提供聚合的所捕获的音频数据15的单个音频端点。
现在参考图3,图示了视频会议的示例,其中来自与计算机设备102通信的显示设备106、108、110、112的音频可以被组合在一起成为单个音频缓冲器24。多个显示设备106、108、110、112中的每个显示设备可以显示有一个或多个个人302、304、306、308。例如,多个显示设备106、108、110、112可以与物理上位于房间内的一个或多个个人一起位于房间内,与个人302、304、306、308交谈。
音频聚合器驱动器22可以包括对应于视频会议的不同时间/序列310、312、314的音频缓冲器24。音频缓冲器24可以包括八个区的音频数据12的阵列(在每个时间/序列)。例如,在310(对应于时间(t1)或者视频会议的区),个人302可以从显示设备106讲话。响应于在视频会议中发言的个人302,音频(例如,“1”)可以被包括在音频缓冲器24的区1和区2的音频数据12中。响应于个人304、306、308在时间(t1)310处不讲话,音频缓冲器24的第3区至第8区可在音频数据12中包括静音(例如,“0”)。音频缓冲器24的第1区和第2区可以被传输到显示设备106的显示设备呈现缓冲器43,使得显示设备106的扬声器28可以响应于个人302在时间(t1)310发言而输出声音。
因此,在时间(t1)310处,音频缓冲器24的区3和区4可以被传输到显示设备108的显示设备呈现缓冲器45。显示设备108的扬声器32可能不会响应音频缓冲器24的区3和区4处的音频数据12中的静音而输出声音。音频缓冲器24的区5和区6可以被传输到显示设备110的显示设备呈现缓冲器47。显示设备108的扬声器36可能不会响应音频缓冲器24的区5和区6处的音频数据12中的静音而输出声音。音频缓冲器24的区7和区8可以被传输到显示设备112的显示设备呈现缓冲器49。显示设备112的扬声器40可能不会响应音频缓冲器24的区7和区8处的音频数据12中的静音而输出声音。
在312(对应于时间(t2)或者视频会议的不同区)处,个人306可以从显示设备110讲话。响应于在视频会议中发言的个人306,音频(例如,“1”)可以被包括在音频缓冲器24的区5和区6的音频数据12中,而响应于在视频会议的时间(t2)312不发言的个人302、304、308,音频缓冲器24的第1、2、3、4、7和8区可以在音频数据12中包括静音(例如,0)。音频缓冲器24的区1和区2可以被传输到显示设备106的显示设备呈现缓冲器43。显示设备106的扬声器28可能不会响应音频缓冲器24的区1和区2处的音频数据12中的静音而输出声音。
因此,在时间(t2)312处,音频缓冲器24的区3和区4可以被传输到显示设备108的显示设备呈现缓冲器45。显示设备108的扬声器32可能不会响应音频缓冲器24的区3和区4处的音频数据12中的静音而输出声音。音频缓冲器24的区5和区6可以被传输到显示设备110的显示设备呈现缓冲器47,使得显示设备110的扬声器36可以响应于个人306在时间(t2)312处发言而输出声音。音频缓冲器24的区7和区8可以被传输到显示设备112的显示设备呈现缓冲器49。显示设备112的扬声器40可能不会响应音频缓冲器24的区7和区8处的音频数据12中的静音而输出声音。
在314(对应于时间(t3)或者视频会议的不同区)处,个人308可以从显示设备112讲话。响应于个人308在视频会议中发言,音频(例如,“1”)可以被包括在音频缓冲器24的区7和区8的音频数据12中,而响应于个人302、304、306在视频会议的时间(t3)314不发言,音频缓冲器24的区1至区6可以在音频数据12中包括静音(例如,“0”)。音频缓冲器24的区1和区2可以被传输到显示设备106的显示设备呈现缓冲器43。声音可能不会从显示设备106的扬声器28发出以响应于音频缓冲器24的区1和区2处的音频数据12中的静音。
因此,在时间(t3)314处,音频缓冲器24的第3区和第4区可以被传输到显示设备108的显示设备呈现缓冲器45。声音可能不会从显示设备108的扬声器32发出以响应于音频缓冲器24的第3区和第4区处的音频数据12中的静音。音频缓冲器24的区5和区6可以被传输到显示设备110的显示设备呈现缓冲器47。声音可能不会从显示设备110的扬声器36发出以响应于音频缓冲器24的区5和区6处的音频数据12中的静音。音频缓冲器24的区7和区8可以被传输到显示设备112的显示设备呈现缓冲器49,使得声音可以响应于个人308在时间(t3)314处发言而从显示设备112的扬声器40发出。
通过仅从人讲话的显示设备106、108、110、112输出音频,物理上位于房间中的个人可以具有更个人的体验,并且可以与人互动,如同该人物理上坐在房间中。
现在参考图4,计算机设备102(图1)可以使用示例方法400以聚合与计算机设备102通信的多个显示设备106、108、110、112(图1),并且将显示设备106、108、110、112表示为单个音频端点。方法400的动作可以在下文参考图1的架构被讨论。
在402处,方法400可以包括确定与计算机设备通信的显示设备的数目。在一个实现方式中,多个显示设备106、108、110、112可以通过USB与计算机设备102通信。多个显示设备106、108、110、112可以是能够呈现信息、捕获音频和/或发出音频的任何类型的显示器、监视器、可视呈现设备、计算机设备和/或物理面板。另外,每个显示设备106、108、110、112可以包括用于捕获音频和/或发出音频的任何数目的信道。
例如,设置组件14可以确定与计算机设备102通信的显示设备18的总数。显示设备18的总数可以由计算机设备102的用户预先确定和/或可接收指示系统100的显示设备18总数的用户输入。随着显示设备被添加到系统100和/或从系统100移除,显示设备18的总数可以根据需要增加/或者减少。
设置组件14还可以确定设备定序25,该设备定序25可以向显示设备106、108、110、112施加顺序,使得音频可以响应于设备定序25而被路由。例如,订单可以包括作为第一显示设备的显示设备106、作为第二显示设备的显示设备108、作为第三显示设备的显示设备110和作为第四显示设备的显示设备112。
在404处,方法400可以包括确定由显示设备的数目所支持的音频信道的总数。设置组件14还可以确定系统100中音频信道20的总数。每个显示设备106、108、110、112可以提供关于所支持的音频信道数目的信息,例如扬声器和/或麦克风。例如,设置组件14可以从显示设备106、108、110、112中的每个显示设备接收硬件信息,该硬件信息标识显示设备106、108、110、112可以具有多少信道,显示设备106、108、110、112可以支持多少信道,显示设备106、108、110、112可以是高速设备还是超高速设备,显示设备106、108、112可以支持多少音频呈现端点设置组件14可以捕获显示设备106、108、110、112的硬件信息,并且可以响应于从显示设备106、108、110、112学习的信息,为系统100构建拓扑。音频信道20的总数可以通过将每个显示设备106、108、110、112所支持的音频信道的数目相加来计算。例如,显示设备106、108、110、112的每个扬声器和/或麦克风可以对应于任何数目的信道。
在406处,方法400可以包括从应用接收音频数据。音频聚合器驱动器22可以从一个或多个应用10接收音频数据12。显示设备106、108、110、112可以对应用10表示为单个音频端点。因此,应用10可能不知道与计算机设备102通信的多个显示设备106、108、110、112。应用10可以提供对应于两个数据信道的音频数据12。
在408处,方法400可以包括将多个显示设备的音频数据组合到音频缓冲器中,该音频缓冲器的大小由音频信道的总数确定。音频聚合器驱动器22可以为显示设备106、108、110、112的音频数据12生成单个音频缓冲器24。音频缓冲器24可以具有对应于系统100所支持的音频信道20总数的大小23。因此,音频缓冲器24可以基于系统100的参数是动态的。随着显示设备106、108、110、112的数目增加和/或减少和/或音频信道20的总数增加和/或减少,音频缓冲器24的大小23可能增加和/或减少。音频聚合器驱动器22可以在内部将音频数据12复制到显示设备106、108、110、112所支持的音频信道的总数20中(例如八个信道)。音频数据12也可以在复制过程中被静音以响应于确定一个或多个显示设备106、108、110、112可能不需要输出音频。
在410处,方法400可以包括将音频缓冲器划分为多个区。音频聚合器驱动器22可以将音频缓冲器24划分为对应于音频缓冲器24的大小23的多个区。例如,当音频缓冲器24的大小23(例如,所支持的音频信道20的总数)等于八时,音频缓冲器24可以被划分为八个不同的区。音频缓冲器24的每区可以对应于显示设备106、108、110、112(例如,扬声器28、32、36、40)上的特定信道。
在412处,方法400可以包括识别对应于每个显示设备的音频缓冲器的区的子集。音频聚合器驱动器22还可以标识对应于每个显示设备106、108、110、112的音频缓冲器24的区的子集,使得来自音频缓冲器24的音频数据12可以被分配给对应的显示设备呈现缓冲器43、45、47、49。区的子集可以对应于显示设备106、108、110、112所支持的信道数目。
例如,显示设备106可以支持两个信道(例如,支持左右两个信道的扬声器28),并且音频聚合器驱动器22可以标识显示设备106的音频缓冲器24的前两个区(例如,区1和区2)。显示设备108可以支持两个信道(例如,支持左右两个信道的扬声器32),并且音频聚合器驱动器22可以标识显示设备108的音频缓冲器24的下两个区(例如,区3和区4)。显示设备110可以支持两个信道(例如,支持左右两个信道的扬声器36),并且音频聚合器驱动器22可以识别显示设备110的音频缓冲器24的下两个区(例如,区5和区6)。显示设备112可以支持两个信道(例如,支持左右两个信道的扬声器40),并且音频聚合器驱动器22可以为显示设备112识别音频缓冲器24的剩余两个区(例如,区7和区8)。
通过将所有信道交叉到单个音频缓冲器24中,多个显示设备106、108、110、112可以被表示为单个音频端点,并且可以被一起配置,而不用将每个显示设备106、108、110、112单独暴露给应用10和/或计算机设备102的用户。
在414处,方法400可以包括发送对应于每个显示设备的音频缓冲器的区的子集。音频聚合器驱动器22可以从音频缓冲器24的对应于显示设备106、108、110、112中的每个显示设备的区的子集发送音频数据12。例如,音频聚合器驱动器22可以将音频数据12从音频缓冲器的区的子集发送到相应的显示设备呈现缓冲器43、45、47、49。
音频聚合器驱动器22还可以向显示设备106、108、110、112发送音频控制26。音频控制26可以包括,但不限于,音量控制。例如,用户可以同时提高或者降低所有显示设备106、108、110、112的音量。音频聚合器驱动器22可以接收音量已经改变的通知,并且音频聚合器驱动器22可以向显示设备106、108、110、112发送音频控制26以修改音量。
可选地,方法400可以进一步包括从每个显示设备上的显示设备捕获缓冲器接收任何所捕获的音频,并将所捕获的音频组合成聚合的所捕获的音频数据。所捕获的音频16、17、19、21可以包括来自麦克风30、34、38、42(例如,个人讲话)的音频和/或来自扬声器28、32、36、40的任何音频(例如,背景音乐)。例如,当个人(可能与显示设备106、108、110、112在同一房间)在一个或多个麦克风30、34、38、42附近讲话时,从麦克风30、34、38、42所捕获的音频16、17、19、21可以被存储在一个或多个显示设备捕获缓冲器31、33、35、37中。
音频聚合器驱动器22可以接收所捕获的音频16、17、19、21,并且可以将所捕获的音频16、17、19、21组合到音频缓冲器24中,以创建聚合的所捕获的音频数据15。如上所述,音频聚合器驱动器22可以确定对应于每个显示设备106、108、110、112的音频缓冲器24的子区。音频聚合器驱动器22可以使用设备定序25将所捕获的音频16、17、19、21组合成对应于每个显示设备106、108、110、112的音频缓冲器24的子区。
可选地,方法400可以进一步包括向一个或多个应用提供聚合的所捕获的音频数据。音频聚合器驱动器22可以向应用10提供聚合的所捕获的音频数据15。例如,应用10可以使用聚合的所捕获的音频数据15来记录来自扬声器28、32、36、40和/或由麦克风30、34、38、42所接收的音频输出。
因此,方法400可以允许音频聚合器驱动器22将所有显示设备106、108、110、112聚合成单个音频端点,使得多个显示设备106、108、110、112可以被表示为单个音频端点,并且可以被一起配置,而不用向应用和/或用户单独暴露每个显示设备。
现在参考图5,与图1相比,根据实现可以被配置为计算机设备102的示例计算机500包括附加的组件细节。在示例中,计算机500可以包括处理器48,用于执行与本文描述的一个或多个组件和功能相关联的处理功能。处理器48可以包括一组或多组处理器或者多核处理器。此外,处理器48可以被实现为集成处理系统和/或分布式处理系统。
计算机500可以进一步包括存储器50,诸如,用于存储由处理器48执行的应用的本地版本。存储器50可以包括计算机可用的类型的存储器,诸如,随机存取存储器(RAM)、只读存储器(ROM)、磁带、磁盘、光盘、易失性存储器、非易失性存储器及其任何组合。此外,处理器48可以包括并且执行操作系统111(图1)。
进一步的,计算机500可以包括通信组件52,该通信组件52利用本文所述的硬件、软件和服务与一方或多方建立和维持通信。通信组件52可以在计算机设备102上的组件之间以及计算机设备102和外部设备(诸如,位于通信网络上的设备和/或串行或者本地地连接到计算机设备102的设备)之间进行通信。例如,通信组件52可以包括一条或多条总线,并且可以进一步包括分别与发送器和接收器相关联的发送链组件和接收链组件,用于与外部设备接口。
附加地,计算机500可以包括数据存储54,数据存储54可以是硬件和/或软件的任何适当组合,其提供结合本文所述实现所使用的信息、数据库和程序的大容量存储。例如,数据存储54可以是应用10、设置组件14、音频聚合器驱动器22和/或显示器44的数据库。
计算机500还可以包括用户界面组件56,其可操作地以接收来自计算机设备102的用户的输入,并且进一步可操作地以生成向用户呈现的输出。用户界面组件56可以包括一个或多个输入设备,包括但不限于键盘、数字键盘、鼠标、显示器44(例如,其可以是触敏显示器)、导航键、功能键、麦克风、语音识别组件、能够接收来自用户的输入的任何其他机制或者其任何组合。此外,用户界面组件56可以包括一个或多个输出设备,包括但不限于显示器、扬声器、触觉反馈机制、打印机、能够向用户呈现输出的任何其他机制或者其任何组合。
在一个实现方式中,用户界面组件56可以发送和/或接收对应于应用10、设置组件14、音频聚合器驱动器22和/或显示器44的操作的消息。另外,处理器48执行应用10、设置组件14、音频聚合器驱动器22和/或显示器44,并且存储器50或者数据存储54可以存储它们。
本申请中所使用的术语“组件”、“系统”等旨在包括计算机相关实体,诸如,但不限于,硬件、固件、软硬件组合、软件或者执行中的软件。例如,组件可以是,但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算机设备上运行的应用和计算机设备都可以是组件。一个或多个组件可以位于进程和/或执行线程内,并且一个组件可以位于一台计算机上和/或分布在两台或者多台计算机之间。另外,这些组件可以从其上存储有各种数据结构的各种计算机可读介质执行。组件可以通过本地和/或远程进程进行通信,例如根据具有一个或多个数据包的信号进行通信,例如来自一个组件的数据,该组件通过信号与本地系统、分布式系统中的另一组件进行交互,和/或通过网络(诸如,互联网)与其他系统进行交互。
此外,术语“或”旨在表示包含性的“或”而非排他性的“或”。也就是说,除非另有说明或者上下文明确,“X雇佣A或B”一词旨在指任何自然的包含性置换。也就是说,“X雇佣A或B”满足以下任一情况:X雇佣A;X雇佣B;或X同时使用A和B。另外,除非上下文中另有说明或者明确表示为单数形式,否则本申请和所附权利要求中使用的冠词“一”和“一个”通常应当解释为“一个或多个”。
各种实现或者特征可能已经根据可能包括多个设备、组件、模块等的系统呈现。应当明白和理解,各种系统可以包括附加的设备、组件、模块等。和/或可能不包括所有设备、组件、模块等。结合附图进行讨论。也可以使用这些方法的组合。
结合本文所公开的实施例描述的各种说明性逻辑、逻辑块和方法的动作可以用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑、分立硬件组件或者其设计用于执行本文所述功能的任何组合中的特定编程的一个特定编程来实现或者执行。通用处理器可以是微处理器,备选地,处理器可以是任何常规处理器、控制器、微控制器或者状态机。处理器也可以被实现为计算机设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的组合或者任何其他这样的配置。此外,至少一个处理器可以包括一个或多个可操作以执行上述一个或多个步骤和/或动作的组件。
进一步的,结合本文所公开的实现所描述的方法或者算法的步骤和/或动作可以直接体现在硬件、由处理器执行的软件模块或者两者的组合中。软件模块可以位于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或者本领域已知的任何其他形式的存储介质中。示例性存储介质可以被耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。或者,存储介质可以被集成到处理器中。此外,在一些实现中,处理器和存储介质可以位于ASIC中。附加地,ASIC可以位于用户终端中。或者,处理器和存储介质可以作为分立组件驻留在用户终端中。备选地,在一些实现中,方法或者算法的步骤和/或动作可以作为一个或者任何代码和/或指令的组合或者集合存在于机器可读介质和/或计算机可读介质上,其可以被并入计算机程序产品中。
在一个或多个实现中,所描述的功能可以以硬件、软件、固件或者其任意组合的方式实施。如果以软件实现,功能可以作为一个或多个指令或者代码存储或者传输在计算机可读介质上。计算机可读介质包括计算机存储介质和通信介质,通信介质包括便于计算机程序从一个地方传输到另一个地方的任何介质。存储介质可以是由计算机可以访问的任何可用的介质。作为示例而非限制,这种计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或者其他光盘存储、磁盘存储或者其他磁存储设备,或者可以用于存储指令或者数据结构形式的所需程序代码并且可以由计算机访问的任何其他介质。本文使用的磁盘和光盘包括光盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘和蓝光盘,其中磁盘通常磁性地再现数据,而光盘通常用激光光学地再现数据。上述各项的组合也应当包括在计算机可读介质的范围内。
尽管已经结合本公开的示例描述了本公开的实现,但是本领域技术人员应当理解,在不脱离本公开的范围的情况下,可以对上述实现进行变化和修改。通过对说明书的考虑或者根据本文公开的示例的实践,其他实现对于本领域技术人员而言将是显而易见的。
Claims (15)
1.一种计算机设备,包括:
存储器,用以存储数据和指令;
至少一个处理器,被配置为与所述存储器通信;以及
操作系统,被配置为与所述存储器和所述至少一个处理器通信,其中所述操作系统可操作以:
从应用接收音频数据;
将针对与所述计算机设备通信的多个显示设备的所述音频数据组合到音频缓冲器中,所述音频缓冲器具有由所述多个显示设备的音频信道的总数确定的大小;
将所述音频缓冲器划分为区,其中所述区的总数对应于所述音频缓冲器的所述大小;
标识所述音频缓冲器的所述区的子集,所述音频缓冲器的所述区的所述子集对应于所述多个显示设备中的每个显示设备;以及
发送对应于所述多个显示设备中的每个显示设备的所述音频缓冲器的所述区的所述子集。
2.根据权利要求1所述的计算机设备,其中所述操作系统还可操作以通过将所述多个显示设备中的每个显示设备所支持的音频信道的数目相加在一起来确定所述音频信道的总数,并且
其中所述区的所述子集对应于由所述多个显示设备中的每个显示设备所支持的所述音频信道的数目。
3.根据权利要求1所述的计算机设备,其中所述操作系统还可操作以:
使用设备定序将针对所述多个显示设备的所述音频数据组合成所述音频缓冲器的所述区的所述子集;以及
使用所述设备定序发送所述音频缓冲器的所述区的所述子集。
4.根据权利要求1所述的计算机设备,其中所述操作系统还可操作以当发生以下至少一项时,动态地改变所述音频缓冲器的所述大小:所述多个显示设备的数目的增加或减少、或者由所述多个显示设备中的每个显示设备所支持的音频信道的数目增加或减少。
5.根据权利要求1所述的计算机设备,其中所述多个显示设备中的每个显示设备包括显示设备呈现缓冲器,并且
其中所述操作系统还可操作以将所述音频缓冲器的所述区的所述子集发送到针对所述多个显示设备中的每个显示设备的所述显示设备呈现缓冲器。
6.根据权利要求1所述的计算机设备,其中所述多个显示设备经由通用串行总线(USB)与所述计算机设备通信。
7.根据权利要求1所述的计算机设备,其中所接收的所述音频数据包括两个信道的数据,并且
其中所述操作系统还可操作以将所述两个信道的数据复制到所述总数个音频信道中。
8.一种用于聚合与计算机设备通信的多个显示设备的方法,包括:
在所述计算机设备上执行的操作系统处,接收来自应用的音频数据;
将针对与所述计算机设备通信的所述多个显示设备的所述音频数据组合到音频缓冲器中,所述音频缓冲器具有由所述多个显示设备的音频信道的总数确定的大小;
将所述音频缓冲器划分为区,其中所述区的总数对应于所述音频缓冲器的所述大小;
标识所述音频缓冲器的所述区的子集,所述音频缓冲器的所述区的所述子集对应于所述多个显示设备中的每个显示设备;以及
发送对应于所述多个显示设备中的每个显示设备的所述音频缓冲器的所述区的所述子集。
9.根据权利要求8所述的方法,其中所述方法还包括:
通过将所述多个显示设备中的每个显示设备所支持的音频信道的数目相加在一起来确定所述音频信道的总数,并且
其中所述区的所述子集对应于由所述多个显示设备中的每个显示设备所支持的所述音频信道的数目。
10.根据权利要求8所述的方法,其中使用设备定序将针对所述多个显示设备的音频数据组合到所述音频缓冲器的所述区的所述子集中,并且
其中使用设备定序,发送所述音频缓冲器的所述区的所述子集。
11.根据权利要求8所述的方法,其中所述方法还包括:
当发生至少一项时动态地改变所述音频缓冲器的所述大小:所述多个显示设备的数目增加或减少、或者由所述多个显示设备中的每个显示设备所支持的音频信道的数目增加或减少。
12.根据权利要求8所述的方法,其中所述多个显示设备中的每个显示设备包括显示设备呈现缓冲器,并且所述方法还包括:
将所述音频缓冲器的所述区的所述子集发送到针对所述多个显示设备中的每个显示设备的所述显示设备呈现缓冲器。
13.根据权利要求8所述的方法,其中所接收的所述音频数据包括两个信道的数据,并且
其中所述方法还包括:
将所述两个信道的数据复制到所述总数个音频信道中。
14.根据权利要求8所述的方法,其中所述方法还包括:
接收针对所述多个显示设备的音量控制;以及
向所述多个显示设备中的每个显示设备发送所述音量控制。
15.一种存储由计算机设备可执行的指令的计算机可读介质,包括:
用于使所述计算机设备从应用接收音频数据的至少一个指令;
用于使所述计算机设备将针对与所述计算机设备通信的多个显示设备的所述音频数据组合到音频缓冲器中的至少一个指令,所述音频缓冲器具有由所述多个显示设备的音频信道的总数确定的大小;
用于使所述计算机设备将所述音频缓冲器划分为区的至少一个指令,其中所述区的总数对应于所述音频缓冲器的所述大小;
用于使所述计算机设备标识所述音频缓冲器的所述区的子集的至少一个指令,所述音频缓冲器的所述区的所述子集对应于所述多个显示设备中的每个显示设备;以及
用于使所述计算机设备发送对应于所述多个显示设备中的每个显示设备的所述音频缓冲器的所述区的所述子集的至少一个指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/428,299 | 2019-05-31 | ||
US16/428,299 US10747495B1 (en) | 2019-05-31 | 2019-05-31 | Device aggregation representing multiple endpoints as one |
PCT/US2020/029182 WO2020242659A1 (en) | 2019-05-31 | 2020-04-22 | Device aggregation representing multiple endpoints as one |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113892080A true CN113892080A (zh) | 2022-01-04 |
CN113892080B CN113892080B (zh) | 2024-05-31 |
Family
ID=70614662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080040166.XA Active CN113892080B (zh) | 2019-05-31 | 2020-04-22 | 将多个端点表示为一个端点的设备聚合 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10747495B1 (zh) |
EP (1) | EP3959597A1 (zh) |
CN (1) | CN113892080B (zh) |
WO (1) | WO2020242659A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10530597B1 (en) * | 2017-04-01 | 2020-01-07 | Smart Power Partners LLC | System for controlling a plurality of power switches configured to apply power to devices |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9569173B1 (en) * | 2014-03-17 | 2017-02-14 | Amazon Technologies, Inc. | Audio capture and remote output |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7136934B2 (en) | 2001-06-19 | 2006-11-14 | Request, Inc. | Multimedia synchronization method and device |
US6963353B1 (en) * | 2003-05-14 | 2005-11-08 | Cisco Technology, Inc. | Non-causal speaker selection for conference multicast |
US8234395B2 (en) | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
US20070110074A1 (en) * | 2004-06-04 | 2007-05-17 | Bob Bradley | System and Method for Synchronizing Media Presentation at Multiple Recipients |
US7631119B2 (en) | 2004-06-25 | 2009-12-08 | Apple Inc. | Techniques for providing audio for synchronized playback by multiple devices |
US7953118B2 (en) | 2006-12-08 | 2011-05-31 | Microsoft Corporation | Synchronizing media streams across multiple devices |
US7765315B2 (en) | 2007-01-08 | 2010-07-27 | Apple Inc. | Time synchronization of multiple time-based data streams with independent clocks |
KR20090004659A (ko) * | 2007-07-02 | 2009-01-12 | 엘지전자 주식회사 | 디지털 방송 시스템 및 데이터 처리 방법 |
US8312164B2 (en) * | 2010-04-14 | 2012-11-13 | Adobe Systems Incorporated | Media quality enhancement among connected media communication devices |
US10431217B2 (en) * | 2017-02-15 | 2019-10-01 | Amazon Technologies, Inc. | Audio playback device that dynamically switches between receiving audio data from a soft access point and receiving audio data from a local access point |
WO2018152242A1 (en) | 2017-02-15 | 2018-08-23 | Amazon Technologies, Inc. | Selection of master device for synchronized audio |
US11606407B2 (en) * | 2018-07-05 | 2023-03-14 | Prowire Sport Limited | System and method for capturing and distributing live audio streams of a live event |
-
2019
- 2019-05-31 US US16/428,299 patent/US10747495B1/en active Active
-
2020
- 2020-04-22 CN CN202080040166.XA patent/CN113892080B/zh active Active
- 2020-04-22 EP EP20724692.7A patent/EP3959597A1/en active Pending
- 2020-04-22 WO PCT/US2020/029182 patent/WO2020242659A1/en unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9569173B1 (en) * | 2014-03-17 | 2017-02-14 | Amazon Technologies, Inc. | Audio capture and remote output |
Also Published As
Publication number | Publication date |
---|---|
US10747495B1 (en) | 2020-08-18 |
WO2020242659A1 (en) | 2020-12-03 |
EP3959597A1 (en) | 2022-03-02 |
CN113892080B (zh) | 2024-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109076303B (zh) | 用于应用的空间音频资源管理和混合 | |
US10149089B1 (en) | Remote personalization of audio | |
US10362425B2 (en) | Translating user interface sounds into 3D audio space | |
US20220014712A1 (en) | Methods and apparatus to enable private verbal side conversations in virtual meetings | |
EP3963463B1 (en) | Synchronization of audio across multiple devices | |
CN113892080B (zh) | 将多个端点表示为一个端点的设备聚合 | |
US9852765B2 (en) | Graphical user interface, process, program, storage medium and computer system for arranging music | |
US20180332423A1 (en) | Personalization of spatial audio for streaming platforms | |
CN113841426A (zh) | 使用应用位置信息向各种通道发送音频 | |
CN113748661A (zh) | 基于音频信号的资源访问 | |
US11563857B2 (en) | Aggregating hardware loopback | |
EP4031983B1 (en) | Converting a pin into a loopback pin | |
US20230336692A1 (en) | Application processing method for providing group video call | |
EP3582477B1 (en) | Ambient sound adjustments during call handling | |
WO2024131116A1 (zh) | 一种音效切换方法、电子设备及存储介质 | |
US20220321622A1 (en) | Methods, systems, articles of manufacture, and apparatus to facilitate multi-participant conversation | |
CN117762373A (zh) | 音频数据处理系统、方法及服务器 | |
JP2022179354A (ja) | 情報処理装置およびプログラム | |
KR20230047261A (ko) | 영상 회의 지원 방법과 이를 지원하는 서버 장치 | |
CN118660074A (zh) | 交互控制方法、装置、设备及系统 | |
JP2020134553A (ja) | 電子機器、制御装置、制御方法、および制御プログラム | |
CN113886657A (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 |