Techniques for adaptive noise cancellation for multiple audio endpoints in a shared space are described. According to one example, a method includes detecting, by a first audio endpoint, one or more audio endpoints co-located with the first audio endpoint at a first location. A selected audio endpoint of the one or more audio endpoints is identified as a target noise source. The method includes obtaining, from the selected audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected audio endpoint and removing the loudspeaker reference signal from a microphone signal associated with a microphone of the first audio endpoint. The method also includes providing the microphone signal from the first audio endpoint to at least one of a voice user interface (VUI) or a second audio endpoint, wherein the second audio endpoint is located remotely from the first location.
|
1. A method comprising:
detecting, by a first audio endpoint, one or more a second audio endpoints endpoint co-located with the first audio endpoint at a first location;
identifying a selected audio endpoint of the one or more audio endpoints as a target noise source;
obtaining, from the selected second audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected second audio endpoint;
removing the loudspeaker reference signal from a microphone signal associated with a microphone of the first audio endpoint to generate an adjusted microphone signal; and
providing the adjusted microphone signal from the first audio endpoint to at least one of a voice user interface (VUI) or a second third audio endpoint, wherein the second third audio endpoint is located remotely from the first location.
8. An apparatus comprising:
a microphone;
a loudspeaker;
a processor in communication with the microphone and the loudspeaker, the processor configured to:
detect one or more an audio endpoints endpoint co-located with the apparatus at a first location;
identify a selected audio endpoint of the one or more audio endpoints as a target noise source;
obtain, from the selected audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected audio endpoint;
remove the loudspeaker reference signal from a microphone signal associated with the microphone to generate an adjusted microphone signal; and
provide the adjusted microphone signal to at least one of a voice user interface (VUI) or a remote audio endpoint, wherein the remote audio endpoint is located remotely from the first location.
15. One or more non-transitory computer readable storage media encoded with instructions that, when executed by a processor of a first audio endpoint, cause the processor to:
detect one or more a second audio endpoints endpoint co-located with the a first audio endpoint at a first location;
identify a selected audio endpoint of the one or more audio endpoints as a target noise source;
obtain, from the selected second audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected second audio endpoint;
remove the loudspeaker reference signal from a microphone signal associated with a microphone of the first audio endpoint to generate an adjusted microphone signal; and
provide the adjusted microphone signal from the first audio endpoint to at least one of a voice user interface (VUI) or a second third audio endpoint, wherein the second third audio endpoint is located remotely from the first location.
2. The method of
4. The method of
5. The method of
using a microphone array to determine the a distance to and/or a direction of the one or more second audio endpoints endpoint from the first audio endpoint in the first location; and
using the obtained distance and/or direction to identify the selected second audio endpoint as the target noise source.
6. The method of
obtaining an audio stream from, from the second audio endpoint, a microphone reference signal associated with at least one microphone associated with of the selected second audio endpoint, wherein the microphone reference signal corresponds to an audio stream that is input to the at least one microphone, and the adjusted microphone signal is also based at least in part upon the microphone reference signal.
0. 7. The method of
providing the audio stream as a microphone reference signal to an adaptive filter at the first audio endpoint to remove the audio stream from the microphone signal of the first audio endpoint.
9. The apparatus of
10. The apparatus of
remove an echo from the microphone signal.
11. The apparatus of
12. The apparatus of
use a microphone array to determine the a distance to and/or a direction of the one or more audio endpoints endpoint from the apparatus in the first location; and
use the obtained distance and/or direction to identify the selected audio endpoint as the target noise source.
13. The apparatus of
0. 14. The apparatus of
provide the audio stream as a microphone reference signal to an adaptive filter to remove the audio stream from the microphone signal.
16. The one or more non-transitory computer readable storage media of
17. The one or more non-transitory computer readable storage media of
remove an echo from the microphone signal.
18. The one or more non-transitory computer readable storage media of
19. The one or more non-transitory computer readable storage media of
use a microphone array to determine the a distance to and/or a direction of the one or more second audio endpoints endpoint from the first audio endpoint in the first location; and
use the obtained distance and/or direction to identify the selected second audio endpoint as the target noise source.
20. The one or more non-transitory computer readable storage media of
obtain an audio stream from a microphone reference signal associated with at least one microphone associated with of the selected second audio endpoint; and
provide the audio stream as a microphone reference signal to an adaptive filter to remove the audio stream from the microphone signal, wherein the microphone reference signal corresponds to an audio stream that is input to the at least one microphone, and the adjusted microphone signal is also based at least in part upon the microphone reference signal.
0. 21. The method of claim 1, wherein the first audio endpoint and the second audio endpoint are connected to a common local area network (LAN).
0. 22. The method of claim 1, wherein clock synchronization is established between the first audio endpoint and the second audio endpoint.
0. 23. The apparatus of claim 8, wherein the apparatus and the audio endpoint are connected to a common local area network (LAN).
0. 24. The apparatus of claim 8, wherein clock synchronization is established between the apparatus and the audio endpoint.
0. 25. The one or more non-transitory computer readable storage media of claim 15, wherein the first audio endpoint and the second audio endpoint are connected to a common local area network (LAN).
0. 26. The one or more non-transitory computer readable storage media of claim 15, wherein clock synchronization is established between the first audio endpoint and the second audio endpoint.
|
The present disclosure relates to telecommunications audio endpoints.
Multiple audio endpoints may often be located in a shared space or common location. In these shared spaces, background noise caused by audio endpoints is often captured by the microphones of other audio endpoints at the common location. This background noise may then be transmitted to a far-end or remote audio endpoint that is participating in a telecommunication session with one of the audio endpoints. Receiving this background noise at the far-end can cause a loss of intelligibility and fatigue to participants in the telecommunication session.
Overview
Presented herein are techniques for implementing adaptive noise cancellation for multiple audio endpoints in a shared space. According to one example embodiment, a method of adaptive noise cancellation for multiple audio endpoints in a shared space includes detecting, by a first audio endpoint, one or more audio endpoints co-located with the first audio endpoint at a first location. The method also includes identifying a selected audio endpoint of the one or more audio endpoints as a target noise source and obtaining, from the selected audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected audio endpoint. The method includes removing the loudspeaker reference signal from a microphone signal associated with a microphone of the first audio endpoint and providing the microphone signal from the first audio endpoint to at least one of a voice user interface (VUI) or a second audio endpoint, wherein the second audio endpoint is located remotely from the first location.
Noise pollution in an acoustically shared space, such as open offices or other common locations, can be caused by other people's conversations and/or by background noise from multiple audio endpoints or other devices being used within the same shared space at the same time. For example, hands-free communication devices, such as phones or video conferencing endpoints, may be used simultaneously in an acoustically shared space by different users on separate telecommunication sessions and devices may be operated within the shared space using voice user interfaces (VUIs), such as personal assistants or other voice-activated software or hardware.
Users within the acoustically shared space can use binaural cues to filter out other people's conversations and background noise to some extent. However, far-end or remote audio endpoint participants and many VUIs that listen to or receive the audio signals from a microphone of an audio endpoint in the shared space cannot use these binaural cues to filter out the noise pollution caused by the conversations and/or other noise in the background. As a result, the far-end or remote audio endpoint participants in a telecommunication session may experience bad speech comprehension caused by receiving an audio mix including the unrelated conversations and background noise, which can lead to a frustrating audio experience for these far-end or remote audio endpoint participants.
According to the principles of the present embodiments, techniques for implementing adaptive noise cancellation for multiple audio endpoints in a shared space are provided. With these techniques, audio signals provided to far-end or remote audio endpoint participants and/or to VUIs may be improved.
The example embodiments described herein provide techniques for adaptive noise cancellation across multiple devices or audio endpoints in an acoustically shared space to reduce the amount and extent of unwanted/unrelated background noise that is sent to far-end or remote audio endpoint participants and to improve the performance of VUIs.
In some embodiments, one or more of the multiple audio endpoints 102, 104, 106, 108 may be engaged in separate telecommunication sessions with a remote audio endpoint or other far-end participant. In this embodiment, multiple remote audio endpoints, including a first remote audio endpoint 110, a second remote audio endpoint 112, a third remote audio endpoint 114, and up to an nth remote audio endpoint 116 are physically located remotely from shared space 100 and multiple audio endpoints 102, 104, 106, 108. That is, remote audio endpoints 110, 112, 114, 116 are not within acoustic proximity to audio endpoints 102, 104, 106, 108.
Audio endpoints, including any of audio endpoints 102, 104, 106, 108 and/or remote audio endpoints 110, 112, 114, 116, may include various types of devices having at least audio or acoustic telecommunication capabilities. For example, audio endpoints may include conference phones, video conferencing devices, tablets, computers with audio input and output components, electronic personal/home assistants, hands-free/smart speakers (i.e., speakers with voice controls), devices or programs controlled with VUIs, and/or other devices that include at least one speaker and at least one microphone.
In an example embodiment, an audio endpoint in shared space 100, for example, first audio endpoint 102, may implement techniques for adaptive noise cancellation to remove background noise associated with one or more of the other audio endpoints (e.g., second audio endpoint 104, third audio endpoint 106, and/or nth audio endpoint 108) that are also co-located within shared space 100. In one embodiment, first audio endpoint 102 detects one or more audio endpoints that are co-located with first audio endpoint 102 within shared space 100 and are connected to a common local area network (LAN). For example, audio endpoints 102, 104, 106, 108 may communicate with each other, remote audio endpoints 110, 112, 114, 116, or any other devices by accessing LAN through a LAN access point (AP) 120. LAN access point 120 may provide a connection to a network, such as the internet, public switched telephone network (PSTN), or any other wired or wireless network, including LANs and wide-area networks (WANs), to permit audio endpoints 102, 104, 106, 108 to engage in a telecommunication session.
In one embodiment, the presence of other audio endpoints within shared space 100 may be detected or determined by first audio endpoint 102 using an ultrasonic signal obtained from one or more of the other audio endpoints (e.g., second audio endpoint 104, third audio endpoint 106, and/or nth audio endpoint 108). For example, audio endpoints 104, 106, 108 may transmit or provide an ultrasonic proximity signal that broadcasts each audio endpoint's Internet Protocol (IP) address in the high-frequency audio spectrum (e.g., above 16-17 kHz). As shown in
In some embodiments, each audio endpoint 102, 104, 106, 108 may use an ultrasonic encoding technique that permits multiple concurrent broadcasts or using a “first-come, first-serve” method to transmit its ultrasonic signal to other endpoints to locate each of audio endpoints 102, 104, 106, 108 in shared space 100. In other embodiments, detecting or locating each of audio endpoints 102, 104, 106, 108 in shared space 100 may be set up manually.
Once each of audio endpoints 102, 104, 106, 108 has been detected or located within shared space 100, clock-synchronization and a low-delay LAN connection may be established between one or more of audio endpoints 102, 104, 106, 108. For example, as shown in
After detecting each of the other audio endpoints in shared space 100 and setting up clock synchronization and the low-delay LAN connection, first audio endpoint 102 may next identify a selected audio endpoint as a target noise source, as will be described in more detail below. In some embodiments, computational network resources may be limited. Accordingly, a method 200 of detecting audio endpoints in shared space 100 and identifying a target noise source may be used to select the audio endpoint associated with the worst or highest anticipated noise level may be used. In other embodiments, however, where additional computational network resources are available, additional audio endpoints may be identified as target noise sources for adaptive noise cancellation techniques according to the example embodiments described herein.
Referring now to
After operation 204, first audio endpoint 102 may establish low-delay LAN connections with each detected audio endpoint, for example, second audio endpoint 104, third audio endpoint 106, and/or nth audio endpoint 108. Optionally, in some embodiments, first audio endpoint 102 may also establish clock synchronization with each detected audio endpoint. Method 200 may proceed to operations 206, 208 to obtain information for determining associated noise levels of each of the detected audio endpoints. For example, the information may be obtained from operation 206 where first audio endpoint 102 determines an ultrasonic signal receive level (i.e., a higher receive level indicates a closer proximity to first audio endpoint 102) for each located audio endpoint (e.g., second audio endpoint 104, third audio endpoint 106, and/or nth audio endpoint 108). The information may also be obtained from operation 208 where loudspeaker volume settings and/or call status (i.e., whether or not an audio endpoint is currently participating in a telecommunication session) is obtained by first audio endpoint 102 for each of the other audio endpoints 104, 106, 108.
At an operation 210, first audio endpoint 102 may compute or determine an anticipated noise level for each other audio endpoint 104, 106, 108. Anticipated noise level may be determined using a variety of factors and/or information obtained from each other audio endpoint 104, 106, 108. For example, some of the factors and/or information that may be used by first audio endpoint 102 to determine the anticipated noise levels include: the ultrasonic signal receive level (e.g., obtained from operation 206), metadata obtained over the low-delay LAN connections (e.g., loudspeaker volume settings, call status, and other signal levels obtained from operation 208), cross-correlations of received microphone signals with local microphone signals, and distance and/or direction information (e.g., which may be obtained using triangulation techniques from a microphone array).
Based on this information, method 200 may proceed to an operation 212 where first audio endpoint 102 may assemble or determine a ranked list of detected audio endpoints 104, 106, 108 that is prioritized based on the determined anticipated noise levels from operation 210. For example, audio endpoints having higher anticipated noise levels are ranked higher on the list than those with lower anticipated noise levels.
At an operation 214, first audio endpoint 102 picks or selects one or more of the audio endpoints associated with the highest ranked anticipated noise levels from operation 212. For example, at operation 214, first audio endpoint 102 may identify a selected audio endpoint associated with the highest ranked anticipated noise level from operation 212 as a target noise source for the purposes of implementing techniques for adaptive noise cancellation to remove background noise associated with the selected audio endpoint.
In one embodiment, a single audio endpoint may be selected as being associated with the worst or highest anticipated noise level for adaptive noise cancellation. In other embodiments, however, two or more audio endpoints may be identified as selected audio endpoints associated with target noise sources for adaptive noise cancellation. For example, audio endpoints associated with an anticipated noise level that exceeds a predetermined threshold may be identified as selected audio endpoints associated with target noise sources for adaptive noise cancellation.
Referring now to
For example, second user 304 may be using second audio endpoint 104 to engage in a separate telecommunication session with a different remote audio endpoint, such as second remote audio endpoint 112. Second user 304 may alternatively or additionally be using second audio endpoint 104 to engage in some other type of separate audio or acoustical session. For example, second user 304 may be receiving calls or messages on second audio endpoint 104 that generate a ringtone, playing music on a loudspeaker associated with second audio endpoint 104, and/or may be communicating with a VUI embedded or in communication with second audio endpoint 104.
Within shared space 100, first audio endpoint 102 and second audio endpoint 104 are both connected to a network (e.g., a LAN via LAN AP 120, shown in
Technique 300 for implementing adaptive noise cancellation for audio endpoints in shared space 100 may be described with reference to first audio endpoint 102. In this embodiment, microphone 310 of first audio endpoint 102 is receiving inputs from several different audio sources within shared space 100. For example, microphone 310 receives a first audio input 330 from first user 302 who is using first audio endpoint 102 to conduct a telecommunication session with first remote audio endpoint 110. In this example, first audio input 330 is the intended audio content that first user 302 is providing to first remote audio endpoint 110 via a transmitted microphone signal 336. Microphone 310 also picks up or receives echo and/or noise from other audio sources within shared space 100, including an echo source 332 output from loudspeaker 312 of first audio endpoint 102 and a first noise source 334 output from loudspeaker 322 of second audio endpoint 104.
The example embodiments presented herein provide a technique of implementing adaptive noise cancellation to remove these additional unwanted noise sources from microphone signal 336 provided to first remote audio endpoint 110 from first audio endpoint 102. In this embodiment, first audio endpoint 102 may implement adaptive noise cancellation of first noise source 334 output from loudspeaker 322 of second audio endpoint 104 by obtaining from second audio endpoint 104 a loudspeaker reference signal 338 that may then be removed from the microphone signal associated with microphone 310 of first audio endpoint 102 using first adaptive filter 314. As shown in
At first audio endpoint 102, loudspeaker reference signal 338 is removed from the microphone signal associated with microphone 310 of first audio endpoint 102 using first adaptive filter 314. That is, loudspeaker reference signal 338 corresponds to first noise source 334 output from loudspeaker 322 of second audio endpoint 104 and picked up by microphone 310 of first audio endpoint 102. With this arrangement, first adaptive filter 314 uses loudspeaker reference signal 338 to remove the contribution of first noise source 334 from the microphone signal associated with microphone 310 of first audio endpoint 102 before microphone signal 336 is provided or transmitted to first remote audio endpoint 110.
Additionally, in some embodiments, first audio endpoint 102 may further include second adaptive filter 316 that removes the contribution of echo source 332 from the microphone signal associated with microphone 310 of first audio endpoint 102 before microphone signal 336 is provided or transmitted to first remote audio endpoint 110.
Technique 300 for implementing adaptive noise cancellation for audio endpoints in shared space 100 may also be described with reference to second audio endpoint 104. That is, each audio endpoint in shared space 100 may implement adaptive noise cancellation to remove noise sources from the other audio endpoints within shared space 100. For example, microphone 320 of second audio endpoint 104 receives inputs from a first audio input 340 from second user 304 who is using second audio endpoint 104 to conduct a separate telecommunication or other audio/acoustical session with second remote audio endpoint 112. In this example, first audio input 340 is the intended audio content that second user 304 is providing to second remote audio endpoint 112 via a transmitted microphone signal 346. As in the previous example, microphone 320 also picks up or receives echo and/or noise from other audio sources within shared space 100, including an echo source 342 output from loudspeaker 322 of second audio endpoint 104 and a first noise source 344 output from loudspeaker 312 of first audio endpoint 102.
At second audio endpoint 104, a loudspeaker reference signal 348 is provided from first audio endpoint 102 via LAN connection 306. Loudspeaker reference signal 348 corresponds to first noise source 344 output from loudspeaker 312 of first audio endpoint 102 and picked up by microphone 320 of second audio endpoint 104. This loudspeaker reference signal 348 is removed from the microphone signal associated with microphone 320 of second audio endpoint 104 using first adaptive filter 324. Additionally, in some embodiments, second audio endpoint 104 may further include second adaptive filter 326 that removes the contribution of echo source 342 from the microphone signal associated with microphone 320 of second audio endpoint 104 before microphone signal 346 is provided or transmitted to second remote audio endpoint 112.
Referring now to
As shown in
In an example embodiment, echo at first audio endpoint 102 caused by first remote audio endpoint 110 may be suppressed using AEC module 410. In one embodiment, AEC module 410 includes second filter module 316, which may be a linear AEC portion, followed by a non-linear AEC portion (e.g., a Non-Linear Processing (NLP) module 412). Additionally, in an example embodiment, first adaptive filter module 314 may include a linear portion, without a non-linear (NLP) portion. With this configuration, the linear portion of the first adaptive filter module 314 may sufficiently attenuate background noise from co-workers and co-located audio endpoints in shared space 100 without using NLP which can cause more attenuation of microphone signal 336 that is provided to first remote audio endpoint 110 and result in a less duplex experience for telecommunication session participants.
In some embodiments, techniques for implementing adaptive noise cancellation for audio endpoints may further include removing a microphone reference signal from other audio endpoints in shared space 100. Referring now to
Within shared space 100, first audio endpoint 102 and second audio endpoint 104 are both connected to a network (e.g., a LAN via LAN AP 120, shown in
Technique 500 for implementing adaptive noise cancellation for audio endpoints in shared space 100 may be described with reference to first audio endpoint 102. In this embodiment, microphone 310 of first audio endpoint 102 is receiving inputs from several different audio sources within shared space 100. For example, microphone 310 receives a first audio input 510 from first user 302 who is using first audio endpoint 102 to conduct a telecommunication session with first remote audio endpoint 110. In this example, first audio input 510 is the intended audio content that first user 302 is providing to first remote audio endpoint 110 via a transmitted microphone signal 518. Microphone 310 also picks up or receives echo and/or noise from other audio sources within shared space 100, including an echo source 512 output from loudspeaker 312 of first audio endpoint 102, a first noise source 514 output from loudspeaker 322 of second audio endpoint 104, and a second noise source 516 output from second user 304.
The example embodiments presented herein provide a technique of implementing adaptive noise cancellation to remove these additional unwanted noise sources from microphone signal 518 provided to first remote audio endpoint 110 from first audio endpoint 102. In this embodiment, first audio endpoint 102 may implement adaptive noise cancellation of first noise source 514 output from loudspeaker 322 of second audio endpoint 104 and second noise source 516 from second user 304 by obtaining from second audio endpoint 104 a loudspeaker reference signal 520 that corresponds to a signal to be output by from loudspeaker 322 and a microphone reference signal 522 that corresponds to an audio stream that is input to microphone 320 of second audio endpoint 104 (e.g., a first audio input 530 from second user 304).
In this embodiment, each of loudspeaker reference signal 520 and microphone reference signal 522 may be removed from the microphone signal associated with microphone 310 of first audio endpoint 102 using corresponding adaptive filters 314, 502. For example, first adaptive filter 314 is configured to remove loudspeaker reference signal 520 and third adaptive filter 502 is configured to remove microphone reference signal 522. As shown in
At first audio endpoint 102, loudspeaker reference signal 520 is removed from the microphone signal associated with microphone 310 of first audio endpoint 102 using first adaptive filter 314. That is, loudspeaker reference signal 520 corresponds to first noise source 514 output from loudspeaker 322 of second audio endpoint 104 and picked up by microphone 310 of first audio endpoint 102. Additionally, in the embodiment of
Additionally, in some embodiments, first audio endpoint 102 may further include second adaptive filter 316 that removes the contribution of echo source 512 from the microphone signal associated with microphone 310 of first audio endpoint 102 before microphone signal 518 is provided or transmitted to first remote audio endpoint 110.
Technique 500 for implementing adaptive noise cancellation for audio endpoints in shared space 100 may also be described with reference to second audio endpoint 104. That is, each audio endpoint in shared space 100 may implement adaptive noise cancellation to remove noise sources from the other audio endpoints within shared space 100. For example, microphone 320 of second audio endpoint 104 receives inputs from a first audio input 530 from second user 304 who is using second audio endpoint 104 to conduct a separate telecommunication or other audio/acoustical session with second remote audio endpoint 112. In this example, first audio input 530 is the intended audio content that second user 304 is providing to second remote audio endpoint 112 via a transmitted microphone signal 538. As in the previous example, microphone 320 also picks up or receives echo and/or noise from other audio sources within shared space 100, including an echo source 532 output from loudspeaker 322 of second audio endpoint 104, a first noise source 534 output from loudspeaker 312 of first audio endpoint 102, and a second noise source 536 output from first user 302.
At second audio endpoint 104, a loudspeaker reference signal 540 and a microphone reference signal 542 are provided from first audio endpoint 102 via LAN connection 306. Loudspeaker reference signal 540 corresponds to first noise source 534 output from loudspeaker 312 of first audio endpoint 102 and picked up by microphone 320 of second audio endpoint 104 and microphone reference signal 542 corresponds to second noise source 536 from first user 302 that is input to microphone 310 of first audio endpoint 102 (e.g., first audio input 510 from first user 302).
The loudspeaker reference signal 540 is removed from the microphone signal associated with microphone 320 of second audio endpoint 104 using first adaptive filter 324 and the microphone reference signal 542 is removed from the microphone signal associated with microphone 320 of second audio endpoint 104 using second adaptive filter 504. Additionally, in some embodiments, second audio endpoint 104 may further include second adaptive filter 326 that removes the contribution of echo source 532 from the microphone signal associated with microphone 320 of second audio endpoint 104 before microphone signal 538 is provided or transmitted to second remote audio endpoint 112.
Referring now to
As shown in
Referring now to
In this embodiment, method 700 may begin at an operation 702 where one or more audio endpoints are detected or located at a first location. For example, first audio endpoint 102 may detect one or more of audio endpoints 104, 106, 108 within shared space 100 using ultrasonic signals, as described in reference to
Next, at an operation 706, a loudspeaker reference signal is obtained from the selected audio endpoint. For example, as shown in
Optionally, as described with reference to
Additionally, method 700 may further include operations (not shown) to remove echo noise components from the microphone signal before it is transmitted. For example, using AEC module 410, including second adaptive filter 316 and/or NLP module 412 described above in reference to
Method 700 may end with an operation 710 where the filtered microphone signal is provided to a remote audio endpoint. For example, first audio endpoint 102 may provide or transmit microphone signal 336 that has been filtered to remove noise components to first remote audio endpoint 110.
Memory 810 may include software instructions that are configured to be executed by processor 800 for providing one or more of the functions or operations of first audio endpoint 102 described above in reference to
AEC module logic 816 may be configured to provide functions associated with AEC module 410, including second adaptive filter 316 and/or NLP module 412 for first audio endpoint 102, including at least filtering of the microphone signal to remove or cancel noise sources associated with loudspeaker 312. Ultrasonic signal processing logic 818 may be configured to provide functions associated with obtaining/receiving, providing/transmitting, and processing ultrasonic signals from one or more audio endpoints, for example, as may be used by first audio endpoint 102 to locate other audio endpoints within shared space 100, as detailed in reference to
Memory 810 may comprise read only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical, or other physical/tangible (e.g., non-transitory) memory storage devices. The processor 800 is, for example, a microprocessor or microcontroller that executes instructions for operating first audio endpoint 102. Thus, in general, the memory 810 may comprise one or more tangible (non-transitory) computer readable storage media (e.g., a memory device) encoded with software comprising computer executable instructions and when the software is executed (by the processor 800), and, in particular, encode/decode logic 812, adaptive filter module logic 814, AEC module logic 816, and/or ultrasonic signal processing logic 818, it is operable to perform the operations described herein in connection with
It should be understood that one or more functions of processor 800, including encode/decode logic 812, adaptive filter module logic 814, AEC module logic 816, and/or ultrasonic signal processing logic 818, or other components, may be configured in separate hardware, software, or a combination of both. Additionally, processor 800 may include a plurality of processors.
In accordance with the principles described herein, the loudspeaker reference signals from other audio endpoints co-located within a shared space are pure noise sources with no contamination of the wanted or intended audio signal from a user, thereby improving performance. In contrast, using a microphone for the same purposes would degrade the adaptive noise cancellation performance because the resulting noise source would not be pure. Additionally, the techniques of the present embodiments also provide a mechanism that allows the noise signal to be obtained early in the signal processing chain to minimize delay.
The increased popularity of shared spaces and VUIs increases the occurrence of noise pollution from co-workers and other users within that shared space. The principles of the example embodiments described herein provide techniques for adaptive noise cancellation across multiple audio endpoints within a shared space to greatly reduce the amount and/or degree of unwanted background noise that is sent to far-end or remote audio endpoint participants and can also improve the performance of VUIs.
To summarize, in one form, a method is provided comprising: detecting, by a first audio endpoint, one or more audio endpoints co-located with the first audio endpoint at a first location; identifying a selected audio endpoint of the one or more audio endpoints as a target noise source; obtaining, from the selected audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected audio endpoint; removing the loudspeaker reference signal from a microphone signal associated with a microphone of the first audio endpoint; and providing the microphone signal from the first audio endpoint to at least one of a voice user interface (VUI) or a second audio endpoint, wherein the second audio endpoint is located remotely from the first location.
In another form, an apparatus is provided comprising: a microphone; a loudspeaker; a processor in communication with the microphone and the loudspeaker, the processor configured to: detect one or more audio endpoints co-located with the apparatus at a first location; identify a selected audio endpoint of the one or more audio endpoints as a target noise source; obtain, from the selected audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected audio endpoint; remove the loudspeaker reference signal from a microphone signal associated with the microphone; and provide the microphone signal to at least one of a voice user interface (VUI) or a remote audio endpoint, wherein the remote audio endpoint is located remotely from the first location.
In yet another form, one or more non-transitory computer readable storage media are provided that are encoded with instructions that, when executed by a processor of a first audio endpoint, cause the processor to: detect one or more audio endpoints co-located with the first audio endpoint at a first location; identify a selected audio endpoint of the one or more audio endpoints as a target noise source; obtain, from the selected audio endpoint, a loudspeaker reference signal associated with a loudspeaker of the selected audio endpoint; remove the loudspeaker reference signal from a microphone signal associated with a microphone of the first audio endpoint; and provide the microphone signal from the first audio endpoint to at least one of a voice user interface (VUI) or a second audio endpoint, wherein the second audio endpoint is located remotely from the first location.
Although the techniques are illustrated and described herein as embodied in one or more specific examples, it is nevertheless not intended to be limited to the details shown, since various modifications and structural changes may be made within the scope and range of the embodiments presented herein. In addition, various features from one of the embodiments discussed herein may be incorporated into any other embodiments. Accordingly, the appended claims should be construed broadly and in a manner consistent with the scope of the disclosure.
Birkenes, Oystein, Burenius, Lennart
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
10003377, | Dec 19 2016 | Cisco Technology, Inc. | Spread spectrum acoustic communication techniques |
10089067, | May 22 2017 | KYNDRYL, INC | Context based identification of non-relevant verbal communications |
10110994, | Nov 21 2017 | Nokia Technologies Oy | Method and apparatus for providing voice communication with spatial audio |
10141973, | Jun 23 2017 | Cisco Technology, Inc. | Endpoint proximity pairing using acoustic spread spectrum token exchange and ranging information |
10177859, | Apr 12 2013 | Cisco Technology, Inc. | System and associated methodology for proximity detection and device association using ultrasound |
10277332, | Mar 05 2013 | Cisco Technology, Inc. | System and associated methodology for detecting same room presence using ultrasound as an out-of-band channel |
10473751, | Apr 25 2017 | Cisco Technology, Inc. | Audio based motion detection |
10491311, | Mar 05 2013 | Cisco Technology, Inc. | System and associated methodology for detecting same-room presence using ultrasound as an out-of-band channel |
10491995, | Oct 11 2018 | Cisco Technology, Inc.; Cisco Technology, Inc | Directional audio pickup in collaboration endpoints |
10530417, | Dec 19 2016 | Cisco Technology, Inc. | Spread spectrum acoustic communication techniques |
10687139, | Oct 11 2018 | Cisco Technology, Inc. | Directional audio pickup in collaboration endpoints |
10825460, | Jul 03 2019 | Cisco Technology, Inc. | Audio fingerprinting for meeting services |
7876890, | Jun 15 2006 | AVAYA LLC | Method for coordinating co-resident teleconferencing endpoints to avoid feedback |
8488745, | Jun 17 2009 | Microsoft Technology Licensing, LLC | Endpoint echo detection |
9025762, | Oct 23 2012 | Cisco Technology, Inc. | System and method for clock synchronization of acoustic echo canceller (AEC) with different sampling clocks for speakers and microphones |
9241016, | Mar 05 2013 | Cisco Technology, Inc | System and associated methodology for detecting same-room presence using ultrasound as an out-of-band channel |
9275625, | Mar 06 2013 | Qualcomm Incorporated | Content based noise suppression |
9319633, | Mar 19 2015 | Cisco Technology, Inc. | Ultrasonic echo canceler-based technique to detect participant presence at a video conference endpoint |
9473580, | Dec 06 2012 | Cisco Technology, Inc. | System and associated methodology for proximity detection and device association using ultrasound |
9591148, | Apr 07 2015 | Cisco Technology, Inc. | Detecting proximity of devices based on transmission of inaudible sound signatures in the speech band |
9799330, | Aug 28 2014 | SAMSUNG ELECTRONICS CO , LTD | Multi-sourced noise suppression |
9877114, | Apr 13 2015 | DSCG SOLUTIONS, INC | Audio detection system and methods |
9913026, | Aug 13 2014 | Microsoft Technology Licensing, LLC | Reversed echo canceller |
20050207567, | |||
20070237336, | |||
20080232569, | |||
20090323925, | |||
20130230152, | |||
20150117626, | |||
20170346950, | |||
20180077205, | |||
20200059305, | |||
20200116820, | |||
20200195297, | |||
20220024484, | |||
20220318860, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jun 05 2018 | BURENIUS, LENNART | Cisco Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 056313 | /0286 | |
Jun 05 2018 | BIRKENES, OYSTEIN | Cisco Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 056313 | /0286 | |
May 20 2021 | Cisco Technology, Inc. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
May 20 2021 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Date | Maintenance Schedule |
Mar 14 2026 | 4 years fee payment window open |
Sep 14 2026 | 6 months grace period start (w surcharge) |
Mar 14 2027 | patent expiry (for year 4) |
Mar 14 2029 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 14 2030 | 8 years fee payment window open |
Sep 14 2030 | 6 months grace period start (w surcharge) |
Mar 14 2031 | patent expiry (for year 8) |
Mar 14 2033 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 14 2034 | 12 years fee payment window open |
Sep 14 2034 | 6 months grace period start (w surcharge) |
Mar 14 2035 | patent expiry (for year 12) |
Mar 14 2037 | 2 years to revive unintentionally abandoned end. (for year 12) |