Automatic delay calibration method for smart speaker system, device, and storage medium
By combining VAD and peak velocity search algorithms, the delay parameters are dynamically adjusted, solving the problem of speaker unit time alignment in multi-channel speaker systems. This achieves accurate sound field reproduction and improved user experience, adapts to different room acoustic environments, and has real-time adaptive calibration and machine learning optimization capabilities.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-04-11
- Publication Date
- 2026-04-02
AI Technical Summary
The time alignment problem between speaker units in a multi-channel speaker system leads to inaccurate sound field positioning. Existing technologies struggle to achieve precise time alignment, especially in coordinating the subwoofer with other channels. Furthermore, automatic calibration methods fail to effectively adapt to different room acoustic environments.
Employing Voice Activity Detection (VAD) technology and peak rate search algorithm, combined with adaptive algorithms, the system automatically calculates and calibrates the delay time of each speaker unit, dynamically adjusts delay parameters to achieve precise time alignment, optimizes the calibration process through machine learning, and integrates adaptive filters and psychoacoustic models to adapt to different environments.
It achieves precise time alignment of the multi-channel speaker system, improves sound field reproduction, enhances user experience, and adapts to different room acoustic environments through real-time adaptive calibration and machine learning optimization, thereby improving the system's intelligence and personalization performance.
Smart Images

