RU2816884C2 - Audio device, audio distribution system and method of operation thereof - Google Patents
Audio device, audio distribution system and method of operation thereof Download PDFInfo
- Publication number
- RU2816884C2 RU2816884C2 RU2021103038A RU2021103038A RU2816884C2 RU 2816884 C2 RU2816884 C2 RU 2816884C2 RU 2021103038 A RU2021103038 A RU 2021103038A RU 2021103038 A RU2021103038 A RU 2021103038A RU 2816884 C2 RU2816884 C2 RU 2816884C2
- Authority
- RU
- Russia
- Prior art keywords
- audio
- proximity
- remote
- remote client
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 239000000203 mixture Substances 0.000 claims abstract description 71
- 230000004044 response Effects 0.000 claims abstract description 29
- 230000000694 effects Effects 0.000 abstract description 6
- 239000000126 substance Substances 0.000 abstract 1
- 238000013459 approach Methods 0.000 description 36
- 230000000875 corresponding effect Effects 0.000 description 31
- 230000008447 perception Effects 0.000 description 17
- 230000005236 sound signal Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 9
- 230000003190 augmentative effect Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 8
- 210000003128 head Anatomy 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000001934 delay Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 5
- 230000002238 attenuated effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 210000005069 ears Anatomy 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007654 immersion Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000013707 sensory perception of sound Effects 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- 206010013647 Drowning Diseases 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000035699 permeability Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Abstract
Description
ОБЛАСТЬ ТЕХНИКИTECHNICAL FIELD
Изобретение относится к аудиоустройству, системе распределения аудио и способу их работы, в частности, но не исключительно, к их использованию для поддержки приложения для конференций в режиме дополненной/виртуальной реальности.The invention relates to an audio device, an audio distribution system and a method of operating the same, particularly, but not exclusively, to its use in supporting an augmented/virtual reality conferencing application.
УРОВЕНЬ ТЕХНИКИBACKGROUND OF THE ART
Благодаря непрерывному развитию и введению новых услуг и способов использования и потребления аудиовизуального контента в последние годы произошел значительный рост разнообразия и диапазона восприятия такого контента. В частности, разрабатываются множество пространственных и интерактивных услуг, приложений и подходов к восприятию, чтобы обеспечить пользователям восприятие с более сильным вовлечением и погружением.With the continuous development and introduction of new services and ways of using and consuming audiovisual content, recent years have seen a significant increase in the variety and range of experiences of such content. In particular, a variety of spatial and interactive services, applications and perceptual approaches are being developed to provide users with a more involved and immersive experience.
Примерами таких приложений являются приложения виртуальной реальности (Virtual Reality, VR) и дополненной реальности (Augmented Reality, AR), которые быстро становятся господствующими тенденциями, при этом ряд решений ориентирован на потребительский рынок. Кроме того, многими органами по стандартизации разрабатывается ряд стандартов. В рамках такой деятельности по стандартизации активно разрабатываются стандарты для различных аспектов систем VR/AR, включая, например, потоковую передачу, широковещание, преобразование для воспроизведения и т.д.Examples of such applications include Virtual Reality (VR) and Augmented Reality (AR), which are quickly becoming mainstream, with a number of solutions targeting the consumer market. In addition, a number of standards are being developed by many standardization bodies. As part of this standardization effort, standards are being actively developed for various aspects of VR/AR systems, including, for example, streaming, broadcasting, playout conversion, etc.
Приложения VR, как правило, обеспечивают восприятия пользователем, соответствующие нахождению пользователя в другом мире/окружающей среде/сцене, тогда как приложения AR (включая смешанную реальность, Mixed Reality (MR)), обычно обеспечивают восприятия пользователем, соответствующие нахождению пользователя в текущей окружающей среде, но с добавлением дополнительной информации либо виртуальных объектов или информации. Таким образом, приложения VR, как правило, обеспечивают полностью погружающие синтетически формируемые мир/сцену, тогда как приложения AR обычно обеспечивают частично синтетические мир/сцену, накладываемые на реальную сцену, в которой пользователь присутствует физически. Однако это термины часто используются взаимозаменяемо и имеют высокую степень перекрытия. Далее термин виртуальная реальность/VR будет использоваться для обозначения как виртуальной реальности, так и дополненной реальности.VR applications typically provide user perceptions consistent with the user being in another world/environment/scene, while AR applications (including Mixed Reality (MR)) typically provide user perceptions consistent with the user being in the current environment , but with the addition of additional information or virtual objects or information. Thus, VR applications typically provide a fully immersive synthetically generated world/scene, while AR applications typically provide a partially synthetic world/scene overlaid on a real scene in which the user is physically present. However, the terms are often used interchangeably and have a high degree of overlap. In the following, the term virtual reality/VR will be used to refer to both virtual reality and augmented reality.
В качестве примера, быстро набирающая популярность услуга заключается в предоставлении изображений и аудио таким образом, что пользователь в состоянии активно и динамически взаимодействовать с системой для изменения параметров преобразования для воспроизведения так, что изображения и аудио будут адаптироваться к перемещению и изменениям положения и ориентации пользователя. Весьма привлекательной особенностью многих приложений является возможность изменения действующего положения обзора и направления обзора зрителя, чтобы, например, зритель мог перемещаться и «осматриваться вокруг» в представляемой сцене.As an example, a rapidly gaining popularity service is to provide images and audio in such a way that the user is able to actively and dynamically interact with the system to change rendering parameters for playback so that the images and audio adapt to the user's movement and changes in position and orientation. A very attractive feature of many applications is the ability to change the viewer's effective viewing position and viewing direction so that, for example, the viewer can move and "look around" in the presented scene.
Такая функция может, в частности, давать пользователю ощущение виртуальной реальности. Благодаря этому пользователь может (относительно) свободно передвигаться в виртуальной среде и динамически изменять свое положение и направление, в котором он смотрит. Как правило, такие приложения виртуальной реальности основаны на трехмерной модели сцены, причем модель динамически оценивается для обеспечения конкретного запрошенного вида. Данный подход хорошо известен, например, из игровых приложений для компьютеров и консолей, например, из категории игр-стрелялок от первого лица.Such a feature may, in particular, provide the user with a virtual reality experience. Thanks to this, the user can move around (relatively) freely in the virtual environment and dynamically change his position and the direction in which he is looking. Typically, such virtual reality applications are based on a 3D model of the scene, with the model dynamically evaluated to provide the specific view requested. This approach is well known, for example, from gaming applications for computers and consoles, for example, from the category of first-person shooting games.
Также желательно, в частности, для приложений виртуальной реальности, чтобы представляемое изображение было трехмерным изображением. Действительно, для оптимизации погружения зрителя, как правило, предпочтительно, чтобы пользователь ощущал представленную сцену как трехмерную сцену. Ведь ощущение виртуальной реальности предпочтительно должно позволять пользователю выбирать свое собственное положение, точку обзора камеры и момент времени относительно виртуального мира.It is also desirable, particularly for virtual reality applications, that the image being presented is a three-dimensional image. Indeed, to optimize viewer immersion, it is generally preferable for the user to experience the presented scene as a 3D scene. After all, the experience of virtual reality should preferably allow the user to choose his own position, camera viewpoint and point in time relative to the virtual world.
Как правило, приложения виртуальной реальности по своей природе ограничены тем, что они основаны на заданной модели сцены и обычно на искусственной модели виртуального мира. В некоторых приложениях ощущение виртуальной реальности может быть обеспечено на основе захвата реального мира. Во многих случаях такой подход, как правило, основан на построении виртуальной модели реального мира из захватываемых данных реального мира. В таком случае ощущение виртуальной реальности формируется путем оценки этой модели.Typically, virtual reality applications are inherently limited in that they are based on a given scene model and usually an artificial model of the virtual world. In some applications, a virtual reality experience can be provided by capturing the real world. In many cases, this approach is typically based on constructing a virtual model of the real world from captured real-world data. In this case, the feeling of virtual reality is formed by evaluating this model.
Многие современные подходы, как правило, неоптимальные и часто имеют тенденцию предъявлять высокие требования к вычислительным и коммуникационным ресурсам и/или обеспечивать неоптимальное восприятие пользователем, например из-за пониженного качества или ограниченной свободы.Many current approaches are generally suboptimal and often tend to place high demands on computing and communication resources and/or provide a suboptimal user experience, for example due to reduced quality or limited freedom.
В качестве примера применения на рынке появились очки виртуальной реальности, которые позволяют зрителям воспринимать отснятое 360° (панорамное) или 180° видео. Такие 360° видео часто предварительно снимают с использованием многокамерной установки, в которой отдельные изображения сшиваются вместе в одно сферическое отображение. Обычные форматы стерео для 180° или 360° видео - сверху/снизу и слева/справа. Так же, как и в непанорамном стереоскопическом видео, изображения для левого глаза и правого глаза сжимают, например, как часть одного видеопотока стандарта H.264.As an example of application, virtual reality glasses have appeared on the market, which allow viewers to perceive captured 360° (panoramic) or 180° video. Such 360° videos are often pre-shot using a multi-camera setup in which individual images are stitched together into a single spherical display. Common stereo formats for 180° or 360° video are top/bottom and left/right. Just as in non-panoramic stereoscopic video, the left-eye and right-eye images are compressed, for example, as part of a single H.264 video stream.
В добавление к визуальному воспроизведению большинство приложений VR/AR также обеспечивают соответствующее восприятие аудио. Во многих приложениях аудио предпочтительно обеспечивает пространственное восприятие звука, причем аудиоисточники воспринимаются как издающие звук из положений, которые соответствуют положениям соответствующих объектов в визуальной сцене. Таким образом, аудио- и видеосцены предпочтительно воспринимаются как согласованные, причем и те, и другие обеспечивают полное пространственное восприятие.In addition to the visual experience, most VR/AR applications also provide a corresponding audio experience. In many applications, audio preferably provides spatial perception of sound, with audio sources being perceived as emitting sound from positions that correspond to the positions of corresponding objects in the visual scene. Thus, audio and video scenes are preferentially perceived as coherent, with both providing complete spatial perception.
Что касается аудио, то до настоящего времени основной упор делали на воспроизведение через наушники с использованием технологии преобразования для воспроизведения бинаурального аудио. Во многих сценариях воспроизведение через наушники делает возможным персонализированное восприятие пользователем с высокой степенью погружения. С помощью отслеживания головы можно добиться реагирования преобразования для воспроизведения на движения головы пользователя, что значительно повышает ощущение погружения.In terms of audio, until now the main focus has been on headphone playback using conversion technology to play binaural audio. In many scenarios, headphone playback enables a highly immersive, personalized user experience. Using head tracking, the playback transform can be made to respond to the user's head movements, greatly increasing the feeling of immersion.
В последнее время, как на рынке, так и в ходе обсуждения стандартов, стали предлагать примеры использования, которые включают «социальный» или «общий» аспект VR (и AR), т.е. возможность обмена восприятием с другими людьми. Это могут быть люди в разных местах, но также люди в одном и том же месте (или сочетание и того, и другого). Например, у нескольких человек в одном и том же помещении может быть одно и то же общее восприятие виртуальной реальности с присутствием проекции (аудио или видео) каждого участника в контенте/сцене VR. Например, в игре с участием множества людей каждый игрок может иметь отличное от других местоположение в игровой сцене и, следовательно, отличную от других проекцию аудио- и видеосцены.Recently, both in the market and in standards discussions, use cases have begun to be proposed that include the “social” or “shared” aspect of VR (and AR), i.e. the opportunity to exchange perceptions with other people. These may be people in different places, but also people in the same place (or a combination of both). For example, multiple people in the same room may have the same general experience of virtual reality with the presence of a projection (audio or video) of each participant in the VR content/scene. For example, in a game involving multiple people, each player may have a different location in the game scene and therefore a different projection of the audio and video scene.
В качестве конкретного примера MPEG предпринимает попытки стандартизировать битовый поток и декодер для реалистических, погружающих восприятий AR/VR с шестью степенями свободы. Социальная VR является важной функцией и позволяет пользователям взаимодействовать в общей окружающей среде (игры, конференц-звонки, покупки в сети и т.д.). Концепция социальной VR также способствует тому, чтобы сделать виртуальную реальность более социальной деятельностью для пользователей, физически находящихся в одном и том же месте, но в том случае, например, когда установленный на голову дисплей или другая гарнитура VR обеспечивает изоляцию восприятия физической окружающей обстановки.As a specific example, MPEG is attempting to standardize the bitstream and decoder for realistic, immersive AR/VR experiences with six degrees of freedom. Social VR is an important feature and allows users to interact in a shared environment (games, conference calls, online shopping, etc.). The concept of social VR also aims to make virtual reality a more social experience for users physically located in the same place, but where, for example, a head-mounted display or other VR headset provides an isolated experience from the physical environment.
Конкретным примером приложений социальной VR являются приложения для конференций, в которых пользователи, находящиеся в разных местах, могут совместно использовать виртуальный «конференц-зал», причем пользователи, например, представлены аватарами. В качестве другого примера каждому пользователю может быть представлено представление других участников, виртуально преобразуемых для воспроизведения в собственной локальной окружающей среде пользователя, например, путем наложения реального мира с использованием очков AR на аватаров, соответствующих другим пользователям, таким образом, чтобы аватары создавали впечатление присутствия других пользователей в помещении. Кроме того, отдельному пользователю может быть предоставлена аудиосцена, которая содержит соответствующее аудио от всех участников, причем это аудио пространственно преобразуют для воспроизведения в соответствующих положениях воспринимаемых аудиоисточников. Это преобразование для воспроизведения видео и аудио выполняют так, что визуальные и звуковые положения для данного участника соответствуют друг другу.A specific example of social VR applications are conferencing applications, in which users in different locations can share a virtual “meeting room”, with users, for example, represented by avatars. As another example, each user may be presented with a representation of other participants virtually rendered to be reproduced in the user's own local environment, for example by overlaying the real world using AR glasses on avatars corresponding to other users, such that the avatars give the impression of the presence of others users indoors. Additionally, an individual user may be provided with an audio scene that contains relevant audio from all participants, which audio is spatially transformed to be played at the corresponding positions of the perceived audio sources. This conversion for video and audio playback is performed such that the visual and audio positions for a given participant correspond to each other.
Для обеспечения оптимального восприятия желательно тесное согласование восприятия аудио и видео, и, в частности, для приложений AR желательно также согласование со сценой реального мира. Однако зачастую этого трудно достичь, поскольку могут возникнуть ряд проблем, которые могут повлиять на восприятие пользователя. Например, на практике пользователь будет, как правило, использовать устройство в месте, где невозможно гарантировать полную тишину или темноту. Хотя гарнитуры могут пытаться блокировать свет и звук, обычно это будет достигается лишь частично. Кроме того, в приложениях AR в рамках восприятия пользователь часто может также воспринимать локальную окружающую среду, поэтому непрактично блокировать эту окружающую среду полностью.To ensure an optimal experience, close matching between audio and video perception is desirable, and in particular for AR applications, matching to the real world scene is also desirable. However, this is often difficult to achieve as a number of issues can arise that can impact the user experience. For example, in practice, the user will typically use the device in an area where complete silence or darkness cannot be guaranteed. Although headsets may attempt to block light and sound, this will usually only be partially achieved. Additionally, in AR applications, as part of perception, the user can often also perceive the local environment, so it is impractical to block out that environment completely.
Поэтому был бы полезен усовершенствованный подход к формированию аудио, в частности, для восприятия/приложения виртуальной/дополненной реальности, такого как, например, приложение для конференции в режиме VR/AR. В частности, был бы полезен подход, позволяющий улучшить работу, повысить гибкость, уменьшить сложность, облегчить реализацию, улучшить восприятие аудио, улучшить согласование восприятия аудио и визуальной сцены, уменьшить чувствительность к ошибкам в отношении источников в локальной окружающей среде, улучшить восприятие виртуальной реальности и/или улучшить рабочие характеристики и/или работу.Therefore, an improved approach to audio generation would be useful, particularly for a virtual/augmented reality perception/application such as, for example, a VR/AR conferencing application. In particular, an approach that would improve performance, increase flexibility, reduce complexity, ease implementation, improve audio experience, improve audio-visual scene perception matching, reduce sensitivity to errors about sources in the local environment, improve virtual reality experience, and /or improve performance and/or operation.
РАСКРЫТИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯDISCLOSURE OF THE INVENTION
Соответственно, настоящее изобретение направлено на предпочтительно ослабление, смягчение или устранение одного или более из вышеупомянутых недостатков по отдельности или в любой комбинации.Accordingly, the present invention is directed to preferably attenuating, mitigating or eliminating one or more of the above-mentioned disadvantages, individually or in any combination.
В соответствии с аспектом настоящего изобретения предложено аудиоустройство для системы распределения аудио, содержащей аудиосервер для приема входящего аудио от множества удаленных клиентов и для передачи аудио, полученного из входящего аудио, по меньшей мере некоторым из множества удаленных клиентов; при этом устройство содержит: приемник для приема данных, содержащих: аудиоданные для множества аудиокомпонентов, причем каждый аудиокомпонент представляет аудио от удаленного клиента из множества удаленных клиентов; данные о близости для по меньшей мере одного из аудиокомпонентов, причем данные о близости указывают физическую близость между удаленными клиентами в акустической окружающей среде реального мира; и генератор для формирования аудиосмеси множества аудиокомпонентов в ответ на данные о близости; при этом генератор выполнен с возможностью формирования первой аудиосмеси для первого удаленного клиента из множества удаленных клиентов, причем формирование первой аудиосмеси включает определение ослабления в первой аудиосмеси второго аудиокомпонента для второго удаленного клиента в ответ на данные о близости.In accordance with an aspect of the present invention, there is provided an audio apparatus for an audio distribution system, comprising an audio server for receiving incoming audio from a plurality of remote clients and for transmitting audio obtained from the incoming audio to at least some of the plurality of remote clients; wherein the device comprises: a receiver for receiving data comprising: audio data for a plurality of audio components, each audio component representing audio from a remote client of the plurality of remote clients; proximity data for at least one of the audio components, wherein the proximity data indicates physical proximity between remote clients in a real world acoustic environment; and a generator for generating an audio mixture of the plurality of audio components in response to the proximity data; wherein the generator is configured to generate a first audio mixture for a first remote client from the plurality of remote clients, wherein generating the first audio mixture includes determining an attenuation in the first audio mixture of a second audio component for the second remote client in response to the proximity data.
Изобретение может обеспечивать улучшенное восприятие пользователем во многих вариантах реализации и может, в частности, обеспечивать улучшенное распределение аудио во многих приложениях, таких как, в частности, приложения для конференций, основанные на подходе AR/VR. Данный подход может обеспечивать улучшенное восприятие аудио в сценариях, в которых пользователи/участники находятся, например в одном и том же помещении. Как правило, можно достичь улучшенного и более естественного восприятия аудиосцены, и во многих сценариях помехи и несогласованность, возникающее из-за находящихся в одном и том же месте пользователей/клиентов, могут быть ослаблены или уменьшены. Этот подход может быть, в частности, полезен для приложений виртуальной реальности, VR, (включая дополненную реальность, AR). Он может, например, обеспечивать улучшенное восприятие, например, для социальных приложений VR/AR, в которых в одном и том же месте присутствуют множество участников.The invention may provide an improved user experience in many embodiments and may in particular provide improved audio distribution in many applications, such as in particular conferencing applications based on an AR/VR approach. This approach can provide an improved audio experience in scenarios where users/participants are present, such as in the same room. Generally, an improved and more natural perception of the audio scene can be achieved, and in many scenarios, interference and inconsistency resulting from co-located users/clients can be attenuated or reduced. This approach may be particularly useful for virtual reality (VR) applications (including augmented reality (AR). It can, for example, provide an enhanced experience for social VR/AR applications where multiple participants are present in the same location.
Данный подход может во многих вариантах реализации обеспечить улучшенные рабочие характеристики при сохранении низких сложности и использовании ресурсов.This approach can, in many implementations, provide improved performance while maintaining low complexity and resource usage.
Данные о близости могут быть, в частности, акустическими данными о близости. Данные о близости могут содержать указания близости для наборов (как правило, пар) удаленных клиентов. Указание близости для набора удаленных клиентов может указывать пространственное расстоянием между удаленными клиентами и/или связанными аудиоисточниками/пользователями, или может, например, указывать акустическое ослабление между удаленными клиентами и/или связанными аудиоисточниками/пользователями.The proximity data may be, in particular, acoustic proximity data. The proximity data may contain proximity indications for sets (typically pairs) of remote clients. The proximity indication for a set of remote clients may indicate the spatial distance between remote clients and/or associated audio sources/users, or may, for example, indicate acoustic attenuation between remote clients and/or associated audio sources/users.
Аудиосмесь может быть набором аудиосигналов/аудиоканалов, (потенциально) содержащих вклады от множества аудиокомпонентов.An audio mixture can be a collection of audio signals/audio channels (potentially) containing contributions from multiple audio components.
Данные о близости могут указывать имеющую место в реальном мире/абсолютную/физическую близость между удаленными клиентами. Данные о близости, в частности, отражают реальную физическую близость между удаленными клиентами в акустической окружающей среде реального мира.Proximity data may indicate real-world/absolute/physical proximity between remote clients. Proximity data, in particular, reflects the actual physical proximity between remote clients in a real-world acoustic environment.
Генератор выполнен с возможностью формирования первой аудиосмеси для первого удаленного клиента из множества удаленных клиентов, причем формирование первой аудиосмеси включает определение ослабления в первой аудиосмеси второго аудиокомпонента для второго удаленного клиента в ответ на данные о близости.The generator is configured to generate a first audio mixture for a first remote client from a plurality of remote clients, wherein generating the first audio mixture includes determining an attenuation in the first audio mixture of a second audio component for the second remote client in response to proximity data.
Это может обеспечить улучшенное восприятие пользователем и/или улучшенные рабочие характеристики восприятия аудио во многих сценариях. Это может, в частности, позволить улучшить адаптацию восприятия комбинированного аудио к потенциальным аудиопомехам между преобразованной для воспроизведения аудиосценой и аудиосценой реального мира. Ослабление в первой аудиосмеси второго аудиокомпонента для второго удаленного клиента может происходить в ответ на указание близости в данных о близости, причем указание близости указывает близость/расстояние меду первым удаленным клиентом и вторым удаленным клиентом.This may provide improved user experience and/or improved audio sensing performance in many scenarios. This may in particular allow for improved adaptation of the combined audio experience to potential audio interference between the rendered audio scene and the real world audio scene. Attenuation in the first audio mixture of the second audio component for the second remote client may occur in response to a proximity indication in the proximity data, wherein the proximity indication indicates proximity/distance between the first remote client and the second remote client.
В соответствии с необязательным признаком настоящего изобретения генератор выполнен с возможностью ослабления второго аудиокомпонента в первой аудиосмеси для данных о близости, удовлетворяющих критерию близости для первого удаленного клиента и второго удаленного клиента.In accordance with an optional feature of the present invention, the generator is configured to attenuate a second audio component in the first audio mixture for proximity data satisfying a proximity criterion for the first remote client and the second remote client.
Это может обеспечить улучшенное восприятие пользователем и/или улучшенные рабочие характеристики восприятия аудио во многих сценариях. Генератор может быть выполнен с возможностью ослабления второго аудиокомпонента для данных о близости, указывающих меру расстояния между первым удаленным клиентом и вторым удаленным клиентом ниже порогового значения. Ослабление может быть бесконечным. В частности, генератор может быть выполнен с возможностью подавления/удаления/исключения второго аудиокомпонента для данных о близости, удовлетворяющих критерию близости для первого удаленного клиента и второго удаленного клиента.This may provide improved user experience and/or improved audio sensing performance in many scenarios. The generator may be configured to attenuate a second audio component for proximity data indicating a measure of distance between the first remote client and the second remote client below a threshold. The weakening can be endless. In particular, the generator may be configured to suppress/remove/eliminate a second audio component for proximity data satisfying the proximity criterion for the first remote client and the second remote client.
В соответствии с необязательным признаком настоящего изобретения аудиоустройство является частью аудиосервера.According to an optional feature of the present invention, the audio device is part of an audio server.
Это может обеспечить высокие рабочие характеристики и эффективную реализацию во многих вариантах реализации.This can provide high performance and efficient implementation in many implementations.
В соответствии с необязательным признаком настоящего изобретения аудиоустройство является частью удаленного клиента из множества удаленных клиентов.In accordance with an optional feature of the present invention, the audio device is part of a remote client of a plurality of remote clients.
Это может обеспечить высокие рабочие характеристики и эффективную реализацию во многих вариантах реализации.This can provide high performance and efficient implementation in many implementations.
В соответствии с необязательным признаком настоящего изобретения данные о близости содержат скалярное указание близости по меньшей мере для первого удаленного клиента и второго удаленного клиента, причем скалярное указание близости указывает акустическое ослабление от аудиоисточника второго удаленного клиента до элемента захвата первого удаленного клиента.In accordance with an optional feature of the present invention, the proximity data comprises a scalar proximity indication for at least a first remote client and a second remote client, wherein the scalar proximity indication indicates an acoustic attenuation from an audio source of the second remote client to a capture element of the first remote client.
Это может обеспечить особенно эффективную работу во многих вариантах реализации. В некоторых вариантах реализации скалярное указание близости может быть двоичным указанием близости, указывающим, близки ли соответствующие удаленные клиенты или нет (например, в одном и том же помещении).This may provide particularly efficient operation in many implementations. In some implementations, the scalar proximity indication may be a binary proximity indication indicating whether the corresponding remote clients are close or not (eg, in the same premises).
В соответствии с необязательным признаком настоящего изобретения данные о близости содержат указание близости первого удаленного клиента со вторым удаленным клиентом, которое отличается от близости второго удаленного клиента с первым удаленным клиентом.In accordance with an optional feature of the present invention, the proximity data includes an indication of the proximity of the first remote client to the second remote client, which is different from the proximity of the second remote client to the first remote client.
Это может обеспечить эффективную работу во многих вариантах реализации. Данный подход может обеспечивать и поддерживать асимметричные указания близости, например, отражающие локальные акустические отличия (такие, как при использовании направленных микрофонов, или ношении участником закрытых наушников).This can provide efficient operation in many implementations. This approach can provide and support asymmetrical proximity cues, such as those reflecting local acoustic differences (such as when using directional microphones, or when a participant wears closed-back headphones).
В соответствии с необязательным признаком настоящего изобретения приемник выполнен с возможностью приема данных о близости с динамической адаптацией к изменениям в положениях по меньшей мере одного из множества удаленных клиентов.In accordance with an optional feature of the present invention, the receiver is configured to receive proximity data while dynamically adapting to changes in the positions of at least one of the plurality of remote clients.
Это может обеспечить эффективную работу и может обеспечить подход, динамически адаптирующийся к движениям пользователя.This can provide efficient operation and can provide an approach that dynamically adapts to the user's movements.
В соответствии с аспектом настоящего изобретения предложена система распределения аудио, содержащая: множество удаленных клиентов; аудиосервер для приема входящего аудио от множества удаленных клиентов и для передачи аудио, полученного из входящего аудио, по меньшей мере одному из множества удаленных клиентов; при этом по меньшей мере один из аудиосервера и одного из множества удаленных клиентов содержит: приемник для приема данных, содержащих: аудиоданные для множества аудиокомпонентов, причем каждый аудиокомпонент представляет аудио от удаленного клиента из множества удаленных клиентов; данные о близости для по меньшей мере одного из аудиокомпонентов, причем данные о близости указывают физическую близость между удаленными клиентами в акустической окружающей среде реального мира; генератор для формирования аудиосмеси множества аудиокомпонентов в ответ на данные о близости; при этом генератор выполнен с возможностью формирования первой аудиосмеси для первого удаленного клиента из множества удаленных клиентов, причем формирование первой аудиосмеси включает определение ослабления в первой аудиосмеси второго аудиокомпонента для второго удаленного клиента в ответ на данные о близости.In accordance with an aspect of the present invention, there is provided an audio distribution system comprising: a plurality of remote clients; an audio server for receiving incoming audio from a plurality of remote clients and for transmitting audio obtained from the incoming audio to at least one of the plurality of remote clients; wherein at least one of the audio server and one of the plurality of remote clients comprises: a receiver for receiving data comprising: audio data for a plurality of audio components, each audio component representing audio from a remote client of the plurality of remote clients; proximity data for at least one of the audio components, wherein the proximity data indicates physical proximity between remote clients in a real world acoustic environment; a generator for generating an audio mixture of a plurality of audio components in response to proximity data; wherein the generator is configured to generate a first audio mixture for a first remote client from the plurality of remote clients, wherein generating the first audio mixture includes determining an attenuation in the first audio mixture of a second audio component for the second remote client in response to the proximity data.
В соответствии с необязательным признаком настоящего изобретения система распределения аудио содержит детектор близости, выполненный с возможностью определения указания близости для первого удаленного клиента и второго удаленного клиента в ответ на сравнение первого аудиокомпонента для первого удаленного клиента и второго аудиокомпонента для второго удаленного клиента; и передатчик для передачи данных о близости, содержащих указание близости, приемнику.In accordance with an optional feature of the present invention, the audio distribution system comprises a proximity detector configured to determine a proximity indication for a first remote client and a second remote client in response to a comparison of a first audio component for the first remote client and a second audio component for the second remote client; and a transmitter for transmitting proximity data containing the proximity indication to the receiver.
Это может обеспечить особенно выгодные рабочие характеристики и низкую сложность во многих вариантах реализации.This can provide particularly advantageous performance and low complexity in many implementations.
В соответствии с необязательным признаком настоящего изобретения детектор близости является частью аудиосервера.In accordance with an optional feature of the present invention, the proximity detector is part of the audio server.
Это может обеспечить особенно выгодные рабочие характеристики и низкую сложность во многих вариантах реализации.This can provide particularly advantageous performance and low complexity in many implementations.
В соответствии с необязательным признаком настоящего изобретения первый удаленный клиент из множества удаленных клиентов содержит: вход для формирования сигнала микрофона, соответствующего аудио, захваченному набором микрофонов; детектор близости, выполненный с возможностью определения указания близости для первого удаленного клиента в ответ на сравнение сигнала микрофона и аудио, принятого с аудиосервера; и передатчик для передачи акустических аудиоданных, содержащих указание близости, аудиосерверу.In accordance with an optional feature of the present invention, the first remote client of the plurality of remote clients comprises: an input for generating a microphone signal corresponding to audio captured by the array of microphones; a proximity detector configured to determine a proximity indication for the first remote client in response to comparing the microphone signal and the audio received from the audio server; and a transmitter for transmitting acoustic audio data containing the proximity indication to the audio server.
Это может обеспечить особенно выгодные рабочие характеристики и низкую сложность во многих вариантах реализации. В некоторых вариантах реализации набор микрофонов может содержать один микрофон или может содержать, например, множество микрофонов, такое как, например, микрофонный массив, например, используемый для формирования луча/направленного захвата.This can provide particularly advantageous performance and low complexity in many implementations. In some embodiments, a microphone array may comprise a single microphone or may comprise, for example, a plurality of microphones, such as, for example, a microphone array, such as those used for beamforming/directional acquisition.
В соответствии с необязательным признаком настоящего изобретения передатчик выполнен с возможностью передачи данных о близости, указывающих на то, что текущий активный удаленный клиент определен как близкий в ответ на определение первым детектором близости высокой корреляции между сигналом микрофона и аудио, принятым с аудиосервера.In accordance with an optional feature of the present invention, the transmitter is configured to transmit proximity data indicating that a currently active remote client is determined to be close in response to the first proximity detector determining a high correlation between the microphone signal and the audio received from the audio server.
Это может обеспечить особенно выгодные рабочие характеристики и низкую сложность во многих вариантах реализации.This can provide particularly advantageous performance and low complexity in many implementations.
В соответствии с аспектом настоящего изобретения предложен способ работы аудиоустройства для системы распределения аудио, содержащей аудиосервер для приема входящего аудио от множества удаленных клиентов и для передачи аудио, полученного из входящего аудио, по меньшей мере некоторым из множества удаленных клиентов; при этом способ включает: прием данных, содержащих: аудиоданные для множества аудиокомпонентов, причем каждый аудиокомпонент представляет аудио от удаленного клиента из множества удаленных клиентов; данные о близости для по меньшей мере одного из аудиокомпонентов, причем данные о близости указывают физическую близость между удаленными клиентами в акустической окружающей среде реального мира; и формирование аудиосмеси множества аудиокомпонентов в ответ на данные о близости; при этом формирование включает формирование первой аудиосмеси для первого удаленного клиента из множества удаленных клиентов, причем формирование первой аудиосмеси включает определение ослабления в первой аудиосмеси второго аудиокомпонента для второго удаленного клиента в ответ на данные о близости.In accordance with an aspect of the present invention, there is provided a method of operating an audio device for an audio distribution system, comprising an audio server for receiving incoming audio from a plurality of remote clients and for transmitting audio obtained from the incoming audio to at least some of the plurality of remote clients; wherein the method includes: receiving data comprising: audio data for a plurality of audio components, each audio component representing audio from a remote client of the plurality of remote clients; proximity data for at least one of the audio components, wherein the proximity data indicates physical proximity between remote clients in a real world acoustic environment; and generating an audio mixture of the plurality of audio components in response to the proximity data; wherein generating includes generating a first audio mixture for a first remote client from the plurality of remote clients, wherein generating the first audio mixture includes determining an attenuation in the first audio mixture of a second audio component for the second remote client in response to proximity data.
Эти и другие аспекты, признаки и/или преимущества настоящего изобретения станут очевидны из вариантов реализации, описанных далее в этом документе, и будут пояснены со ссылкой на варианты реализации.These and other aspects, features and/or advantages of the present invention will become apparent from the embodiments described later in this document and will be explained with reference to the embodiments.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS
Варианты реализации изобретения будут описаны только на примерах со ссылкой на чертежи, на которых:Embodiments of the invention will be described only by way of example with reference to the drawings, in which:
на ФИГ. 1 показан пример системы распределения аудио;in FIG. 1 shows an example of an audio distribution system;
на ФИГ. 2 показан пример системы распределения аудио;in FIG. Figure 2 shows an example of an audio distribution system;
на ФИГ. 3 показан пример системы распределения аудио для проведения аудиоконференций;in FIG. 3 shows an example of an audio distribution system for audio conferencing;
на ФИГ. 4 показан пример элементов аудиоустройства в соответствии с некоторыми вариантами реализации настоящего изобретения;in FIG. 4 illustrates an example of audio device elements in accordance with some embodiments of the present invention;
на ФИГ. 5 показан пример элементов системы распределения аудио в соответствии с некоторыми вариантами реализации настоящего изобретения; иin FIG. 5 illustrates an example of elements of an audio distribution system in accordance with some embodiments of the present invention; And
на ФИГ. 6 показан пример элементов удаленного клиента для системы распределения аудио в соответствии с некоторыми вариантами реализации настоящего изобретения.in FIG. 6 illustrates an example of remote client elements for an audio distribution system in accordance with some embodiments of the present invention.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯIMPLEMENTATION OF THE INVENTION
Виртуальные (включая дополненные) восприятия, позволяющие пользователю перемещаться в виртуальном или дополненном мире, становятся все более популярными, и для удовлетворения такого спроса разрабатывают услуги. Во многих таких подходах визуальные данные и аудиоданные могут быть сформированы динамически для отражения текущего положения пользователя (или владельца).Virtual (including augmented) perceptions, which allow the user to navigate a virtual or augmented world, are becoming increasingly popular, and services are being developed to meet this demand. In many such approaches, visual data and audio data can be generated dynamically to reflect the current position of the user (or owner).
В данной области техники термины «расположение» и «поза» используются как общий термин для положения и/или направления/ориентации. Комбинация положения и направления/ориентации, например, объекта, камеры, головы или вида, может называться позой или расположением. Таким образом, указание расположения или позы может включать до шести значений/компонентов/степеней свободы, причем каждые значение/компонент/степень свободы описывают отдельное свойство положения/местоположения или ориентации/направления соответствующего объекта. Конечно, во многих ситуациях расположение или поза могут быть представлены с использованием меньшего числа компонентов, например, если один или более компонентов считают фиксированными или не относящимися к делу (например, если все объекты считают расположенными на одной и той же высоте и имеющими горизонтальную ориентацию, то полное представление позы объекта могут обеспечить четыре компонента). Далее термин «поза» используется для ссылки на положение и/или ориентацию, которые могут быть представлены от одного до шести значениями (соответствующими максимально возможным степеням свободы).In the art, the terms "position" and "posture" are used as a general term for position and/or direction/orientation. The combination of position and direction/orientation, such as an object, camera, head, or view, can be called pose or orientation. Thus, a location or pose specification may include up to six values/components/DOF, with each value/component/DOF describing a different property of the position/location or orientation/direction of the corresponding object. Of course, in many situations, location or pose can be represented using fewer components, for example, if one or more components are considered fixed or irrelevant (for example, if all objects are considered to be at the same height and have a horizontal orientation, then four components can provide a complete representation of the object's pose). In the following, the term “pose” is used to refer to position and/or orientation, which can be represented by one to six values (corresponding to the maximum possible degrees of freedom).
Многие приложения виртуальной реальности основаны на позе, имеющей максимум степеней свободы, т.е. по три степени свободы каждого из положений и ориентации, дающих в результате в общей сложности шесть степеней свободы. Таким образом, поза может быть представлена набором или вектором из шести значений, представляющих шесть степеней свободы и, следовательно, вектор позы может обеспечивать указание трехмерного положения и/или трехмерного направления. Однако понятно, что в других вариантах реализации поза может быть представлена меньшим количеством значений.Many virtual reality applications are based on a pose that has maximum degrees of freedom, i.e. three degrees of freedom of each position and orientation, resulting in a total of six degrees of freedom. Thus, a pose may be represented by a set or vector of six values representing six degrees of freedom and, therefore, the pose vector may provide an indication of a three-dimensional position and/or a three-dimensional direction. However, it is understood that in other embodiments the pose may be represented by fewer values.
Систему или объект, основанные на обеспечении максимума степеней свободы для зрителя, обычно называют имеющими 6 степеней свободы. Многие системы и объекты обеспечивают только ориентацию или положение, и их обычно называют имеющими 3 степени свободы.A system or object based on providing maximum degrees of freedom for the viewer is usually called having 6 degrees of freedom. Many systems and objects provide only orientation or position and are commonly referred to as having 3 degrees of freedom.
Как правило, приложение виртуальной реальности формирует трехмерные выходные данные в виде отдельных изображений вида для левого и правого глаз. Затем они могу быть представлены пользователю с помощью подходящих средств, обычно таких, как отдельные дисплеи для левого и правого глаз гарнитуры виртуальной реальности. В других вариантах реализации одно или более изображений вида могут быть, например, представлены на автостереоскопическом дисплее или, в действительности, в некоторых вариантах реализации может быть сформировано только одно двумерное изображение (например, с использованием обычного двумерного дисплея).Typically, a virtual reality application produces 3D output in the form of separate images of the view for the left and right eyes. These can then be presented to the user through suitable means, typically such as separate left and right eye displays of the virtual reality headset. In other embodiments, one or more views of the view may, for example, be presented on an autostereoscopic display, or indeed, in some embodiments, only one 2D image may be generated (eg, using a conventional 2D display).
Аналогичным образом для данной позы зрителя/пользователя/слушателя может быть обеспечено аудиопредставление сцены. Аудиосцену обычно преобразуют для воспроизведения для обеспечения пространственного восприятия, в котором аудиоисточники воспринимаются как происходящие из требуемых положений. Аудиоисточники могут быть статичными в сцене, а изменения позы пользователя приведут к изменению относительного положения аудиоисточника относительно позы пользователя. Соответственно, пространственное восприятие аудиоисточника следует изменять для отражения нового положения относительно пользователя. Преобразование для воспроизведения аудио может быть, соответственно, адаптировано в зависимости от позы пользователя.Likewise, an audio representation of the scene can be provided for a given viewer/user/listener position. The audio scene is typically converted for playback to provide spatial awareness in which audio sources are perceived as originating from desired positions. Audio sources may be static in the scene, and changes in the user's pose will result in a change in the relative position of the audio source relative to the user's pose. Accordingly, the spatial perception of the audio source should be changed to reflect the new position relative to the user. The conversion for audio playback can accordingly be adapted depending on the user's posture.
Во многих вариантах реализации преобразование для воспроизведения аудио является бинауральным преобразованием для воспроизведения с использованием передаточных функций головы (Head Related Transfer Function, HRTF) или бинауральных импульсных переходных характеристик помещения (Binaural Room Impulse Responses, BRIR) (или подобного) для обеспечения требуемого пространственного эффекта для пользователя, носящего наушники. Однако понятно, что в некоторых системах вместо этого аудио может быть преобразовано для воспроизведения с использованием системы громкоговорителей, а сигналы для каждого громкоговорителя могут быть преобразованы для воспроизведения так, что общий эффект возле пользователя соответствует требуемому пространственному восприятию.In many embodiments, the transform for audio playback is a binaural transform for playback using Head Related Transfer Functions (HRTF) or Binaural Room Impulse Responses (BRIR) (or the like) to provide the desired spatial effect for user wearing headphones. However, it is understood that in some systems the audio may instead be converted for playback using a speaker system, and the signals for each speaker may be converted for playback so that the overall effect near the user matches the desired spatial experience.
Входные данные позы зрителя или пользователя могут быть определены разными путями в разных приложениях. Во многих вариантах реализации физическое движение пользователя может быть отслежено непосредственно. Например, камера, производящая съемку области пользователя, может обнаруживать и отслеживать голову (или даже глаза (отслеживание глаз)) пользователя. Во многих вариантах реализации пользователь может носить гарнитуру виртуальной реальности, которая может быть отслежена внешними и/или внутренними средствами. Например, гарнитура может содержать акселерометры и гироскопы, обеспечивающие информацию о перемещении и повороте гарнитуры и, следовательно, головы. В некоторых примерах гарнитура виртуальной реальности может передавать сигналы или содержать (например, визуальные) идентификаторы, которые позволяют внешнему датчику определять положение гарнитуры виртуальной реальности.The viewer or user pose input can be determined in different ways in different applications. In many embodiments, the user's physical movement can be tracked directly. For example, a camera taking a picture of a user's area can detect and track the head (or even the eyes (eye tracking)) of the user. In many embodiments, the user may wear a virtual reality headset that can be tracked externally and/or internally. For example, the headset may contain accelerometers and gyroscopes that provide information about the movement and rotation of the headset and therefore the head. In some examples, the virtual reality headset may transmit signals or contain (eg, visual) identifiers that allow an external sensor to determine the position of the virtual reality headset.
В некоторых системах поза зрителя может быть предоставлена с помощью ручных средств, например, пользователем, вручную управляющим джойстиком или аналогичным средством ввода вручную. Например, пользователь может вручную перемещать виртуального зрителя вокруг виртуальной сцены, управляя первым аналоговым джойстиком одной рукой, и управлять вручную направлением, в котором смотрит виртуальный зритель, двигая вручную второй аналоговый джойстик другой рукой.In some systems, the viewer's pose may be provided by manual means, for example, by the user manually operating a joystick or similar manual input means. For example, a user can manually move a virtual viewer around a virtual stage by operating a first analog joystick with one hand, and manually control the direction in which the virtual viewer is looking by manually moving a second analog stick with the other hand.
В некоторых приложениях для формирования входной позы зрителя может быть использовано сочетание ручного и автоматизированного подходов. Например, гарнитура может отслеживать ориентацию головы, а перемещением/положением зрителя в сцене может управлять пользователь с помощью джойстика.Some applications may use a combination of manual and automated approaches to generate the viewer's input pose. For example, the headset can track head orientation, and the viewer's movement/position in the scene can be controlled by the user using a joystick.
В некоторых системах приложение виртуальной реальности может быть предоставлено зрителю локально, например, с помощью автономного устройства, которое не использует какие-либо удаленные данные или обработку виртуальной реальности, или даже не имеет никакого доступа к ним. Например, устройство, такое как игровая консоль, может содержать хранилище для хранения данных сцены, вход для приема/формирования позы зрителя и процессор для формирования соответствующих изображений из данных сцены.In some systems, the virtual reality application may be provided to the viewer locally, for example, by a standalone device that does not use, or even have any access to, any remote virtual reality data or processing. For example, a device such as a game console may include storage for storing scene data, an input for receiving/generating a viewer's pose, and a processor for generating corresponding images from the scene data.
В других системах приложение виртуальной реальности может быть реализовано и выполнено удаленно от зрителя. Например, устройство, локальное для пользователя, может обнаруживать/принимать данные движения/позы, передаваемые удаленному устройству, которое обрабатывает данные для формирования позы зрителя. После этого удаленное устройство может формировать подходящие изображения вида для позы зрителя на основе данных сцены, описывающих сцену. Затем изображения вида передают на устройство, локальное для зрителя, где их представляют. Например, удаленное устройство может непосредственно формировать видеопоток (обычно поток стерео/3D-видео), который непосредственно представляют с помощью локального устройства. Аналогичным образом удаленное устройство может формировать аудиосцену, отражающую виртуальную окружающую аудиосреду. Во многих вариантах реализации это может быть сделано путем формирования аудиосигналов, которые соответствуют относительному положению разных аудиоисточников в виртуальной окружающей аудиосреде, например, путем применения бинауральной обработки к отдельным аудиокомпонентам, соответствующим их текущему положению относительно позы головы. Поэтому в таком примере локальное устройство может не выполнять никакой обработки виртуальной реальности за исключением передачи данных движения и представления принятых видео- и аудиоданных.In other systems, the virtual reality application may be implemented and executed remotely from the viewer. For example, a device local to the user may detect/receive motion/pose data transmitted to a remote device, which processes the data to generate the viewer's pose. The remote device can then generate suitable view images for the viewer's pose based on the scene data describing the scene. The view images are then transferred to a device local to the viewer where they are presented. For example, a remote device can directly generate a video stream (typically a stereo/3D video stream) that is directly presented by the local device. Likewise, the remote device can generate an audio scene that reflects the virtual audio environment. In many implementations, this can be done by generating audio signals that correspond to the relative positions of different audio sources in a virtual audio environment, for example, by applying binaural processing to individual audio components corresponding to their current position relative to head pose. Therefore, in such an example, the local device may not perform any virtual reality processing other than transmitting motion data and presenting received video and audio data.
Аналогичным образом удаленное устройство VR может формировать аудиоданные, представляющие аудиосцену, и может передавать аудиокомпоненты/аудиообъекты, соответствующие разным аудиоисточниками в аудиосцене, вместе информацией о положении, указывающей положение этих источников (которая может быть, например, динамически изменена для движущихся объектов). После этого локальное устройство VR может преобразовать для воспроизведения сигналы соответствующим образом, например, путем применения надлежащей бинауральной обработки, отражающей относительное положение аудиоисточников для аудиокомпонентов.Likewise, a remote VR device may generate audio data representing an audio scene, and may transmit audio components/audio objects corresponding to different audio sources in the audio scene, along with position information indicating the position of those sources (which may, for example, be dynamically changed for moving objects). The local VR device can then convert the signals for playback accordingly, for example by applying appropriate binaural processing reflecting the relative position of the audio sources for the audio components.
Для аудиоучастника центральный сервер в некоторых вариантах реализации может соответственно формировать пространственную аудиосмесь, которая может быть преобразована для воспроизведения удаленным клиентским устройством. Например, центральный сервер может формировать пространственное аудио в виде ряда аудиоканалов для прямого преобразования для воспроизведения акустической системой окружающего звучания. Однако, чаще всего центральный сервер может формировать смесь посредством бинауральной обработки всех аудиосигналов в сцене, подлежащей преобразованию для воспроизведения, и затем объединять их в бинауральный стереосигнал, который может быть непосредственно преобразован для воспроизведения на клиентской стороне с использование наушников.For an audio participant, the central server in some embodiments may accordingly generate a spatial audio mixture that can be converted for playback by a remote client device. For example, a central server may render spatial audio into a series of audio channels for direct conversion for playback by a surround speaker system. However, more often than not, a central server can create a mix by binaurally processing all the audio signals in the scene to be converted for playback, and then combine them into a binaural stereo signal that can be directly converted for playback on the client side using headphones.
Во многих применениях центральный сервер может вместо этого предоставлять ряд аудиообъектов или аудиокомпонентов, каждый из которых соответствует, как правило, одному аудиоисточнику. После этого клиент может обработать такие объекты/компоненты для формирования требуемой аудиосцены. В частности, он может подвергнуть бинауральной обработке каждый аудиообъект на основе требуемого положения и объединить результаты.In many applications, a central server may instead provide a number of audio objects or audio components, each corresponding to typically a single audio source. The client can then process such objects/components to form the desired audio scene. Specifically, it can binaurally process each audio object based on the required position and combine the results.
В таких системах аудиоданные, передаваемые удаленному клиенту, могут содержать данные для множества аудиокомпонентов или аудиообъектов. Аудио может быть, например, представлено в виде кодированного аудио для данного аудиокомпонента, который нужно преобразовать для воспроизведения. Аудиоданные могут также содержать данные о положении, которые указывают положение источника аудиокомпонента. Позиционные данные могут, например, содержать данные об абсолютном положении, определяющие положение аудиоисточника в сцене. В таком варианте реализации локальное устройство может определять относительное положение аудиоисточника относительно текущей позы пользователя. Таким образом, принимаемые данные о положении могут быть независимыми от движений пользователя, а для отражения положения аудиоисточника относительно пользователя может быть локально определено относительное положение для аудиоисточников. Такое относительное положение может указывать относительное положение, из которого пользователь должен воспринимать источник звука, и, соответственно, будет меняться в зависимости от движений головы пользователя. В других вариантах реализации аудиоданные могут содержать данные о положении, которые непосредственно описывают относительное положение.In such systems, the audio data transmitted to the remote client may contain data for multiple audio components or audio objects. The audio may, for example, be represented as encoded audio for a given audio component that needs to be converted for playback. The audio data may also include position data that indicates the source position of the audio component. The position data may, for example, comprise absolute position data defining the position of the audio source in the scene. In such an implementation, the local device can determine the relative position of the audio source relative to the user's current posture. In this way, the received position data can be independent of the user's movements, and a relative position for the audio sources can be locally determined to reflect the position of the audio source relative to the user. Such relative position may indicate the relative position from which the user should perceive the sound source, and accordingly will change depending on the movements of the user's head. In other embodiments, the audio data may include position data that directly describes relative position.
На ФИГ. 1 показан пример системы VR, в которой центральный сервер 101 поддерживает связь с рядом удаленных клиентов 103, например, через сеть 105, такую как Интернет. Центральный сервер 101 может быть выполнен с возможностью одновременной поддержки потенциально большого количества удаленных клиентов 103.In FIG. 1 shows an example of a VR system in which a central server 101 communicates with a number of remote clients 103, for example, through a network 105 such as the Internet. The central server 101 may be configured to support a potentially large number of remote clients 103 simultaneously.
Такой подход может обеспечивать улучшенный компромисс, например, между сложностью и потребностью в ресурсах для разных устройств, требованиями к связи и т.д., во многих сценариях. Например, поза зрителя и соответствующие данные сцены могут передаваться с более длинными интервалами, при этом локальное устройство обрабатывает позу зрителя и принятые данные сцены локально для обеспечения восприятия в реальном времени с малым запаздыванием. Это может, например, существенно уменьшить требуемую полосу пропускания связи с обеспечением при этом восприятия с малой задержкой при возможности централизованного хранения, формирования и поддержания данных сцены. Это может, например, подойти для приложений, в которых восприятие виртуальной реальности обеспечивают на множестве удаленных устройств.This approach can provide improved trade-offs between, for example, complexity and resource requirements for different devices, communication requirements, etc., in many scenarios. For example, viewer pose and corresponding scene data may be transmitted at longer intervals, with the local device processing viewer pose and received scene data locally to provide low-latency, real-time perception. This can, for example, significantly reduce the required communication bandwidth while providing low-latency perception while allowing scene data to be centrally stored, generated, and maintained. This may, for example, be suitable for applications in which virtual reality experiences are provided across multiple remote devices.
Особенно привлекательным приложением AR/VR является приложение для виртуальной телеконференции, в котором пользователи/участники могут находиться в разных местах. Пример такого приложения иллюстрирует ФИГ. 2, на которой показан центральный сервер 101, соответствующий центральному серверу, изображенному на ФИГ. 1, который поддерживает множество удаленных (аудио-) клиентов 103. Как можно увидеть, все удаленные клиенты 103 обмениваются данными непосредственно с центральным сервером 101, а не друг с другом. Таким образом, каждый удаленный клиент 103 может выгружать аудиокомпонент, соответствующий одному или более локальных аудиоисточников для удаленного клиента 103, на центральный сервер 101. Центральный сервер 101 может передавать отдельному удаленному клиенту 103 аудиоданные, которые представляют аудио от других удаленных клиентов 103. Как правило, каждый пользователь или участник будет иметь отдельное устройство, реализующее удаленный клиент 103, хотя, конечно, в некоторых вариантах реализации и сценариях удаленный клиент может совместно использоваться множеством пользователей/участников.A particularly attractive AR/VR application is a virtual teleconferencing application where users/participants may be located in different locations. An example of such an application is illustrated in FIG. 2, which shows a central server 101 corresponding to the central server shown in FIG. 1, which supports multiple remote (audio) clients 103. As can be seen, all remote clients 103 communicate directly with the central server 101 and not with each other. Thus, each remote client 103 may upload an audio component corresponding to one or more local audio sources for the remote client 103 to the central server 101. The central server 101 may provide the individual remote client 103 with audio data that represents audio from other remote clients 103. Typically, each user or participant will have a separate device implementing the remote client 103, although, of course, in some implementations and scenarios, the remote client may be shared among multiple users/participants.
Однако, авторы изобретения поняли, что проблемой для многих таких практических систем и приложений является то, что на восприятие пользователем может влиять аудио в локальной окружающей среде. Обычно на практике трудно полностью подавить аудио в локальной окружающей среде, и действительно, даже при ношении наушников локальная окружающая среда вносит ощутимый вклад в воспринимаемое аудио. В некоторых случаях такие звуки могут быть подавлены с использованием активного шумоподавления. Однако это шумоподавление непрактично для аудиоисточников, которые имеют прямой аналог в сцене VR и часто имеет тенденцию быть неполным.However, the inventors have realized that a problem for many such practical systems and applications is that the user's experience may be influenced by audio in the local environment. It is usually difficult in practice to completely suppress audio in the local environment, and indeed, even when wearing headphones, the local environment makes a significant contribution to the perceived audio. In some cases, such sounds can be suppressed using active noise cancellation. However, this noise reduction is impractical for audio sources that have a direct counterpart in the VR scene and often tends to be incomplete.
Действительно, проблема помех между звуками реальной окружающей среды и звуками аудиосцены остается открытой особенно для приложений, обеспечивающих восприятие VR, которое также отражает локальную окружающую среду, как, например, во многих случаях восприятия AR.Indeed, the problem of interference between the sounds of the real environment and the sounds of the audio scene remains open especially for applications that provide VR perception that also reflects the local environment, such as in many AR perception cases.
Например, осуществляются приложения, которые включают в себя «социальный» или «общий» аспект VR, при котором, например, множество людей в одной и той же локальной окружающей среде (например, помещении) имеют общее восприятие. Такие «социальные» или «общие» примеры использования предлагаются, например, в MPEG, и в настоящее время являются одним из основных классов восприятия для текущей деятельности по стандартизации MPEG-I. Примером такого применения является случай, когда несколько человек находятся в одном помещении и имеют одно и то же общее восприятие с присутствием проекции (аудио или видео) каждого участника в контенте VR.For example, applications are being implemented that include a "social" or "shared" aspect of VR, where, for example, multiple people in the same local environment (eg, indoors) share a common experience. Such "social" or "shared" use cases are offered, for example, in MPEG, and are currently one of the main perception classes for ongoing MPEG-I standardization efforts. An example of such an application is when several people are in the same room and have the same general perception with the presence of a projection (audio or video) of each participant in the VR content.
При таком применении окружающая среда VR может содержать аудиоисточник, соответствующий каждому участнику, но в дополнение к этому пользователь может, например, из-за обычной проницаемости наушников, также слышать непосредственно других участников, если они присутствуют локально. Действительно, во многих ситуациях участник может преднамеренно носить открытые наушники, чтобы слышать локальную окружающую обстановку. Эта помеха может отрицательно сказаться на восприятии пользователем и может ослабить погружение участника. Однако выполнение шумоподавления на реальном звуковом компоненте является очень трудным и очень дорогостоящим с вычислительной точки зрения. Большинство типичных методов шумоподавления основаны на микрофоне внутри наушников вместе с контуром обратной связи для сведения к минимуму (предпочтительно, полному) любого компонента сигнала реального мира в сигнале микрофона (сигнал микрофона может рассматриваться как сигнал ошибки, приводящий в действие контур). Однако такой подход не реализуем, когда требуется фактическое присутствие аудиоисточника в воспринимаемом аудио.In such an application, the VR environment may contain an audio source corresponding to each participant, but in addition to this, the user may, for example, due to the normal permeability of the headphones, also hear other participants directly if they are present locally. Indeed, in many situations, a participant may deliberately wear open-back headphones to hear the local environment. This interference can negatively impact the user's experience and can weaken the participant's immersion. However, performing noise reduction on a real audio component is very difficult and very computationally expensive. Most typical noise reduction techniques rely on a microphone inside the headphones along with a feedback loop to minimize (preferably completely) any real world signal component in the microphone signal (the microphone signal can be thought of as an error signal driving the loop). However, this approach is not feasible when the actual presence of the audio source in the perceived audio is required.
Авторы изобретения поняли, что для системы проведения конференций, такой как система на ФИГ. 2, восприятие аудио может быть ухудшено, особенно когда разные пользователи/участники находятся в одном и том же физическом месте, и каждый пользователь имеет свой собственный микрофон и соединение с сервером конференций, т.е. когда разные находящиеся в одном месте пользователи используют разные удаленные клиенты. Сервер конференций может отправлять каждому удаленному клиенту уникальную смесь, содержащую все входящие сигналы от других удаленных клиентов. В случае, когда пользователи находятся в одном и том же физическом месте, они, как правило, акустически слышат других пользователей в этом месте (в зависимости от того, насколько акустически открыты наушники), а также через свои наушники, поскольку принимаемое аудио содержит аудиокомпонент от удаленного клиента другого пользователя. Задержка в таком конференц-соединении обычно достаточно большая, чтобы сделать восприятие весьма неприятным.The inventors realized that for a conferencing system such as the system in FIG. 2, the audio experience may be degraded, especially when different users/participants are in the same physical location and each user has their own microphone and connection to the conference server, i.e. when different users in the same location use different remote clients. The conferencing server can send each remote client a unique mixture containing all incoming signals from other remote clients. In the case where users are in the same physical location, they will typically hear other users in that location acoustically (depending on how acoustically open the headphones are), as well as through their headphones, since the received audio contains an audio component from another user's remote client. The latency in such a conference call is usually long enough to make the experience quite unpleasant.
Данная проблема особенно значительна для AR/VR ввиду добавления визуального компонента. Если удаленный человек присоединяется к восприятию AR, этот человек также может быть преобразован для визуального воспроизведения, например, посредством аватара.This problem is especially significant for AR/VR due to the addition of a visual component. If a remote person joins the AR experience, that person can also be transformed into a visual representation, for example through an avatar.
Даже если все пользователи носят достаточно закрытые наушники для уменьшения уровней внешних звуков для пользователя (наиболее вероятный случай использования для VR), все равно в сигналах микрофонов, которые записывают в общем месте, существует (прямой акустический) компонент речи каждого пользователя. Это может вызвать артефакты, поскольку речь поступает на разные микрофоны со слегка отличающимися задержками, и поэтому смешивается с немного разными задержками (и более ослабленными версиями) самой себя. Результатом может быть эффект, соответствующий применению гребенчатой фильтрации.Even if all users wear sufficiently closed headphones to reduce external sound levels for the user (the most likely use case for VR), there is still a (direct acoustic) component of each user's speech in the signals of the microphones that are recorded in a common location. This can cause artifacts as speech arrives at different microphones at slightly different delays, and is therefore mixed with slightly different delays (and attenuated versions) of itself. The result may be an effect consistent with the use of comb filtering.
Таким образом, локальные источники звука могут создавать помехи как для восприятия пользователем аудио, преобразованного для воспроизведения аудиопространства, так и для захвата звука отдельного участника.Thus, local audio sources can interfere with both the user's experience of the audio converted to reproduce the audio space and the individual participant's audio capture.
Хотя системы конференций могут приглушать или ослаблять пользователей с низким уровнем сигналов микрофона для улучшения разборчивости активной речи путем удаления шума или фоновых звуков из микрофонов участников, которые не говорят, это обычно не решает проблему полностью. Например, если микрофоны других участников улавливают речь с достаточно высоким уровнем, они не могут быть приглушены или ослаблены, что приводит к пониженному отношению сигнал/шум.Although conferencing systems can mute or attenuate users with low microphone levels to improve active speech intelligibility by removing noise or background sounds from the microphones of participants who are not speaking, this usually does not completely solve the problem. For example, if other participants' microphones pick up speech at a high enough level, they cannot be muted or attenuated, resulting in a lower signal-to-noise ratio.
Эту проблему можно проиллюстрировать примером, приведенным на ФИГ. 3. Сценарий помещения A приводит к возможно сильным артефактам в нынешних системах конференций. При двух соединениях с сервером устройство пользователя A1 воспроизводит задержанную речь пользователя A2 и наоборот.This problem can be illustrated by the example shown in FIG. 3. Room Scenario A results in possibly severe artifacts in current conferencing systems. For two connections to the server, user A1's device plays delayed speech from user A2 and vice versa.
Как правило, для двух или более соединений, используемых в одном и том же помещении или по меньшей мере вблизи друг от друга, аудио каждого пользователя с сервера конференций будет исключать сигнал его собственного микрофона, но включать аудио от всех остальных пользователей с задержкой, определяемой кодеком конференции, системой и соединениями между пользователями и сервером и т.д. Для типичных систем конференций эти задержки будут менее 500 мс.Typically, for two or more connections used in the same room or at least close to each other, each user's audio from the conference server will exclude his own microphone signal, but include audio from all other users with a delay determined by the codec conferences, system and connections between users and server, etc. For typical conferencing systems, these latencies will be less than 500 ms.
У этой ситуации несколько недостатков:This situation has several disadvantages:
- Слышимость пользователем своей собственной речи с задержкой (задержанная слуховая обратная связь) очень раздражает и, как известно, вызывает нервно-психическое напряжение.- The user's delayed hearing of their own speech (delayed auditory feedback) is very annoying and is known to cause mental stress.
- Если пользователь A1 говорит, он будет отрицательно влиять на разборчивость речи для других людей в помещении, что увеличивает усилия на слушание и усталость.- If the A1 user speaks, he will negatively impact speech intelligibility for other people in the room, which increases listening effort and fatigue.
- Если пользователь A1 говорит, задержанная речь от клиентских динамиков других пользователей в помещении также улавливается микрофоном пользователя A1, которая будет опять же воспроизводиться через динамики других пользователей и т.д., потенциально вызывая акустическую обратную связь («звон»).- If user A1 speaks, delayed speech from the client speakers of other users in the room will also be picked up by user A1's microphone, which will again be played back through other users' speakers, etc., potentially causing acoustic feedback ("ringing").
- Если пользователь A1 говорит, он также будет улавливаться микрофонами всех других пользователей, что может вызвать проблемы для системы конференций, определяющей, какой человек говорит (предотвращая заглушение или ослабление системой других людей для управления отношением сигнал/шум), или вызвать нарастание уровня сигнала.- If user A1 speaks, it will also be picked up by all other users' microphones, which can cause problems for the conferencing system detecting which person is speaking (preventing the system from drowning out or attenuating other people to control the signal-to-noise ratio), or cause the signal level to build up.
Далее будет описан подход, который может, как правило, смягчать такие эффекты и недостатки. Подход основан на формировании и распределении метаданных, указывающих акустическую/пространственную взаимосвязь между разными удаленными клиентами. Например, могут быть сформированы метаданные, которые указывают, какие удаленные клиенты (при наличии таковых) находятся в одном месте, и, в частности, указывают, находятся ли удаленные клиенты в одном и том же помещении (например, можно считать, что положение удаленного клиента соответствует положению захвата локального аудио, такой как, например, положение одного или более микрофонов, захватывающих локальное аудио). Метаданные могут быть распределены, например, центральному серверу или (другим) удаленным клиентам, где они могут быть использованы при формировании подходящего аудио (а также потенциально для других целей).The following will describe an approach that can generally mitigate such effects and disadvantages. The approach is based on the generation and distribution of metadata indicating the acoustic/spatial relationship between different remote clients. For example, metadata may be generated that indicates which remote clients, if any, are in the same location, and in particular indicates whether the remote clients are in the same premises (for example, the location of the remote client may be considered corresponds to the position of the local audio capture, such as, for example, the position of one or more microphones capturing the local audio). The metadata can be distributed, for example, to a central server or (other) remote clients, where it can be used in generating suitable audio (and potentially for other purposes).
На ФИГ. 4 показаны примеры аудиоустройства для системы распределения аудио, которая содержит аудиосервер, обслуживающий множество удаленных клиентов и выполненный с возможностью приема и передачи аудио от удаленных клиентов/удаленным клиентам. Дальнейшее описание будет сосредоточено на системе распределения аудио в виде системы конференций в режиме VR и будет, в частности, ссылаться на систему, такую как система, изображенная на ФИГ. 1-3. Однако понятно, что общие подход и принципы не ограничиваются такой системой аудиоконференций, а могут быть применены к многим другим системам и приложениям распределения аудио, таким как другие услуги социальной AR.In FIG. 4 shows examples of an audio device for an audio distribution system that includes an audio server serving a plurality of remote clients and configured to receive and transmit audio from/to remote clients. The following description will focus on an audio distribution system in the form of a VR mode conferencing system and will particularly refer to a system such as the system depicted in FIG. 1-3. However, it is clear that the general approach and principles are not limited to such an audio conferencing system, but can be applied to many other audio distribution systems and applications, such as other social AR services.
Таким образом, далее центральный сервер 101 будет упоминаться как аудиосервер 101. Он, в частности, поддерживает приложение для аудиоконференций, и поэтому может рассматриваться как сервер конференций. Аналогичным образом, каждый из удаленных клиентов 103 представляет участника конференции/пользователя (или потенциально множество их) и выполняет функцию захвата/формирования аудиокомпонента, представляющего звук/аудио для участника и преобразования для воспроизведения комбинированной аудиосцены конференции пользователю. Каждый удаленный клиент также содержит функциональные возможности для формирования соответствующей визуальной сцены, например, путем формирования полностью виртуальной сцены с аватарами, представляющими других участников, или путем формирования визуальных наложений для гарнитуры AR. Аудиосцены и визуальные сцены формируют так, чтобы они были согласованными и обеспечивали интегрированное преобразование для воспроизведения подходящего сценария конференции.Thus, in the following, the central server 101 will be referred to as the audio server 101. It particularly supports an audio conferencing application and can therefore be considered a conferencing server. Likewise, each of the remote clients 103 represents a conference participant/user (or potentially a plurality of them) and performs the function of capturing/shaping an audio component representing the audio/audio for the participant and converting to render the combined conference audio scene to the user. Each remote client also contains functionality for generating a corresponding visual scene, for example by generating a fully virtual scene with avatars representing other participants, or by generating visual overlays for an AR headset. Audio scenes and visual scenes are configured to be consistent and provide integrated conversion to reproduce the appropriate conference scenario.
Как правило, каждый удаленный клиент содержит по меньшей мере один микрофон, выполненный с возможностью захвата звука. Удаленный клиент также выполнен с возможностью формирования аудиокомпонента из захваченного сигнала микрофона, и этот аудиокомпонент может быть передан аудиосерверу 101.Typically, each remote client contains at least one microphone configured to capture audio. The remote client is also configured to generate an audio component from the captured microphone signal, and this audio component can be transmitted to the audio server 101.
Аудиосервер 101 принимает аудиокомпоненты от разных удаленных клиентов 103. После этого аудиосервер 101 передает каждому из удаленных клиентов 103 отражающие аудиокомпоненты, принимаемые от других удаленных клиентов 103. В некоторых вариантах реализации аудиосервер 101 может пересылать принимаемые аудиокомпоненты, так что удаленные клиенты 103 принимают аудиокомпоненты от других удаленных клиентов 103. В других вариантах реализации аудиосервер 101 может формировать комбинированное представление аудиосмеси (например, сигнал окружающего звука, бинауральные сигналы или моносигнал) путем объединения аудиокомпонентов для соответствующих удаленных клиентов 103. В таких вариантах реализации аудиосервер 101 может формировать конкретную аудиосмесь с понижающим микшированием для каждого удаленного клиента 103. Аудиосмесь может содержать аудиосигналы, представляющие аудиокомпоненты от множества удаленных клиентов 103.Audio server 101 receives audio components from various remote clients 103. Audio server 101 then forwards to each of the remote clients 103 reflective audio components received from other remote clients 103. In some embodiments, audio server 101 may forward received audio components such that remote clients 103 receive audio components from others remote clients 103. In other embodiments, audio server 101 may generate a combined representation of an audio mixture (e.g., surround, binaural signals, or mono signal) by combining audio components for respective remote clients 103. In such embodiments, audio server 101 may generate a specific downmixed audio mixture for each remote client 103. The audio mix may include audio signals representing audio components from a plurality of remote clients 103.
Аудиоустройство на ФИГ. 2 содержит приемник 401, который выполнен с возможностью приема аудиоданных и связанных метаданных, содержащих данные о близости.The audio device in FIG. 2 includes a receiver 401 that is configured to receive audio data and associated metadata containing proximity data.
Приемник 401, в частности, выполнен с возможностью приема множества аудиокомпонентов, каждый из которых представляет звук от удаленного клиента. Таким образом, аудиоустройство принимает множество аудиокомпонентов, причем каждый из них связан с удаленным клиентом 103, от которого он принят. Каждый аудиокомпонент может, в частности, соответствовать аудио/звуку, захваченному набором микрофонов на удаленном клиенте 103.The receiver 401 is particularly configured to receive a plurality of audio components, each representing audio from a remote client. Thus, the audio device receives a plurality of audio components, each of which is associated with the remote client 103 from which it was received. Each audio component may, in particular, correspond to audio/audio captured by a set of microphones on the remote client 103.
Кроме того, приемник 401 принимает данные о близости по меньшей мере для одного и, как правило, некоторых или даже всех аудиокомпонентов. Данные о близости обеспечивают данные о взаимосвязи, которые предоставляют информацию об акустической/пространственной взаимосвязи между удаленными клиентами 103.In addition, receiver 401 receives proximity data for at least one and typically some or even all audio components. Proximity data provides relationship data that provides information about the acoustic/spatial relationship between distant clients 103.
Данные о близости, в частности, указывают на близость между удаленными клиентами из множества удаленных клиентов. Указание близости от первого удаленного клиента до второго удаленного клиента может отражать акустическое ослабление (в реальном мире) (в частности, распространения звука посредством вибраций в воздухе или других средах) от аудиоисточника для этого первого удаленного клиента (такого, как говорящий участник, связанный с первым удаленным клиентом) до положения, связанного со вторым удаленным клиентом. Это положение может быть, в частности, положением микрофона первого удаленного клиента, захватывающего сигнал, из которого формируют аудиокомпонент для первого удаленного клиента, или может быть, например, положением пользователя (и, в частности, ушей пользователя) или пользователей.Proximity data specifically indicates the proximity between remote clients from a set of remote clients. Indicating the proximity from the first remote client to the second remote client may reflect the (real world) acoustic attenuation (specifically, the propagation of sound through vibrations in the air or other media) from the audio source for that first remote client (such as the speaker associated with the first remote client) to the position associated with the second remote client. This position may be, in particular, the position of the microphone of the first remote client capturing the signal from which the audio component for the first remote client is formed, or may be, for example, the position of the user (and, in particular, the user's ears) or users.
Таким образом, данные о близости могут быть, в частности, акустическими данными о близости и могут содержать указания близости для удаленных клиентов, такие как указания близости для пар или наборов удаленных клиентов 103.Thus, the proximity data may be, in particular, acoustic proximity data and may include proximity indications for remote clients, such as proximity indications for pairs or sets of remote clients 103.
Данные о близости/указание близости могут соответственно отражать акустическую передаточную функцию/акустическое ослабление от положения первого удаленного клиента до положения второго удаленного клиента. Указание близости от первого удаленного клиента до второго удаленного клиента может отражать степень или уровень помех аудио, связанного со вторым удаленным клиентом, для аудио, связанного с первым удаленным клиентом.The proximity data/proximity indication may respectively reflect the acoustic transfer function/acoustic attenuation from the position of the first remote client to the position of the second remote client. Indicating the proximity from the first remote client to the second remote client may reflect the degree or level of interference of audio associated with the second remote client to audio associated with the first remote client.
Указание близости от первого удаленного клиента до второго удаленного клиента может, в частности, отражать величину аудио из аудиоисточника, связанного со вторым удаленным клиентом, которая захватывается в аудиокомпоненте первого удаленного клиента. В частности, указание близости может отражать, насколько аудио от первого динамика/участника для второго удаленного клиента захватывается первым удаленным клиентом.The proximity indication from the first remote client to the second remote client may, in particular, reflect the amount of audio from an audio source associated with the second remote client that is captured in the audio component of the first remote client. In particular, the proximity indication may reflect how much audio from a first speaker/participant to a second remote client is captured by the first remote client.
Данные/указания близости во многих сценариях соответствуют непосредственно пространственной близости, и может быть использован термин «пространственная близость». Поэтому данные о близости могут указывать пространственную близость разных удаленных клиентов. Во многих вариантах реализации данные о близости могут обеспечивать информацию о том, какие удаленные клиенты находятся близко и, в частности, в одном месте. Удаленные клиенты могут рассматриваться как находящиеся в одном месте/близкие, если аудио, представленное аудиокомпонентом одного удаленного клиента, может быть также захвачено другим удаленным клиентом. В некоторых вариантах реализации удаленные клиенты могут считаться находящимися в одном месте/близкими, если положения удаленных клиентов удовлетворяют критерию расстояния, заключающемуся, например, в том, что пространственное расстояние меньше порогового значения, или что удаленные клиенты находятся в одном и том же помещении. В некоторых вариантах реализации в пороговое значение может быть встроен гистерезис во избежание переключения от одного решения к другому.Proximity data/indications in many scenarios correspond directly to spatial proximity, and the term “spatial proximity” may be used. Therefore, proximity data can indicate the spatial proximity of different remote clients. In many implementations, proximity data may provide information about which remote clients are close and, in particular, in the same location. Remote clients can be considered co-located/close if the audio represented by the audio component of one remote client can also be captured by another remote client. In some implementations, remote clients may be considered co-located/close if the locations of the remote clients satisfy a distance criterion such that, for example, the spatial distance is less than a threshold, or that the remote clients are in the same premises. In some implementations, hysteresis may be built into the threshold to avoid switching from one solution to another.
Данные о близости могут указывать близость в реальном мире между удаленными клиентами и, в частности, близость акустического/звукового распространения в реальном мире между удаленными клиентами. Указание близости может быть независимым от требуемых положений соответствующего аудио в формируемой аудиосцене аудиосмеси. Указание близости может быть независимым от положений виртуальной (аудио-) сцены. Указание/данные о близости могут указывать пространственные/акустические свойства в реальном мире. Таким образом, вместо отражения некоторой формы требуемой близости между аудио, подлежащим преобразованию для воспроизведения, данные о близости отражают некоторую форму фактической физической близости и акустическую окружающую среду между удаленными клиентами. Данные о близости не отражают некоторую форму воображаемой, теоретической, виртуальной или требуемой близости, например, некоторого нефизического мира, а отражают близость (обычно акустическую) в реальном мире.The proximity data may indicate real world proximity between remote clients and, in particular, real world acoustic/sound propagation proximity between remote clients. The proximity indication may be independent of the desired positions of the corresponding audio in the generated audio scene of the audio mixture. The proximity indication may be independent of the virtual (audio) scene positions. Proximity indication/data can indicate spatial/acoustic properties in the real world. Thus, rather than reflecting some form of desired proximity between audio to be converted for playback, proximity data reflects some form of actual physical proximity and acoustic environment between remote clients. Proximity data does not reflect some form of imagined, theoretical, virtual or desired proximity, such as some non-physical world, but rather reflects proximity (usually acoustic) in the real world.
В многих вариантах реализации указания близости могут быть симметричными, т.е. одни и те же указание/мера близости могут быть применены к близости от первого удаленного клиента до второго удаленного клиента, как и к близости от второго удаленного клиента до первого удаленного клиента. Однако в некоторых вариантах реализации могут быть применены асимметричные указания близости. Например, в случае удаленных клиентов, использующих направленные микрофоны, ослабление на втором удаленном клиенте динамика, связанного с первым удаленным клиентом, может отличаться от ослабления на первом удаленном клиенте динамика, связанного со вторым удаленным клиентом. Аналогичным образом, когда данные о близости содержат положение возле ушей участника/пользователя первого удаленного клиента, носящего наушники, ослабление зависит от акустического ослабления, оказываемого наушниками, и может отличаться от ослабления для ушей участника/пользователя второго удаленного клиента.In many implementations, proximity indications may be symmetrical, i.e. the same proximity indication/measure may be applied to the proximity from the first remote client to the second remote client as to the proximity from the second remote client to the first remote client. However, in some implementations, asymmetrical proximity indications may be used. For example, in the case of remote clients using directional microphones, the attenuation on the second remote client of the speaker associated with the first remote client may be different from the attenuation on the first remote client of the speaker associated with the second remote client. Likewise, when the proximity data includes a position near the ears of a participant/user of a first remote client wearing headphones, the attenuation depends on the acoustic attenuation provided by the headphones and may be different from the attenuation for the ears of a participant/user of a second remote client.
Таким образом, приемник 401 принимает данные о близости, которые могут представлять пространственные/акустические взаимосвязи между удаленными клиентами 103, и, в частности, могут указывать, что удаленные клиенты 103 находятся в одном месте/вблизи друг друга, например в одном помещении.Thus, receiver 401 receives proximity data that may represent spatial/acoustic relationships between remote clients 103, and in particular may indicate that remote clients 103 are in the same location/proximity to each other, such as the same room.
Приемник 401 соединен с генератором 403, который принимает аудиокомпоненты и данные о близости. Генератор выполнен с возможностью формирования аудиосмеси множества аудиокомпонентов в ответ на данные о близости. Аудиосмесь может содержать множество аудиокомпонентов от разных удаленных клиентов, объединенных в набор сигналов. По меньшей мере один из сигналов может содержать аудио из множества аудиокомпонентов/удаленных клиентов.Receiver 401 is connected to generator 403, which receives audio components and proximity data. The generator is configured to generate an audio mixture of a plurality of audio components in response to proximity data. An audio mixture can contain many audio components from different remote clients combined into a set of signals. At least one of the signals may comprise audio from a plurality of audio components/remote clients.
Например, генератор 403 может формировать окружающий звук с понижающим микшированием или бинауральный стереосигнал за счет объединения/понижающего микширования аудиокомпонента в каналы. Понижающее микширование также выполняют в зависимости от данных о близости таким образом, чтобы, например, уровень аудиокомпонентов зависел от данных о близости.For example, the generator 403 may generate a downmixed surround sound or a binaural stereo signal by combining/downmixing the audio component into channels. Downmixing is also performed depending on the proximity data so that, for example, the level of audio components depends on the proximity data.
Генератор 403 может быть, в частности, выполнен с возможностью формирования аудиосигнала для одного конкретного удаленного клиента путем объединения всех аудиокомпонентов, за исключением аудиокомпонентов удаленных клиентов, которые указаны в данных о близости как находящиеся в одном месте с конкретным удаленным клиентом, для которого формируют аудиосигнал.The generator 403 may be particularly configured to generate an audio signal for one specific remote client by combining all audio components except the audio components of remote clients that are indicated in the proximity data as being in the same location as the specific remote client for which the audio signal is generated.
В системе метаданные, содержащие данные о близости, включают в битовые потоки системы распределения аудио, указывая, например, какие пользователя/клиенты находятся в одном и том же физическом месте. Метаданные могут быть, например, использованы для определения, какие сигналы воспроизводить возле каждого участника конференции. Например, аудиосигналы, воспроизводимые для участников, находящихся в одном и том же месте, могут включать не захваченные сигналы друг от друга, а только от удаленных пользователей, в то время как их речь отправляют удаленным пользователям. Этим можно, например, избежать нервно-психического напряжения, усталости и аудиоартефактов, обусловленных задержкой системы конференций, избежать акустической обратной связи и/или избежать снижения отношения сигнал/шум.In the system, metadata containing proximity data is included in the audio distribution system bitstreams, indicating, for example, which users/clients are in the same physical location. Metadata could, for example, be used to determine which signals to play near each conference participant. For example, audio signals played to participants in the same location may not include captured signals from each other, but only from distant users, while their speech is sent to remote users. This can, for example, avoid stress, fatigue and audio artifacts caused by conferencing system latency, avoid acoustic feedback and/or avoid degradation of the signal-to-noise ratio.
Вместо непосредственного исключения аудио для находящихся в одном и том же месте пользователей/удаленных клиентов, генератор 403 может обеспечивать более постепенное ослабление аудиокомпонента других пользователей, находящихся в том же самом месте.Instead of directly eliminating audio for co-located users/remote clients, generator 403 may provide a more gradual attenuation of the audio component of other co-located users.
Таким образом, во многих вариантах реализации генератор 403 может быть выполнен с возможностью формирования смеси для первого удаленного клиента, причем ослабление/взвешивание аудиокомпонента от второго удаленного клиента зависит от того, указывают ли данные о близости, что второй удаленный клиент находится близко к первому удаленному клиенту.Thus, in many implementations, generator 403 may be configured to generate a mixture for a first remote client, wherein the attenuation/weighting of the audio component from the second remote client depends on whether the proximity data indicates that the second remote client is close to the first remote client .
В некоторых вариантах реализации данные о близости могут содержать скалярное значение, указывающее расстояние между первым и вторым удаленными клиентами. Генератор 403 может быть в некоторых вариантах реализации выполнен с возможностью определения ослабления как монотонно убывающей функции от расстояния, так что чем ближе второй удаленный клиент к первому удаленному клиенту, тем ниже вес/выше ослабление аудиокомпонента. Если второй удаленный клиент находится очень близко к первому уделенному клиенту, первый удаленный клиент может соответствующим образом преобразовывать для воспроизведения аудиосцену, в которой аудио для второго удаленного клиента существенно ослаблено. Это может отражать то, что в таких ситуациях пользователь первого удаленного клиента сможет слышать пользователя второго удаленного клиента непосредственно. Однако чем дальше второй удаленный клиент, тем громче преобразуемое для воспроизведения аудио от него.In some implementations, the proximity data may comprise a scalar value indicating the distance between the first and second remote clients. Generator 403 may, in some embodiments, be configured to determine attenuation as a monotonically decreasing function of distance such that the closer the second remote client is to the first remote client, the lower the weight/higher the attenuation of the audio component. If the second remote client is very close to the first remote client, the first remote client may appropriately convert for playback an audio scene in which the audio for the second remote client is significantly attenuated. This may reflect that in such situations the user of the first remote client will be able to hear the user of the second remote client directly. However, the further away the second remote client is, the louder the audio from it is converted for playback.
Это может обеспечить особенно привлекательные рабочие характеристики во многих вариантах реализации. Например, в ситуации, в которой приложение для аудиоконференций используется группой людей, некоторые из которых находятся на концерте в большом концертном зале, отдельным участникам, находящимся в концертном зале, может быть предоставлено сугубо индивидуальное преобразование аудио для воспроизведения, в котором других участников, не присутствующих в зале, преобразуют для воспроизведения при полной громкости, тогда как находящихся очень близко участников преобразуют для воспроизведения с очень низкой громкостью, а участников, находящихся в концертном зале, но на более дальних расстояниях, преобразуют для воспроизведения с промежуточной громкостью. Данный подход во многих ситуациях может обеспечить улучшенный баланс между аудио, принимаемым непосредственно за счет акустической передачи в локальной окружающей среде, и аудио, предоставляемого приложением для конференций.This can provide particularly attractive performance characteristics in many embodiments. For example, in a situation in which an audio conferencing application is used by a group of people, some of whom are at a concert in a large concert hall, individual participants in the concert hall may be given highly individual audio conversion for playback in which other participants not present in the auditorium are converted to play at full volume, while participants who are very close are converted to play at very low volume, and participants who are in the concert hall but further away are converted to play at intermediate volumes. This approach can provide an improved balance between audio received directly from acoustic transmission in the local environment and audio provided by the conferencing application in many situations.
В некоторых вариантах реализации генератор 403 может ослаблять аудиокомпонент, если данные о близости для двух удаленных клиентов удовлетворяют критерию близости. Ослабление может быть на заданную величину, которая во многих вариантах реализации может быть бесконечным ослаблением (соответствующим тому, что аудиокомпонент не преобразуют для воспроизведения или вообще не включают в сформированную аудиосмесь).In some embodiments, generator 403 may attenuate the audio component if proximity data for two remote clients meets a proximity criterion. The attenuation may be by a predetermined amount, which in many embodiments may be infinite attenuation (corresponding to the audio component not being converted for playback or not being included in the resulting audio mix at all).
Во многих вариантах реализации критерий близости может включать требование о том, что указание близости для двух удаленных клиентов должно указывать расстояние ниже порогового значения. Если указание близости удовлетворяет этому требованию, генератор 403 может продолжать без выбора соответствующего аудиокомпонента для включения в формируемую аудиосмесь. Пороговое значение может быть установлено на низкое «безопасное» значение, указывающее по существу на отсутствие корреляции.In many implementations, the proximity criterion may include a requirement that the proximity indication for two remote clients must indicate a distance below a threshold. If the proximity indication satisfies this requirement, the generator 403 may proceed without selecting the appropriate audio component to include in the generated audio mixture. The threshold may be set to a low "safe" value, indicating essentially no correlation.
Данный подход во многих случаях может быть использован с двоичными указаниями близости, которые указывают, считаются ли пары удаленных клиентов находящимися в одном месте/близкими или нет (например, в одном и том же помещении). Если да, то при формировании аудиосигналов для отдельного удаленного клиента аудиокомпонент другого удаленного клиента не включают.This approach can in many cases be used with binary proximity indications that indicate whether pairs of distant clients are considered co-located/close or not (eg, in the same premises). If so, then when generating audio signals for an individual remote client, the audio component of the other remote client is not included.
В некоторых вариантах реализации аудиоустройство на ФИГ. 4 может быть реализовано как часть аудиосервера 101. В некоторых вариантах реализации понижающее микширование аудиокомпонентов/аудиообъектов из множества удаленных клиентов 103 в объединенную аудиосмесь, содержащую аудиокомпоненты из множества удаленных клиентов 103, может быть выполнено на аудиосервере 101. В таких вариантах реализации удаленные клиенты 103 передают данные о близости на аудиосервер 101, который после этого может использовать их при формировании отдельных аудиосмесей для удаленных клиентов 103. Аудиосервер 101 может, в частности, формировать аудиосмесь для каждого из удаленных клиентов 103 путем объединения/понижающего микширования аудиокомпонентов, принимаемых от удаленных клиентов 103, с учетом данных о близости. В качестве конкретного примера аудиосервер 101 может формировать понижающим микшированием смеси, содержащие все аудиокомпоненты, за исключением тех, для которых данные о близости указывают, что соответствующий удаленный клиент находится в одном и том же месте с удаленным клиентом, для которого формируют аудиосмесь.In some embodiments, the audio device in FIG. 4 may be implemented as part of an audio server 101. In some embodiments, downmixing audio components/audio objects from a plurality of remote clients 103 into a combined audio mix comprising audio components from a plurality of remote clients 103 may be performed on the audio server 101. In such embodiments, the remote clients 103 transmit proximity data to the audio server 101, which can then use it in generating separate audio mixes for the remote clients 103. The audio server 101 can, in particular, generate an audio mix for each of the remote clients 103 by combining/downmixing the audio components received from the remote clients 103, taking into account proximity data. As a specific example, audio server 101 may downmix mixtures containing all audio components except those for which proximity data indicates that the corresponding remote client is in the same location as the remote client for which the audio mixture is being generated.
В некоторых вариантах реализации аудиоустройство на ФИГ. 4 может быть реализовано как часть удаленных клиентов 103, и в действительности такое аудиоустройство могут содержать все удаленные клиенты. В некоторых вариантах реализации понижающее микширование аудиокомпонентов/аудиообъектов из множества удаленных клиентов 103 в объединенную аудиосмесь, содержащую аудиокомпоненты из множества удаленных клиентов 103, может быть выполнена на удаленных клиентах 103. В таких вариантах реализации аудиосервер 101 может передавать как аудиокомпонент, так и данные о близости отдельным удаленным клиентам 103, которые после этого могут локально формировать аудиосмесь и преобразовать ее для воспроизведения пользователю. В некоторых таких вариантах реализации аудиосервер 101 может принимать аудиокомпоненты от разных удаленных клиентов 103 и пересылать все эти аудиокомпоненты отдельным удаленным клиентам 103. Кроме того, в некоторых вариантах реализации аудиосервер 101 может принимать данные о близости от удаленных клиентов 103 и распределять эти данные о близости другим удаленным клиентам 103. В других вариантах реализации аудиосервер 101 может принимать аудиокомпоненты от разных удаленных клиентов 103 и затем сам формировать данные о близости на основе аудиокомпонентов. Отдельный удаленный клиент может, например, формировать понижающим микшированием локальную смесь, содержащую все аудиокомпоненты, за исключением тех, для которых данные о близости указывают, что соответствующий удаленный клиент находится в одном и том же месте с удаленным клиентом, формирующим смесь.In some embodiments, the audio device in FIG. 4 may be implemented as part of remote clients 103, and indeed all remote clients may contain such an audio device. In some embodiments, downmixing audio components/audio objects from a plurality of remote clients 103 into a combined audio mix comprising audio components from a plurality of remote clients 103 may be performed on the remote clients 103. In such embodiments, the audio server 101 may transmit both the audio component and proximity data to individual remote clients 103 who can then locally compose the audio mix and convert it for playback to the user. In some such implementations, audio server 101 may receive audio components from different remote clients 103 and forward all of those audio components to individual remote clients 103. Additionally, in some implementations, audio server 101 may receive proximity data from remote clients 103 and distribute that proximity data to others to remote clients 103. In other implementations, the audio server 101 may receive audio components from various remote clients 103 and then itself generate proximity data based on the audio components. An individual remote client may, for example, downmix a local mix containing all audio components except those for which proximity data indicates that the corresponding remote client is in the same location as the remote client creating the mix.
Понятно, что в разных вариантах реализации могут быть использованы разные подходы к определению данных о близости. Во многих вариантах реализации данные о близости могут быть, в частности, определены путем сравнения разных аудиокомпонентов друг с другом. Система может содержать детектор близости, который определяет указание близости для двух удаленных клиентов путем сравнения друг с другом двух аудиокомпонентов от двух удаленных клиентов. Данные о близости могут быть, например, сформированы для отражения схожести между этими сигналами, и, в частности, может быть сформирована мера перекрестной корреляции с формированием указания близости на основе этой меры перекрестной корреляции. Например, значение перекрестной корреляции может быть использовано непосредственно, или, например, указание близости может быть установлено для указания того, что два удаленных клиента находятся в одном и том же месте, если максимальная мера перекрестной корреляции в пределах определенного диапазона запаздывания превышает данное пороговое значение. Тогда передатчик может формировать данные о близости, содержащие указание близости, и передавать их (как правило, вместе с аудиокомпонентом).It is understood that different implementations may use different approaches to determining proximity data. In many embodiments, proximity data may be determined in part by comparing different audio components to each other. The system may include a proximity detector that determines a proximity indication for two remote clients by comparing two audio components from the two remote clients to each other. Proximity data may, for example, be generated to reflect the similarity between these signals, and, in particular, a cross-correlation measure may be generated, generating a proximity indication based on the cross-correlation measure. For example, the cross-correlation value may be used directly, or, for example, a proximity indication may be set to indicate that two remote clients are at the same location if the maximum cross-correlation measure within a certain lag range exceeds a given threshold. The transmitter can then generate proximity data containing the proximity indication and transmit it (typically along with the audio component).
В вариантах реализации, в которых аудиоустройство реализуют в удаленных клиентах 103, на аудиосервере 101 может быть реализован детектор близости, который определяет значения перекрестной корреляции для всех пар аудиокомпонентов, и для каждой пары определяет указание близости. Могут быть сформированы данные о близости, содержащие все указания близости, и они могут быть переданы всем удаленным клиентам 103 или, например, удаленному клиенту могут быть переданы только данные о близости для этого удаленного клиента. Кроме того, аудиосервер 101 может передавать аудиокомпоненты, а клиент может приступать к локальному формированию аудиосмеси.In embodiments in which an audio device is implemented in remote clients 103, a proximity detector may be implemented on the audio server 101 that determines cross-correlation values for all pairs of audio components and determines a proximity indication for each pair. Proximity data containing all proximity indications may be generated and transmitted to all remote clients 103, or, for example, only proximity data for that remote client may be transmitted to a remote client. In addition, the audio server 101 can transmit the audio components, and the client can begin to build the audio mix locally.
В вариантах реализации, в которых аудиоустройство реализуют на аудиосервере 101, детектор близости может быть реализован в удаленных клиентах 103. Каждый удаленный клиент может содержать детектор близости, который коррелирует, например, локальный аудиокомпонент с принимаемыми аудиокомпонентами от других удаленных клиентов 103. Указание близости может быть сформировано для каждого из принимаемых аудиокомпонентов и передано обратно на аудиосервер 101 вместе локальным аудиокомпонентом. После этого аудиосервер 101 может использовать данные о близости, принимаемые от всех удаленных клиентов, при формировании аудиосмесей для отдельных удаленных клиентов 103.In embodiments in which an audio device is implemented on audio server 101, a proximity detector may be implemented in remote clients 103. Each remote client may contain a proximity detector that correlates, for example, a local audio component with received audio components from other remote clients 103. The proximity indication may be generated for each of the received audio components and transmitted back to the audio server 101 along with the local audio component. Audio server 101 can then use proximity data received from all remote clients when generating audio mixes for individual remote clients 103.
Таким образом, как показано на ФИГ. 5, первый объект 501 может содержать детектор 503 близости, который определяет значения перекрестной корреляции для одной или более пар аудиокомпонентов, и определяет указание близости для каждой пары. Например, первый объект 501 может содержать детектор 503 близости, который определяет указание близости для первого удаленного клиента и второго удаленного клиента в ответ на сравнение первого аудиокомпонента для первого удаленного клиента и второго аудиокомпонента для второго удаленного клиента. Он также содержит передатчик 505 данных, который выполнен с возможностью передачи данных о близости, содержащих указание близости для второго объекта 507, который содержит аудиоустройство, изображенное на ФИГ. 4. В дополнение к данным о близости передатчик 505 может передавать один или более аудиокомпонентов. Таким образом, передатчик 505 может, в частности, передавать данные о близости и данные аудиокомпонента на приемник 401 аудиоустройства. В некоторых вариантах реализации первой объект 501 может быть удаленным клиентом, а второй объект 507 может быть аудиосервером. В других вариантах реализации первый объект 501 может быть аудиосервером, а второй объект 507 может быть удаленным клиентом.Thus, as shown in FIG. 5, the first object 501 may include a proximity detector 503 that determines cross-correlation values for one or more pairs of audio components, and determines a proximity indication for each pair. For example, the first object 501 may include a proximity detector 503 that determines a proximity indication for a first remote client and a second remote client in response to a comparison of a first audio component for the first remote client and a second audio component for the second remote client. It also includes a data transmitter 505 that is configured to transmit proximity data containing a proximity indication for a second entity 507 that contains the audio device shown in FIG. 4. In addition to proximity data, transmitter 505 may transmit one or more audio components. Thus, the transmitter 505 can, in particular, transmit proximity data and audio component data to the receiver 401 of the audio device. In some implementations, the first entity 501 may be a remote client and the second entity 507 may be an audio server. In other implementations, the first entity 501 may be an audio server and the second entity 507 may be a remote client.
Таким образом, во многих вариантах реализации обработка сигнала аудиокомпонентов (например, соответствующих сигналам микрофона от удаленных клиентов) на аудиосервере 101 может обнаруживать, какие пользователи/удаленные клиенты находятся близко (например, в одном и том же помещении), и соответствующие метаданные будут отправлены удаленным клиентам 103.Thus, in many implementations, signal processing of audio components (e.g., corresponding to microphone signals from remote clients) on the audio server 101 can detect which users/remote clients are close (e.g., in the same room) and the corresponding metadata will be sent to the remote clients 103.
Если, например, формируют матрицу корреляции со значениями максимальной перекрестной корреляции для всех пар аудиокомпонентов в матрице, то аудиокомпоненты для удаленных клиентов 103, которые находятся в одном и том же помещении (близко), будут иметь высокое значение максимальной перекрестной корреляции.If, for example, a correlation matrix is generated with maximum cross-correlation values for all pairs of audio components in the matrix, then audio components for remote clients 103 that are in the same room (close) will have a high maximum cross-correlation value.
Например, аудиосервер 101 может вычислять для каждой уникальной комбинации из и , при :For example, audio server 101 may calculate for each unique combination of And , at :
где обозначает сигнал аудиокомпонента, который принимает сервер от удаленного клиента с индексом , обозначает норму, является индексом выборки из (истории) аудиокомпонента, причем обозначает самую последнюю доступную выборку, является количеством прошлых выборок, использованных в анализе, и является максимальной поддерживаемой задержкой между аудиокомпонентами.Where denotes the audio component signal that the server receives from the remote client with index , denotes the norm is the index of the sample from the (history of) the audio component, and denotes the most recent available sample, is the number of past samples used in the analysis, and is the maximum supported latency between audio components.
Например, и при частоте выборки сигналов микрофона и операции округления вниз. Типичное значение частоты выборки для речи составляет 16 кГц. В случае аудио часто используют более высокую частоту выборки, например 48 кГц. В частности, для данного подхода значение может быть выбрано достаточно большим, чтобы учитывать задержки между аудиокомпонентами, обусловленные разными длинами акустических путей между пользователями и микрофонами (в одном и том же помещении), и разницы в задержках при передаче от удаленных клиентов на аудиосервер 101.For example, And at frequency microphone sampling and operations rounding down. A typical sampling rate for speech is 16 kHz. In the case of audio, a higher sampling rate is often used, such as 48 kHz. In particular, for this approach the value may be chosen to be large enough to account for delays between audio components due to different acoustic path lengths between users and microphones (in the same room) and differences in transmission delays from remote clients to audio server 101.
Если для определенной комбинации из и вышеупомянутая перекрестная корреляция высокая, например, , удаленные клиенты и можно считать близкими и, в частности, находящимися в одном и том же помещении. Перекрестная корреляция может быть низкой, когда ни один из участников не говорит. Поэтому перекрестную корреляцию целесообразно вычислять только тогда, когда один из участников или активен.If for a certain combination of And the above cross-correlation is high, e.g. , remote clients And can be considered close and, in particular, located in the same room. Cross-correlation may be low when neither participant speaks. Therefore, it is advisable to calculate cross-correlation only when one of the participants or active
В качестве примера определение того, активен ли пользователь , может быть выполнено в соответствии с:As an example, determining whether a user is active , can be done according to:
при, например, для сигналов с полномасштабной амплитудой .for example, for signals with full amplitude .
В альтернативном варианте реализации к сигналам может быть применен детектор речи.In an alternative embodiment, a speech detector may be applied to the signals.
Определение того, являются ли два удаленных клиента 103 близкими, как правило, оценивают только тогда, когда один из пользователей активен, и последнее определенное решение сохраняют, когда они не активны. Это предотвращает переключение метаданных в зависимости от того, активны ли динамики.Determining whether two remote clients 103 are close is typically evaluated only when one of the users is active, and the last determined decision is saved when they are not active. This prevents metadata from switching depending on whether speakers are active.
Для обеспечения надежности решения могут быть приняты дополнительные меры. Например, решение о том, находятся ли удаленные клиенты и в одном и том же помещении, может быть изменено только тогда, когда активный сигнал в течение по меньшей мере 15 секунд приводит к другому сигналу.Additional measures may be taken to ensure the reliability of the solution. For example, deciding whether remote clients are And in the same room, can only be changed when the signal is active for at least 15 seconds results in another signal.
В некоторых вариантах реализации аудиосервер 101 определяет, какие удаленные клиенты находятся в одном и том же помещении, и отправляет эту информацию в виде метаданных удаленным клиентам 103. В частности, данный вариант реализации обеспечивает преимущество, когда аудиосигналы пользователей не смешивают на аудиосервере 101 для каждого клиента, а посылают по отдельности. Например, приложения VR, в которых сигнал каждого пользователя преобразуют для воспроизведения для конкретного местоположения в виртуальной (или добавленной) реальности. В этом случае удаленные клиенты могут использовать метаданные, другие пользователи которых находятся, например, в том же самом помещении, для принятия решения не преобразовывать для воспроизведения или не воспроизводить соответствующие сигналы, принимаемые с сервера конференций.In some embodiments, the audio server 101 determines which remote clients are in the same premises and sends this information as metadata to the remote clients 103. In particular, this embodiment provides the advantage that users' audio signals are not mixed at the audio server 101 on a per-client basis. , but are sent separately. For example, VR applications in which each user's signal is converted for playback for a specific location in virtual (or augmented) reality. In this case, remote clients can use metadata whose other users are located, for example, in the same premises, to decide not to convert for playback or playback the corresponding signals received from the conference server.
В некоторых вариантах реализации детектор близости может, как упоминалось, находиться в удаленном клиенте. Пример элементов такого удаленного клиента показан на ФИГ. 6.In some implementations, the proximity detector may, as mentioned, reside in the remote client. An example of elements of such a remote client is shown in FIG. 6.
Удаленный клиент содержит вход 601, соединенный с микрофоном и выполненный с возможностью формирования сигнала микрофона, соответствующего аудио, захватываемому микрофоном. Сигнал микрофона подают на кодер 603, который кодирует сигнал для формирования аудиокомпонента (в некоторых вариантах реализации сигнал микрофона может быть использован непосредственно как аудиокомпонент).The remote client includes an input 601 coupled to a microphone and configured to generate a microphone signal corresponding to audio captured by the microphone. The microphone signal is provided to an encoder 603, which encodes the signal to form an audio component (in some embodiments, the microphone signal may be used directly as an audio component).
Кодер соединен с интерфейсом 605, который выполнен с возможностью обмена данными с аудиосервером 101. Таким образом, интерфейс содержит передатчик для передачи данных на аудиосервер 101 и приемник для приема данных с аудиосервера 101. Интерфейс 605 получает данные аудиокомпонента и передает их на аудиосервер 101.The encoder is connected to an interface 605 that is configured to communicate with the audio server 101. Thus, the interface includes a transmitter for transmitting data to the audio server 101 and a receiver for receiving data from the audio server 101. The interface 605 receives audio component data and transmits it to the audio server 101.
Кроме того, интерфейс 605 принимает аудиокомпоненты и данные о близости от других удаленных клиентов, и, в частности, интерфейс 605 может содержать приемник 401, показанный на ФИГ. 4.In addition, interface 605 receives audio components and proximity data from other remote clients, and in particular, interface 605 may include a receiver 401 shown in FIG. 4.
Удаленный клиент также содержит преобразователь 607 для воспроизведения аудио, который может соответствовать непосредственно генератору 403, показанному на ФИГ. 4. Как описано ранее, генератор 403 может переходить к формированию локальной смеси для представления локальному пользователю.The remote client also includes an audio converter 607, which may correspond directly to the generator 403 shown in FIG. 4. As described previously, generator 403 may proceed to generate a local mixture for presentation to the local user.
В других вариантах реализации аудио, принимаемое с аудиосервера 101, может быть сформированным понижающим микшированием сигналом, т.е. генератор 409 может содержаться в аудиосервере 101, и передаваемое аудио может быть, например, бинауральным стереосигналом или сигналом окружающего звука. В таких вариантах реализации преобразователь 607 для воспроизведения может непосредственно преобразовывать для воспроизведения принимаемый сигнал.In other embodiments, the audio received from the audio server 101 may be a downmixed signal, i.e. generator 409 may be contained in audio server 101, and the transmitted audio may be, for example, a binaural stereo signal or a surround sound signal. In such embodiments, the playback converter 607 may directly convert the received signal for playback.
Удаленный клиент на ФИГ. 6 также содержит детектор 607 близости, который выполнен с возможностью определения указания близости для первого удаленного клиента в ответ на сравнение сигнала микрофона (возможно, представленного аудиокомпонентом) и аудио, принимаемого с аудиосервера.The remote client in FIG. 6 also includes a proximity detector 607 that is configured to determine a proximity indication for a first remote client in response to a comparison of a microphone signal (possibly represented by an audio component) and audio received from the audio server.
Например, если принимаемое аудио соответствует аудиокомпонентам от других удаленных клиентов, оно может быть непосредственно подано в детектор 609 близости, который затем может перейти к корреляции сигнала микрофона (возможно, представленного аудиокомпонентом) с принимаемыми аудиокомпонентами и формированию указания близости для каждого из принимаемых аудиокомпонентов. Указания близости могут быть поданы в интерфейс 605, который может передать данные о близости, содержащие указания близости, на аудиосервер 101.For example, if received audio matches audio components from other remote clients, it may be directly provided to proximity detector 609, which may then proceed to correlate a microphone signal (possibly represented by an audio component) with the received audio components and generate a proximity indication for each of the received audio components. Proximity indications may be provided to interface 605, which may transmit proximity data containing proximity indications to audio server 101.
В случае, когда принимаемое аудио соответствует аудиосмеси, содержащей множество аудиокомпонентов других удаленных клиентов, объединенных/микшированных в одни и те же аудиосигналы/аудиоканалы, детектор 609 близости может коррелировать сигнал микрофона с аудиосмесью.In the case where the received audio corresponds to an audio mixture containing multiple audio components of other remote clients combined/mixed into the same audio signals/audio channels, the proximity detector 609 may correlate the microphone signal with the audio mixture.
Например, если аудиосмесь содержит только один сигнал, детектор 609 близости может коррелировать принимаемый сигнал с сигналом микрофона, и при обнаружении корреляции выше данного уровня может быть сформировано указание близости для указания того, что текущий активный удаленный клиент (для текущего активного динамика) является близким к текущему удаленному клиенту.For example, if the audio mixture contains only one signal, proximity detector 609 may correlate the received signal with the microphone signal, and if a correlation above a given level is detected, a proximity indication may be generated to indicate that the currently active remote client (for the currently active speaker) is close to to the current remote client.
Если аудиосмесь содержит более одного канала/сигнала, они могут быть, например, объединены перед корреляцией, или корреляции могут быть выполнены для каждого сигнала канала и, например, учтена может быть только самая высокая корреляция.If the audio mixture contains more than one channel/signal, they may, for example, be combined before correlation, or correlations may be performed on each channel signal and, for example, only the highest correlation may be taken into account.
В случаях, в которых идентичность текущего активного удаленного клиента/динамика известна удаленному клиенту (например, такая активность может быть обнаружена аудиосервером 101, и соответствующая информация может быть переслана удаленному клиенту), удаленный клиент может формировать указание близости, которое содержит эту идентификацию другого удаленного клиента, как находящегося близко.In cases in which the identity of the currently active remote client/speaker is known to the remote client (e.g., such activity may be detected by audio server 101 and corresponding information may be forwarded to the remote client), the remote client may generate a proximity indication that contains this identification of the other remote client as being close.
В случаях, в которых такая информация может быть недоступна, удаленный клиент может просто передавать указание близости, указывающее, что текущий активный динамик/удаленный клиент является близким. В таком случае аудиосервер 101 может быть, например, выполнен с возможностью обнаружения текущего активного динамика (например, с использованием распознавания речи) и может определять соответствующий идентификатор удаленного клиента, который является близким к удаленному клиенту, передающему указание близости, как идентифицированного текущего активного динамика/удаленного клиента.In cases in which such information may not be available, the remote client may simply transmit a proximity indication indicating that the currently active speaker/remote client is close. In such a case, the audio server 101 may, for example, be configured to detect the current active speaker (for example, using speech recognition) and may determine a corresponding remote client identifier that is close to the remote client transmitting the proximity indication as the identified current active speaker. remote client.
Таким образом, в некоторых вариантах реализации удаленные клиенты могут обнаруживать близких удаленных клиентов, сравнивая сигналы, принимаемые с аудиосервера 101, с сигналом своего локального микрофона (например, после подавления акустического эха, Acoustic Echo Cancelation (AEC)).Thus, in some embodiments, remote clients can detect nearby remote clients by comparing signals received from audio server 101 with their local microphone signal (eg, after Acoustic Echo Cancelation (AEC)).
Например, клиент может определить перекрестную корреляцию между сигналами, принимаемыми с сервера, и сигналом микрофона удаленного клиента:For example, the client can determine the cross-correlation between the signals received from the server and the microphone signal of the remote client:
где обозначает сигнал, принимаемый с аудиосервера, обозначает сигнал локального микрофона, обозначает норму, является индексом выборки из (истории) сигналов микрофона, причем обозначает самую последнюю доступную выборку, является количеством прошлых выборок, используемых в анализе, и является максимальной поддерживаемой задержкой между сигналами микрофона.Where denotes the signal received from the audio server, denotes the local microphone signal, denotes the norm is the index of the sample from the (history of) microphone signals, and denotes the most recent available sample, is the number of past samples used in the analysis, and is the maximum supported delay between microphone signals.
Например, и при частоте выборки сигналов микрофона и операции округления вниз. В частности, для данного подхода значение должно быть достаточно большим, чтобы учитывать задержки между сигналом микрофона и сигналами, принимаемыми с аудиосервера, обусловленными задержками системы в (распределенной) системе из-за, например, кодирования, передачи (от клиента серверу), обработки на сервере, передачи (с сервера клиенту) и декодирования, а также из-за разных длин акустических путей между пользователями и микрофонами (в одном и том же помещении).For example, And at frequency microphone sampling and operation rounding down. In particular, for this approach the value must be large enough to account for delays between the microphone signal and the signals received from the audio server due to system delays in the (distributed) system due to, for example, encoding, transmission (from client to server), processing on the server, transmission (from server to client ) and decoding, and also due to different acoustic path lengths between users and microphones (in the same room).
Если для определенного вышеупомянутая перекрестная корреляция высокая, например, , пользователя можно считать находящимися в том же помещении (близким).If for a certain the above cross-correlation is high, e.g. , user can be considered to be in the same room (close).
В альтернативном варианте реализации клиент может использовать сигнал микрофона, прежде чем применять к нему AEC. Он может сосредоточиться на задержках, превышающих, например, 15 мс, чтобы отделить акустическую обратную связь между динамиком и микрофоном в клиенте от большей задержки системы конференций. Клиент также может искать оба пика корреляции и предоставлять более короткую задержку для AEC.In an alternative implementation, the client may use the microphone signal before applying AEC to it. It can focus on delays greater than 15ms, for example, to separate out the acoustic feedback between the speaker and microphone in the client from the larger latency of the conferencing system. The client can also look for both correlation peaks and provide a shorter latency for AEC.
Если один или более клиентов отправляют более одного аудиокомпонента, алгоритм может, например, выбрать самый громкий сигнал микрофона для анализа, вычислить понижающее микширование всех сигналов микрофона или выбрать конкретный сигнал микрофона.If one or more clients send more than one audio component, the algorithm may, for example, select the loudest microphone signal to analyze, calculate a downmix of all microphone signals, or select a specific microphone signal.
Аналогичным образом, как и в подходе на стороне сервера, корреляция будет, как правило, вычисляться только тогда, когда пользователь говорит, и, в частности, когда активный динамик присутствует в одном из сигналов, принимаемых с сервера.Likewise, as with the server-side approach, the correlation will typically only be calculated when the user is speaking, and in particular when an active speaker is present in one of the signals received from the server.
Аудиокомпоненты/аудиосигналы , принимаемые с аудиосервера 101, могут, как правило, представлять (по меньшей мере частично) других пользователей в конференц-вызове. Это позволяет удаленному клиенту определять, какие пользователи находятся в том же самом помещении, на основе того, какие сигналы имеют высокие корреляции. Сигналы некоторых пользователей могут быть не переданы ввиду того, что они приглушены или определены как неактивные аудиосервером.Audio components/audio signals received from the audio server 101 may typically represent (at least in part) other users in the conference call. This allows the remote client to determine which users are in the same room based on which signals have high correlations. Some users' signals may not be transmitted because they are muted or determined to be inactive by the audio server.
Как упоминалось, в некоторых сигналах аудиокомпоненты могут быть объединены в аудиосмесь на аудиосервере 101. Когда сигналы представляют такую аудиосмесь, они могут представлять аудиоканалы, и сигналы некоторых пользователей могут быть представлены в множестве аудиоканалов. Поэтому анализ аудиоканалов по отдельности может не всегда приводить к особенно полезной дополнительной информации. Следовательно, может быть целесообразно микшировать с понижением сигналы и определять корреляцию результата с сигналом локального микрофона. Понижающее микширование можно вычислить по формуле:As mentioned, in some signals the audio components may be combined into an audio mix on Audio Server 101. When signals represent such an audio mixture, they may represent audio channels, and some users' signals may be represented in multiple audio channels. Therefore, analyzing audio channels individually may not always lead to particularly useful additional information. Therefore, it may be useful to downmix the signals and correlate the result with the local microphone signal. Downmixing can be calculated using the formula:
где является набором индексов входных сигналов, относящихся к набору аудиосигналов, а является количеством элементов набора .Where is a set of input signal indices related to a set of audio signals, and is the number of elements of the set .
Результатом этого подхода является пониженная вычислительная сложность, что полезно для уменьшения использования ЦПУ в целом и/или повышения срока службы батареи в портативных устройствах.This approach results in reduced computational complexity, which is useful for reducing overall CPU usage and/or improving battery life in portable devices.
Такой подход особенно выгоден, когда сигналы всех клиентов (по меньшей мере частично) предварительно микшируют или предварительно преобразовывают для воспроизведения на сервере, однако это может быть также применено для сигналов, которые не микшируют предварительно или не преобразовывают предварительно для воспроизведения.This approach is particularly beneficial when all clients' signals are (at least partially) premixed or preconverted for playback on the server, but it can also be applied to signals that are not premixed or preconverted for playback.
В некоторых случаях, когда принимают аудиосмесь, может оказаться невозможно определить непосредственно, какие пользователи находятся в одном и том же помещении, поскольку может оказаться невозможно непосредственно различить аудиокомпоненты разных удаленных клиентов, когда они включены в одну и туже аудиосмесь. Однако клиент может отправлять метаданные, указывающие, что текущий активный пользователь (вероятно) находится в том же самом помещении. Аудиосервер 101 может учесть это, например, не включая при предварительном микшировании или предварительном преобразовании для воспроизведения сигнал активного пользователя в сигнал, который он отправляет клиенту, отправляющему метаданные, и наоборот.In some cases where an audio mix is received, it may not be possible to directly determine which users are in the same room because it may not be possible to directly distinguish the audio components of different remote clients when they are included in the same audio mix. However, the client may send metadata indicating that the currently active user is (likely) in the same premises. The audio server 101 may take this into account, for example, by not pre-mixing or pre-converting for playback the active user's signal into the signal it sends to the client sending the metadata, and vice versa.
Некоторые приложения для конференций отправляют информацию участников в вызове. В таких случаях это может быть использовано для определения того, какой пользователь активен на стороне клиента, когда обнаруживается высокая перекрестная корреляция, и удаленный клиент может отправить эту информацию серверу.Some conferencing apps send participant information in a call. In such cases, this can be used to determine which user is active on the client side when high cross-correlation is detected, and the remote client can send this information to the server.
Сервер может выполнить последующую обработку принимаемых им метаданных для улучшения надежности. Например, может быть указано, что множество пользователей активны одновременно, в то время как третий клиент посылает метаданные, указывающие, что текущий активный пользователь находится в том же самом помещении. Затем аудиосервер может объединить это с информацией от этих двух пользователей, в которой один может также указывать, что текущий активный пользователь находится в том же самом помещении. В таком случае это может означать, что все трое находятся в одном и том же помещении. В альтернативном варианте реализации можно отметить флагом самого громкого из активных пользователей как находящегося в том же самом помещении, или увеличить значение правдоподобия для обоих активных пользователей. Когда значение правдоподобия больше определенного порогового значения, соответствующий пользователь может считаться находящимся в том же самом помещении. В альтернативном варианте реализации можно в предварительном микшировании уменьшить уровень пользователей в зависимости от возрастающего значения правдоподобия.The server may perform post-processing on the metadata it receives to improve reliability. For example, it may be indicated that multiple users are active at the same time, while a third client sends metadata indicating that the currently active user is on the same premises. The audio server can then combine this with information from these two users, in which one may also indicate that the current active user is in the same room. In this case, this may mean that all three are in the same room. An alternative implementation could flag the loudest active user as being in the same room, or increase the likelihood value for both active users. When the likelihood value is greater than a certain threshold value, the corresponding user can be considered to be in the same room. In an alternative embodiment, it is possible to reduce the level of users in the premix depending on the increasing likelihood value.
Различные способы, описанные выше, могут быть объединены для клиентов при получении как предварительно микшированных сигналов, так и отдельных сигналов, и/или при изменении свойств сигнала во времени (например, из-за изменения доступности полосы пропускания).The various techniques described above may be combined for clients when receiving both premixed signals and individual signals, and/or when signal properties change over time (eg, due to changes in bandwidth availability).
Аналогичным образом, как и в подходе на стороне сервера, с использованием тех же самых или подобных способов можно улучшить надежность в пределах клиентов.Similarly, as with the server-side approach, reliability within clients can be improved using the same or similar techniques.
В вариантах реализации, в которых выполняют перекрестную корреляцию между сигналами, она может быть осуществлена на сигналах полностью во временной области, как описано выше. В качестве альтернативы в некоторых вариантах реализации корреляция может быть выполнена на частотно-временном представлении (например, после банка квадратурных зеркальных фильтров (Quadrature Mirror Filter, QMF), кратковременного преобразование Фурье (Short-Term Fourier Transform, STFT) или анализа оконного модифицированного дискретного косинусного преобразования (Modified Discrete Cosine Transform, MDCT) или быстрого преобразования Фурье (Fast Fourier Transform, FFT)). В этих случаях каждая сумма в приведенных выше уравнениях корреляции становится двумерным суммированием по интервалам времени или кадрам во временном измерении () и полосам частот или элементам дискретизации в спектральном измерении ().In embodiments that perform cross-correlation between signals, it may be performed on signals entirely in the time domain, as described above. Alternatively, in some implementations, the correlation may be performed on a time-frequency representation (for example, after a bank of Quadrature Mirror Filters (QMF), Short-Term Fourier Transform (STFT), or windowed modified discrete cosine analysis transformation (Modified Discrete Cosine Transform (MDCT) or Fast Fourier Transform (FFT)). In these cases, each sum in the correlation equations above becomes a two-dimensional summation over time intervals or frames in the time dimension ( ) and frequency bands or bins in the spectral dimension ( ).
где представляет соответствующую функцию от и/или в уравнении корреляции, причем и принимают в качестве индекса временной области и в качестве индекса частотной области. и представляют собой, соответственно, и во временных интервалах или кадрах. Например, для банка фильтров QMF с коэффициентом понижающей дискретизации 64, или для оконного FFT с размером скачка 256 выборок с операцией округления вверх.Where represents the corresponding function from and/or in the correlation equation, and And accept as a time domain index and as a frequency domain index. And represent, respectively, And in time intervals or frames. For example, for a QMF filter bank with a downsampling factor of 64, or for a windowed FFT with a jump size of 256 samples with operation rounding up.
В качестве еще одного примера в некоторых вариантах реализации перекрестная корреляция может быть применена на свертке, профиле энергии или частотно-зависимом профиле энергии сигналов. Это выгодно для достижения пониженной вычислительной сложности и может быть полезно в случаях, когда сигналы реконструируют параметрически из меньшего количества сигналов понижающего микширования, и поэтому они с большей вероятностью имеют высокую корреляцию в локальной тонкой структуре реконструированных сигналов. В альтернативном варианте реализации в последнем случае корреляция также могла бы быть применена к параметрам реконструкции.As another example, in some embodiments, cross-correlation may be applied on the convolution, energy profile, or frequency-dependent energy profile of the signals. This is beneficial for achieving reduced computational complexity and can be useful in cases where signals are reconstructed parametrically from fewer downmix signals, and are therefore more likely to be highly correlated in the local fine structure of the reconstructed signals. In an alternative embodiment, in the latter case, the correlation could also be applied to the reconstruction parameters.
В случае вычислений частотно-зависимой корреляции в некоторых вариантах реализации может быть применено присвоение весовых коэффициентов определенным частотным элементам дискретизации/полосам, чтобы акцентировать типичные речевые частоты.In the case of frequency-dependent correlation calculations, some implementations may employ weighting of certain frequency bins/bands to emphasize typical speech frequencies.
(Частотно-зависимый) профиль энергии может быть вычислен из сигналов следующим образом:The (frequency-dependent) energy profile can be calculated from the signals as follows:
где каждое новое частотно-временное представление профиля энергии является общей энергией всех частотно-временных ячеек в представлении сигнала. Начальный и конечный элементы дискретизации для элемента дискретизации указаны как и , соответственно, а начальный и конечный временные интервалы указаны как и , соответственно. В случае сигналов чисто временной области (например, сигнал ИКМ) индекс и суммирование могут быть опущены.where is each new time-frequency profile representation energy is the total energy of all time-frequency cells in the representation signal. Start and end bins for a bin listed as And , respectively, and the starting and ending time intervals are indicated as And , respectively. In the case of pure time domain signals (e.g. PCM signal), the index and summation can be omitted.
В некоторых вариантах реализации в качестве альтернативы или дополнительно могут быть использованы другие подходы к определению близости между удаленными клиентами 103.In some implementations, alternatively or additionally, other approaches to determining proximity between remote clients 103 may be used.
Например, в некоторых вариантах реализации указания близости могут быть определены посредством прямой ручной конфигурации, например с использованием интерфейса отдельных удаленных клиентов. В других вариантах реализации может быть использована технология определения местоположения, такая как GPS, технологии определения местоположения внутри помещения, IP-адреса или идентификаторы сетей. В некоторых вариантах реализации удаленные клиенты отправляют такие данные на сервер, и он может затем оценить принятые данные для определения того, какие удаленные клиенты 103 находятся близко друг к другу.For example, in some implementations, proximity indications may be determined through direct manual configuration, such as using the interface of individual remote clients. In other embodiments, location technology such as GPS, indoor location technologies, IP addresses, or network identifiers may be used. In some implementations, remote clients send such data to the server, which can then evaluate the received data to determine which remote clients 103 are close to each other.
Например, в качестве указания того, что удаленные клиенты являются близкими, могут быть использованы IP/MAC-адреса и/или времена задержки сетей. Например, тот факт, что удаленные клиенты 103 совместно используют одно и то же сетевое оборудование, указывает на нахождение в одном и том же месте.For example, IP/MAC addresses and/or network latency times can be used to indicate that remote clients are close. For example, the fact that remote clients 103 share the same network equipment indicates being in the same location.
В некоторых вариантах реализации близость двух удаленных клиентов может быть обнаружена путем обнаружения акустической обратной связи, и в этом случае система может перейти к предотвращению такой акустической обратной связи (например, путем изменения характеристик контура так, чтобы предотвратить положительную обратную связь).In some embodiments, the proximity of two remote clients may be detected by detecting acoustic feedback, in which case the system may proceed to prevent such acoustic feedback (e.g., by changing the characteristics of the loop so as to prevent positive feedback).
Пример тестового процесса, который может быть использован для обнаружения близости путем обнаружения акустической обратной связи, может начинаться с заглушения всех микрофонов (или не предоставления клиентам обратной связи по аудиокомпонентам) для гарантирования отсутствия акустической обратной связи в данный момент. После этого можно включать микрофоны разных пар удаленных клиентов, и если это приводит к акустической обратной связи, то соответствующая пара удаленных клиентов считается близкой. Этот подход может прервать конференц-вызов на некоторое время, чтобы позволить обнаружить акустическую обратную связь в каждой паре клиентов.An example test process that could be used to detect proximity by detecting acoustic feedback could start by muting all microphones (or not providing clients with feedback on audio components) to ensure that there is no acoustic feedback present. You can then turn on the microphones of different pairs of remote clients, and if this results in acoustic feedback, then the corresponding pair of remote clients is considered close. This approach can interrupt the conference call for a period of time to allow acoustic feedback to be detected in each client pair.
Обнаружить акустическую обратную связь можно различными способами. Один подход с низкой сложностью заключается в том, чтобы определить, увеличиваются ли уровни множества клиентов, или обеспечивают ли один или более клиентских микрофонов экспоненциально возрастающий уровень. Учитывая среднюю двустороннюю задержку в системе, экспоненциальное возрастание среднеквадратического уровня может быть ступенчатым с периодичностью, аналогичной двусторонней задержке. В работе Devis Thomas, A.R. Jayan, Automated Suppression of Howling Noise Using Sinusoidal Model based Analysis/Synthesis, IEEE International Advance Computing Conference (IACC), ITM University, Gurgaon, India, с. 761-765, 2014, описано, что для обнаружения акустической обратной связи также может быть использована мера спектральной плоскостности (Spectral Flatness Measure, SFM). Другие подходы могут определять схожести в множестве сигналов микрофона от разных клиентов, такие как высокие корреляции между спектрами или спектрограммами. Еще одним примером является определение присутствия отсечения в сигналах микрофона.Acoustic feedback can be detected in a variety of ways. One low-complexity approach is to determine whether the levels of multiple clients are increasing, or whether one or more client microphones are providing an exponentially increasing level. Given the average round-trip delay in the system, the exponential increase in the RMS level can be stepped with a periodicity similar to the round-trip delay. In Davis Thomas, A.R. Jayan, Automated Suppression of Howling Noise Using Sinusoidal Model based Analysis/Synthesis, IEEE International Advance Computing Conference (IACC), ITM University, Gurgaon, India, p. 761-765, 2014, it is described that the Spectral Flatness Measure (SFM) can also be used to detect acoustic feedback. Other approaches can identify similarities in multiple microphone signals from different clients, such as high correlations between spectra or spectrograms. Another example is detecting the presence of clipping in microphone signals.
Еще одним примером подхода к обнаружению того, какие клиенты, например, находятся в одном и том же месте, является добавление маркерного сигнала или водяного знака в аудиокомпонент каждого клиента. Этот маркер может быть выбран так, что он, как правило, не воспринимается людьми, и может быть выполнен с возможностью обнаружения в сигнале микрофона несмотря на искажения, накладываемые используемым кодеком и акустическим путем.Another example approach to detecting which clients are in the same location, for example, is to add a marker signal or watermark to the audio component of each client. This marker may be selected such that it is not generally perceptible to humans, and may be capable of being detected in the microphone signal despite distortions imposed by the codec and acoustic path being used.
Например, сервер может вставлять эти маркеры в аудио, передаваемое клиентам. Часто выгодно, если клиент получает уникальный маркер. В дальнейшем в некоторых вариантах реализации сервер может анализировать принимаемые сигналы микрофона клиентов на предмет маркеров этих клиентов. В других вариантах реализации клиенты могут анализировать сигналы своих собственных микрофонов и передавать информацию о маркерах на сервер. Эта информация о маркерах может быть специально предназначенным идентификатором маркера, или она может сопоставить обнаруженный идентификатор маркера соответствующему клиенту в ответ на сопоставление метаданных, принимаемых им с сервера.For example, the server may insert these markers into the audio sent to clients. It is often beneficial if the client receives a unique token. Further, in some embodiments, the server may analyze received microphone signals from clients for tokens of those clients. In other implementations, clients can analyze their own microphone signals and transmit token information to the server. This token information may be a specifically targeted token identifier, or it may map a detected token identifier to the appropriate client in response to a mapping of metadata it receives from the server.
В вышеописанных примерах формирование аудиосмеси зависит от данных о близости. Однако понятно, что такие данные также могут быть использованы для других целей.In the examples described above, the formation of an audio mixture depends on proximity data. However, it is understood that such data can also be used for other purposes.
Например, в некоторых вариантах реализации данные о близости могут быть использованы для (например, пространственного) группирования пользователей в соответствии с тем, как они сгруппированы физически. В некоторых вариантах реализации, например, AR, данные о близости могут быть использованы для определения того, какие пользователи не присутствуют физически в помещении, и в таком случае вместо пользователя может быть представлен виртуальный аватар. В некоторых вариантах реализации данные о близости могут быть (дополнительно) использованы для преобразования для воспроизведения сигналов пользователей, не находящихся в физическом помещении в местах, которые не перекрываются с пользователями, находящимися в физическом помещении.For example, in some implementations, proximity data may be used to (eg, spatially) group users according to how they are physically grouped. In some implementations, such as AR, proximity data may be used to determine which users are not physically present in the room, in which case a virtual avatar may be presented instead of the user. In some implementations, the proximity data may (additionally) be used to transform to render signals from users not on the physical premises in locations that do not overlap with users on the physical premises.
В некоторых вариантах реализации метаданные и/или анализ на стороне клиента могут быть использованы для синхронизации воспроизведения на разных устройствах так, чтобы достичь воспроизведения с малыми взаимными задержками.In some implementations, metadata and/or client-side analysis may be used to synchronize playback across devices so as to achieve low-latency playback.
В некоторых вариантах реализации данные о близости могут быть использованы для того, чтобы не преобразовывать для воспроизведения принимаемые с сервера сигналы, относящиеся к пользователям в одном и том же помещении, а в качестве альтернативы преобразовывать для воспроизведения сигнал, который захватывает локальный микрофон этих пользователей. Это может быть выгодно, когда пользователи носят наушники, которые могут блокировать или ослаблять акустические пути. За счет локального выполнения обработки можно устранить задержку системы конференций, что приводит к более хорошей синхронизации артикуляции.In some implementations, the proximity data may be used to not playback signals received from the server that are related to users in the same room, but instead to playback a signal that is captured by those users' local microphone. This may be beneficial when users wear headphones that may block or attenuate acoustic paths. By performing processing locally, conferencing system latency can be eliminated, resulting in better articulation synchronization.
В некоторых вариантах реализации первый удаленный клиент может передавать сформированный сигнал микрофона или аудиокомпонент второму удаленному клиенту, который обнаружен как находящийся в том же самом месте. Передача может осуществляться посредством прямой линии передачи данных (ЛВС/оптическая/РЧ) и может, в частности, исключать аудиосервер 101. Это может обеспечить линию связи/обмен данными с пониженной задержкой передачи. В таком случае второй удаленный клиент может использовать этот принимаемый напрямую сигнал для ослабления или подавления сигнала от аудиоисточника первого удаленного клиента. Такой подход может быть альтернативой к использованию акустического пути и выигрывает за счет более быстрой передачи (из-за разности в скорости света и звука). Благодаря чистому «опорному» аудио, своевременно доступному на втором удаленном клиенте, можно избежать ненужной сложной или подверженной ошибкам обработки аудио.In some embodiments, a first remote client may transmit a generated microphone signal or audio component to a second remote client that is detected to be at the same location. The transmission may be via a direct data link (LAN/optical/RF) and may in particular exclude the audio server 101. This may provide a communication/data link with reduced transmission latency. In such a case, the second remote client can use this directly received signal to attenuate or suppress the signal from the audio source of the first remote client. This approach can be an alternative to using an acoustic path and benefits from faster transmission (due to the difference in the speed of light and sound). By having clean "reference" audio available in a timely manner on a second remote client, unnecessary complex or error-prone audio processing can be avoided.
В некоторых вариантах реализации такая линия связи может быть использована для синхронизации воспроизведения аудиосмеси между удаленными клиентами, которые находятся в одном и том же помещении. В альтернативном варианте реализации такие метаданные синхронизации проходят через аудиосервер. В большинстве вариантов реализации синхронизация будет учитывать находящегося в том же самом месте клиента с наиболее высокой задержкой относительно данных, принимаемых с сервера, и задерживать воспроизведение аудиосмеси в других находящихся в том же месте клиентах для синхронизации. Этот непрерывный процесс синхронизации известен в данной области техники и может быть достигнут с использованием протоколов синхронизации, таких как протокол сетевого времени (Network Time Protocol, NTP) или протокол точного времени (Precision Time Protocol, PTP).In some implementations, such a communication link may be used to synchronize playback of an audio mix between remote clients that are located in the same premises. In an alternative implementation, such synchronization metadata is passed through the audio server. In most implementations, the synchronization will consider the colocated client with the highest latency relative to data received from the server, and delay playback of the audio mix to other colocated clients for synchronization. This continuous synchronization process is known in the art and can be achieved using synchronization protocols such as Network Time Protocol (NTP) or Precision Time Protocol (PTP).
Как упоминалось ранее, акустическая близость может быть разной в направлении от первого удаленного клиента ко второму удаленному клиенту и в направлении от второго удаленного клиента к первому удаленному клиенту, что отражает тот факт, что акустическая передаточная функция может быть разной в этих двух направлениях. Соответственно, во многих вариантах реализации данные о близости могут содержать разные указания близости для пары удаленных клиентов 103 в зависимости от направления.As mentioned previously, the acoustic proximity may be different in the direction from the first remote client to the second remote client and in the direction from the second remote client to the first remote client, reflecting the fact that the acoustic transfer function may be different in the two directions. Accordingly, in many implementations, the proximity data may contain different proximity indications for a pair of remote clients 103 depending on the direction.
Например, данные о близости, предоставляемые аудиосервером 101 удаленному клиенту, могут содержать два значения для данного другого удаленного клиента, а локальное микширование аудио может соответственно выполняться в ответ на указание близости от этого другого удаленного клиента до данного удаленного клиента.For example, proximity data provided by audio server 101 to a remote client may contain two values for a given other remote client, and local audio mixing may accordingly be performed in response to the proximity indication from that other remote client to a given remote client.
Использование асимметричных/направленных указаний близости может обеспечивать улучшенные рабочие характеристики во многих вариантах реализации, в том числе в конкретных ситуациях, в которых, например, один пользователь носит наушники, тогда как другой использует преобразование для воспроизведения акустической системой.The use of asymmetrical/directional proximity indications can provide improved performance in many embodiments, including in specific situations in which, for example, one user wears headphones while another uses conversion for speaker playback.
В некоторых вариантах реализации данные о близости могут быть сообщены/распределены при инициализации услуги/приложения, и эти данные о близости могут использоваться до завершения услуги/приложения. Например, при инициализации нового сеанса конференции данные о близости могут быть заменены и использоваться до завершения сеанса.In some implementations, proximity data may be communicated/distributed upon initialization of a service/application, and this proximity data may be used until termination of the service/application. For example, when a new conference session is initiated, the proximity data may be replaced and used until the session ends.
Однако в большинстве практических вариантов реализации система может быть выполнена с возможностью динамического определения/адаптации/распределения по меньшей мере некоторых данных о близости. Таким образом, приемник 401 обычно выполнен с возможностью приема данных о близости, динамически адаптирующихся к изменениям в положениях удаленных клиентов.However, in most practical implementations, the system may be configured to dynamically determine/adapt/distribute at least some proximity data. Thus, receiver 401 is typically configured to receive proximity data that dynamically adapts to changes in the positions of remote clients.
В частности, детектор(-ы) близости аудиосервера 101 и/или удаленных клиентов 103 могут непрерывно коррелировать соответствующие сигналы и определять указания близости на основе результатов корреляции. Тогда система может непрерывно распределять указания близости, например, путем непрерывной передачи метаданных, содержащих указания близости, вместе с распределением аудиокомпонентов.In particular, the proximity detector(s) of the audio server 101 and/or remote clients 103 may continuously correlate the corresponding signals and determine proximity indications based on the correlation results. The system can then continuously distribute proximity indications, for example, by continuously transmitting metadata containing proximity indications along with the distribution of audio components.
Во многих вариантах реализации система может быть выполнена с возможностью передачи указаний близости для (по меньшей мере) первой пары удаленных клиентов с частотой обновления не менее одного раза в минуту и часто не менее одного раза в 30 секунд.In many implementations, the system may be configured to transmit proximity indications to (at least) the first pair of remote clients at an update rate of at least once per minute and often at least once every 30 seconds.
Такие динамические обновления могут обеспечивать эффективную и адаптивную систему, которая может адаптироваться к изменениям положений пользователей. Например, во многих вариантах реализации она может быстро адаптироваться к соединенному с помощью своего телефона участнику конференции, входящему в конференц-зал, где находится другой клиент. Например, часто можно предотвратить возникновение акустической обратной связи при входе участника в конференц-зал.Such dynamic updates can provide an efficient and adaptive system that can adapt to changes in user positions. For example, in many implementations, it can quickly adapt to a conference participant connected via their phone entering a conference room where another client is located. For example, it is often possible to prevent acoustic feedback from occurring when a participant enters a conference room.
Понятно, что данные о близости могут быть переданы как метаданные множеством разных способов, и что конкретный используемый подход зависит от предпочтений и требований отдельного варианта реализации.It is understood that proximity data can be conveyed as metadata in a variety of different ways, and that the specific approach used depends on the preferences and requirements of the individual implementation.
Точные структура, синтаксис и содержимое метаданных будут зависеть от конкретного варианта реализации. Таким образом, метаданные могут быть сконфигурированы и переданы различными способами, и предпочтительный подход может также зависеть от того, используется ли обнаружение на стороне клиента или обнаружение на стороне сервера (или их комбинация).The exact structure, syntax, and content of the metadata will depend on the particular implementation. Thus, metadata can be configured and communicated in a variety of ways, and the preferred approach may also depend on whether client-side discovery or server-side discovery (or a combination of both) is used.
В случае обнаружения на стороне сервера метаданные обычно отправляют с сервера одному или более клиентам. Метаданные могут содержать информацию о том, какие пользователи/клиенты находятся в одном и том же месте. Например, может быть использовано указание индексов или имен клиентов, или битовая карта. Часть синтаксиса битовых потоков, отправляемых сервером клиентам, может быть, например, следующей:In server-side discovery, metadata is typically sent from the server to one or more clients. Metadata can contain information about which users/clients are in the same location. For example, indexes or client names, or a bitmap may be used. Some of the syntax for the bitstreams sent by the server to clients could be, for example, the following:
Данный пример показывает синтаксис, который поддерживает разные способы отправки метаданных клиентам и выбирает способ в зависимости от предпочтительной настройки. Он обеспечивает всех клиентов информацией о имеющемся количестве уникальных местоположений (в качестве альтернативы о количестве местоположений с более чем 1 пользователем) и о том, какие пользователи в каком местоположении присутствуют.This example shows syntax that supports different ways to send metadata to clients and selects a method based on the preferred setting. It provides all clients with information about the number of unique locations available (alternatively the number of locations with more than 1 user) and which users are present in which location.
В качестве другого примера соответствующие метаданные могут отправляться только пользователям, находящимся в одном и том же месте. Это показано в следующем примере синтаксиса:As another example, the relevant metadata may only be sent to users in the same location. This is illustrated in the following syntax example:
В случае обнаружения на стороне клиента метаданные обычно отправляют на сервер, а сервер может, как правило, отправлять данные с аналогичной или производной информацией одному или более клиентам.In client-side discovery, the metadata is typically sent to the server, and the server can typically send data with similar or derived information to one or more clients.
Клиент, например, может отправить флаг, который указывает, обнаруживается ли в данный момент времени высокая корреляция между выходным сигналом и сигналом микрофона (после AEC). Дополнительно или в качестве альтернативы он может отправить указание максимального значения корреляции.The client, for example, can send a flag that indicates whether a high correlation is currently detected between the output signal and the microphone signal (after AEC). Additionally or alternatively, it may send an indication of the maximum correlation value.
В других вариантах реализации клиент может дополнительно использовать метаданные, указывающие, какие пользователи активны, и может передавать данные, указывающие одного или более конкретных пользователей, которые определены как находящиеся в том же самом месте. Это можно сделать с использованием синтаксиса, аналогичного описанному выше.In other implementations, the client may further use metadata indicating which users are active and may transmit data indicating one or more specific users that are determined to be in the same location. This can be done using syntax similar to the one described above.
Кроме того, клиент может отправлять метаданные, описывающие, каким способом это было обнаружено, и/или какова задержка между прямым акустическим захватом и высокой корреляцией в аудиосигнале, принимаемом с сервера конференций.In addition, the client may send metadata describing how it was detected and/or what the delay is between direct acoustic capture and the high correlation in the audio signal received from the conferencing server.
Пример синтаксиса данных, отправляемых клиентом на сервер, следующий:An example of the syntax for data sent by the client to the server is as follows:
Пример определения метаданных способа обнаружения может быть следующим:An example of defining discovery method metadata could be as follows:
В ответ на подобные метаданные от одного или более клиентов сервер может отправить метаданные, аналогичные описанным выше. Сервер может объединять информацию, принимаемую от множества клиентов. Для этого он может объединять все указания о нахождении в одном и том же месте. Если, например, клиенты A и B указывают, что они находятся в том же месте, что и пользователь D, а клиент D указывает о нахождении в одном месте с пользователями A и C, сервер может указать, что пользователи A, B, C и D находятся в одном и том же месте.In response to such metadata from one or more clients, the server may send metadata similar to those described above. The server can combine information received from multiple clients. To do this, it can combine all indications of being in the same place. If, for example, clients A and B indicate that they are in the same location as user D, and client D indicates that they are in the same location as users A and C, the server may indicate that users A, B, C, and D are in the same place.
В альтернативном варианте реализации он может указать, что пользователи A и D находятся в одном и том же месте, поскольку они взаимно указали совместно используемое место.In an alternative implementation, it may indicate that users A and D are in the same location because they have mutually specified a shared location.
Понятно, что в вышеприведенном описании варианты реализации настоящего изобретения изложены для ясности со ссылкой на разные функциональные схемы, блоки и процессоры. Однако понятно, что может быть использовано любое подходящее распределение функциональных возможностей между разными функциональными схемами, блоками или процессорами без ущерба для настоящего изобретения. Например, показанные функциональные возможности, подлежащие осуществлению отдельными процессорами или контроллерами, могут быть осуществлены одним и тем же процессором или контроллерами. Поэтому ссылки на конкретные функциональные блоки или схемы должны рассматриваться только как ссылки на подходящие средства для обеспечения описываемых функциональных возможностей, а не как указание на строгую логическую или физическую структуру или организацию.It will be understood that in the foregoing description, embodiments of the present invention are set forth for clarity with reference to different functional circuits, blocks, and processors. However, it is understood that any suitable distribution of functionality between different functional circuits, blocks or processors can be used without prejudice to the present invention. For example, functionality shown to be implemented by separate processors or controllers may be implemented by the same processor or controllers. Therefore, references to specific functional blocks or diagrams should be considered only as references to suitable means to provide the functionality described, and not as an indication of a strict logical or physical structure or organization.
Настоящее изобретение может быть реализовано в любой подходящей форме, включая оборудование, программное обеспечение, встроенное программное обеспечение или любую их комбинацию. Настоящее изобретение необязательно может быть реализовано, по меньшей мере частично, в виде компьютерного программного обеспечения, выполняемого на одном или более процессорах и/или цифровых процессорах сигналов. Элементы и компоненты варианта реализации настоящего изобретения могут быть физически, функционально и логически реализованы любым подходящим образом. В действительности функциональные возможности могут быть реализованы в одном блоке, в множестве блоков или как часть других функциональных блоков. В силу этого настоящее изобретение может быть реализовано в одном блоке или может быть физически или функционально распределено между разными блоками, схемами и процессорами.The present invention may be implemented in any suitable form, including hardware, software, firmware, or any combination thereof. Optionally, the present invention may be implemented, at least in part, in the form of computer software running on one or more processors and/or digital signal processors. The elements and components of an embodiment of the present invention may be physically, functionally, and logically implemented in any suitable manner. In reality, functionality may be implemented in a single block, in multiple blocks, or as part of other functional blocks. Therefore, the present invention may be implemented in a single block or may be physically or functionally distributed among different blocks, circuits and processors.
Хотя настоящее изобретение было описано в связи с некоторыми вариантами реализации, это не следует рассматривать как ограничение конкретной формой, изложенной в настоящем документе. Скорее, объем настоящего изобретения ограничен только прилагаемой формулой изобретения. Кроме того, хотя может показаться, что признак описан в связи с конкретными вариантами реализации, специалисту в данной области понятно, что различные признаки описанных вариантов реализации могут быть объединены в соответствии с настоящим изобретением. В формуле изобретения термин «содержащий/включающий» не исключает присутствия других элементов или этапов.Although the present invention has been described in connection with certain embodiments, this should not be construed as limiting it to the particular form set forth herein. Rather, the scope of the present invention is limited only by the appended claims. In addition, although it may appear that a feature is described in connection with specific embodiments, one skilled in the art will understand that various features of the described embodiments can be combined in accordance with the present invention. In the claims, the term “comprising/comprising” does not exclude the presence of other elements or steps.
Кроме того, хотя множество средств, элементов, схем или этапов способа перечислены по отдельности, они могут быть реализованы, например, с помощью одной схемы, блока или процессора. Далее, хотя отдельные признаки могут быть включены в разные пункты формулы изобретения, они, возможно, могут быть эффективно объединены, а включение в разные пункты формулы изобретения не означает, что комбинация признаков является неосуществимой и/или невыгодной. Кроме того, включение признака в одну категорию пунктов формулы изобретения не означает ограничения этой категорией, а, скорее, указывает на то, что данный признак в равной степени может быть применен к другим категориям пунктов изобретения, когда это уместно. Кроме того, порядок признаков в формуле изобретения не означает конкретного порядка, в котором эти признаки должны прорабатываться, и, в частности, порядок отдельных этапов в формуле изобретения на способ, не означает, что этапы должны выполняться в данном порядке. Наоборот, этапы могут выполняться в любом подходящем порядке. Кроме того, упоминания в единственном числе не исключают множества. Поэтому ссылки с использованием средств указания единственного числа, числительных в единственном числе «первый», «второй» и т. д. не исключают множества. Ссылочные позиции в формуле изобретения приведены исключительно в качестве уточняющего примера и не должны трактоваться как ограничивающие объем формулы изобретения каким-либо образом.In addition, although multiple means, elements, circuits, or method steps are listed separately, they may be implemented, for example, by a single circuit, block, or processor. Further, although individual features may be included in different claims, they may be effectively combined, and inclusion in different claims does not mean that the combination of features is infeasible and/or disadvantageous. In addition, the inclusion of a feature in one category of claims does not imply limitation to that category, but rather indicates that the feature is equally applicable to other categories of claims when appropriate. In addition, the order of features in the claims does not mean the specific order in which these features should be worked out, and, in particular, the order of the individual steps in the claims for a method does not mean that the steps must be performed in that order. Rather, the steps may be performed in any suitable order. Moreover, references in the singular do not exclude the plural. Therefore, references using singular devices, singular numerals "first", "second", etc. do not exclude plurality. Reference numerals in the claims are provided solely by way of clarifying example and should not be construed as limiting the scope of the claims in any way.
Claims (31)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18182366.7 | 2018-07-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2021103038A RU2021103038A (en) | 2022-08-09 |
RU2816884C2 true RU2816884C2 (en) | 2024-04-08 |
Family
ID=
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7379962B1 (en) * | 2000-01-19 | 2008-05-27 | Computer Associates Think, Inc. | Spatialized audio in a three-dimensional computer-based scene |
US20090097360A1 (en) * | 2007-10-16 | 2009-04-16 | Samsung Electronics Co., Ltd | Method and apparatus for measuring sound source distance using microphone array |
JP2009115735A (en) * | 2007-11-09 | 2009-05-28 | Nippon Telegr & Teleph Corp <Ntt> | Distance-measuring device, distance measurement method, distance measurement program, and recording medium |
RU2542586C2 (en) * | 2009-11-24 | 2015-02-20 | Нокиа Корпорейшн | Audio signal processing device |
US20160189726A1 (en) * | 2013-03-15 | 2016-06-30 | Intel Corporation | Mechanism for facilitating dynamic adjustment of audio input/output (i/o) setting devices at conferencing computing devices |
RU2627127C2 (en) * | 2013-02-07 | 2017-08-03 | Форд Глобал Технолоджис, ЛЛК | System and method for sound attenuation in vehicle to listen to instructions from mobile applications |
WO2017205986A1 (en) * | 2016-06-03 | 2017-12-07 | Nureva Inc. | Method, apparatus and computer-readable media for virtual positioning of a remote participant in a sound space |
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7379962B1 (en) * | 2000-01-19 | 2008-05-27 | Computer Associates Think, Inc. | Spatialized audio in a three-dimensional computer-based scene |
US20090097360A1 (en) * | 2007-10-16 | 2009-04-16 | Samsung Electronics Co., Ltd | Method and apparatus for measuring sound source distance using microphone array |
JP2009115735A (en) * | 2007-11-09 | 2009-05-28 | Nippon Telegr & Teleph Corp <Ntt> | Distance-measuring device, distance measurement method, distance measurement program, and recording medium |
RU2542586C2 (en) * | 2009-11-24 | 2015-02-20 | Нокиа Корпорейшн | Audio signal processing device |
RU2627127C2 (en) * | 2013-02-07 | 2017-08-03 | Форд Глобал Технолоджис, ЛЛК | System and method for sound attenuation in vehicle to listen to instructions from mobile applications |
US20160189726A1 (en) * | 2013-03-15 | 2016-06-30 | Intel Corporation | Mechanism for facilitating dynamic adjustment of audio input/output (i/o) setting devices at conferencing computing devices |
WO2017205986A1 (en) * | 2016-06-03 | 2017-12-07 | Nureva Inc. | Method, apparatus and computer-readable media for virtual positioning of a remote participant in a sound space |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230251819A1 (en) | Audio apparatus, audio distribution system and method of operation therefor | |
US11877135B2 (en) | Audio apparatus and method of audio processing for rendering audio elements of an audio scene | |
EP3443762A1 (en) | Spatial audio processing emphasizing sound sources close to a focal distance | |
US20220225050A1 (en) | Head tracked spatial audio and/or video rendering | |
EP3595337A1 (en) | Audio apparatus and method of audio processing | |
EP4221263A1 (en) | Head tracking and hrtf prediction | |
US20230283976A1 (en) | Device and rendering environment tracking | |
RU2816884C2 (en) | Audio device, audio distribution system and method of operation thereof | |
RU2815621C1 (en) | Audio device and audio processing method | |
RU2823573C1 (en) | Audio device and audio processing method | |
RU2815366C2 (en) | Audio device and audio processing method | |
RU2798414C2 (en) | Audio device and audio processing method | |
CN118413804A (en) | Audio device, audio distribution system, and method of operating the same | |
RU2797362C2 (en) | Audio device and method of its operation | |
RU2804014C2 (en) | Audio device and method therefor | |
WO2023150486A1 (en) | Gesture controlled audio and/or visual rendering |