Index scheming for filter parameters
A method of processing an audio signal is disclosed. According to embodiments of the method, magnitude response information of a prototype filter is determined. The magnitude response information includes a plurality of gain values, at least one of which includes a first gain corresponding to a first frequency. The magnitude response information of the prototype filter is stored. The magnitude response information of the prototype filter at the first frequency is retrieved. Gains are computed for a plurality of control frequencies based on the retrieved magnitude response information of the prototype filter at the first frequency, and the computed gains are applied to the audio signal.
1. A method comprising:
determining magnitude response information for a filter, the magnitude response information comprising a plurality of gain values, at least one of the plurality of gain values including a first gain corresponding to a first frequency;
at a first time, storing the magnitude response information for the filter;
determining one or more properties of an environment of a wearable head device;
determining a target magnitude response based on the one or more properties of the environment, the target magnitude response comprising one or more control frequencies and further comprising a target gain corresponding to a control frequency of the one or more control frequencies;
at a second time later than the first time, retrieving the magnitude response information for the filter;
determining an audio signal based on a selected portion of the magnitude response information, wherein the selected portion is selected based on the target gain; and
presenting the audio signal to a user of the wearable head device.
2. The method of claim 1 , further comprising:
presenting a test signal via the one or more speakers of the wearable head device;
detecting a response signal via one or more sensors of the wearable head device; and
determining a relationship between the test signal and the response signal, wherein the audio signal is determined based on the relationship.
3. The method of claim 1 , further comprising:
determining a magnitude response information of a high-shelving equalizer,
scaling the magnitude response information of the high-shelving equalizer, and
shifting the scaled magnitude response information of the high-shelving equalizer along a frequency axis by a predetermined frequency amount.
4. The method of claim 1 , further comprising:
determining a magnitude response information of a low-shelving equalizer,
scaling the magnitude response information of the low-shelving equalizer, and
shifting the scaled magnitude response information of the low-shelving equalizer along a frequency axis by a predetermined frequency amount.
5. The method of claim 1 , further comprising:
determining an index associated with the first frequency;
determining a lookup table index based on the index associated with the first frequency and further based on an output of one or more sensors of the wearable head device; and
accessing a lookup table via the lookup table index.
6. The method of claim 1 , further comprising:
detecting an action of the user of the wearable head device via one or more sensors of the wearable head device;
determining a parameter associated with the environment of the wearable head device, the parameter based on the detected action;
determining a lookup table index based on the index associated with the first frequency and further based on the output of the one or more sensors; and
accessing a lookup table via the lookup table index.
7. A wearable system comprising:
a wearable head device comprising one or more sensors and one or more speakers; and
one or more processors configured to perform a method comprising:
determining magnitude response information for a filter, the magnitude response information comprising a plurality of gain values, at least one of the plurality of gain values including a first gain corresponding to a first frequency;
at a first time, storing the magnitude response information for the filter;
determining one or more properties of an environment of a wearable head device;
determining a target magnitude response based on the one or more properties of the environment, the target magnitude response comprising one or more control frequencies and further comprising a target gain corresponding to a control frequency of the one or more control frequencies;
at a second time later than the first time, retrieving the magnitude response information for the filter;
determining an audio signal based on a selected portion of the magnitude response information, wherein the selected portion is selected based on the target gain; and
presenting the audio signal to a user of the wearable head device.
8. The wearable system of claim 7 , wherein the method further comprises:
presenting a test signal via one or more speakers of the wearable head device;
detecting a response signal via one or more sensors of the wearable head device; and
determining a relationship between the test signal and the response signal, wherein the audio signal is determined based on the relationship.
9. The wearable system of claim 7 , wherein the method further comprises:
determining a magnitude response information of a high-shelving equalizer,
scaling the magnitude response information of the high-shelving equalizer, and
shifting the scaled magnitude response information of the high-shelving equalizer along a frequency axis by a predetermined frequency amount.
10. The wearable system of claim 7 , wherein the method further comprises:
determining a magnitude response information of a low-shelving equalizer,
scaling the magnitude response information of the low-shelving equalizer, and
shifting the scaled magnitude response information of the low-shelving equalizer along a frequency axis by a predetermined frequency amount.
11. The wearable system of claim 7 , wherein the method further comprises:
determining an index associated with the first frequency;
determining a lookup table index based on the index associated with the first frequency and further based on an output of one or more sensors of the wearable head device; and
accessing a lookup table via the lookup table index.
12. The wearable system of claim 7 , wherein the method further comprises:
detecting an action of the user of the wearable head device via the one or more sensors;
determining a parameter associated with the environment of the wearable head device, the parameter based on the detected action;
determining a lookup table index based on the index associated with the first frequency and further based on the output of the one or more sensors; and
accessing a lookup table via the lookup table index.
13. A non-transitory computer-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform a method comprising:
determining magnitude response information for a filter, the magnitude response information comprising a plurality of gain values, at least one of the plurality of gain values including a first gain corresponding to a first frequency;
at a first time, storing the magnitude response information for the filter;
determining one or more properties of an environment of a wearable head device;
determining a target magnitude response based on the one or more properties of the environment, the target magnitude response comprising one or more control frequencies and further comprising a target gain corresponding to a control frequency of the one or more control frequencies;
at a second time later than the first time, retrieving the magnitude response information for the filter;
determining an audio signal based on a selected portion of the magnitude response information, wherein the selected portion is selected based on the target gain; and
presenting the audio signal to a user of the wearable head device.
14. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises:
presenting a test signal via one or more speakers of the wearable head device;
detecting a response signal via one or more sensors of the wearable head device; and
determining a relationship between the test signal and the response signal, wherein the audio signal is determined based on the relationship.
15. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises:
determining a magnitude response information of a high-shelving equalizer,
scaling the magnitude response information of the high-shelving equalizer, and
shifting the scaled magnitude response information of the high-shelving equalizer along a frequency axis by a predetermined frequency amount.
16. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises:
determining a magnitude response information of a low-shelving equalizer,
scaling the magnitude response information of the low-shelving equalizer, and
shifting the scaled magnitude response information of the low-shelving equalizer along a frequency axis by a predetermined frequency amount.
17. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises:
determining an index associated with the first frequency;
determining a lookup table index based on the index associated with the first frequency and further based on an output of one or more sensors of the wearable head device; and
accessing a lookup table via the lookup table index.
18. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises:
detecting an action of the user of the wearable head device via the one or more sensors;
determining a parameter associated with the environment of the wearable head device, the parameter based on the detected action;
determining a lookup table index based on the index associated with the first frequency and further based on the output of the one or more sensors; and
accessing a lookup table via the lookup table index.