Aspects of the disclosure generally relate to adaptively adjusting an audio limiter in active noise reduction (ANR) headphones based, at least in part, on a determined state of the headphones relative to the user's head or ears.
Banded ANR headsets have a known issue in which, under specific conditions, there is an interaction between the ANR system and the audio playback that will cause them to distort. Those specific conditions being high volume, high bass, and a bad fit—i.e., where there are leaks between earcups and head.
This problem is not new, nor is the use of an audio limiter to deal with it. However, prior solutions to address this issue have been relatively unsophisticated. That is, they limit the audio regardless of the current fit or the state of the system. Current limiter-based solutions just look at the audio (music) coming in through the playback path and if it is loud and has a lot of bass, then they conservatively reduce the output because there is the potential for it to distort.
An improvement proposed by the present disclosure is an ability to detect a state of a system (e.g., an ANR headphones) and only limit audio when, and to the extent, it needs to be to inhibit or prevent distortion due to clipping. If there is a good seal or only a small leak, the proposed solution will provide enhanced performance (more bass out of the headphones) because it has better knowledge of what is going on, whereas the current system turns it down just in case. So, the improved system makes smarter decisions and is more dynamic to provide better performance depending on the state of the system.
All examples and features mentioned below can be combined in any technically possible way.
One aspect features a method that is performed by active noise reduction (ANR) headphones. The method includes comparing a feedback microphone signal to a predicted feedback microphone signal representing what the feedback microphone signal would be expected to look like if there were no leak between the headphones and a user wearing the headphones—this assumes that there is some driver excitation (either hear-through/transparency or audio content) that dominates what is received at the feedback microphone. An audio limiter is adaptively adjusted based, at least in part, on the comparison.
Implementations may include one of the following features, or any combination thereof.
In some implementations, comparing the feedback microphone signal to the predicted feedback microphone signal includes providing the feedback microphone signal and the predicted feedback microphone signal as inputs to a leak detector.
In certain implementations, the leak detector includes a high-pass filter and comparing the feedback microphone signal to the predicted feedback microphone signal includes filtering the predicted feedback microphone signal with the high-pass filter to provide a high-pass filtered signal.
In some cases, comparing the feedback microphone signal to the predicted feedback microphone signal includes determining an error signal corresponding to a difference between the feedback microphone signal and the high-pass filtered signal. The method may also include providing the error signal to an adaptive algorithm and using output of the adaptive algorithm to update a transfer function of the high-pass filter.
In certain cases, the audio limiter is adjusted based on a center frequency value of the high-pass filter.
In another aspect, an active noise reduction (ANR) audio output device includes a memory that includes computer-executable instructions, and a processor that is configured to execute the executable instructions and cause the audio output device to compare a feedback microphone signal to a predicted feedback microphone signal representing what the feedback microphone signal would be expected to look like if there were no leak between the headphones and a user wearing the headphones and adaptively adjust an audio limiter based, at least in part, on the comparison.
Implementations may include one of the above and/or below features, or any combination thereof.
In some examples, the computer-executable instructions for comparing the feedback microphone signal to the predicted feedback microphone signal include instructions for providing the feedback microphone signal and the predicted feedback microphone signal as inputs to a leak detector.
In certain examples, the leak detector includes a high-pass filter and comparing the feedback microphone signal to the predicted feedback microphone signal includes filtering the predicted feedback microphone signal with the high-pass filter to provide a high-pass filtered signal.
In some implementations, the computer-executable instructions for comparing the feedback microphone signal to the predicted feedback microphone signal include instructions for: determining an error signal corresponding to a difference between the feedback microphone signal and the high-pass filtered signal and providing the error signal to an adaptive algorithm and using output of the adaptive algorithm to update a transfer function of the high-pass filter.
In certain implementations, the computer-executable instructions for adaptively adjusting the audio limiter include instructions for adjusting the audio limiter based on a center frequency value of the high-pass filter.
Another aspect provides a method that is performed by active noise reduction (ANR) headphones. The method includes adaptively adjusting a gain applied to an audio signal to provide a gain adjusted audio signal. The audio signal and the gain adjusted audio signal are provided to an audio limiter; and the audio signal is limited based on the gain adjusted audio signal to provide an adjusted audio signal.
Implementations may include one of the above and/or below features, or any combination thereof.
In some cases, adaptively adjusting the gain applied to the audio signal includes adjusting the gain based on an output received from a leak detector.
In certain cases, the leak detector includes a high-pass filter and an adaptive algorithm that is configured to update a transfer function of the high-pass filter. The output of the leak detector corresponds to a center frequency value of the high-pass filter.
In some examples, the method includes translating the center frequency value to a gain value.
In certain examples, the center frequency value is translated to a gain value via a lookup table.
In some implementations, the method includes receiving a feedback microphone signal from a feedback microphone and filtering a driver signal with an estimate of a transfer function representing an acoustic path between an acoustic driver and the feedback microphone with a good fit to provide a predicted feedback microphone signal, representing what the feedback microphone signal would be expected to look like if there were no leak between the headphones and a user wearing the headphones. The predicted feedback microphone signal is then filtered with the high-pass filter to provide a high-pass filtered signal. An error signal, representing a difference between the feedback microphone signal and the high-pass filtered signal, is provided to the adaptive algorithm, and an output of the adaptive algorithm is used to update a transfer function of the high-pass filter.
In the drawings, like reference characters generally refer to the same parts throughout the different views. Also, the drawings are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of the various aspects.
ANR headsets with leaky fits can lead to audible distortion and DAC clipping in very loud infrasonic noise environments or when very loud bass-heavy audio content is played. Traditionally, this has been mitigated by reducing bass output at higher volume levels or with the application of reactive dynamic limiters in the audio path. If the leak state is known, it can be used to proactively inform the upstream paths that could result in clipping.
Aspects of the present disclosure provide techniques, including headphones and ANR systems implementing the techniques, to dynamically adjust an audio limiter in an ANR audio output device (ANR headphones). The audio limiter adaptively adjusts both how much and when to limit incoming audio based on a determined state of the device relative to a user wearing the device. As described herein, in aspects, the audio limiter adaptively adjusts at least a lower frequency portion (e.g., low and/or mid-frequency portions) of an incoming audio signal based on the determined state of the headphones. The lower frequency portions are dynamically limited based on the state of the headphones because it is the portion of the incoming audio that are likely to cause the most distortion.
The state of the device is determined based on the quality of the seal or fit between the earcup of the headphones and the user's ear or head. The state varies from a good fit to a poor or leaky fit. Based on the extent to which the fit is good or leaky, the audio limiter adaptively limits the lower frequency portions of the incoming audio signal. When the fit is poor or leaky, the audio limiter limits the lower frequency portion(s) of the audio signal in an effort to mitigate distortion which would not be present when the fit is good. Advantageously, the audio limiter does not limit or reduce the amount of limiting of the lower frequency portion(s) of the audio signal when the fit is good or is becoming better.
Each earpiece 102 incorporates a casing 108 having a cavity 110 at least partly defined by the casing 108 and by at least a portion of an acoustic driver 112 (also designated as left and right acoustic drivers 112a, 112b, respectively, e.g., in
In aspects, a feedforward microphone 120 (also designated as left and right feedforward microphones 120a, 120b, respectively, e.g., in
In aspects, a feedback microphone 124 (also designated as left and right feedback microphones 124a, 124b, respectively, e.g., in
The personal ANR device 100 further incorporates the audio processing circuit 106, portions which are associated with each earpiece 102 of the personal ANR device 100. The audio processing circuit 106 may include one or more processors configured to execute instructions to control the functionality of the device 100 including the dynamic, real-time adjustment of the audio limiter 612 (
Either a portion of or substantially all of the audio processing circuit 106 may be disposed within the casing 108 of one of the earpieces 102. Alternatively and/or additionally, a portion of or substantially all the audio processing circuit 106 may be disposed within another portion of the personal ANR device 100. Depending on whether one or both of feedback-based ANR and feedforward-based ANR are provided in an earpiece 102 associated with the audio processing circuit 106, the audio processing circuit 106 is coupled to one or both of the feedback microphone 124 and the feedforward microphone 120. The audio processing circuit 106 is further coupled to the acoustic driver 112 to cause the acoustic output of anti-noise sounds.
In aspects providing pass-through audio, the audio processing circuit 106 is also coupled to an audio source 126 to receive incoming audio signals from the audio source 126 to be acoustically output by the acoustic driver 112. The incoming audio signals from the audio source, unlike the noise sounds emitted by the acoustic noise source 122, is audio that a user of the personal ANR device 100 desires to hear. In aspects, the incoming audio signals may be a playback of recorded audio, transmitted audio, or any of a variety of other forms of audio that the user desires to hear. In aspects, pass-through audio is received from a communications microphone 128 integrated into variants of the personal ANR device 100 employed in two-way communications in which the communications microphone 128 is positioned to detect speech sounds produced by the user of the personal ANR device 100.
In support of the operation of the audio processing circuit 106, the personal ANR device 100 may further incorporate one or both of a memory or storage device 130, a power source 132.
As described above, the ear coupling 116 surrounds an opening to the cavity 110 and has a passage 118 that is formed through the ear coupling 116 and that communicates with the opening to the cavity 110.
Anything that prevents the earcup from making a tight seal with the ear or a user's head may result in a poor or leaky fit. With reference to
Under certain conditions, a leaky fit may cause unwanted distortion between the ANR system and audio playback. The conditions may include high volume and high bass, in combination with a leaky fit between the earcup and the user's head. To address this issue, an audio limiter reduces the amplitude of the bass frequencies anytime the volume of the audio playback signal is high. Consequently, some current systems limit the audio regardless of the state of the ANR device relative the user's head or ear. If the audio from the playback path is loud and has a lot of bass, the audio limiter reduces the audio output simply because there is a potential for unwanted distortion. This conservative approach limits performance of the ANR device even when unnecessary and the device has more capability. Aspects of the present disclosure provide methods to intelligently use the audio limiter to limit the bass when and to the extent a leaky fit is detected. As compared to current methods, a state dependent audio limiter enables better performance by the ANR device when the fit is good while still decreasing distortion when the fit is poor.
As will be described in more detail below, the audio limiter advantageously and selectively limits the audio when and to the extent needed based on the detected state of the system. If there is a good seal or only a small leak, the intelligent functionality of the audio limiter provides enhanced performance by way of not limiting or appropriately limiting the bass output from the headphones. In contrast, current ANR devices simply reduce the bass of the audio signal. Therefore, the device described herein makes smarter decisions by dynamically adjusting the behavior of the audio limiter depending on the state of the device.
Each of the ANR DSPs 302 may be housed in a corresponding one of the earpieces 102. Time division multiplexed (TDM) links 306a, 306b (generally “TDM link 306” or collectively “TDM links 306”) between the BT SoC 300 and the ANR DSPs 302 allows for the transfer of the audio data from the BT SoC 300 to the ANR DSPs 302. As will be discussed below, these links also enable the transfer of output from leak detectors running on the ANR DSPs 302 back to the BT SoC 300. In some cases, the input audio may include multichannel audio (e.g., stereo audio) and the BT SoC 300 may provide a first audio signal corresponding to a first audio channel (e.g., left channel audio) to the first ANR DSP 302a and a second audio signal corresponding to a second audio channel (e.g., right channel audio) to the second ANR DSP 302b. Each of the ANR DSPs 302 further processes the audio provided by the BT SoC 300 and provides an output audio signal 308a, 308b (generally “output audio signal 308” or collectively “output audio signals 308”) to a corresponding one of the acoustic drivers 112.
With reference to
Each of the ANR DSPs 302 executes an ANR processing module 404a, 404b (generally “ANR processing module 404” or collectively “ANR processing modules 404”) that further processes the corresponding processed input audio signal 304 using feedforward microphone signal 406 from a corresponding one of the feedforward microphones 120a, 120b and feedback microphone signal 406a, 406b from a corresponding one of the feedback microphones 124a, 124b to provide the output audio signals 308a, 308b to the left and right acoustic drivers 112a 112b, respectively.
Notably, the ANR processing module 404 also includes a leak detector 510 implemented as an adaptive filter. There are two inputs to the leak detector 510—the feedback microphone signal 408 and a predicted feedback microphone signal 512, which represents what the feedback microphone signal would be expected to look like if there were no leak. To create the predicted feedback microphone signal 512, the output audio signal 308 (a/k/a “driver signal”) is filtered through an estimate (e.g., an offline estimate, an online estimate, or an updating estimate) of the transfer function (Gsd) 514 that represents the acoustic path between the acoustic driver 112 and the feedback microphone 124 (which may also be referred to as the system microphone or sensor s) with a good fit. The predicted feedback microphone signal 512 is filtered via a high-pass filter 516. The high-pass filter 516 may be a first order high-pass filter, or, alternatively, a more complicated filter that better fits the transition between a good fit and a leaky fit could also be applied. An error signal 518, corresponding to a difference between the high-pass filtered signal 519 and the feedback microphone signal 408, serves as the input to an adaptive algorithm 520 that is used to adapt (update) the coefficients of the high-pass pass filter 516. The adaptive algorithm 520 may be a least mean squares (LMS) algorithm (e.g., sign-sign LMS, NLMS, PCA-LMS). The output 522 of the leak detector 510 is a value that corresponds to the center frequency of the high-pass filter 516. The higher the value, the more likely that a leak is present. That center frequency value is the input to a threshold-based gain modulation. Both ANR processing modules 404a, 404b may be similarly configured with each providing it is own, respective leak detector output 522a, 522b (
In aspects, the feedforward microphone signal 406 may undergo additional ANR processing. For example, the ANR processing module 404 may also provide hear-through (a/k/a “transparency”) processing, which can adjust or control (or allow a user to control) an amount of ambient noise passed through the device while maintaining ANR functionalities. To enable control of the amount of ambient noise passed through the device, an adjustable gain may be implemented, such as by selecting a set of coefficients for a hear-through filter 524. Alternatively or additionally, an adjustable gain may be implemented using a variable gain amplifier 526 arranged in series with the hear-through filter 524. In some cases, an adjustable gain may be implemented using a combination of adjustments to a variable gain amplifier 526 and the hear-through filter 524, each disposed in the hear-through signal flow path.
In the example illustrated in
The audio processing module 400 also includes a max signal detector 618. The max signal detector 618 receives the leak detector output signals 522a, 522b as input and first determines which of those two signals is greater, and, thus, more likely to be indicative of a leaky fit. A lookup table 620 is then used to convert/translate the value (e.g., between 0.6 and 1) of the max leak detector signal 522 into a value (e.g., between 0 and 10 or between-1 and 1) that the gain block 614 can use to adjust a gain applied to the volume adjusted signals 610a, 610b. The lookup table 620 provides that value as input (signal 622) to the gain block 614. The limiter 612, in turn, uses the volume adjusted signals 610a, 610b to determine whether or not to limit the volume adjusted signals 610a, 610b (i.e., to provide the processed input audio signals 402a, 402b), and, if so, by how much. If the fit quality is good (i.e., no or low leak), then the gain block 614 will apply low or no gain and the limiter will only slightly limit the audio or will pass it through without limiting. On the other hand, if there is a leak, the gain applied by the gain block 614 will increase, and, in response, the limiter 612 will respond by turning the audio down.
Notably, the leak detector 510 is configured such that the audio processing path(s) (e.g., of audio processing module 400) is/are informed of a leak before loud audio is played or at least very quickly so that the duration of any distortion is minimized.
While implementations have been described in which the ANR processing and input audio processing are distributed on different ICs, in some implementations, the ANR processing and the input audio processing may be performed on a common IC.
It can be noted that, descriptions of aspects of the present disclosure are presented above for purposes of illustration, but aspects of the present disclosure are not intended to be limited to any of the disclosed aspects. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described aspects.
In the preceding, reference is made to aspects presented in this disclosure. However, the scope of the present disclosure is not limited to specific described aspects. Aspects of the present disclosure can take the form of an entirely hardware aspect, an entirely software aspect (including firmware, resident software, micro-code, etc.) or an aspect combining software and hardware aspects that can all generally be referred to herein as a “component,” “circuit,” “module” or “system.” Furthermore, aspects of the present disclosure can take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) can be utilized. The computer readable medium can be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples a computer readable storage medium include: an electrical connection having one or more wires, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, a non-transitory computer readable medium or any suitable combination of the foregoing. In the current context, a computer readable storage medium can be any tangible medium that can contain or store a program.
The block diagrams in the Figures illustrate the architecture, functionality and operation of possible implementations of systems, methods and computer program products according to various aspects. In this regard, each block in the flowchart or block diagrams can represent a module, segment or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). Each block of the block diagrams and combinations of blocks in the block diagrams and can be implemented by special-purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
A number of implementations have been described. Nevertheless, it will be understood that additional modifications may be made without departing from the scope of the inventive concepts described herein, and, accordingly, other embodiments are within the scope of the following claims.