Figure CN2025088545_02042026_PF_FP_ABST
Abstract
Description
Delay automatic calibration method, device and storage medium of smart sound box system
[0001] The present application claims priority to the Chinese patent application No. 202411351061.2, filed on September 26, 2024, and entitled "Delay automatic calibration method, device and storage medium of smart sound box system", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] The present application relates to the field of audio technology, and particularly relates to a delay automatic calibration method, device and storage medium of a smart sound box system. BACKGROUND
[0003] The multi-channel sound box systems on the market generally have a time alignment problem. Due to the physical distance difference between the speaker units and the inconsistency of the signal processing delay, the time of sound reaching the listening position is deviated. This time deviation will cause inaccurate sound field positioning and reduced sound restoration, which seriously affects the user's listening experience. The prior art is difficult to achieve accurate time alignment, especially in the coordination of the bass cannon and other channels. The traditional time alignment method usually relies on manual measurement and adjustment, which is not only time-consuming and laborious, but also difficult to achieve the desired accuracy. Although some automatic calibration systems can improve the time alignment problem to some extent, they often perform poorly when processing low-frequency signals, especially in the coordination of the bass cannon and other channels. This is because the period of low-frequency signals is long and the phase characteristics are complex, making it difficult to accurately detect the signal arrival time. In addition, the existing automatic calibration methods often do not consider the influence of different room acoustic environments, resulting in unsatisfactory results in actual applications. Although frequency response correction, dynamic range control and other audio processing technologies can improve some sound quality problems, they cannot fundamentally solve the sound field positioning and phase problems caused by time alignment. Therefore, there is an urgent need for an intelligent calibration method that can accurately calculate the delay time of each channel and adapt to different environments to improve the overall performance and user experience of multi-channel sound box systems. SUMMARY
[0004] The present application provides a delay automatic calibration method, device and storage medium of a smart sound box system, which automatically calculates and calibrates the delay time of each speaker unit in a multi-channel system using voice activity detection (VAD) technology and peak speed search algorithm, can accurately calculate the delay time of the bass cannon, realize accurate time alignment with other channels, and dynamically adjust the delay parameters according to different room acoustic environments and listening positions through the use of adaptive algorithm to achieve the best sound field restoration effect.
[0005] In a first aspect, the embodiments of the present application provide a delay automatic calibration method of a smart sound box system, comprising:
[0006] initializing the smart speaker system and detecting the environment to preliminarily configure system parameters;
[0007] exciting target sound channels and playing target test signals, the target test signals including a first test signal for testing a main sound channel and a second test signal for testing a subwoofer;
[0008] locating the first test signal based on a VAD voice activity detection algorithm and determining the start and end of the first test signal, identifying the time difference from emission to detection of the first test signal as the delay time of the main sound channel;
[0009] locating the arrival time of the second test signal based on a peak speed search algorithm and identifying the time difference from emission to detection of the second test signal as the delay time of the subwoofer;
[0010] delay time calibration of the subwoofer with respect to each main sound channel according to the delay time of the main sound channel and the delay time of the subwoofer, and dynamic adjustment of the delay calibration parameters of each sound channel according to the delay time calibration amount, so as to realize precise time alignment of the subwoofer with respect to the main sound channel.
[0011] Preferably, the initializing the smart speaker system and detecting the environment to preliminarily configure system parameters comprises:
[0012] starting the smart speaker system and entering a calibration mode;
[0013] playing white noise or a sweep signal containing various frequencies, and collecting the acoustic response of the room through a microphone array;
[0014] performing acoustic characteristic analysis on the collected acoustic signals using fast Fourier transform to obtain an environmental analysis result of the room, the environmental analysis result including a frequency response curve and a reverberation time parameter;
[0015] preliminarily configuring system parameters according to the environmental analysis result, the preliminary configuration operation including, when it is detected that the reverberation time of the room is greater than a reverberation time threshold, correspondingly increasing the time window length to capture a longer sound segment for subsequent processing.
[0016] Preferably, the performing acoustic characteristic analysis on the collected signals using fast Fourier transform comprises:
[0017] performing FFT fast Fourier transform on the collected acoustic signals x(n) to convert the collected time domain signals into frequency domain signals, obtaining the energy distribution of the signals at each frequency, the FFT implementation formula being as follows: X(k) = Σ[n=0 to N-1] x(n) * e^(-j2πkn / N);
[0018] Calculate the power spectral density: P(k) = |X(k)|^2 / N;
[0019] The energy decay curve is calculated by using Schroeder integration method to obtain the energy decay of the room at different frequencies, the target linear region is extracted on the energy decay curve, and the target linear region is linearly fitted, and the time required for energy decay of 60 dB is calculated according to the straight line obtained by fitting to estimate the reverberation time T60;
[0020] Wherein, X(k) represents the output frequency domain signal, N is the number of sampling points, k is the frequency index, |X(k)| represents the amplitude of the kth frequency component, P(k) represents the power spectral density of the kth frequency component, and the range of the target linear region is-5dB to-35dB.
[0021] As preferred, the VAD-based voice activity detection algorithm locates the first test signal and determines the start and end of the first test signal, identifies the time difference from the emission to the detection of the first test signal, and obtains the delay time of the main channel, including:
[0022] Each main channel in the intelligent sound box system is sequentially excited, and the first test signal is played, the first test signal includes a target pulse signal or a preset frequency sinusoidal envelope signal, and the preset frequency range covers 200Hz-20kHz;
[0023] The input first test signal is divided into a plurality of short frames according to a preset length;
[0024] The short-time energy and zero-crossing rate characteristics of each frame signal are obtained according to the divided short frames, and the obtained short-time energy and zero-crossing rate are compared with the preset energy threshold and the preset zero-crossing rate threshold to determine whether the frame signal is a voice activity;
[0025] If the short-time energy and the zero-crossing rate both exceed the corresponding threshold, the determination result is that the frame signal is a voice activity, so as to determine the start time of the test signal;
[0026] If the short-time energy and the zero-crossing rate do not exceed the corresponding threshold, the determination result is that the frame signal is a non-voice activity;
[0027] If the determination result is a false result, the smoothing algorithm is used to eliminate the false result.
[0028] As preferred, the short-time energy and zero-crossing rate characteristics of each frame signal obtained according to the divided short frames include:
[0029] The short-time energy of each frame signal is calculated, i.e. the sum of squares of signal samples, for evaluating the intensity of the signal. The short-time energy E of each frame is calculated according to the following formula: E = Σ(x[n]^2), n = 0, 1,..., N-1,
[0030] The zero-crossing rate ZCR of each frame signal is calculated by calculating the difference between the sign functions of adjacent sample points and taking the absolute value: ZCR = (1 / 2)*Σ|sgn(x[n])-sgn(x[n-1])|, n = 1, 2,..., N-1,
[0031] where sgn() is the sign function, x[n] is the signal sample, and N is the frame length.
[0032] As preferred, the peak-picking algorithm is used to locate the arrival time of the second test signal, and the time difference between the emission and detection of the second test signal is identified as the delay time of the subwoofer, which includes:
[0033] The second test signal is played, which is a sweep sine wave signal in the range of 20-200Hz;
[0034] The peak-picking algorithm is used to locate the second test signal, and the collected signal is pre-processed for signal denoising and filtering;
[0035] A threshold value for identifying valid peaks is set: threshold = μ + k*σ, where μ is the signal mean, σ is the standard deviation, and k is the adjustment coefficient;
[0036] The signal is scanned using the sliding window technique, and the window size W is set. For each sample point i, if x[i] > threshold and x[i] = max(x[i-W / 2:i+W / 2]), it is marked as a potential peak, where x[i] represents the value of the i-th sample point of the signal;
[0037] The parabolic interpolation is used to accurately locate the peak position. For each potential peak point i, the adjacent points i-1 and i+1 to the left and right of the peak point i are queried, and a parabola is fitted according to the adjacent points and the potential peak point.
[0038] The time interval between adjacent peaks is calculated to identify the arrival time of the second test signal. If the interval is close to the expected signal period, the first valid peak is confirmed as the signal arrival time.
[0039] As preferred, the delay time calibration of the subwoofer with each main channel is performed according to the delay time of the main channel and the delay time of the subwoofer, and the delay calibration parameters of each channel are dynamically adjusted according to the delay time calibration amount, which includes:
[0040] selecting a channel with the longest delay time as a reference channel, calculating delay difference values of other channels relative to the reference channel, and performing a first delay adjustment according to the delay difference values;
[0041] calculating the phase difference between the subwoofer and the main channel: Δφ = φ_sub - φ_main;
[0042] converting the calculated phase difference into a time delay: Δt = Δφ / (2π * f_crossover);
[0043] performing a second delay adjustment according to the time delay, thereby ensuring smooth phase transition of the subwoofer and the main channel near the crossover point;
[0044] where Δφ represents the phase difference, φ_sub represents the phase of the subwoofer, φ_main represents the phase of the main channel, Δt represents the time delay, and f_crossover is the crossover point frequency.
[0045] As preferred, it further comprises:
[0046] based on an adaptive calibration mechanism, dynamically adjusting parameters according to different room acoustic environments, periodically performing rapid calibration checks during system operation, further comprising:
[0047] using the background music or environmental sound being played as a calibration signal, and extracting the signal characteristics of each channel from the mixed signal through blind source separation technology;
[0048] using ICA algorithm to separate the multi-channel mixed signal: X = AS, where X is the observed mixed signal, A is the mixing matrix, and S is the source signal;
[0049] using FastICA algorithm to estimate the separation matrix W and iteratively optimize the parameters until convergence, where S ≈ WX;
[0050] After obtaining the separated channel signals, time delay estimation is performed, and the delay calibration parameters are updated according to the estimation results;
[0051] If a change in the delay calibration parameters is detected, the user is prompted whether a complete calibration process is needed.
[0052] As preferred, it further comprises:
[0053] based on user delay adjustment behavior feedback, using machine learning to further optimize the automatic calibration process, including:
[0054] defining the state space S as the current delay parameter setting;
[0055] defining the action space A as the possible delay adjustment operations;
[0056] define a reward function R, giving positive or negative rewards according to whether the user accepts the automatic calibration result or makes manual adjustment;
[0057] update the value function using the Q-learning algorithm: Q(s, a)←Q(s, a)+α[r+γ*max(Q(s', a'))-Q(s, a)];
[0058] select the optimal calibration strategy according to the updated Q value;
[0059] wherein α is the learning rate, γ is the discount factor, s and a are the current state and action respectively, and s' is the next state.
[0060] As preferred, it further comprises:
[0061] establish a room acoustic characteristic database for the smart speaker system of multiple rooms, the acoustic characteristics including room size, reverberation time and frequency response;
[0062] use the Raft consensus algorithm and version vector and the anti-entropy process based on the distributed consistency algorithm to realize the synchronization of calibration data of multiple devices, thereby ensuring the collaborative work of multiple rooms and multiple devices.
[0063] As preferred, it further comprises:
[0064] integrate multiple preset audio processing algorithms to optimize the audio, further comprising:
[0065] compensate for the room acoustic response to the frequency response through an adaptive filter to realize room response correction;
[0066] configure a multi-threshold compressor to apply different compression ratios at different volumes to ensure the listening experience at low and high volumes;
[0067] introduce a psychoacoustic model to adjust the delay time according to the masking effect and critical bandwidth characteristics of the human ear, perform STFT short-time Fourier transform on the obtained signal to obtain a time-frequency spectrum X(k, m), calculate the energy of each frequency band k: E(k) = Σ|X(k, m)|^2, m = 1, 2,..., M, weight the delay sensitivity of different frequency bands according to the preset loudness curve standard, apply an equal loudness filter H(k) to each frequency band E'(k) = E(k)*H(k), and adjust the delay time within the critical bandwidth to minimize the phase difference, wherein M represents the window function length or frame number of the short-time Fourier transform.
[0068] As preferred, it further comprises:
[0069] the steps of performance evaluation and optimization of the smart speaker system, comprising:
[0070] Calculate the cross-correlation function of the reference signal x(n) and each channel output signal y(n): R_xy(τ) = Σx(n)y(n+τ), n = 0, 1,..., N-1,
[0071] Find the peak position of the cross-correlation function, which corresponds to the value of τ, that is, the time offset: τmax = argmax(R_xy(τ));
[0072] Compare the actual time offset calculated with the theoretical offset to evaluate the calibration accuracy: Error = |τmax-τtheory|;
[0073] Where N represents the length of the signal, that is, the number of sampling points, τmax is the actual time offset, and τtheory is the theoretical offset.
[0074] In a second aspect, an embodiment of the present application provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the following steps:
[0075] Initialize the smart sound box system and detect the environment to preliminarily configure system parameters;
[0076] Excite the target sound channel and play a target test signal, which includes a first test signal for testing the main sound channel and a second test signal for testing the subwoofer;
[0077] Locate the first test signal based on a VAD voice activity detection algorithm and determine the start and end of the first test signal, identify the time difference from the emission to the detection of the first test signal, and obtain the delay time of the main sound channel;
[0078] Locate the arrival time of the second test signal based on a peak speed search algorithm, identify the time difference from the emission to the detection of the second test signal as the delay time of the subwoofer;
[0079] According to the delay time of the main sound channel and the delay time of the subwoofer, the delay time of the subwoofer is calibrated with each main sound channel, and the delay calibration parameters of each sound channel are dynamically adjusted according to the delay time calibration amount, so as to realize the precise time alignment of the subwoofer and the main sound channel.
[0080] In a third aspect, an embodiment of the present application provides a computer readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the following steps:
[0081] Initialize the smart sound box system and detect the environment to preliminarily configure system parameters;
[0082] excite target sound channels and play target test signals, the target test signals including a first test signal for testing a main sound channel and a second test signal for testing a subwoofer;
[0083] based on a VAD voice activity detection algorithm, locating the first test signal and determining the start and end of the first test signal, identifying the time difference from emission to detection of the first test signal as the delay time of the main sound channel;
[0084] based on a peak speed search algorithm, locating the arrival time of the second test signal, and identifying the time difference from emission to detection of the second test signal as the delay time of the subwoofer;
[0085] According to the delay time of the main sound channel and the delay time of the subwoofer, the subwoofer is calibrated with each main sound channel in terms of delay time, and the delay calibration parameters of each sound channel are dynamically adjusted according to the delay calibration amount, so as to realize accurate time alignment of the subwoofer and the main sound channel.
[0086] For the prior art, the present application has the following beneficial effects:
[0087] The present application proposes a delay automatic calibration method for an intelligent sound box system, which realizes accurate time alignment of a multi-channel audio system by innovatively combining voice activity detection (VAD) technology and a peak speed search algorithm. This scheme not only solves the problem of low-frequency signal delay that traditional technology cannot handle, especially making breakthrough progress in the coordination of subwoofers and other sound channels, but also introduces a real-time adaptive calibration mechanism that can dynamically adjust parameters according to different room acoustic environments. The system integrates advanced audio processing technologies such as room correction, psychoacoustic models, and dynamic range optimization, comprehensively improving sound restoration quality. Its modular design and open API interface enhance the system's expandability and compatibility, providing the possibility of functional customization for third-party developers. By introducing machine learning algorithms for continuous optimization, combined with user feedback and A / B testing, the system can continuously improve performance. In terms of security and privacy protection, end-to-end encryption and differential privacy technology are used to fully protect user data security. In addition, this scheme also considers multi-room, multi-device coordination and advanced user functions, providing a comprehensive solution. These innovations make this technology important in improving the performance of multi-channel sound bar systems, enhancing user experience, and promoting industry technology progress, bringing new technical breakthroughs to the field of intelligent sound boxes, and is expected to be widely used in the market.
[0088] The present application ensures that all channels can be accurately aligned during playback by precise time calibration of the main channel and subwoofer, improving sound quality experience; automatically configures system parameters according to the acoustic characteristics of different rooms, so that the sound system can adapt to various listening environments and optimize sound performance; dynamically adjusts delay calibration parameters through periodic rapid calibration checks and real-time signal processing based on blind source separation technology to address environmental changes or equipment aging issues; uses machine learning algorithms to further optimize the automatic calibration process based on user feedback, making the system more intelligent and personalized; establishes a room acoustic characteristics database and synchronizes calibration data of multiple devices through a distributed consistency algorithm to achieve seamless collaboration between multiple rooms and devices; integrates multiple preset audio processing algorithms such as adaptive filters, multi-threshold compressors, and psychoacoustic models to further improve audio quality and listening experience; evaluates calibration accuracy by calculating the cross-correlation function of the reference signal and the output signal, and optimizes system performance based on the comparison results of the actual time offset and the theoretical offset. BRIEF DESCRIPTION OF DRAWINGS
[0089] Figure 1 is a schematic diagram of an embodiment of a computer device in the present embodiment;
[0090] Figure 2 is a flowchart of the delay automatic calibration method of the smart soundbar system in the present embodiment;
[0091] Figure 3 is a schematic diagram of the steps of initializing the smart soundbar system and detecting the environment to preliminarily configure system parameters in S1 in the present embodiment. DETAILED DESCRIPTION
[0092] To make the purposes, technical solutions and advantages of the present embodiment clearer, the technical solutions of the present disclosure will be described clearly and completely below in conjunction with the drawings. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present disclosure.
[0093] The terms "first", "second", "third", "fourth" and the like in the description and in the claims of the present application, and above-described drawings, if any, are used to distinguish between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the use of the terms so construed can be interchanged, under appropriate circumstances, and that the embodiments described herein can be carried out in other sequences than the one illustrated or described herein. Furthermore, the terms "comprising", "including", "containing", and any other similar words, are intended to be used as open-ended terms meaning that they include but are not limited to the listed items or steps. The phrase "consisting of" is intended to be used as an open-ended transition phrase that also permits items or steps that are inherent in the given claim. The phrase "consisting essentially of" is intended to be used as an open-ended transition phrase that permits items or steps that do not materially affect the basic and novel characteristics of the given claim.
[0094] The embodiments of the present application provide a delay automatic calibration method, device and storage medium of a smart sound box system, which effectively solve the problem of re-opening capture of an audio input player when mode switching through a persistent audio capture session and a dynamic audio processing pipeline.
[0095] The delay automatic calibration method of the smart sound box system in one of the embodiments of the present application can run on a terminal device or a server. The terminal device can be a local terminal device. When the delay automatic calibration method of the smart sound box system runs on the server, the method can be implemented and executed based on a cloud interaction system, wherein the cloud interaction system includes a server and a client device.
[0096] The embodiments of the present application further provide a computer device including a processor and a memory, the memory storing machine executable instructions capable of being executed by the processor, and the processor executing the machine executable instructions. The computer device can be a server or a terminal device.
[0097] Referring to FIG. 1, the computer device includes a processor 100 and a memory 101, the memory 101 storing machine executable instructions capable of being executed by the processor 100, and the processor 100 executing the machine executable instructions.
[0098] Further, the computer device shown in FIG. 1 further includes a bus 102 and a communication interface 103, and the processor 100, the communication interface 103 and the memory 101 are connected through the bus 102.
[0099] The memory 101 can include a high-speed random access memory (RAM) and can also include a non-volatile memory, such as at least one disk memory. The communication connection between the system network element and at least one other network element is realized through at least one communication interface 103 (which can be wired or wireless), and the Internet, a wide area network, a local area network, a metropolitan area network, etc. can be used. The bus 102 can be an ISA bus, a PCI bus, or an EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bidirectional arrow is shown in Figure 1, but it does not mean that there is only one bus or one type of bus.
[0100] The processor 100 can be an integrated circuit chip with signal processing capability. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware in the processor 100 or the instructions in the form of software. The above processor 100 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. Each method, step and logic block disclosed in the embodiment can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in conjunction with the embodiment can be directly embodied as a hardware code processor for execution, or a combination of hardware and software modules in the code processor for execution. The software module can be located in a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an electrically erasable programmable memory, a register, or other mature storage media in the art. The storage medium is located in the memory 101, and the processor 100 reads the information in the memory 101, as shown in Figures 2-3, and the hardware thereof is combined to complete the following steps:
[0101] S1: initializing the intelligent sound box system and detecting the environment to preliminarily configure system parameters, specifically including the following:
[0102] S11: starting the intelligent sound box system and entering the calibration mode, ensuring that the system can normally operate and preparing for the subsequent calibration process;
[0103] S12: Play white noise or sweep signal containing various frequencies, collect the acoustic response of the room through the microphone array, and use the built-in microphone array to analyze the acoustic characteristics of the surrounding environment;
[0104] S13: Perform acoustic characteristic analysis on the collected acoustic signal using Fast Fourier Transform (FFT), and obtain the environmental analysis result of the room, which includes the frequency response curve and the reverberation time parameter;
[0105] S14: Preliminary configuration of system parameters based on the environmental analysis result, including increasing the time window length to capture longer sound segments for subsequent processing when the room's reverberation time is greater than the reverberation time threshold; if there are obvious standing waves in some frequency bands, the system will use a more detailed analysis method in these frequency bands.
[0106] In one embodiment, the step S13 of performing acoustic characteristic analysis on the collected signal using Fast Fourier Transform (FFT) includes:
[0107] Performing FFT on the collected acoustic signal x(n) to convert the collected time-domain signal to a frequency-domain signal, obtaining the energy distribution of the signal at each frequency, and the FFT implementation formula is as follows:
[0108] X(k) = Σ [n=0 to N-1] x(n) * e^(-j2πkn / N) that is Through FFT, we can obtain the energy distribution of the signal at each frequency.
[0109] Calculate the power spectral density: P(k) = |X(k)|^2 / N; the power spectral density is the energy distribution of the signal at each frequency.
[0110] Calculate the energy decay curve using the Schroeder integration method to obtain the energy decay of the room at different frequencies, extract the target linear region on the energy decay curve, and perform linear fitting on the target linear region, and calculate the time required for energy decay of 60dB to estimate the reverberation time T60 according to the straight line obtained by fitting;
[0111] Where X(k) represents the output frequency-domain signal, N is the number of sampling points, k is the frequency index, |X(k)| represents the amplitude of the kth frequency component, P(k) represents the power spectral density of the kth frequency component, and the range of the target linear region is -5dB to -35dB.
[0112] The specific steps for estimating the reverberation time T60 in this embodiment are as follows: Calculate the energy decay curve using Schroeder integration method: Schroeder integration method is a method based on room acoustic model, which is used to calculate the energy decay curve. Through this method, we can get the energy decay of the room at different frequencies. Fitting a straight line in the range of -5dB to -35dB: In order to more accurately estimate the reverberation time T60, we need to find a linear region on the energy decay curve, which is in the range of -5dB to -35dB, and perform linear fitting. This can eliminate the influence of nonlinear factors and improve the accuracy of estimation. Calculate the time required for energy decay of 60dB: According to the straight line equation obtained by fitting, we can calculate the time required for energy decay of 60dB, which is the reverberation time T60. This time reflects the speed of sound decay in the room, which is of great significance for the design and optimization of smart speaker systems. Among them, according to the straight line equation obtained by fitting, the time required for energy decay of 60dB can be calculated by the following steps: Determine the straight line equation: First, we need to determine the straight line equation obtained by fitting in the range of -5dB to -35dB. This equation can usually be expressed in the form of y = mx + b, where y represents energy (in dB), x represents time (in seconds), m represents the slope, and b represents the intercept. Calculate the time point corresponding to 60dB: Next, we need to calculate the time point when the energy decay is 60dB. Substitute 60 into the y value of the straight line equation and solve for the corresponding x value, which is the required time. The specific calculation process is as follows: Substitute 60 into the straight line equation: 60 = mx + b, solve for x: x = (60 - b) / m. Consider the actual situation: In practical applications, we may need to consider some actual situations, such as the influence of room reflection, absorption and other factors on energy decay. Therefore, some corrections or adjustments may be needed in the calculation process.
[0113] S2: Excite the target sound channel and play the target test signal, the target test signal includes a first test signal for testing the main sound channel and a second test signal for testing the subwoofer, and the target sound channel includes the main sound channel such as left front, right front, center, left surround, right surround, etc. and the subwoofer;
[0114] S3: Locate the first test signal based on the VAD speech activity detection algorithm and determine the start and end of the first test signal, identify the time difference from the emission to the detection of the first test signal, and obtain the delay time of the main sound channel;
[0115] In one embodiment, the specific steps for calculating the main sound channel delay time are as follows:
[0116] S31: sequentially excite each main sound channel in the smart sound box system, and play the first test signal, the first test signal comprising a target pulse signal or a sine wave envelope signal of a preset frequency, the preset frequency range covering 200Hz-20kHz, and the target pulse signal being a short pulse signal;
[0117] S32: divide the input first test signal into a plurality of short frames according to a preset length, the short frame being a frame division of the input signal, and the preset length being 10-30ms per frame. Since the voice signal changes over time, in order to analyze the change, it is necessary to divide the continuous signal into shorter time segments, i.e. frames. In this way, the local characteristics of the voice signal are captured according to the preset length, while maintaining sufficient time resolution.
[0118] S33: obtain the short-time energy and zero-crossing rate characteristics of each frame signal according to the divided short frame, and compare the obtained short-time energy and zero-crossing rate with the preset energy threshold and the preset zero-crossing rate threshold, to determine whether the frame signal is voice activity; the short-time energy refers to the sum of the energy of all sample points in a frame signal, and this feature can reflect the intensity of the signal. If the energy in a frame is high, it may indicate that the frame contains voice signals. The zero-crossing rate refers to the number of times the signal passes through zero, which is an indicator of the frequency content of the signal and can be used to distinguish between voice and non-voice such as noise. Voice signals usually have a high zero-crossing rate.
[0119] S34: if the short-time energy and the zero-crossing rate both exceed the corresponding threshold, the determination result is that the frame signal is voice activity, thereby determining the start time of the test signal; the short-time energy and the zero-crossing rate calculated by comparison can determine whether each frame contains voice activity. If the energy and the zero-crossing rate of a frame both exceed the corresponding threshold, then the frame is considered to be active, i.e. it contains voice.
[0120] S35: if the short-time energy and the zero-crossing rate do not exceed the corresponding threshold, the determination result is that the frame signal is non-voice activity; if the determination result is a false result, then a smoothing algorithm is used to eliminate the false result. Since the judgment of a single frame can be affected by noise, leading to isolated false judgments, a smoothing algorithm is needed to eliminate these isolated judgment results. The smoothing algorithm can be a simple moving average or other more complex filters, the purpose being to reduce false positives and obtain more accurate VAD results. The VAD technology described above determines the presence of voice by analyzing the short-time energy and the zero-crossing rate of the audio signal, in combination with the preset threshold, which can effectively detect voice segments from continuous audio streams, providing a basis for subsequent voice processing tasks. The time difference between the emission of the test signal and its detection is recorded as the delay time of the sound channel. Steps S31-S35 are repeated to complete the delay time calculation of all main sound channels.
[0121] In one embodiment, the step S33 of obtaining the short-time energy and zero-crossing rate of each frame signal according to the divided short frame includes:
[0122] The short-time energy of each frame signal is calculated, i.e., the sum of squares of signal samples, for evaluating the strength of the signal. The short-time energy E of each frame is calculated according to the following formula:
[0123] The zero-crossing rate ZCR of each frame signal is calculated by calculating the difference between the sign functions of adjacent sample points and taking the absolute value, i.e., ZCR = (1 / 2) * Σ | sgn(x[n]) - sgn(x[n-1]) |, n = 1, 2,..., N-1.
[0124] where sgn() is the sign function, x[n] is the signal sample, and N is the frame length.
[0125] According to the preset threshold, it is determined whether each frame is a speech activity. The code example is as follows:
[0126] As understood by those skilled in the art, if the short-time energy E of a frame is greater than the preset energy threshold Ethreshold and the zero-crossing rate ZCR of the frame is greater than the preset zero-crossing rate threshold ZCRthreshold, it is considered that the frame is active, i.e., contains speech. Otherwise, it is considered that the frame is not active, i.e., does not contain speech.
[0127] S4: locating the arrival time of the second test signal based on the peak speed search algorithm, identifying the time difference from emission to detection of the second test signal as the delay time of the subwoofer; specifically including the following steps:
[0128] S41: playing the second test signal, which is a sweep sine wave signal in the range of 20-200Hz, and the duration is 2-5 seconds in implementation;
[0129] S42: locating the second test signal based on the peak speed search algorithm, pre-processing the collected signal, denoising and filtering the signal, using median filtering to remove impulse noise, and applying a band-pass filter to retain signals within the target frequency range;
[0130] S43: Set a threshold for identifying valid peaks: threshold = μ + k * σ, where μ is the mean of the signal, σ is the standard deviation, and k is a tuning factor, usually taken as 2-3; use sliding window technique to scan the signal, set window size W to 1 / 4 to 1 / 2 of the signal period, for each sample point i, if x[i] > threshold and x[i] = max(x[i-W / 2:i+W / 2]), mark it as a potential peak, x[i] represents the value of the i-th sample point of the signal; use parabolic interpolation to accurately locate the peak position, for each potential peak point i, query the adjacent points i-1 and i+1 on the left and right of the peak point, fit a parabola according to the adjacent points and the potential peak point, where a parabolic equation y = ax^2 + bx + c is constructed according to three consecutive data points, where a, b and c are the coefficients of the polynomial, x is the independent variable (usually representing time or spatial position), and y is the dependent variable (such as signal strength or height). The vertex of the parabola (i.e. the maximum or minimum point) can be found by taking the derivative and setting it to zero to get the peak position: x_peak = -b / (2a), which is the x-coordinate of the vertex of the parabola, i.e. the position of the peak x_peak. In order to quickly calculate the peak position without solving the quadratic equation, the following simplified formula can be used: x_peak = i + (x[i-1] - x[i+1]) / (2*(x[i-1] - 2x[i] + x[i+1])), which is derived by considering the symmetry of the parabola and the offset of the vertex position relative to the center point. Here i is the index of the center point, x[i-1] and x[i+1] are the x values of the left and right adjacent points. In this way, the arrival time of the second test signal is identified by calculating the time interval of the adjacent peaks, and if the interval is close to the expected signal period, the first valid peak is confirmed as the signal arrival time. Use median filtering to remove outliers and improve the stability of the results. Finally, record the time difference between the bass cannon test signal and the detected time, which is the delay time of the bass cannon.
[0131] S5: According to the delay time of the main channel and the delay time of the bass cannon, the delay time of the bass cannon is calibrated with each main channel, and the delay calibration parameters of each channel are dynamically adjusted according to the delay calibration amount, so as to realize accurate time alignment of the bass cannon and the main channel. Specifically, it includes the following steps:
[0132] Select the channel with the longest delay time as the reference channel, calculate the delay difference of other channels relative to the reference channel, and perform the first delay adjustment according to the delay difference; when implementing: assuming that the right front channel delay time is the longest, which is 30ms, and the left front channel delay time is 25ms, the calibration delay of the left front channel is 5ms.
[0133] In one embodiment, the bass speaker delay is specially processed: since the wavelength of low frequency signal is long, the phase alignment needs to be considered. The phase difference between the bass speaker and the main channel is calculated, and appropriate delay adjustment is made, as follows:
[0134] Calculate the phase difference between the bass speaker and the main channel: Δφ = φ_sub - φ_main;
[0135] Convert the calculated phase difference to time delay: Δt = Δφ / (2π*f_crossover);
[0136] Make a second delay adjustment according to the time delay, so as to ensure the smooth transition of the phase of the bass speaker and the main channel near the crossover point; wherein Δφ represents the phase difference, φ_sub represents the phase of the bass speaker, φ_main represents the phase of the main channel, Δt represents the time delay, and f_crossover is the crossover point frequency.
[0137] In one embodiment, the system includes real-time adaptive calibration, which includes dynamically adjusting parameters based on adaptive calibration mechanism according to different room acoustic environments, and performing periodic fast calibration checks during system operation. Embodiment: every 30 minutes or after the user adjusts the position of the sound box, the system automatically performs a fast calibration check. Further comprising the following steps:
[0138] Use the background music or environmental sound being played as the calibration signal to avoid interrupting the user's listening experience, and extract the signal characteristics of each channel from the mixed signal through blind source separation technology;
[0139] Separate the multi-channel mixed signal using ICA algorithm: X = AS, wherein X is the observed mixed signal, A is the mixing matrix, and S is the source signal;
[0140] Estimate the separation matrix W using FastICA algorithm and iteratively optimize the parameters until convergence, wherein S ≈ WX;
[0141] FastICA iteration process: 1. Initialize w as a random unit vector, 2. w+ = E{xg(w^Tx)} - E{g'(w^Tx)}w, 3. w = w+ / ||w+||, 4. If not converged, return to step 2, wherein g() is a nonlinear function, such as g(u) = tanh(au).
[0142] After obtaining the separated channel signals, estimate the time delay and update the delay calibration parameters according to the estimation results;
[0143] If a change in the delay calibration parameters is detected, prompt the user whether a complete calibration process is needed.
[0144] In this embodiment, the steps of user interaction and optimization of the system include: 1. Provide a user interface to allow users to manually fine-tune the calibration results. Embodiment: Design an intuitive graphical interface, users can adjust the relative delay of each channel through a slider. 2. According to the user's adjustment habits, use machine learning algorithm to optimize the automatic calibration process, use reinforcement learning method, take the user's adjustment behavior as feedback, and constantly optimize the parameters of the calibration algorithm, that is, according to the user's delay adjustment behavior feedback, use machine learning to further optimize the automatic calibration process, including the following steps: define the state space S as the current delay parameter setting; define the action space A as the possible delay adjustment operation; define the reward function R, give positive or negative rewards according to whether the user accepts the automatic calibration result or performs manual adjustment; update the value function using Q-learning algorithm: Q(s,a)←Q(s,a)+α[r+γ*max(Q(s',a'))-Q(s,a)]; select the optimal calibration strategy according to the updated Q value; Where, α is the learning rate, γ is the discount factor, s and a are the current state and action respectively, s' is the next state. 3. Provide A / B testing function, let the user choose the better calibration effect. Embodiment: The system generates two sets of slightly different calibration parameters, and the user selects the better effect through blind listening test, and the system records and learns this selection.
[0145] In an embodiment, the steps of the system for multi-room and multi-device collaboration include:
[0146] For the multi-room smart speaker system, a room acoustic characteristic database is established, including room size, reverberation time and frequency response. Embodiment: Create an acoustic fingerprint for each room, including room size, reverberation time, frequency response and other parameters, use machine learning algorithm (such as support vector machine SVM) to classify the room, so as to quickly call the most suitable initial calibration parameters.
[0147] The calibration data synchronization of multiple devices is implemented based on a distributed consistency algorithm using a Raft consensus algorithm and a version vector and an anti-entropy process, so as to ensure the multi-room and multi-device cooperation, and the implementation steps are as follows: a) a Raft consensus algorithm is used to elect a master node: all nodes are initially in a Follower state, and are converted into a Candidate state and initiate an election when a timeout is not received heartbeat message, a Candidate with a majority of votes becomes a Leader, and the Leader regularly sends a heartbeat message to the Follower to maintain the leadership. b) the master node is responsible for coordinating the calibration process and data update: the Leader receives a client request, replicates a log to the Follower, waits for a majority of the Follower to confirm, submits the log and applies it to the state machine, and notifies the client that the operation is completed. c) a version vector (VersionVector) is used to track the data state of each node: VV={(Node1,Clock1),(Node2,Clock2),...},each node maintains its own logical clock and increments when updating data. d) when detecting data inconsistency, the data is synchronized through an anti-entropy (Anti-entropy) process: the nodes regularly exchange version vectors, compare the version vectors, identify data that needs to be synchronized, transmit the difference data, and achieve eventual consistency. According to the user's use scene (such as party mode, movie mode, etc.), the preset calibration mode is automatically switched.
[0148] In various embodiments of the present application, the steps of the system performing advanced audio processing include: integrating multiple preset audio processing algorithms to optimize audio, and the implementation steps are as follows:
[0149] The first way is to compensate for the room acoustic response to the frequency response through an adaptive filter to realize room response correction, that is, to compensate for the influence of room acoustics on the frequency response by combining room correction technology, and to use an adaptive filter to realize room response correction: a) measure the room impulse response h(n): use a maximum length sequence (MLS) or a swept sine signal as an excitation, calculate the cross-correlation function Rxy(τ)=Σx(n)y(n+τ) of the input signal x(n) and the output signal y(n), and the room impulse response h(n)≈Rxy(n) / Rxx(0). b) design a target response d(n), which is usually a flat frequency response. c) use the least mean square error (LMS) algorithm to iteratively update the filter coefficients w(n): e(n)=d(n)-w^T(n)x(n), w(n+1)=w(n)+2μe(n)x(n), where μ is the step size, e(n) is the error signal, and x(n) is the input signal. d) combine the correction filter with the delay calibration to achieve comprehensive audio optimization.
[0150] The second way is to configure a multi-threshold compressor to apply different compression ratios at different volumes to ensure the listening experience at low and high volumes, that is, to achieve dynamic range compression and expansion, and to optimize the listening experience at different volumes. Embodiment: design a multi-threshold compressor to apply different compression ratios at different signal levels to ensure clear details at low volumes and dynamic richness at high volumes.
[0151] Implementation: a) define multiple threshold levels T1 < T2 <... < Tn. b) For the input signal x(n), calculate its level L = 20*log10(|x(n)|). c) Select the corresponding compression ratio R according to the level L: if L ≤ T1, R = R1, if T1 < L ≤ T2, R = R2,... if L > Tn, R = Rn. d) Calculate the gain control signal: G(n) = T + (L-T) / R, when L > T, G(n) = L, when L ≤ T. e) Apply the gain: y(n) = x(n)*10^((G(n)-L) / 20).
[0152] The third way is to consider the masking effect and critical bandwidth characteristics of the human ear, fine-tune the calculated delay time, introduce a psychoacoustic model, and adjust the delay time according to the masking effect and critical bandwidth characteristics of the human ear. The delay-adjusted signal is obtained by STFT short-time Fourier transform to obtain the time-frequency spectrum X(k, m), and the energy of each frequency band k is calculated: E(k) = Σ|X(k, m)|^2, m = 1, 2,..., M. According to the preset loudness curve standard such as ISO226:2003 standard, the delay sensitivity of different frequency bands is weighted, and the equal loudness filter H(k) is applied to each frequency band E'(k) = E(k)*H(k). The delay time is adjusted within the critical bandwidth to minimize the phase difference, where M represents the window function length or frame number of the short-time Fourier transform. For each critical band: calculate the average phase φavg within the band, adjust the delay to make the phase of all frequency components within the band close to φavg, Δt(k) = (φavg-φ(k)) / (2πf(k)).
[0153] In one embodiment, the system performs the steps of performance evaluation and optimization, including:
[0154] Step one, design objective evaluation index, regularly detect system calibration effect. Embodiment: use cross-correlation function to evaluate time alignment accuracy:
[0155] Calculate the cross-correlation function of the reference signal x(n) and each channel output signal y(n): R_xy(τ) = Σx(n)y(n+τ), n = 0, 1,..., N-1,
[0156] Find the peak position of the cross-correlation function, which corresponds to the time offset τmax = argmax(R_xy(τ));
[0157] Compare the calculated actual time offset with the theoretical offset to evaluate the calibration accuracy: Error = |τmax - τtheory|;
[0158] Where N represents the length of the signal, i.e., the number of sampling points, τmax is the actual time offset, and τtheory is the theoretical offset.
[0159] Step two, implement an automated testing process to simulate different usage scenarios. This implementation uses the Monte Carlo method to generate a large number of test cases: a) Define the input parameter space, such as room size, speaker position, and listening position, etc. b) Use Latin Hypercube Sampling method to uniformly sample in the parameter space: divide the range of each parameter into N parts, randomly select N non-repeating segments in each dimension, and combine these selections to form N sample points. c) Simulate and test each set of sampled parameters to evaluate the system's performance under different conditions. d) Statistical analysis of test results to identify system performance bottlenecks and improvement directions: calculate the mean and variance of each performance indicator, perform sensitivity analysis, and identify key influencing factors.
[0160] Step three, establish a performance database to track the system's long-term performance. Implementation: Design a time series database to record the results of each calibration and user feedback. Use time series analysis methods (such as ARIMA model) to predict system performance trends and timely identify and solve potential problems. Algorithm explanation: ARIMA(p, d, q) model: a) Perform d-order difference on the original time series to make it a stationary series. b) Fit AR(p) and MA(q) models: y(t) = c + φ1y(t-1) +... + φpy(t-p) + θ1ε(t-1) +... + θqε(t-q) + ε(t).
[0161] c) Use maximum likelihood estimation or conditional least squares to estimate parameters. d) Perform model diagnosis and use it for prediction if appropriate, otherwise adjust p, d, q values and re-model.
[0162] In one embodiment, the system is also integrated with advanced user functions, as detailed below: 1. Provide professional mode, allowing audio enthusiasts to make more fine adjustments. Embodiments: Open low-level parameter access, such as filter coefficients, dynamic range processing parameters, etc. Provide real-time spectrum analysis and phase response visualization tools to assist users in professional-level debugging. 2. Implement personalized audio configuration files. Application algorithm description: Use collaborative filtering algorithm to recommend audio settings for users: a) Build a user-configuration matrix to record each user's preferences for different audio configurations. b) Use singular value decomposition (SVD) to reduce matrix dimensionality and extract latent features. R≈U*Σ*V^T, where R is the original rating matrix, U and V are the feature matrices of users and items, and Σ is the singular value matrix. c) Based on user similarity, predict the possible preferences of target users for untried configurations. For users u and items i: predicted rating = μ + bu + bi + Σ(pu, k*qi, k), k = 1, 2,..., K, where μ is the global average rating, bu and bi are user and item biases, pu and qi are user and item feature vectors. d) Recommend the highest-scoring audio configuration to the user. 3. Integrate music streaming services to automatically optimize audio settings based on different music types. Embodiments: Access streaming platforms through APIs to obtain metadata for songs being played. Establish a mapping relationship between music types and optimal audio parameters to achieve seamless sound quality optimization.
[0163] In one embodiment, the system also integrates security and privacy protection functions, as detailed below: 1. Implement end-to-end encryption to protect user audio data and configuration information. The application algorithm is as follows: a) Generate a random 256-bit key. b) Use the PBKDF2 (Password-Based Key Derivation Function 2) algorithm to derive the encryption key from the user password. DK = PBKDF2 (Password, Salt, c, dkLen), where c is the iteration count (usually >= 10000), and dkLen is the desired key length. c) Use the GCM (Galois / Counter Mode) mode of the AES-256 algorithm for encryption to ensure data confidentiality and integrity. C = AES-GCM-Encrypt (K, IV, P, A), where K is the key, IV is the initialization vector, P is the plaintext, and A is the additional authentication data. 2. Design an anonymization mechanism to protect user privacy when uploading system performance data. Embodiment: Use differential privacy (Differential Privacy) technology to process uploaded data: a) Add Laplace noise to the original data: f'(x) = f(x) + Lap(Δf / ε), where f(x) is the function or query result of the original data, f'(x) is the data after adding noise, Δf is the sensitivity, and ε is the privacy budget. b) Use k-anonymity technology to generalize user features to ensure that each feature combination has at least k users. 3. Implement a secure firmware update mechanism to prevent malware intrusion. The application algorithm is as follows: Use digital signatures and secure boot mechanisms: a) Use the manufacturer's private key to sign the firmware. Signature = Sign (PrivateKey, Hash (Firmware)). b) When the device starts, use the pre-stored public key to verify the firmware signature. isValid = Verify (PublicKey, Signature, Hash (Firmware)). c) Only execute the firmware after the signature verification is passed to ensure system integrity.
[0164] Through the above detailed technical solutions, the present application realizes automatic calibration of the delay of the intelligent sound box system, greatly improves the sound restoration degree and user experience of the multi-channel audio system. This solution not only solves the problem of precise time alignment of the subwoofer and other channels, but also takes into account the influence of the room acoustic environment, realizing adaptive dynamic optimization. The modular design and open API of the system ensure good scalability and compatibility, while the continuous optimization mechanism guarantees the long-term stability and improvement of system performance. This innovative solution brings new technical breakthroughs to the field of intelligent sound boxes and is expected to be widely used in the market.
[0165] The embodiment also provides a computer readable storage medium, which stores a computer program, wherein the computer program is executed by a processor to implement the following steps:
[0166] initializing the smart sound box system and detecting the environment to preliminarily configure system parameters;
[0167] exciting target sound channels and playing target test signals, the target test signals including a first test signal for testing a main sound channel and a second test signal for testing a subwoofer;
[0168] locating the first test signal based on a VAD voice activity detection algorithm and judging the start and end of the first test signal, identifying a time difference from emission to detection of the first test signal as a delay time of the main sound channel;
[0169] locating the arrival time of the second test signal based on a peak speed search algorithm and identifying a time difference from emission to detection of the second test signal as a delay time of the subwoofer;
[0170] delay time calibration of the subwoofer and each main sound channel according to the delay time of the main sound channel and the delay time of the subwoofer, and dynamic adjustment of delay calibration parameters of each sound channel according to the delay time calibration amount, so as to realize precise time alignment of the subwoofer and the main sound channel.
[0171] The initializing the smart sound box system and detecting the environment to preliminarily configure system parameters comprises:
[0172] starting the smart sound box system and entering a calibration mode;
[0173] playing white noise or a sweep signal containing various frequencies, and collecting acoustic responses of the room through a microphone array;
[0174] performing acoustic characteristic analysis on the collected acoustic signals by using fast Fourier transform to obtain an environmental analysis result of the room, the environmental analysis result including a frequency response curve and a reverberation time parameter;
[0175] preliminarily configuring system parameters according to the environmental analysis result, the preliminary configuration operation including, when it is detected that the reverberation time of the room is greater than a reverberation time threshold, correspondingly increasing a time window length to capture a longer sound segment for subsequent processing.
[0176] The performing acoustic characteristic analysis on the collected signals by using fast Fourier transform comprises:
[0177] The collected acoustic signal x(n) is subjected to FFT fast Fourier transform, the collected time domain signal is converted into a frequency domain signal, the energy distribution of the signal at each frequency is obtained, and the FFT implementation formula is as follows: X(k) = Σ[n=0 to N-1] x(n) * e^(-j2πkn / N);
[0178] The power spectral density is calculated: P(k) = |X(k)|^2 / N;
[0179] The energy decay curve is calculated by using the Schroeder integration method, the energy decay of the room at different frequencies is obtained, the target linear region is extracted on the energy decay curve, and the target linear region is subjected to linear fitting, the time required for energy decay of 60dB is calculated according to the straight line obtained by fitting, so as to estimate the reverberation time T60; wherein X(k) represents the output frequency domain signal, N is the number of sampling points, k is the frequency index, |X(k)| represents the amplitude of the kth frequency component, P(k) represents the power spectral density of the kth frequency component, and the range of the target linear region is -5dB to -35dB.
[0180] The first test signal is positioned and the start and end of the first test signal are judged based on a VAD voice activity detection algorithm, a time difference from emission to detection of the first test signal is identified, and a delay time of the main sound channel is obtained, including:
[0181] Each main sound channel in the intelligent sound box system is sequentially excited, and the first test signal is played, the first test signal includes a target pulse signal or a sine wave envelope signal of a preset frequency, and the preset frequency range covers 200Hz-20kHz;
[0182] The input first test signal is divided into a plurality of short frames according to a preset length;
[0183] The short-time energy and zero-crossing rate characteristics of each frame signal are obtained according to the divided short frames, and the obtained short-time energy and zero-crossing rate are compared with a preset energy threshold and a preset zero-crossing rate threshold, so as to judge whether the frame signal is a voice activity;
[0184] If the short-time energy and the zero-crossing rate both exceed the corresponding threshold, the judgment result is that the frame signal is a voice activity, so that the start time of the test signal is determined;
[0185] If the short-time energy and the zero-crossing rate do not exceed the corresponding threshold, the judgment result is that the frame signal is a non-voice activity;
[0186] If the judgment result is a misjudgment result, the smoothing algorithm is used to eliminate the misjudgment result.
[0187] The short-time energy and zero-crossing rate characteristics of each frame signal are obtained according to the divided short frames, including:
[0188] The short-time energy of each frame signal, i.e. the sum of squares of signal samples, is calculated to evaluate the intensity of the signal. The short-time energy E of each frame is calculated according to the following formula: E =∑(x[n]^2), n=0, 1,..., N-1,
[0189] The zero-crossing rate ZCR of each frame signal is calculated by calculating the difference between the sign functions of adjacent sample points and taking the absolute value: ZCR = (1 / 2)*∑|sgn(x[n]) - sgn(x[n-1])|, n=1, 2,..., N-1,
[0190] Wherein, sgn() is the sign function, x[n] is the signal sample, and N is the frame length.
[0191] The peak-picking algorithm is used to locate the arrival time of the second test signal, and the time difference from the emission to the detection of the second test signal is identified as the delay time of the subwoofer, which comprises:
[0192] The second test signal is played, which is a sweep sine wave signal in the range of 20-200Hz;
[0193] The peak-picking algorithm is used to locate the second test signal, and the collected signal is pre-processed for signal denoising and filtering;
[0194] A threshold value for identifying valid peaks is set: threshold = μ + k*σ, wherein μ is the signal mean value, σ is the standard deviation, and k is the adjustment coefficient;
[0195] The signal is scanned using the sliding window technique, and the window size W is set. For each sampling point i, if x[i] > threshold and x[i] = max(x[i-W / 2:i+W / 2]), it is marked as a potential peak, and x[i] represents the value of the i-th sampling point of the signal.
[0196] The parabolic interpolation is used to accurately locate the peak position. For each potential peak point i, the adjacent points i-1 and i+1 to the left and right of the peak point i are queried, and a parabola is fitted according to the adjacent points and the potential peak point.
[0197] The time interval between adjacent peaks is calculated to identify the arrival time of the second test signal. If the interval is close to the expected signal period, the first valid peak is confirmed as the signal arrival time.
[0198] The delay time of the subwoofer is calibrated with each main channel according to the delay time of the main channel and the delay time of the subwoofer, and the delay calibration parameters of each channel are dynamically adjusted according to the delay calibration amount, which comprises:
[0199] selecting a channel with the longest delay time as a reference channel, calculating delay difference of other channels relative to the reference channel, and performing first delay adjustment according to the delay difference;
[0200] calculating phase difference between the subwoofer and the main channel: Δφ = φ_sub - φ_main;
[0201] converting the calculated phase difference into time delay: Δt = Δφ / (2π*f_crossover);
[0202] performing second delay adjustment according to the time delay, thereby ensuring smooth phase transition of the subwoofer and the main channel near the crossover point;
[0203] wherein Δφ represents phase difference, φ_sub represents phase of the subwoofer, φ_main represents phase of the main channel, Δt represents time delay, and f_crossover represents crossover point frequency.
[0204] Further comprising:
[0205] dynamically adjusting parameters according to different room acoustic environments based on an adaptive calibration mechanism, periodically performing rapid calibration checks during system operation, further comprising:
[0206] using the background music or environmental sound being played as a calibration signal, and extracting signal characteristics of each channel from the mixed signal through blind source separation technology;
[0207] using ICA algorithm to separate the multi-channel mixed signal: X = AS, wherein X is the observed mixed signal, A is the mixing matrix, and S is the source signal;
[0208] using FastICA algorithm to estimate the separation matrix W and iteratively optimize parameters until convergence, wherein S ≈ WX;
[0209] after obtaining the separated channel signals, performing time delay estimation and updating delay calibration parameters according to the estimation results;
[0210] if a change in delay calibration parameters is detected, prompting the user whether a complete calibration process is needed.
[0211] Further comprising:
[0212] using machine learning to further optimize the automatic calibration process according to user delay adjustment behavior feedback, including:
[0213] defining state space S as the current delay parameter setting;
[0214] defining action space A as possible delay adjustment operations;
[0215] Define a reward function R, give positive or negative rewards according to whether the user accepts the automatic calibration result or makes manual adjustments;
[0216] Update the value function using the Q-learning algorithm: Q(s, a)←Q(s, a)+α[r+γ*max(Q(s', a'))-Q(s, a)];
[0217] Select the optimal calibration strategy according to the updated Q value;
[0218] Where α is the learning rate, γ is the discount factor, s and a are the current state and action respectively, and s' is the next state.
[0219] Also includes:
[0220] For a smart speaker system in multiple rooms, a room acoustic characteristic database is established, including room size, reverberation time and frequency response;
[0221] Based on the distributed consensus algorithm, the Raft consensus algorithm and version vector are used to realize the synchronization of calibration data of multiple devices, so as to ensure the cooperative work of multiple rooms and multiple devices.
[0222] Also includes:
[0223] Integrate multiple preset audio processing algorithms to optimize audio, further including:
[0224] Compensate for room acoustic frequency response through adaptive filter to realize room response correction;
[0225] Configure a multi-threshold compressor to apply different compression ratios at different volumes to ensure the listening experience at low and high volumes;
[0226] Introduce a psychoacoustic model to adjust the delay time according to the masking effect and critical bandwidth characteristics of the human ear, and perform STFT short-time Fourier transform on the obtained signal to obtain the time-frequency spectrum X(k, m), calculate the energy of each frequency band k: E(k) = Σ|X(k, m)|^2, m = 1, 2,..., M, weight the delay sensitivity of different frequency bands according to the preset loudness curve standard, apply the equal loudness filter H(k) to each frequency band E'(k) = E(k)*H(k), and adjust the delay time within the critical bandwidth to minimize the phase difference, where M represents the window function length or frame number of the short-time Fourier transform.
[0227] Also includes:
[0228] The steps of performance evaluation and optimization of the smart speaker system include:
[0229] Calculate the cross-correlation function of the reference signal x(n) and each channel output signal y(n): R xy (τ) = Σ x(n)y(n+τ), n = 0, 1,..., N-1,
[0230] Find the peak position of the cross-correlation function, which corresponds to the value of τ as the time offset: τ max = arg max(R xy (τ));
[0231] Compare the calculated actual time offset with the theoretical offset to evaluate the calibration accuracy: Error = |τ max - τ theory|;
[0232] Where N represents the length of the signal, i.e., the number of sampling points, τ max is the actual time offset, and τ theory is the theoretical offset.
[0233] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the system, device, system and unit described above can refer to the corresponding process in the foregoing method embodiments, which will not be described here.
[0234] In addition, in the description of the present embodiment, unless otherwise explicitly specified and limited, the terms "mounting", "connection", "connection" should be understood broadly, for example, it can be fixed connection, or detachable connection, or integral connection; it can be mechanical connection, or electrical connection; it can be directly connected, or indirectly connected through intermediate medium, or the communication inside two elements. For those skilled in the art, the specific meaning of the above terms in the present disclosure can be understood according to the specific circumstances.
[0235] If the function is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present disclosure essentially or say the part that contributes to the prior art or part of the technical solutions can be embodied in the form of a software product, which is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the embodiments of the present disclosure. The foregoing storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk, and various program code storage media.
[0236] In the description of the present disclosure, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, and are only for the purpose of facilitating the description of the present disclosure and simplifying the description, and do not indicate or imply that the device or element referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as a limitation on the present disclosure. In addition, the terms "first", "second", "third" are only for the purpose of description, and cannot be understood as indicating or implying relative importance.
[0237] The above-described and above-embodied examples are only used to illustrate the technical solutions of the present application, but not to limit them; although the present application has been described in detail with reference to the foregoing examples, those skilled in the art should understand that the technical solutions recorded in the foregoing examples can still be modified, or some technical features can be replaced by equivalents; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for automatic calibration of delay for a smart speaker system, wherein, Comprise: Initialize the smart speaker system and detect the environment to preliminarily configure system parameters; Excite target sound channels and play target test signals, the target test signals comprising first test signals for testing main sound channels and second test signals for testing subwoofers; Locate the first test signals based on a VAD voice activity detection algorithm and determine the start and end of the first test signals, identify the time difference from the emission to the detection of the first test signals as the delay time of the main sound channels; Locate the arrival time of the second test signals based on a peak speed search algorithm, identify the time difference from the emission to the detection of the second test signals as the delay time of the subwoofers; According to the delay time of the main sound channels and the delay time of the subwoofers, calibrate the delay time of the subwoofers with each main sound channel, and dynamically adjust the delay calibration parameters of each sound channel according to the delay time calibration amount, so as to realize the accurate time alignment of the subwoofers and the main sound channels.
2. The method of claim 1, wherein, The initialization of the smart speaker system and the detection of the environment to preliminarily configure system parameters comprise: Start the smart speaker system and enter the calibration mode; Play white noise or sweep signal containing various frequencies, and collect the acoustic response of the room through the microphone array; Perform acoustic characteristic analysis on the collected acoustic signals by using fast Fourier transform to obtain the environmental analysis results of the room, which include the frequency response curve and the reverberation time parameter; According to the environmental analysis results, preliminarily configure the system parameters, and the preliminary configuration operation includes increasing the time window length to capture longer sound segments for subsequent processing when the detected reverberation time of the room is greater than the reverberation time threshold. 3.The method of claim 2, wherein, The acoustic characteristic analysis of the collected signals by using fast Fourier transform comprises: Perform FFT fast Fourier transform on the collected acoustic signals x(n) to convert the collected time domain signals into frequency domain signals, obtain the energy distribution of the signals at each frequency, and the FFT implementation formula is as follows: X(k) = Σ [n=0 to N-1] x(n) * e^(-j2πkn / N); Calculate the power spectral density: P(k) = |X(k)|^2 / N; Calculate the energy decay curve by using the Schroeder integration method to obtain the energy decay of the room at different frequencies, extract the target linear region on the energy decay curve, and perform linear fitting on the target linear region, and calculate the time required for energy decay of 60dB to estimate the reverberation time T60 according to the straight line obtained by fitting; Wherein, X(k) represents the output frequency domain signal, N is the number of sampling points, k is the frequency index, |X(k)| represents the amplitude of the kth frequency component, P(k) represents the power spectral density of the kth frequency component, and the range of the target linear region is -5dB to -35dB. 4.The method of claim 1, wherein, The locating of the first test signals based on the VAD voice activity detection algorithm and the determination of the start and end of the first test signals, the identification of the time difference from the emission to the detection of the first test signals as the delay time of the main sound channels comprise: sequentially exciting each main channel in the intelligent sound box system, and playing the first test signal, the first test signal comprising a target pulse signal or a preset frequency sinusoidal wave envelope signal, the preset frequency range covering 200Hz-20kHz; dividing the input first test signal into a plurality of short frames according to a preset length; obtaining short-time energy and zero-crossing rate features of each frame signal according to the divided short frames, and comparing the obtained short-time energy and zero-crossing rate with preset energy threshold and preset zero-crossing rate threshold to determine whether the frame signal is voice activity; if the short-time energy and the zero-crossing rate both exceed the corresponding threshold, determining that the frame signal is voice activity, thereby determining the starting time of the test signal; if the short-time energy and the zero-crossing rate do not exceed the corresponding threshold, determining that the frame signal is non-voice activity; if the determination result is a misjudgment result, eliminating the misjudgment result through a smoothing algorithm. 5.The method of claim 4, wherein, The obtaining of the short-time energy and the zero-crossing rate features of each frame signal according to the divided short frames comprises: calculating the short-time energy of each frame signal, i.e. the sum of squares of signal samples, for evaluating the intensity of the signal, the short-time energy E of each frame being calculated according to the following formula: E = Σ(x[n]^2), n = 0, 1,..., N-1, calculating the zero-crossing rate ZCR of each frame signal by calculating the difference between the sign functions of adjacent sample points and taking the absolute value: ZCR = (1 / 2)*Σ|sgn(x[n])-sgn(x[n-1])|, n = 1, 2,..., N-1, wherein sgn() is a sign function, x[n] is a signal sample, and N is the frame length.
6. The method of automatic calibration of delay of the smart speaker system according to claim 1, wherein, The locating of the arrival time of the second test signal based on the peak speed search algorithm and the identification of the time difference from the emission to the detection of the second test signal as the delay time of the subwoofer comprise: playing the second test signal, the second test signal being a sweep frequency sinusoidal wave signal in the range of 20-200Hz; locating the second test signal based on the peak speed search algorithm, and pre-processing the collected signal for signal denoising and filtering; setting a threshold for identifying effective peaks: threshold = μ + k*σ, wherein μ is the signal mean value, σ is the standard deviation, and k is an adjustment coefficient; scanning the signal using a sliding window technique, setting the window size W, and for each sampling point i, if x[i] > threshold and x[i] = max(x[i-W / 2:i+W / 2]), the sampling point i is marked as a potential peak, x[i] representing the value of the i-th sampling point of the signal; precisely locating the peak position using parabolic interpolation, for each potential peak point i, querying the adjacent points i-1 and i+1 on the left and right of the potential peak point i, and fitting a parabola according to the adjacent points and the potential peak point; identifying the arrival time of the second test signal by calculating the time interval of adjacent peaks, and if the interval is close to the expected signal period, the first effective peak is confirmed as the signal arrival time.
7. The method of automatic calibration of delay of the smart speaker system according to claim 1, wherein, The delay time calibration of the subwoofer with each main channel according to the delay time of the main channel and the delay time of the subwoofer, and the dynamic adjustment of the delay calibration parameters of each channel according to the delay time calibration amount comprise: Select the channel with the longest delay time as the reference channel, calculate the delay difference of other channels relative to the reference channel, and perform the first delay adjustment according to the delay difference; Calculate the phase difference between the subwoofer and the main channel: Δφ = φ_sub - φ_main; Convert the calculated phase difference to a time delay: Δt = Δφ / (2π*f_crossover); Perform the second delay adjustment according to the time delay, thereby ensuring smooth phase transition of the subwoofer and the main channel near the crossover point; Where Δφ represents the phase difference, φ_sub represents the phase of the subwoofer, φ_main represents the phase of the main channel, Δt represents the time delay, and f_crossover is the crossover point frequency.
8. The method of automatic calibration of delay of the smart speaker system according to claim 1, wherein, Also includes: Based on the adaptive calibration mechanism, dynamically adjust the parameters according to the different room acoustic environment, and periodically check the fast calibration during system operation, further including: Use the background music or environmental sound being played as the calibration signal, and extract the signal characteristics of each channel from the mixed signal through blind source separation technology; Use ICA algorithm to separate the multi-channel mixed signal: X = AS, where X is the observed mixed signal, A is the mixing matrix, and S is the source signal; Estimate the separation matrix W using FastICA algorithm and iteratively optimize the parameters until convergence, where S ≈ WX; After obtaining the separated channel signals, perform time delay estimation and update the delay calibration parameters according to the estimation results; If the delay calibration parameter changes are detected, prompt the user whether to perform a complete calibration process. 9.The method of claim 1, wherein, Also includes: According to the user's delay adjustment behavior feedback, use machine learning to further optimize the automatic calibration process, including: Define the state space S as the current delay parameter setting; Define the action space A as the possible delay adjustment operation; Define the reward function R, give positive or negative rewards according to whether the user accepts the automatic calibration result or performs manual adjustment; Update the value function using Q-learning algorithm: Q(s, a) ← Q(s, a) + α[r + γ*max(Q(s', a')) - Q(s, a)]; Select the optimal calibration strategy according to the updated Q value; Where α is the learning rate, γ is the discount factor, s and a are the current state and action respectively, and s' is the next state. 10.The method of claim 1, wherein, Also includes: Establish a room acoustic characteristic database for a multi-room smart speaker system, including room size, reverberation time, and frequency response; Based on the distributed consistency algorithm, use Raft consensus algorithm and version vector and anti-entropy process to realize the synchronization of calibration data of multiple devices, thereby ensuring the collaborative work of multiple rooms and multiple devices. 11.The method of claim 1, wherein, Also includes: Integrate multiple preset audio processing algorithms to optimize audio, further including: Compensate for the room acoustic response to the frequency response through adaptive filters to correct the room response; Configure multiple threshold compressors to apply different compression ratios at different volumes to ensure the listening experience at low and high volumes; The psychoacoustic model is introduced, the delay time calculated is adjusted according to the masking effect and critical bandwidth characteristics of human ears, the acquired signal is subjected to STFT short-time Fourier transform to obtain a time-frequency spectrum X(k, m), the energy of each frequency band k is calculated: E(k) = Σ |X(k, m)|^2, m = 1, 2,..., M, the delay sensitivity of different frequency bands is weighted according to a preset loudness curve standard, an equal loudness filter H(k) is applied to each frequency band E'(k) = E(k)*H(k), and the delay time is adjusted within the critical bandwidth to minimize the phase difference, wherein M represents the window function length or the frame number of the short-time Fourier transform.
12. The method of automatic calibration of delay of the smart speaker system of claim 1, wherein, Further comprising: Steps of evaluating and optimizing the performance of the smart speaker system, including: Calculating the cross-correlation function of the reference signal x(n) and each channel output signal y(n): R_xy(τ) = Σ x(n)y(n+τ), n = 0, 1,..., N-1, Finding the peak position of the cross-correlation function, which corresponds to the value of τ, which is the time offset: τmax = argmax(R_xy(τ)); Comparing the actual time offset calculated with the theoretical offset to evaluate the calibration accuracy: Error = |τmax-τtheory|; Where N represents the length of the signal, i.e., the number of sampling points, τmax is the actual time offset, and τtheory is the theoretical offset.
13. A computer device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein, The computer program, when executed by a processor, implements the following steps: Initializing the smart speaker system and detecting the environment to preliminarily configure system parameters; Exciting the target channel and playing a target test signal, the target test signal including a first test signal for testing the main channel and a second test signal for testing the subwoofer; Locating the first test signal based on a VAD voice activity detection algorithm and determining the start and end of the first test signal, identifying the time difference from the emission to the detection of the first test signal to obtain the delay time of the main channel; Locating the arrival time of the second test signal based on a peak speed search algorithm, identifying the time difference from the emission to the detection of the second test signal as the delay time of the subwoofer; Calibrating the delay time of the subwoofer with each main channel according to the delay time of the main channel and the delay time of the subwoofer, and dynamically adjusting the delay calibration parameters of each channel according to the delay calibration amount, thereby realizing precise time alignment of the subwoofer and the main channel.
14. The computer device of claim 13, Wherein, wherein, The initializing the smart speaker system and detecting the environment to preliminarily configure system parameters includes: Starting the smart speaker system and entering calibration mode; Playing white noise or sweep signal containing various frequencies, and collecting the acoustic response of the room through the microphone array; Performing acoustic characteristic analysis on the collected acoustic signal using fast Fourier transform to obtain an environmental analysis result of the room, the environmental analysis result including a frequency response curve and a reverberation time parameter; According to the environmental analysis result, preliminary configuration operation is performed on system parameters, and the preliminary configuration operation includes: when it is detected that the room reverberation time is greater than a reverberation time threshold, the time window length is correspondingly increased to capture a longer sound segment for subsequent processing.
15. The computer device of claim 13, wherein, The acoustic characteristic analysis on the collected signal by using the fast Fourier transform includes: The collected acoustic signal x(n) is subjected to FFT fast Fourier transform, the collected time domain signal is converted into a frequency domain signal, the energy distribution of the signal at each frequency is obtained, and the FFT implementation formula is as follows: X(k) = Σ [n = 0 to N-1] x(n) * e^(-j2πkn / N); The power spectral density P(k) = |X(k)|^2 / N is calculated; The energy decay curve is calculated by using the Schroeder integration method, the energy decay of the room at different frequencies is obtained, the target linear region is extracted on the energy decay curve, and the target linear region is subjected to linear fitting, and the time required for energy decay of 60 dB is calculated according to the straight line obtained by fitting to estimate the reverberation time T60. Wherein, X(k) represents the output frequency domain signal, N is the number of sampling points, k is the frequency index, |X(k)| represents the amplitude of the kth frequency component, P(k) represents the power spectral density of the kth frequency component, and the range of the target linear region is -5 dB to -35 dB.
16. The computer device of claim 13, wherein, The first test signal is positioned and the start and end of the first test signal are judged based on the VAD voice activity detection algorithm, the time difference from the emission to the detection of the first test signal is identified, and the delay time of the main sound channel includes: Each main sound channel in the intelligent sound box system is sequentially excited, and the first test signal is played, the first test signal includes a target pulse signal or a sine wave envelope signal with a preset frequency, and the preset frequency range covers 200Hz-20kHz. The input first test signal is divided into a plurality of short frames according to a preset length. The short-time energy and zero-crossing rate characteristics of each frame signal are obtained according to the divided short frames, and the obtained short-time energy and zero-crossing rate are compared with a preset energy threshold and a preset zero-crossing rate threshold to determine whether the frame signal is voice activity. If the short-time energy and the zero-crossing rate both exceed the corresponding threshold, the determination result is that the frame signal is voice activity, so that the start time of the test signal is determined. If the short-time energy and the zero-crossing rate do not exceed the corresponding threshold, the determination result is that the frame signal is non-voice activity. If the determination result is a misjudgment result, the smoothing algorithm is used to eliminate the misjudgment result.
17. The computer device of claim 13, wherein, The arrival time of the second test signal is positioned based on the peak speed search algorithm, the time difference from the emission to the detection of the second test signal is identified as the delay time of the subwoofer, and the second test signal includes: The second test signal is played, and the second test signal is a sweep frequency sine wave signal in the range of 20-200Hz. The second test signal is positioned based on the peak speed search algorithm, and the collected signal is preprocessed to denoise and filter the signal. A threshold value is set for identifying valid peaks: threshold = μ + k * σ, where μ is the mean value of the signal, σ is the standard deviation, and k is an adjustment coefficient. The sliding window technique is used to scan the signal, and the window size W is set. For each sampling point i, if x[i] > threshold and x[i] = max(x[i-W / 2:i+W / 2]), it is marked as a potential peak, where x[i] represents the value of the i-th sampling point of the signal. The parabolic interpolation is used to accurately locate the peak position. For each potential peak point i, the adjacent points i-1 and i+1 are queried, and a parabola is fitted according to the adjacent points and the potential peak point. The time interval between adjacent peaks is calculated to identify the arrival time of the second test signal. If the interval is close to the expected signal period, the first valid peak is confirmed as the signal arrival time.
18. The computer device of claim 13, wherein, Further comprising: Based on the adaptive calibration mechanism, the parameters are dynamically adjusted according to the acoustic environment of different rooms, and periodic fast calibration checks are performed during system operation, further comprising: The background music or environmental sound being played is used as the calibration signal, and the signal characteristics of each channel are extracted from the mixed signal through blind source separation technology. ICA algorithm is used to separate the multi-channel mixed signal: X = AS, where X is the observed mixed signal, A is the mixing matrix, and S is the source signal. FastICA algorithm is used to estimate the separation matrix W and iteratively optimize the parameters until convergence, where S ≈ WX. After obtaining the separated channel signals, time delay estimation is performed, and the delay calibration parameters are updated according to the estimation results. If a change in the delay calibration parameters is detected, the user is prompted whether a complete calibration process is needed.
19. The computer device of claim 13, wherein, Further comprising: A room acoustic characteristic database is established for a multi-room smart speaker system, including room size, reverberation time, and frequency response. Based on the distributed consistency algorithm, Raft consensus algorithm and version vector, and anti-entropy process are used to synchronize calibration data of multiple devices, ensuring the collaborative work of multiple rooms and multiple devices.
20. A computer readable storage medium having stored thereon a computer program, wherein, The computer program is executed by the processor to implement the following steps: Initialize the smart speaker system and detect the environment to preliminarily configure system parameters; Excite the target channel and play the target test signal, which includes a first test signal for testing the main channel and a second test signal for testing the subwoofer; Based on the VAD speech activity detection algorithm, the first test signal is located and the start and end of the first test signal are determined, the time difference from the emission to the detection of the first test signal is identified, and the delay time of the main channel is obtained; Based on the peak speed search algorithm, the arrival time of the second test signal is located, and the time difference from the emission to the detection of the second test signal is identified as the delay time of the subwoofer; According to the delay time of the main channel and the delay time of the subwoofer, the subwoofer is calibrated with each main channel in terms of delay time, and the delay calibration parameters of each channel are dynamically adjusted according to the delay calibration amount, thereby realizing the precise time alignment of the subwoofer and the main channel.
Citation Information
Patent Citations
Room characterization and correction for multi-channel audio
CN103621110A
Real-time speech endpoint detection method and device
CN109545188A
Audio and video signal delay calibration device and method, equipment and storage medium
CN116546250A
Automated discovery and localization of
CN117221801A
Sound optimization method for home theater system
CN117835140A
Cited By
News live voice anomaly real-time monitoring correction method and system thereof
CN122135742A
A broadcast audio channel selection anti-howling processing method and system
CN122369489A