Automatic volume control for calibration track playback
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- HARMAN INT IND INC
- Filing Date
- 2023-08-08
- Publication Date
- 2026-06-17
AI Technical Summary
Existing automatic channel assignment methods for multi-channel speaker systems face challenges in maintaining a high signal-to-noise ratio during calibration track playback, leading to errors in channel assignment due to varying ambient noise levels.
A method of automatic volume control (AVC) is introduced, which involves obtaining microphone input signals, estimating energy values, selecting interesting energy values, calculating an average energy value, and adjusting the volume for calibration track playback based on this average energy value to maintain a constant signal-to-noise ratio.
The AVC method effectively compensates for ambient noise variations, improving the accuracy of channel assignment and providing a more immersive audio experience by maintaining a consistent signal-to-noise ratio during calibration.
Smart Images

Figure CN2023111713_13022025_PF_FP_ABST
Abstract
Description
AUTOMATIC VOLUME CONTROL FOR CALIBRATION TRACK PLAYBACK
[0001] TECHINICAL FIELD
[0002] The disclosure relates to signal processing, and specifically relates to an optimized method of automatic volume control for calibration track playback in the multi-channel speaker system based on energy estimation of ambient noise.BACKGROUND
[0003] With the wide use of multi-channel playback technology in the multi-channel speaker system, it is required that more and more speakers can be automatically grouped together and each speaker can be accurately assigned with a channel to reproduce the audio signal from the assigned channel so that users can get an immersive sound experience.
[0004] There are two usual methods for assigning the channel to the speaker in a group. One method is manual channel assignment and the other is automatic channel assignment. For the manual channel assignment method, users have to select the channel for the corresponding speaker, for example, by operating in an APP. However, it is inconvenient and complicated for users to select and assign the corresponding channel for each speaker, especially for users short of multi-channel concept.
[0005] To overcome the above defect in the manual channel assignment, the automatic channel assignment method is proposed. For the automatic channel assignment method, a calibration algorithm may be introduced for the multi-channel speaker system with built-in microphones in each speaker. The calibration algorithm may be a method or protocol that can assign each corresponding channel to each speaker automatically. There are various calibration algorithms now. For various calibration algorithms, it is an important requirement that a high signal-to-noise (SNR) signal can be recorded by built-in microphones when speakers in the group reproduce a predefined audio signal of the calibration track (which may also be referred to as “play calibration track” or “calibration track playback” ) . When speakers reproduce the predefined audio signal of the calibration track in a noisy environment, the low SNR signal for calibration sometimes leads to an error of result output, which even leads to wrong channel assignments.
[0006] Therefore, it is necessary to provide improved technology to overcome the above defects.SUMMARY
[0007] According to one aspect of the disclosure, a method of automatic volume control for calibration track playback in a multi-channel speaker system is provided. The multi-channel speaker system may include a plurality of speakers each having at least one built-in microphone. The method may comprise: obtaining microphone input signals from built-in microphones in the plurality of speakers; estimating energy values for the microphone input signals; selecting interesting energy values from the energy values; obtaining an average energy value of the selected energy values; and calculating a calibrated volume for the automatic volume control based on the average energy value.
[0008] According to another aspect of the present disclosure, a multi-channel speaker system is provided. The system may comprise a plurality of speakers each having at least one built-in microphone. The system may comprise a memory configured to store instructions, and at least one processor coupled to the memory. The processor may be configured to perform the instructions to obtain microphone input signals from built-in microphones in the plurality of speakers; estimate energy values for the microphone input signals; select interesting energy values from the energy values; obtain an average energy value of the selected energy values; and calculate a calibrated volume for the automatic volume control based on the average energy value.
[0009] According to yet another aspect of the present disclosure, a non-transitory computer-readable storage medium comprising computer-executable instructions which, when executed by a computer, causes the computer to perform the method disclosed herein.BRIEF DESCRIPTION OF THE DRAWINGS
[0010] FIG. 1 illustrates a schematic diagram of a multi-channel speaker system according to one or more embodiments of the disclosure.
[0011] FIG. 2 a method of automatic volume control for calibration track playback in the multi-channel speaker system according to one or more embodiments of the disclosure.
[0012] FIG. 3 illustrates a block diagram for illustrating an exemplary process of automatic volume control for calibration track playback in the multi-channel speaker system according to one or more embodiments of the disclosure.
[0013] To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. It is contemplated that elements disclosed in one embodiment may be beneficially utilized in other embodiments without specific recitation. The drawings referred to here should not be understood as being drawn to scale unless specifically noted. Also, the drawings are often simplified and details or components omitted for clarity of presentation and explanation. The drawings and discussion serve to explain principles discussed below, where like designations denote like elements.
[0014] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] Examples will be provided below for illustration. The descriptions of the various examples will be presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. 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 embodiments.
[0016] The various embodiments in this disclosure provide a new approach of automatic volume control (AVC) for calibration track playback in the multi-channel speaker system, which may automatically adjust calibration volume of multi-channel speaker system based on the detected ambient noise energy, which is aimed to maintain constant signal-to-noise ratio for the calibration algorithm used during the subsequent calibration track playback. In addition, the trigger and use of the AVC method proposed in this disclosure are hidden from users. Users do not need to make additional complicated settings or operations when using the system APP, so it will bring users a more friendly experience. The method will be explained in detail with reference to FIGS. 1-3 as follows.
[0017] FIG. 1 illustrates a schematic diagram of a multi-channel speaker system according to one or more embodiments of the disclosure. As shown in the example of the multi-channel speaker system 100 in FIG. 1, the multi-channel speaker system 100 may include a plurality of speakers, for example, speakers 101 (1) -101 (N) . In some embodiments, one of these speakers in the speaker system is preset as a primary speaker, and the remaining speakers are defined as secondary speakers. In the example shown in FIG. 1, the speaker 101 (1) operates as the primary speaker, and speakers 101 (2) -101 (N) operates as secondary speakers. In some embodiments, these speakers may be connected in sequence in a wire or wireless way. In some examples, each secondary speaker may directly or indirectly communicate with the primary speaker. In some examples, the speakers may be grouped together via some communication protocols, such as Bluetooth, TCP / IP, Wi-Fi, etc. Although FIG. 1 shows that each speaker has two built-in microphones 102, it can be understood that each speaker may be equipped with more or less built-in microphones as required. That is, each speaker may have at least one built-in microphone. Although FIG. 1 exemplarily shows a symmetrical loudspeaker arrangement around a listening spot 103 and an orientation of ambient noise 104, it can be understood that in practical applications, there may be a variety of irregular or asymmetric speaker arrangements as well as environmental noise from various orientations.
[0018] As discussed above, when performing calibration track playback for the multi-channel speaker system, ambient noise will affect the calibration accuracy. This disclosure hereafter will provide an automatic volume control (AVC) method to compensate for variations in ambient noise which is performed before the performance of calibration track playback. FIG. 2 illustrates such a method of automatic volume control for calibration track playback in the multi-channel speaker system according to one or more embodiments of the disclosure.
[0019] In some embodiments, at step 202, a plurality of microphone input signals may be obtained from built-in microphones in the plurality of speakers. In some examples, each speaker may have one or more built-in microphones that may capture ambient noise in the environment, record sound data and output a microphone input signal for the speaker based on the recorded sound data. The skilled person in the art can understand that the recorded data of built-in microphones may be mixed to form one microphone input signal if the speaker has more than one built-in microphone. Thus, it can be understood that at any time, one corresponding microphone input signal can be obtained for each speaker. In some examples, each microphone input signal may be output to at least one processor in the corresponding speaker for further processing. In some examples, all microphone input signals may be output to at least one processor in the primary speaker for further processing. The processor may be any technically feasible hardware unit configured to process data and execute software applications, including without limitation, a central processing unit (CPU) , a microcontroller unit (MCU) , an application specific integrated circuit (ASIC) , a digital signal processor (DSP) chip and so forth.
[0020] At S204, for each microphone input signal, an energy value may be estimated. In some examples, the energy estimation of each microphone input signal may be performed by the at least one processor of the corresponding speaker in the system. For example, the primary speaker in the system estimates the energy value based on the microphone input signal obtained from the at least one built-in microphone. Each of the secondary speakers in the system estimates an energy value based on the corresponding microphone input signal obtained from the at least one corresponding built-in microphone, and then communicates the estimated energy value to the primary speaker. In some examples, the estimation for each microphone input signal may be all performed by the at least one processor of the primary speaker in the system.
[0021] At S206, interesting energy values may be selected from the estimated energy values. The noise source may be located anywhere in the environment where the speaker system is located, and the distance between the noise source and each speaker in the system may be different. Therefore, the energy value of the noise signal captured by the microphone in each speaker will be very different. It can be understood that the energy value of noise signals captured by microphones in some speakers close to the noise source is larger, while the energy value of signals captured by microphones in speakers far away from the noise source is smaller. That is to say, those speakers close to the noise source will have a major negative impact on the signal-to-noise ratio of the calibration signal in the subsequent calibration process (that is, the process of calibration track playback) . The selection step here aims to select these speakers by selecting the interesting energy values so as to calculate the calibrated volume based on the energy estimation of the signals for these speakers.
[0022] In some embodiments, the step of selecting interesting energy values from the energy values may comprise ranking the energy values from largest to smallest to form an energy list, and selecting a predetermined number of energy values starting from the top of the energy list. For example, if there are N speakers in the system, a range of the predetermined number may be from 2 to N.
[0023] In some embodiments, the step of selecting interesting energy values from the energy values may comprise ranking the energy values from largest to smallest to form an energy list, removing those energy values that are much smaller than the highest energy value in the list, and using the remaining energy values in the list as the selected energy values. In some examples, if the difference between the highest energy value and an energy value is more than a threshold, then the energy value may be determined as the energy value being much smaller than the highest energy value. It can be understood that the threshold may be predetermined according to general experience of the skilled person in the art according to different system requirements. In some examples, if a ratio of an energy value to the highest energy value is below a percentage threshold, then the energy value may be determined as the energy value being much smaller than the highest energy value. It can be understood that the percentage threshold may be predetermined according to general experience of the skilled person in the art according to system design requirements.
[0024] By the above selection at S206, those estimated energy values with much smaller estimated energy values can be removed. This can not only improve the accuracy of estimation, but also further reduce the amount of calculation, thus reducing the demand for system memory.
[0025] At S208, an average energy value of the selected energy values obtained from S206 may be calculated. Then, at S210, a calibrated volume for the automatic volume control may be obtained based on the average energy value. In some embodiments, the calculation of the calibrated volume for the automatic volume control may comprise comparing the average energy value to a target energy, and performing different calculations based on the comparison result. More details will be described with reference to FIG. 3.
[0026] FIG. 3 illustrates a block diagram for illustrating an exemplary process of automatic volume control (AVC) for calibration track playback in the multi-channel speaker system according to one or more embodiments of the disclosure. FIG. 3 shows the AVC process in a multi-channel speaker system in the form of signal flow. As shown in FIG. 3, there are N microphones (i.e., MIC 1 to MIC N) which correspond to N speakers in multi-channel speaker system respectively. For example, MIC 1 corresponds to the primary speaker (e.g., speaker 101 (1) ) , MICs 2-N correspond to secondary speakers (e.g., speakers 101 (2) - (N) ) . As discussed in reference to FIG. 1 and FIG. 2, it can be understood that each of MICs 1-N may represent one or more microphones, which are just illustrated for the purpose of clarity, but not for limitation. For each speaker, a microphone input signal may be obtained and energy estimation of the microphone input signal may be performed to obtain an energy value, which may be performed respectively at blocks 302 (1) -302 (N) . Although FIG. 3 shows an example in which energy estimations may be separately performed in respective speakers and then the estimated energy values for the secondary speakers are transmitted to the primary speaker for further processing, it can be understood that there is another example in which the energy estimations for all the speakers may be performed in the primary speaker.
[0027] The following will describe how to estimate the energy for each microphone input signal in detail. Assumed that the n-th microphone captured signal is expressed as xn. The microphone captured signal may be segmented into frames or segments, and then a microphone input signal including a plurality of frames or segments may be obtained. Each frame or segment may include a lot of samples. For example, the m-th frame or segment of the n-th microphone input signal may be expressed as [xn (0, m) , xn (1, m) , xn (2, m) , …, xn (L-1, m) ] , wherein L is the frame or segment length in unit of samples. The energy of the m-th frame of the n-th microphone input signal can be calculated as below.
[0028] Then, an energy buffer vector may be constructed. For example, the energy buffer vector of the n-th microphone input signal can be written as follows. En= [En (M) , En (M-1) , En (M-2) , …, En (1) ] , (2)
[0029] wherein M is the total interesting frame or segment number within a recording duration, which can be predefined according to system design requirements. In other words, the energy buffer vector is a set of estimated energy that includes estimated energy values of a predefined number of frames or segments. The recording duration is representative of a time duration for recording ambient sound via microphones.
[0030] Then, the energy of the n-th microphone input signal can be written as follows.
[0031] For each speaker, an energy value for the microphone input signal may be estimated as above. Return to FIG. 3, at block 304, a selection may be performed to select interesting energy values from all the estimated energy values. In some examples, the energy values may be ranked from largest to smallest to form an energy list, and the top n energy values in the energy list may be selected as interesting energy values, such as E_Sum1, E_Sum2, …, E_Sumn. For example, if there are N speakers in the system, a range of n may be predetermined from 2 to N.
[0032] It can be understood that there are alternative methods to select interesting energy values. For example, the energy values may be ranked from largest to smallest to form an energy list, and those energy values that are much smaller than the highest energy value in the list are removed. Then, the remaining energy values in the list are selected as the interesting energy values. These methods are similar to what we have discussed in the description relating S206.
[0033] At block 306, the average E_ave of the selected energy values can also be calculated. For example, the average of selected energy values can be written as below. E_ave= (E_Sum1+ E_Sum2+…+E_Sumn) / n, (4)
[0034] At block 308, the average energy value E_ave is compared to a target energy Etar. The target energy Etar is a preset energy threshold, which represents the energy value of noise signals in an ideal target environment. If the average energy value E_ave is less than or equal to the target energy Etar, a first calculation is performed at block 310. If the average energy value E_ave is larger than the target energy Etar, a second calculation is performed at block 312.
[0035] The first calculation may comprise comparing the average energy value E_ave to a lower limit and finding the maximum between the average energy value and the lower limit. Then, the first calculation may further comprise using the maximum and the target energy to calculate the calibrated volume according to the following calculation expression (5) .
[0036] The second calculation may comprise comparing the average energy value E_ave to an upper limit and finding the minimum between the average energy value and the upper limit. Then, the second calculation may further comprise using the minimum and the target energy to calculate the calibrated volume according to the following calculation expression (5) .
[0037] The calibration volume calculation is defined as below which also shows the corresponding dB conversion.
[0038] wherein the parameter lowerLimit represents a preset lower limit of energy, the parameter upperLimit parameter represents a preset upper limit of energy. The lower limit and upper limit are used to further refine the calculation of calibration volume so as to make the control of calibration volume more accurate and more user-friendly. For example, if the noise in the actual environment is lower than that in the ideal target environment, the accuracy of calculation can be guaranteed by introducing the lower limit. If the noise in the actual environment is higher than that in the ideal target environment and it is necessary to increase the calibration volume, the upper limit can be introduced to control the increased part so as not to make the user feel uncomfortable with the calibrated volume.
[0039] Then, at block 314, the calibrated volume may be obtained based on the calculation performed at block 310 or block 312. In some embodiments, at block 316, the calibrated volume may be applied to volume setting configuration in the primary speaker. When performing subsequent calibration track playback, the primary speaker may control the volume for the calibration track playback based on the volume setting configuration.
[0040] In some embodiments, the automatic volume control method for calibration track playback may further comprise determining whether the calibrated volume will be applied or not.
[0041] In some examples, a recording duration representative of a time duration for recording ambient sound by microphones may be determined. The recording is started by a trigger from the user to enter the calibration process and ended by another trigger from the user for a next operation.
[0042] For example, users may open an APP for the multi-channel speaker system and group the speakers together via a communication protocol. When speakers are grouped successfully, a calibration key is enabled and allows users to enter a calibration process. Once users enter into a calibration page, microphones start to record ambient sound automatically without tips and the above AVC method is triggered to calculate the calibrated volume. Users are unaware of this behavior.
[0043] The recording duration depends on the users’ residence duration at the calibration page before triggering a next calibration step. A time threshold is predefined according to the system design and is used to decide whether the calibrated volume will be applied or not.
[0044] If the recording duration is less than the time threshold, then a default volume that is pre-stored in the volume setting configuration in the primary speaker may be applied. That is, the primary speaker may use the default volume for the calibration track playback, when subsequent calibration track playback is performed.
[0045] If the recording duration is larger than or equal to the time threshold, then the calibrated volume may be applied. That is, the calibrated volume may be applied to the volume setting configuration in the primary speaker. The primary speaker may control the volume for the calibration track playback based on the calibrated volume in the volume setting configuration when the subsequent calibration track playback is performed.
[0046] The trigger and use of the above AVC method proposed in this disclosure are hidden from users. Users do not need to make additional complicated settings or operations when using the system APP, so it will bring users a more friendly experience.
[0047] It can be recognized that the discussed method above may be realized by at least one processor included in one or more speakers in the multi-channel speaker system. For example, the multi-channel speaker system may comprise a memory and at least one processor. The memory may be configured to store computer-readable instructions or codes for causing the at least one processor to carry out the above said aspects of the present disclosure. The processor may be any technically feasible hardware unit configured to process data and execute software applications, including without limitation, a central processing unit (CPU) , a microcontroller unit (MCU) , an application specific integrated circuit (ASIC) , a digital signal processor (DSP) chip and so forth.
[0048] The descriptions of the various embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.
[0049] In the preceding, reference is made to embodiments presented in this disclosure. However, the scope of the present disclosure is not limited to specific described embodiments. Instead, any combination of the preceding features and elements, whether related to different embodiments or not, is contemplated to implement and practice contemplated embodiments. Furthermore, although embodiments disclosed herein may achieve advantages over other possible solutions or over the prior art, whether or not a particular advantage is achieved by a given embodiment is not limiting of the scope of the present disclosure. Thus, the preceding aspects, features, embodiments and advantages are merely illustrative and are not considered elements or limitations of the appended claims except where explicitly recited in a claim (s) .
[0050] Aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc. ) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit, ” “module” , “unit” or “system. ”
[0051] The present disclosure may be a system, a method, and / or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present disclosure.
[0052] The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM) , a read-only memory (ROM) , an erasable programmable read-only memory (EPROM or Flash memory) , a static random access memory (SRAM) , a portable compact disc read-only memory (CD-ROM) , a digital versatile disk (DVD) , a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable) , or electrical signals transmitted through a wire.
[0053] Computer readable program instructions described herein can be downloaded to respective calculating / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers.
[0054] Aspects of the present disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems) , and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.
[0055] These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0056] The flowchart and block diagrams in the drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function (s) . In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flowchart illustration, and combinations of blocks in the block diagrams and / or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
[0057] While the foregoing is directed to embodiments of the present disclosure, other and further embodiments of the disclosure may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
[0058] Clause 1. In some embodiments, a method of automatic volume control for calibration track playback in a multi-channel speaker system, wherein the multi-channel speaker system includes a plurality of speakers each having at least one built-in microphone, the method comprising: obtaining microphone input signals from built-in microphones in the plurality of speakers; estimating energy values for the microphone input signals; selecting interesting energy values from the energy values; obtaining an average energy value of the selected energy values; and calculating a calibrated volume for the automatic volume control based on the average energy value.
[0059] Clause 2. The method according to clause 1, wherein the selecting interesting energy values from the energy values comprises: ranking the energy values from largest to smallest to form an energy list; and selecting a predetermined number of energy values starting from the top of the energy list.
[0060] Clause 3. The method according to clause 1, wherein the selecting interesting energy values from the energy values comprises: ranking the energy values from largest to smallest to form an energy list; removing those energy values that are much smaller than the highest energy value in the list; and using the remaining energy values in the list as the selected energy values.
[0061] Clause 4. The method according to any one of clauses 1-3, wherein the calculating the calibrated volume for the automatic volume control based on the average energy value comprises: comparing the average energy value to a target energy; performing a first calculation to obtain the calibrated volume in response to the average energy value being less than or equal to the target energy; and performing a second calculation to obtain the calibrated volume in response to the average energy value being larger than the target energy.
[0062] Clause 5. The method according to any one of clauses 1-4, the first calculation is associated with the target energy and a maximum between the average energy value and a lower limit; and the second calculation is associated with the target energy and a minimum between the average energy value and an upper limit.
[0063] Clause 6. The method according to any one of clauses 1-5, further comprises: determining a recording duration which is representative of a time duration for recording ambient sound; applying a default volume in response to the recording duration being less than a predetermined time threshold; and applying the calibrated volume in response to the recording duration being larger than or equal to the predetermined time threshold.
[0064] Clause 7. The method according to any one of clauses 1-6, wherein the recording is started by a user triggering to enter a calibration page on a system application, and is ended by the user triggering a next operation.
[0065] Clause 8. In some embodiments, a multi-channel speaker system comprising: a plurality of speakers each having at least one built-in microphone; a memory configured to store instructions; and at least one processor configured to perform the instructions to: obtain microphone input signals from built-in microphones in the plurality of speakers; estimate energy values for the microphone input signals; select interesting energy values from the energy values; obtain an average energy value of the selected energy values; and calculate a calibrated volume for the automatic volume control based on the average energy value.
[0066] Clause 9. The multi-channel speaker system according to clause 8, wherein the at least one processor is further configured to: rank the energy values from largest to smallest to form an energy list; and select a predetermined number of energy values starting from the top of the energy list.
[0067] Clause 10. The multi-channel speaker system according to clause 8, wherein the at least one processor is further configured to: rank the energy values from largest to smallest to form an energy list; remove those energy values that are much smaller than the highest energy value in the list; and use the remaining energy values in the list as the selected energy values.
[0068] Clause 11. The multi-channel speaker system according to any one of clauses 8-10, wherein the at least one processor is further configured to: compare the average energy value to a target energy; perform a first calculation to obtain the calibrated volume in response to the average energy value being less than or equal to the target energy; and perform a second calculation to obtain the calibrated volume in response to the average energy value being larger than the target energy.
[0069] Clause 12. The multi-channel speaker system according to any one of clauses 8-11, wherein the first calculation is associated with the target energy and a maximum between the average energy value and a lower limit; and the second calculation is associated with the target energy and a minimum between the average energy value and an upper limit.
[0070] Clause 13. The multi-channel speaker system according to any one of clauses 8-12, wherein the at least one processor is further configured to: determining a recording duration which is representative of a time duration for recording ambient sound; applying a default volume in response to the recording duration being less than a predetermined time threshold; and applying the calibrated volume in response to the recording duration being larger than or equal to the predetermined time threshold.
[0071] Clause 14. The multi-channel speaker system according to any one of clauses 8-13, wherein the recording is started by a user triggering to enter a calibration page on a system application, and is ended by the user triggering a next operation.
[0072] Clause 15. In some embodiments, a non-transitory computer-readable storage medium comprising computer-executable instructions which, when executed by a computer, causes the computer to perform the method according to any one of claims 1-7.
Claims
1.A method of automatic volume control for calibration track playback in a multi-channel speaker system, wherein the multi-channel speaker system includes a plurality of speakers each having at least one built-in microphone, the method comprising:obtaining microphone input signals from built-in microphones in the plurality of speakers;estimating energy values for the microphone input signals;selecting interesting energy values from the energy values;obtaining an average energy value of the selected energy values; andcalculating a calibrated volume for the automatic volume control based on the average energy value.2.The method according to claim 1, wherein the selecting interesting energy values from the energy values comprises:ranking the energy values from largest to smallest to form an energy list; andselecting a predetermined number of energy values starting from the top of the energy list.3.The method according to claim 1, wherein the selecting interesting energy values from the energy values comprises:ranking the energy values from largest to smallest to form an energy list;removing those energy values that are much smaller than the highest energy value in the list; andusing the remaining energy values in the list as the selected energy values.4.The method according to any one of claims 1-3, wherein the calculating the calibrated volume for the automatic volume control based on the average energy value comprises:comparing the average energy value to a target energy;performing a first calculation to obtain the calibrated volume in response to the average energy value being less than or equal to the target energy; andperforming a second calculation to obtain the calibrated volume in response to the average energy value being larger than the target energy.5.The method according to claim 4, whereinthe first calculation is associated with the target energy and a maximum between the average energy value and a lower limit; andthe second calculation is associated with the target energy and a minimum between the average energy value and an upper limit.6.The method according to any one of claims 1-5, further comprises:determining a recording duration which is representative of a time duration for recording ambient sound;applying a default volume in response to the recording duration being less than a predetermined time threshold; andapplying the calibrated volume in response to the recording duration being larger than or equal to the predetermined time threshold.7.The method according to claim 6, wherein the recording is started by a user triggering to enter a calibration page on a system application, and is ended by the user triggering a next operation.8.A multi-channel speaker system comprising:a plurality of speakers each having at least one built-in microphone;a memory configured to store instructions; andat least one processor configured to perform the instructions to:obtain microphone input signals from built-in microphones in the plurality of speakers;estimate energy values for the microphone input signals;select interesting energy values from the energy values;obtain an average energy value of the selected energy values; andcalculate a calibrated volume for the automatic volume control based on the average energy value.9.The multi-channel speaker system according to claim 8, wherein the at least one processor is further configured to:rank the energy values from largest to smallest to form an energy list; andselect a predetermined number of energy values starting from the top of the energy list.10.The multi-channel speaker system according to claim 8, wherein the at least one processor is further configured to:rank the energy values from largest to smallest to form an energy list;remove those energy values that are much smaller than the highest energy value in the list; anduse the remaining energy values in the list as the selected energy values.11.The multi-channel speaker system according to any one of claims 8-10, wherein the at least one processor is further configured to:compare the average energy value to a target energy;perform a first calculation to obtain the calibrated volume in response to the average energy value being less than or equal to the target energy; andperform a second calculation to obtain the calibrated volume in response to the average energy value being larger than the target energy.12.The multi-channel speaker system according to claim 11, whereinthe first calculation is associated with the target energy and a maximum between the average energy value and a lower limit; andthe second calculation is associated with the target energy and a minimum between the average energy value and an upper limit.13.The multi-channel speaker system according to any one of claims 8-12, wherein the at least one processor is further configured to:determining a recording duration which is representative of a time duration for recording ambient sound;applying a default volume in response to the recording duration being less than a predetermined time threshold; andapplying the calibrated volume in response to the recording duration being larger than or equal to the predetermined time threshold.14.The multi-channel speaker system according to claim 13, wherein the recording is started by a user triggering to enter a calibration page on a system application, and is ended by the user triggering a next operation.15.A non-transitory computer-readable storage medium comprising computer-executable instructions which, when executed by a computer, causes the computer to perform the method according to any one of claims 1-7.