Automated tuning by measuring and equalizing speaker output in an audio environment
An example method of operation may include identifying speakers and microphones connected to a network controlled by a controller, assigning a preliminary output gain to the speakers used to apply test signals, measuring ambient noise detected from the microphones, recording chirp responses from all microphones simultaneously based on the test signals, deconvolving all chirp responses to determine a corresponding number of impulse responses, and measuring average sound pressure levels (SPLs) of each of the microphones to obtain a SPL level based on an average of the SPLs.
1. A method, comprising:
identifying a plurality of speakers and microphones connected to a network controlled by a controller;
assigning a preliminary output gain to the plurality of speakers used to apply test signals;
measuring ambient noise detected from the microphones;
recording chirp responses from all microphones simultaneously based on the test signals;
deconvolving all chirp responses to determine a corresponding number of impulse responses; and
measuring average sound pressure levels (SPLs) of each of the microphones to obtain a SPL level based on an average of the SPLs.
2. The method of claim 1 , wherein the measuring ambient noise detected from the microphones comprises checking for excessive noise.
3. The method of claim 1 , comprising
for each microphone input signal, identify a main impulse peak; and
identify distance from one or more of the plurality of speakers to each microphone.
4. The method of claim 3 , comprising
determining frequency responses of each microphone input signal; and
applying a compensation value to each microphone based on the frequency responses.
5. The method of claim 4 , comprising
averaging the frequency responses to obtain a spatial average response; and
performing an automated equalization of the spatial average response to match a target response value.
6. The method of claim 1 , comprising
determining an attenuation value associated with the room based on the SPL level and a distance from nearest and furthest microphones.
7. The method of claim 6 , comprising
determining an output gain that provides a target sound level at an average distance of all microphones based on the SPL level and attenuation value.
8. An apparatus, comprising:
a processor configured to
identify a plurality of speakers and microphones connected to a network controlled by a controller;
assign a preliminary output gain to the plurality of speakers used to apply test signals;
measure ambient noise detected from the microphones;
record chirp responses from all microphones simultaneously based on the test signals;
deconvolve all chirp responses to determine a corresponding number of impulse responses; and
measure average sound pressure levels (SPLs) of each of the microphones to obtain a SPL level based on an average of the SPLs.
9. The apparatus of claim 8 , wherein the measured ambient noise detected from the microphones comprises the processor being configured to check for excessive noise.
10. The apparatus of claim 8 , wherein the processor is further configured to
for each microphone input signal, identify a main impulse peak; and
identify distance from one or more of the plurality of speakers to each microphone.
11. The apparatus of claim 8 , comprising
determine frequency responses of each microphone input signal; and
apply a compensation value to each microphone based on the frequency responses.
12. The apparatus of claim 11 , wherein the processor is further configured to
average the frequency responses to obtain a spatial average response; and
perform an automated equalization of the spatial average response to match a target response value.
13. The apparatus of claim 8 , wherein the processor is further configured to
determine an attenuation value associated with the room based on the SPL level and a distance from nearest and furthest microphones.
14. The apparatus of claim 13 , wherein the processor is further configured to
determine an output gain that provides a target sound level at an average distance of all microphones based on the SPL level and attenuation value.
15. A non-transitory computer readable storage medium configured to store instructions that when executed cause a processor to perform:
identifying a plurality of speakers and microphones connected to a network controlled by a controller;
assigning a preliminary output gain to the plurality of speakers used to apply test signals;
measuring ambient noise detected from the microphones;
recording chirp responses from all microphones simultaneously based on the test signals;
deconvolving all chirp responses to determine a corresponding number of impulse responses; and
measuring average sound pressure levels (SPLs) of each of the microphones to obtain a SPL level based on an average of the SPLs.
16. The non-transitory computer readable storage medium of claim 15 , wherein the measuring ambient noise detected from the microphones comprises checking for excessive noise.
17. The non-transitory computer readable storage medium of claim 15 , wherein the processor is further configured to perform:
for each microphone input signal, identify a main impulse peak; and
identify distance from one or more of the plurality of speakers to each microphone.
18. The non-transitory computer readable storage medium of claim 17 , wherein the processor is further configured to perform:
determining frequency responses of each microphone input signal; and
applying a compensation value to each microphone based on the frequency responses.
19. The non-transitory computer readable storage medium of claim 18 , wherein the processor is further configured to perform:
averaging the frequency responses to obtain a spatial average response; and
performing an automated equalization of the spatial average response to match a target response value.
20. The non-transitory computer readable storage medium of claim 15 , wherein the processor is further configured to perform:
determining an attenuation value associated with the room based on the SPL level and a distance from nearest and furthest microphones.