A multi-channel speaker system and method based on Bluetooth Auracast and spatial awareness

By using Bluetooth Auracast and spatial awareness technology, audio equipment can autonomously locate and lock onto its role, solving the problem of traditional multi-channel speaker systems being susceptible to malfunctions and achieving simplified installation and synchronized playback.

CN121486723BActive Publication Date: 2026-03-06SHENZHEN CHIPSGUIDE TECH
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202610027426.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-01-09
Publication Date
2026-03-06
Estimated Expiration
2046-01-09

AI Technical Summary

Technical Problem

Traditional multi-channel speaker systems rely on the DSP control chip of the center speaker for centralized position calculation, which makes the system susceptible to failure, requires complex manual calibration by users, and cannot cope with changes in speaker position or the addition of new equipment.

Method used

A multi-channel speaker system based on Bluetooth Auracast and spatial awareness is adopted. Through an audio broadcast source transmission module, a public broadcast stream synchronization locking module, an ordered acoustic detection signal transmission module, a raw sound wave arrival time difference generation module, a global measurement dataset construction module, a topology weight analysis calculation module, and a channel role election locking module, the speaker equipment achieves autonomous positioning and role locking.

Benefits of technology

The installation process has been simplified, enabling the surround sound system to be used immediately after installation. This avoids audio-visual asynchrony caused by transmission link desynchronization or clock drift, and reduces algorithm complexity and hardware computing requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121486723B_ABST
    Figure CN121486723B_ABST
Patent Text Reader

Abstract

This invention belongs to the technical field of audio processing and relates to a multi-channel speaker system and method based on Bluetooth Auracast and spatial awareness. It includes the following modules: an audio broadcast source transmission module for transmitting a public broadcast audio stream; a public broadcast stream synchronization locking module for generating a unified physical layer time reference; an ordered acoustic detection signal transmission module for forming an acoustic detection signal sequence; a raw sound wave arrival time difference generation module for generating the raw sound wave arrival time difference; a global measurement dataset construction module for summarizing the global measurement dataset of measurement results; a topology weight analysis and calculation module for generating topology weight values; a channel role election locking module for generating channel playback instructions; and a multi-channel synchronous playback execution module for extracting channel data and performing synchronized playback. This invention solves the problem that when a user moves the speaker position or adds a new speaker device during playback, a complete recalibration process needs to be performed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the technical field of audio processing and relates to a multi-channel speaker system and method based on Bluetooth Auracast and spatial awareness. Background Technology

[0002] When building a home theater or multi-channel surround sound system, traditional solutions require users to manually place each speaker according to a predetermined channel layout and connect them to the audio source via wired or complex wireless pairing methods. This process not only requires users to have some acoustic knowledge, but also involves cumbersome wiring, affecting the convenience of the user experience and the aesthetics of the home.

[0003] Chinese Patent Application No. 201911072908.2 discloses a wireless multi-channel audio system and its automatic channel calibration method. During automatic channel calibration, a DSP control chip sequentially sends ranging commands to each wireless speaker. The microphone array feeds back the collected ranging commands to the DSP control chip for processing and sequentially calculates the direction of the sound. The DSP control chip matches the channels of each wireless ultrasonic speaker based on the data from each direction. Finally, the DSP control chip controls the wireless ultrasonic speaker to adjust its deflection angle.

[0004] Traditional methods have significant drawbacks. They rely on the DSP control chip in the center speaker for centralized position calculation and role assignment. If the center speaker malfunctions or restarts, the channel calibration function of the entire system will be completely lost, requiring a complex manual calibration process to be repeated. The complex coordinate positioning algorithm calculates the absolute flight time of each speaker to the left and right microphones to estimate the absolute position of each speaker in the room. Once calibration is completed, the speaker role is fixed. If the user moves the speaker position or adds new speaker devices during playback, the entire calibration process needs to be repeated. Summary of the Invention

[0005] To address the aforementioned problems, this invention provides a multi-channel speaker system based on Bluetooth Auracast and spatial awareness.

[0006] The multi-channel speaker system based on Bluetooth Auracast and spatial awareness adopts the following technical solution.

[0007] A multi-channel speaker system based on Bluetooth Auracast and spatial awareness includes the following modules:

[0008] The audio broadcast source transmission module starts the audio broadcast source, encodes the audio to be played into a public broadcast audio stream containing multi-channel audio data, and transmits the public broadcast audio stream outward at fixed broadcast time intervals;

[0009] The public broadcast stream synchronization locking module allows multiple audio devices to listen to and lock onto the public broadcast audio stream, capture the physical time of arrival of broadcast data packets, and generate a unified physical layer time reference as the starting point for coordinated actions.

[0010] The ordered acoustic detection signal transmission module, based on a unified physical layer time reference, drives each audio device to emit high-frequency detection tones from its loudspeakers within a preset time slot, forming a sequence of acoustic detection signals that do not overlap in time.

[0011] The original sound wave arrival time difference generation module uses a microphone array to receive high-frequency detection tones in a non-emitting state audio device, records the time when the sound arrives at different microphones, and generates the original sound wave arrival time difference that represents the direction of the sound source.

[0012] The global measurement dataset construction module allows each audio device to send its own generated raw sound wave arrival time difference via connectionless broadcasting, and receive similar data broadcast by other audio devices, summarizing and generating a global measurement dataset that includes measurement results between devices within the group.

[0013] The topology weight analysis and calculation module allows each audio device to independently analyze the global measurement dataset, calculate its relative distance and positional relationship with other members in the group, and generate a topology weight value.

[0014] The channel role election and locking module uses topology weight values ​​to quantify the position of audio devices in the spatial topology of the group. Each audio device autonomously elects and locks its channel role in the multi-channel system based on the calculated topology weight value, and generates channel playback instructions.

[0015] The multi-channel synchronous playback execution module allows each audio device to execute channel playback commands, extract channel data corresponding to the channel role from the continuously received public broadcast audio stream, and play it synchronously.

[0016] In one embodiment of the present invention, the audio broadcast source transmission module is specifically configured to perform the following operations:

[0017] The audio broadcast source device enables its Bluetooth broadcast function and sets it to Auracast broadcast mode;

[0018] The original audio content is input into a multi-channel encoder, which separates and encapsulates it into multi-channel audio data containing the left channel, right channel, center channel and surround channel.

[0019] The encapsulated data packets are continuously transmitted at fixed broadcast intervals to form a public broadcast audio stream that can be received synchronously by all audio equipment.

[0020] In one embodiment of the present invention, the public broadcast stream synchronization locking module is specifically configured to perform the following operations:

[0021] When the Bluetooth receiver chip of the audio equipment detects that the preamble of the data packet of the public address audio stream has arrived at the antenna, it triggers a hardware interrupt.

[0022] Read the internal clock count of the chip and record the physical layer arrival time of the data packet;

[0023] All audio devices agree on the physical layer time of the same data packet they capture as the zero point of timing, thus establishing a unified physical layer time reference.

[0024] In one embodiment of the present invention, the ordered acoustic detection signal transmitting module is specifically configured to perform the following operations:

[0025] All audio equipment determines the order in which they transmit high-frequency probe tones and the delay time relative to a unified starting time point by using a time slot allocation table generated according to preset rules.

[0026] When the clock reaches the start of its assigned time slot, the audio equipment drives its speakers to emit a high-frequency sound signal that is inaudible to the human ear as a high-frequency detection tone.

[0027] The high-frequency detection tones emitted by different audio devices are arranged sequentially in time, without overlapping, forming an acoustic detection signal sequence that covers the entire audio group.

[0028] In one embodiment of the present invention, the original sound wave arrival time difference generation module is specifically configured to perform the following operations:

[0029] The receiving end's audio equipment activates the microphone array to continuously sample and detect the arrival event before the high-frequency probe tone;

[0030] Based on a unified physical layer time reference, the first absolute time of wavefront arrival at the first microphone in the array and the second absolute time of arrival at the second microphone are recorded respectively.

[0031] The difference between the first absolute time and the second absolute time is calculated to obtain the original sound wave arrival time difference after eliminating the influence of flight time.

[0032] In one embodiment of the present invention, the global measurement dataset construction module is specifically configured to perform the following operations:

[0033] Each audio device encapsulates the original sound wave arrival time difference, its own identifier, and the target transmitter identifier into a Bluetooth Low Energy broadcast packet;

[0034] At preset periodic intervals, Bluetooth Low Energy broadcast packets are transmitted to the surrounding environment without establishing a point-to-point connection.

[0035] Simultaneously, it scans and parses broadcast packets from other devices, stores its own measurement data and the received data from other devices in a local summary table, and constructs a global measurement dataset.

[0036] In one embodiment of the present invention, the topology weight analysis and calculation module is specifically configured to perform the following operations:

[0037] Extract the raw acoustic wave arrival time difference for a specific device from the global measurement dataset;

[0038] Using a preset sound wave propagation speed constant, the clock deviation between devices is eliminated by exchanging bidirectional measurement data, the sound wave propagation time is calculated, and the relative distance estimate representing the spatial interval between devices is calculated by the sound wave propagation time and the sound wave propagation speed.

[0039] The relative distance estimate serves as the basic input data for subsequent calculation of the topology weight value;

[0040] By summing up the estimated relative distances of this device to all other audio devices in the group, and calculating their reciprocal or negative correlation values, the center weight, which characterizes the degree of centrality, is obtained.

[0041] The device with the highest center weight in the identification group is used as a temporary reference point. The relative distance between the device and the temporary reference point is estimated, and the orientation information derived from the microphone array is used to obtain the surrounding weight that represents the bias.

[0042] The output includes a combination of center weights and surrounding weights as topology weight values.

[0043] In one embodiment of the present invention, the voice channel role selection locking module is specifically configured to perform the following operations:

[0044] Each audio device compares its own topology weight value with the weight values ​​declared by other devices, which are decoded from the broadcast packets;

[0045] The roles are determined according to preset election rules, such as: the one with the highest center weight automatically locks itself as the center channel playback role; the device to the left of the center weight device and the surrounding weight conforms to the front characteristics automatically locks itself as the left front channel role.

[0046] Once the role is determined, the device generates instructions locally, commanding its own audio decoding module to prepare to extract the corresponding channel data.

[0047] In one embodiment of the present invention, the multi-channel synchronous playback execution module is specifically configured to perform the following operations:

[0048] The audio decoding module of the audio equipment receives the channel playback command and parses the target role identifier contained therein;

[0049] Configure data filters to separate the channel data that matches the target role identifier from each frame of the public broadcast audio stream;

[0050] The separated channel data is decoded and used to drive the speakers, enabling precise synchronized playback with other audio devices.

[0051] This invention provides a method for using a multi-channel speaker based on Bluetooth Auracast and spatial awareness, employing the following technical solution:

[0052] The method based on Bluetooth Auracast and spatial awareness multi-channel speakers includes the following steps:

[0053] S1. Start the audio broadcast source, encode the audio to be played into a public broadcast audio stream containing multi-channel audio data, and transmit the public broadcast audio stream at fixed broadcast intervals;

[0054] S2. Multiple audio devices listen to and lock onto the public broadcast audio stream, capture the physical time of arrival of broadcast data packets, and generate a unified physical layer time reference as the starting point for coordinated actions;

[0055] S3. Based on a unified physical layer time reference, each audio device drives the loudspeaker to emit a high-frequency detection tone within a preset time slot, forming a sequence of acoustic detection signals that do not overlap in time.

[0056] S4. When the audio equipment is in a non-transmitting state, it uses a microphone array to receive high-frequency detection tones, records the time when the sound arrives at different microphones, and generates the original sound wave arrival time difference that characterizes the direction of the sound source.

[0057] S5. Each audio device sends the arrival time difference of its own generated original sound waves through connectionless broadcasting, and receives similar data broadcast by other audio devices, and summarizes them to generate a global measurement dataset containing measurement results between devices within the group.

[0058] S6. Each audio device independently analyzes the global measurement dataset, calculates its relative distance and positional relationship with other members in the group, and generates a topology weight value.

[0059] S7. The topology weight value quantifies the position of the audio equipment in the spatial topology relationship within the group. Each audio equipment, based on the calculated topology weight value, autonomously selects and locks its channel role in the multi-channel system and generates channel playback instructions.

[0060] S8. Each audio device executes the channel playback command, extracts the channel data corresponding to the channel role from the continuously received public broadcast audio stream, and plays it synchronously.

[0061] In summary, the present invention has the following beneficial technical effects:

[0062] 1. By providing a unified audio source and physical layer time reference through Bluetooth public broadcasting, unlike complex coordinate positioning, each speaker device can autonomously determine its channel role based on relative distance, reducing the complexity of the algorithm and the requirements for hardware computing power.

[0063] 2. The audio equipment locks onto and decodes the same public address audio stream. The sound source has an inherent synchronization characteristic based on the same physical layer clock reference. By using the physical layer time when the Bluetooth broadcast data packet arrives, a unified time base is established, ensuring the coordinated rhythm of subsequent acoustic detection, data processing, and role selection. Ultimately, this ensures that all devices have time consistency during playback, effectively avoiding the problem of audio-visual asynchrony caused by different transmission links or clock drift.

[0064] 3. The entire configuration process requires no user intervention and does not rely on a specific central control node. Devices exchange data through connectionless broadcasting, avoiding complex networking and connection maintenance costs. Users only need to place the audio equipment anywhere in the room, and after powering it on, the networking, positioning, and role configuration will be completed automatically, realizing the surround sound system as soon as it is put on and ready to use, simplifying the installation process and improving the user experience. Attached Figure Description

[0065] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the accompanying drawings used in the description of the embodiments or the prior art will be briefly introduced below. The drawings are used to provide a further understanding of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0066] Figure 1 This is a flowchart illustrating an embodiment of this application.

[0067] Figure 2 This is a schematic diagram of the framework in the embodiments of this application. Detailed Implementation

[0068] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0069] The following is in conjunction with the appendix Figures 1-2 A preferred description of the present invention is provided below.

[0070] See appendix Figure 1The present invention also proposes a multi-channel speaker system based on Bluetooth Auracast and spatial awareness, comprising the following modules:

[0071] The audio broadcast source transmission module starts the audio broadcast source, encodes the audio to be played into a public broadcast audio stream containing multi-channel audio data, and transmits the public broadcast audio stream to the outside at fixed broadcast time intervals.

[0072] In one embodiment of the present invention, the audio broadcast source transmission module is specifically configured to perform the following operations:

[0073] The audio broadcast source device enables its Bluetooth broadcast function and sets it to Auracast broadcast mode;

[0074] The original audio content is input into a multi-channel encoder, which separates and encapsulates it into multi-channel audio data containing the left channel, right channel, center channel and surround channel.

[0075] The encapsulated data packets are continuously transmitted at fixed broadcast intervals to form a public broadcast audio stream that can be received synchronously by all audio equipment.

[0076] Specifically, to start the audio broadcast source device and put it into working condition, the operator can trigger the startup process of the audio broadcast source device through physical buttons, touch screen or remote control commands.

[0077] The device's main control unit loads the embedded operation and Bluetooth protocol stack and initializes the Bluetooth hardware module. In the Bluetooth protocol stack, the broadcast mode is configured as Auracast broadcast mode. After the mode is enabled, the device is ready to transmit wireless signals to the surrounding space as a broadcast source in accordance with the Bluetooth Auracast technical specification.

[0078] Audio broadcast source devices acquire the original audio content to be played from their internal storage media or external input interface, and digitally encode it according to a preset multi-channel format, such as a five-point-one-channel format.

[0079] The encoding process divides and maps continuous analog sound signals or existing digital audio data into a multi-channel data stream containing independent left channel data, right channel data, center channel data, and surround channel data.

[0080] Multi-channel data streams are encapsulated according to a specific audio encoding format to form a series of continuous audio data packets. The audio broadcasting source device wirelessly transmits the encoded public broadcast audio streams to the outside space in a loop and continuously at a pre-set and fixed broadcast time interval through its antenna. The value of the broadcast time interval is preset in the device firmware to ensure that the data packets are transmitted at a constant rhythm, providing a stable signal source for subsequent receiving devices.

[0081] Audio broadcast source devices refer to hardware devices that serve as the origin of multi-channel audio signals, such as smart TVs, set-top boxes, or dedicated audio transmitters that support Bluetooth broadcasting.

[0082] Bluetooth broadcasting is a working mode supported by the device's wireless communication module, which allows the device to send data to all listening devices within range without establishing a one-to-one connection with a specific receiving device.

[0083] Auracast is a specific broadcast mode defined in the Bluetooth technical specification, designed to broadcast high-quality audio streams to an unlimited number of receiving devices.

[0084] The audio content to be played refers to music, movie soundtracks or other sound materials that need to be presented through a sound system. It is the original sound data source that has not been encapsulated in a specific multi-channel stream, and its format is a stereo or multi-channel original file or stream.

[0085] A multichannel data stream refers to a sequence of digital signals formed after being processed by an encoder. The sound information at different locations is separated into different independent data channels. It is a sequence of data packets with specific frame structures and packet header information. Each data packet contains multiple audio samples from the corresponding time segment.

[0086] Left channel, right channel, center channel, and surround channel are several standard channel roles defined in multi-channel audio formats, corresponding to sound sources on the left, right, center, and side or rear of the listener, respectively.

[0087] A fixed broadcast interval is a constant time length between the start times of two adjacent data packets when an audio broadcast source device transmits consecutive data packets. It is set based on the value range recommended by the Bluetooth Auracast protocol standard and the minimum data refresh rate required to ensure smooth audio playback, such as 7.5 ms or 10 ms.

[0088] Public broadcast audio streams refer to the sequence of wireless signals that are ultimately transmitted by the antenna, containing complete multi-channel information and repeating at a fixed rhythm. As the output of the entire module, it is an open wireless audio signal that can be listened to and decoded by any compatible receiving device.

[0089] For example, using a smart TV with the function as the audio broadcast source device, when the user turns on the TV and selects to play a movie that supports five-point one channel, the TV's main control chip activates the Bluetooth module and configures it to Auracast broadcast mode. The TV's built-in audio processor encodes the movie audio track into a five-point one multi-channel data stream containing the left channel, right channel, center channel, left surround channel, and right surround channel. The TV continuously transmits this public broadcast audio stream through its Bluetooth antenna at a fixed broadcast time interval of 10 ms.

[0090] The public broadcast stream synchronization locking module allows multiple audio devices to listen to and lock onto the public broadcast audio stream, capture the physical time of arrival of broadcast data packets, and generate a unified physical layer time reference as the starting point for coordinated actions.

[0091] In one embodiment of the present invention, the public broadcast stream synchronization locking module is specifically configured to perform the following operations:

[0092] The audio broadcast source device enables its Bluetooth broadcast function and sets it to Auracast broadcast mode;

[0093] The original audio content is input into a multi-channel encoder, which separates and encapsulates it into multi-channel audio data containing the left channel, right channel, center channel and surround channel.

[0094] The encapsulated data packets are continuously transmitted at fixed broadcast intervals to form a public broadcast audio stream that can be received synchronously by all audio equipment.

[0095] Specifically, after multiple audio devices are powered on and started in the physical space, they begin to execute a collaborative process of synchronous listening and locking. After each audio device is powered on, its main control unit loads the embedded system and Bluetooth protocol stack, driving the Bluetooth module to enter the working state.

[0096] The Bluetooth module is initialized to scanning mode, continuously listening to all Bluetooth broadcast signals within its local wireless frequency band, and parsing the header information in the received broadcast data packets.

[0097] When a signal from an audio broadcast source device is detected, the audio device checks the specific service identifier and broadcast name contained in the broadcast data packet to confirm whether the signal is a public broadcast audio stream defined in the audio broadcast source transmitting module. Once the identification and matching are successful, the audio device instructs its Bluetooth module to stop the broad spectrum scan, switch to locking and continuously tracking the signal sequence emitted by the specific broadcast source, and begin to stably receive subsequent audio data packets.

[0098] During this process, the internal baseband processor of the Bluetooth receiver chip in the audio equipment generates a precise hardware interrupt timestamp the instant that the radio frequency signal energy of each broadcast data packet reaches the antenna and completes the underlying demodulation. The timestamp records the precise physical layer moment when the data packet arrives at the antenna.

[0099] All audio devices that successfully locked onto the same public address audio stream independently captured the physical layer arrival times of a series of data packets. Although the signal propagation of each device differed by nanoseconds due to their different spatial locations, they agreed on the physical layer time of the first valid data packet they captured as the unified starting point for all subsequent coordinated actions, thereby establishing a hard synchronization clock reference based on the same physical event within the group.

[0100] Audio equipment refers to an independent hardware unit with audio playback, signal reception and processing capabilities. It is the main body for the execution of this method. Each device includes a main control unit, a Bluetooth module, a speaker and a microphone array.

[0101] Automatically scanning for surrounding Bluetooth broadcast signals is a preset workflow executed by the Bluetooth module of the audio equipment after power-on initialization. It continuously listens for and receives broadcast data packets in a non-connected state within a preset frequency band.

[0102] Locking in and starting continuous reception means that after the audio device identifies the target signal source, it switches the Bluetooth module's working mode from broad-spectrum scanning to directional following in order to stably receive all subsequent data packets from the specific source.

[0103] A Bluetooth receiver chip is a dedicated integrated circuit inside an audio device that is responsible for processing Bluetooth wireless signals. It consists of a hardware module including a radio frequency front-end, a baseband processor, and a link controller.

[0104] The physical layer time when each broadcast data packet arrives at the antenna is the instantaneous time value read from the chip's internal clock source when the baseband processor of the Bluetooth receiver chip detects and successfully synchronizes the RF preamble of the complete broadcast data packet. It is a timestamp in units of chip clock cycles, and its setting is based on the RF signal demodulation and clock recovery mechanism defined in the Bluetooth hardware specification.

[0105] The physical layer time, serving as the unified starting point for subsequent collaborative actions, refers to the hardware timestamp of the first key data packet captured by all audio devices being logically aligned to the same virtual zero point. All subsequent timing operations are offset from this zero point, serving as a logically consensus-based global time reference. Its setting is based on the rigid requirement of synchronization in collaborative ranging.

[0106] For example, in a scenario where an audio broadcast source transmission module is connected, when the smart TV transmits a public address audio stream at 10 ms intervals, two speaker devices, A and B, in the room are powered on. The Bluetooth modules of speaker devices A and B automatically begin scanning and detect the broadcast signal emitted by the TV almost simultaneously.

[0107] By parsing the broadcast packets, both audio devices A and B identified the signal as the desired public address audio stream and locked onto it to begin receiving audio data. When the first complete data packet transmitted by the TV was received by the Bluetooth chip antenna of audio device A, the chip recorded the internal clock count at that moment. .

[0108] After a brief transmission, the same data packet was received by the Bluetooth chip antenna of speaker device B, and the chip recorded the internal clock count as... ,although and Although the numerical values ​​differ, both audio devices A and B will record this moment, which needs to be explained. For audio equipment A, For audio device B, T0 is defined as the unified starting point for subsequent steps.

[0109] The ordered acoustic detection signal transmission module, based on a unified physical layer time reference, drives each audio device to emit high-frequency detection tones within a preset time slot. The frequency of the high-frequency detection tones exceeds 20 kHz, forming a sequence of acoustic detection signals that do not overlap in time.

[0110] In one embodiment of the present invention, the ordered acoustic detection signal transmitting module is specifically configured to perform the following operations:

[0111] Based on a unified physical layer time reference, all audio devices determine the order in which they transmit high-frequency probe tones and the delay time relative to the unified start time point according to the time slot allocation table.

[0112] When the clock reaches the start of its assigned time slot, the audio equipment drives its speakers to emit a high-frequency sound signal that is inaudible to the human ear as a high-frequency detection tone.

[0113] The high-frequency detection tones emitted by different audio devices are arranged sequentially in time, without overlapping, forming an acoustic detection signal sequence that covers the entire audio group.

[0114] When the clock reaches the start of its assigned time slot, the audio equipment drives its speakers to emit a high-frequency sound signal that is inaudible to the human ear as a high-frequency probe tone, forming a sequence of acoustic probe signals that do not overlap in time.

[0115] The specific signal form of the high-frequency probe tone is a linear frequency modulated signal, and its mathematical expression is:

[0116] ;

[0117] Indicates time The signal value at that time, The duration of the signal, that is, the length of time from the start to the end of the signal. For signal amplitude, The starting frequency was set at 40 kHz, which is higher than the upper limit of human hearing. This frequency selection was based on the following considerations: ensuring the frequency is 20 kHz above the upper limit of human hearing to avoid auditory interference for users; selecting a higher frequency to improve time resolution while ensuring the commonly used frequency response range of speakers and microphones, which is typically within 50 kHz; providing sufficient signal characteristics for cross-correlation detection with a bandwidth of 40-45 kHz; and avoiding common environmental noise frequency bands to improve the anti-interference capability of the detected signal. To adjust the frequency so that the signal lasts for a certain duration =The signal is scanned from 40 kHz to 45 kHz within 5 ms, therefore the bandwidth At 5 kHz, this linear frequency modulated signal allows for scanning a wider frequency band in a short time, resulting in better time resolution and anti-interference performance in signal processing.

[0118] The receiver samples the microphone signal. The detection processing includes: passing the sampled signal through a bandpass filter to retain the signal components in the 40-45 kHz frequency band, and comparing the filtered signal with the locally stored transmitted signal template. Perform cross-correlation calculation Find the cross-correlation function The latency corresponding to the global maximum value Delay That is, the relative time when the signal arrives at the microphone with respect to the start of processing, the absolute arrival time. = + ,in This is the local timer reading when the data segment begins to be processed.

[0119] The high-frequency detection tones emitted by different audio devices are arranged sequentially in time, without overlapping, forming an acoustic detection signal sequence that covers the entire audio group.

[0120] After obtaining a unified physical layer time reference, each audio device enters the cooperative acoustic detection phase. Each audio device reads the time slot allocation table from its local memory. The table is stored in the form of a data list and clearly defines the unique logical identifier of each audio device in the group, its corresponding transmission sequence number, and the specific delay time value relative to the unified start time point determined in the public broadcast stream synchronization locking module.

[0121] The time slot allocation table is generated using a distributed negotiation protocol.

[0122] 1. Each device broadcasts its own device identifier and capability information upon power-up;

[0123] 2. After all devices collect information from other devices, they independently generate the same time slot allocation table using the same algorithm;

[0124] 3. The time slot allocation table includes: device ID, transmission sequence, delay time relative to the unified start time point, and time slot protection interval;

[0125] 4. Time slot duration ,in For the duration of the high-frequency detection tone, For protection intervals.

[0126] All audio equipment continuously runs a local timer. The timer uses a unified start time as its zero point. When the timer count reaches the delay time value allocated to this equipment in the time slot allocation table, it reaches the start time of its dedicated time slot. At this time, the audio equipment's control unit sends a drive command to the audio amplifier circuit. The command contains a predefined sequence of digital audio samples.

[0127] The audio amplifier circuit converts the digital sequence into an analog electrical signal and drives the speaker unit to vibrate, thereby emitting a high-frequency sine wave or modulated wave signal with a specific duration and frequency range set above the upper limit of human hearing, such as 40 kHz. This signal is the high-frequency probe tone. Since each audio device operates strictly according to the time slot allocation table, and their respective transmission time slots are allocated as non-overlapping continuous intervals on the time axis, the high-frequency probe tones emitted by different audio devices are strictly arranged in sequence in the time dimension. There is a protective interval between the end of the transmission of the previous device and the beginning of the transmission of the next device. The high-frequency sound signals emitted in the predetermined time sequence together in space form an orderly acoustic probe signal sequence covering the entire audio device group.

[0128] The time slot allocation table generated by the preset rules is static configuration data stored inside each audio device. Its data structure is usually a mapping table that associates device identifiers with transmission order and delay time. Its setting is based on pre-planning during the system design or production stage to ensure that all devices act in an orderly and conflict-free manner.

[0129] The delay time is the length of time that must be waited for the device from a unified start time point, as specified by the time slot allocation table, before the device is allowed to start transmitting high-frequency probe tones.

[0130] The time slot start point refers to the moment allocated to this device when it is allowed to start transmitting high-frequency probe tones. Driving its loudspeaker is the process by which the control unit, through a digital-to-analog converter and a power amplifier, causes the loudspeaker diaphragm to generate mechanical vibrations according to the laws of electrical signals.

[0131] A high-frequency sound signal that is inaudible to the human ear refers to a sound wave with a frequency higher than 20 kHz. Its waveform, frequency and duration are predefined in the device firmware. Its frequency setting is based on avoiding the frequency band that is audible to the human ear to avoid interference, while being within the common operating frequency response range of speakers and microphones.

[0132] The acoustic detection signal sequence is a complete signal combination that is ultimately formed by arranging all the high-frequency detection tones emitted by the entire speaker group in their respective time slots on the timeline.

[0133] For example, suppose the time slot allocation table specifies that: the transmission order of audio device A is 1 and the delay time is 5 ms; the transmission order of audio device B is 2 and the delay time is 15 ms. After the unified start time point T0 is established, the local timer of audio device A starts counting from 0.

[0134] When the timer reaches 5 ms, audio device A determines that it has reached the start of its time slot. The start of the time slot marks the beginning of a time slot. All devices or signals need to be aligned at this time point to ensure the orderliness of data transmission and avoid conflicts. Then, it drives the speaker to emit a high-frequency probe tone with a center frequency of 40 kHz for 5 ms.

[0135] After the audio device A finishes transmitting, the timer of the audio device B continues to count. When the count reaches 15ms, the audio device B determines that it has reached the start of its time slot and then drives the speaker to emit a high-frequency detection tone with the same parameters.

[0136] The detection tones emitted by audio equipment A and audio equipment B are sequential in time, with a 5 ms silence interval in between, forming an acoustic detection signal sequence containing two sound source events.

[0137] The original sound wave arrival time difference generation module uses a microphone array to receive high-frequency probes when the audio device is in a non-emitting state, records the time when the sound arrives at different microphones, and generates the original sound wave arrival time difference that represents the direction of the sound source.

[0138] In one embodiment of the present invention, the original sound wave arrival time difference generation module is specifically configured to perform the following operations:

[0139] The receiving end's audio equipment activates the microphone array to continuously sample and detect the arrival event before the high-frequency probe tone;

[0140] Based on a unified physical layer time reference, the first absolute time of wavefront arrival at the first microphone in the array and the second absolute time of arrival at the second microphone are recorded respectively.

[0141] The difference between the first absolute time and the second absolute time is calculated to obtain the original sound wave arrival time difference after eliminating the influence of flight time.

[0142] Specifically, during each time slot determined by the ordered acoustic detection signal transmission module, the audio equipment first determines its own role according to the time slot allocation table. If the current time slot does not belong to the transmission of this equipment, the equipment automatically switches to monitoring mode and participates in the measurement as a receiver.

[0143] When an audio device is in monitoring mode, it activates all of its built-in microphone units, putting it into a continuous audio sampling state. When the high-frequency detection tone emitted by the ordered acoustic detection signal transmission module travels through space and reaches the receiving end, the sound wave front will successively touch different microphone units in the microphone array.

[0144] The digital signal processor of the receiving device analyzes the sampled data in real time and uses cross-correlation algorithms or threshold detection algorithms to identify the arrival event of the high-frequency probe tone. Once the signal wavefront is detected, the device reads the current value of the local timer. Since the timer has been aligned with the unified physical layer time reference in the public broadcast stream synchronization locking module, the read value represents the absolute time when the sound wave arrives at each microphone.

[0145] The main control unit of the device selects the arrival time of one of the microphones as a reference, subtracts the arrival times of the other microphones from it, or calculates the difference in arrival times between any two microphones. The calculation process eliminates the unknown absolute distance flight time between the transmitter and receiver, and only retains the sound propagation path difference caused by the difference in the spatial position of the microphones, thus obtaining the original time difference data that purely reflects the angle information of the sound source relative to the receiving device.

[0146] The digital signal processor of the receiving device analyzes the sampled data in real time and uses cross-correlation algorithms or threshold detection algorithms to identify the arrival event of the high-frequency probe tone. Based on a unified start time point and a predefined time slot allocation table, the receiving device can determine the transmitter device identifier in the current time slot.

[0147] The generation and synchronization of the time slot allocation table follow the following protocol:

[0148] Initial discovery and list building: After each device locks the public broadcast audio stream in the public broadcast stream synchronization locking module, it begins listening for dedicated system configuration broadcast channels, such as Bluetooth broadcast packets carrying device identifiers and status.

[0149] After detecting all active device identifiers, the broadcast source device or the first master device dynamically generates a time slot allocation table. The generation algorithm is as follows:

[0150] Collect all device identifiers, such as the last 4 bytes of a MAC address, and sort them in ascending order of value.

[0151] Assign a unique transmission serial number to each device =0, 1, 2...

[0152] Calculate the launch delay time:

[0153] );

[0154] in To standardize the initial offset after the start time point, for example, 5 ms. For example, the duration of the high-frequency detection tone is 5ms. For the protection interval, for example, 2 ms.

[0155] Broadcasting and acknowledgment of allocation table: The broadcast source device periodically broadcasts the time slot allocation table through the system configuration broadcast channel. After receiving the broadcast, other devices store the table and reply with a short acknowledgment broadcast containing only their own identifier to ensure that the tables of all devices are consistent.

[0156] Clock synchronization maintenance: Based on the unified physical layer time reference established by the public broadcast stream synchronization locking module, each device uses a phase-locked loop (PLL) or a periodic clock correction algorithm to keep its local timer synchronized with the arrival rhythm of broadcast data packets and compensate for crystal oscillator drift.

[0157] Dynamic adjustment of time slots: If a new device is detected to be joining or an old device is offline (e.g., no probe tone or broadcast data is received for several consecutive cycles), the broadcast source device will recalculate and broadcast an updated time slot allocation table.

[0158] Conflict avoidance: in the protection interval Inside, all devices remain in silent receiving mode to ensure that signal overlap does not occur even with slight clock skew.

[0159] Once a signal wavefront is detected, the device reads the current value of the local timer. Since the timer is aligned with a unified physical layer time reference in the public broadcast stream synchronization locking module, the read value represents the absolute time when the sound wave arrives at each microphone.

[0160] Subsequently, the main control unit of the device selects the arrival time of one of the microphones as the reference, subtracts the arrival times of the other microphones from it, calculates the original sound wave arrival time difference between the high-frequency detection tone and the different microphones of the device, and associates and stores this difference data with the transmitter device identifier corresponding to the current time slot.

[0161] The formula is set as follows:

[0162] ;

[0163] in, Indicates that the same probe tone has reached the 1st The microphone and the first The time difference of arrival of the original sound waves between the microphones, in μs; This indicates that the high-frequency detection tone has arrived at this device before the [number]th ... The absolute moment of each microphone; This indicates that the high-frequency detection tone has arrived at this device before the [number]th ... The absolute moment of each microphone.

[0164] Each audio device integrates a dual-microphone linear array, with the two omnidirectional microphones spaced apart by [distance missing]. ,in Set to 5 cm, two omnidirectional microphones are installed symmetrically on the left and right sides of the front panel of the audio equipment;

[0165] The receiving audio equipment, based on the unified physical layer time reference, records the first absolute moment of arrival of the high-frequency probe sound wave at the first microphone in its microphone array. and the second absolute moment of reaching the second microphone .

[0166] Calculate the difference between the first absolute time and the second absolute time to obtain the time difference between the arrival of the sound wave at the distance between the two omnidirectional microphones. Based on time difference and the geometric spacing of the microphone array Calculate the azimuth angle of the sound source relative to the normal of the microphone array of this device. :

[0167] ;

[0168] in The speed of sound is approximately 340 m / s. The angle between the direction of the sound source and the array normal.

[0169] like This indicates that the sound source is on the right, meaning that this device is on the left side of the sound source; This azimuth angle indicates that the sound source is on the left, meaning the device is on the right side of the sound source. As the basic input for calculating the wrap weight, the angle range is: due to The measurable angle range is approximately [-90°, 90°], which is sufficient to distinguish left from right.

[0170] At the same time, the device records the absolute moment when the probe sound arrives at its reference microphone. Absolute moment This will be used for subsequent distance estimation in collaboration with the transmitter.

[0171] All other audio equipment besides the current transmitting equipment refers to nodes that are not assigned a transmitting task within a specific time slot and therefore devote all their resources to the signal acquisition task.

[0172] A microphone array refers to two or more acoustic-to-electrical conversion sensors integrated into an audio device. They are usually arranged at a fixed geometric spacing, such as in a straight line or in a circle. Microphone arrays are the hardware basis for capturing the spatial characteristics of sound. The setup is based on the principle of geometric direction finding, which requires at least two points to determine the directional differences along a line.

[0173] The arrival time refers to a specific phase point of a sound wave signal, an absolute time point based on a unified time base, such as the rising edge or peak, the instantaneous time value at which the microphone converts it into an electrical signal and it is identified and locked by the system.

[0174] The original sound wave arrival time difference refers to the time interval between the arrival of the same sound source signal at different microphones on the same device, reflecting the geometric relationship between the direction of the sound source and the baseline of the microphone array.

[0175] For example, in a sequential acoustic detection signal transmission module, during the time slot interval of 5 ms to 10 ms after a unified start time point, audio device A is transmitting a high-frequency detection tone. At this time, audio device B determines that it is not in the transmission time slot, so it remains silent and turns on its left and right microphones to listen.

[0176] The high-frequency detection tone emitted by audio device A arrives at audio device B after a certain flight time. Audio device B detects that the signal wavefront arrives at its left microphone 20002 μs after the unified start time point and at its right microphone 20150 μs after the unified start time point.

[0177] Device B measured the time difference between the two internal microphones of the signal from Device A to be -148 μs. According to the formula... The calculated azimuth angle is approximately =-29°, meaning that device A is located to the left of device B.

[0178] In one embodiment of the present invention, the global measurement dataset construction module is specifically configured to perform the following operations:

[0179] Each audio device encapsulates the original sound wave arrival time difference, timestamp, timer, device identifier, and target transmitter identifier into a Bluetooth Low Energy broadcast packet;

[0180] At preset periodic intervals, Bluetooth Low Energy broadcast packets are transmitted to the surrounding environment without establishing a point-to-point connection.

[0181] Simultaneously, it scans and parses broadcast packets from other devices, stores its own measurement data and the received data from other devices in a local summary table, and constructs a global measurement dataset.

[0182] Specifically, after each audio device completes the original sound wave arrival time difference generation module and generates local original sound wave arrival time difference data, it enters the data exchange and integration stage. The control unit of each audio device first formats and encapsulates the original sound wave arrival time difference data temporarily stored in memory.

[0183] During encapsulation, a standard Bluetooth Low Energy Broadcast data packet is generated. The payload area of ​​the data packet is divided into multiple fields, including but not limited to: the unique logical identifier of this device, the transmitter device identifier corresponding to the data generation, and the calculated original sound wave arrival time difference value.

[0184] After the data is packaged, the audio device does not initiate a Bluetooth connection establishment process with any other device. Instead, it calls the broadcast transmission interface of the Bluetooth protocol stack to transmit the data packet as an independent broadcast frame wirelessly to the surrounding space through the antenna at a preset fixed period, such as every 100ms. This process is like throwing the data packet into the air for any device in a listening state to capture.

[0185] Meanwhile, during the intervals when each audio device is not transmitting its own broadcast packets, its Bluetooth module remains in a state of scanning and listening to the broadcast channel.

[0186] When a broadcast packet conforming to a predetermined format is detected from other audio devices, it is received and parsed. During the parsing process, the source device identifier, target transmitter identifier, and corresponding original sound wave arrival time difference data are extracted from the broadcast packet and stored in the local receive data buffer.

[0187] Each audio device has an internal maintenance data summary table, which is continuously updated. The table organizes and stores the data measured by the device itself in the original sound wave arrival time difference generation module as its own measurement data, and the data parsed from the broadcast packets of all other devices as other device data, according to the measurer-measured relationship.

[0188] Once a complete data exchange cycle is completed, the local summary table contains the acoustic measurement results of all devices in the current audio group, excluding the devices' own acoustic measurement results. This complete set of data constitutes the global measurement dataset.

[0189] Among them, the connectionless broadcasting of the original sound wave arrival time difference generated by itself refers to each audio device acting as an independent broadcast node, periodically transmitting data packets containing its own measurement results without requiring confirmation from the receiver.

[0190] Packaging refers to the process of combining multiple data fields into a complete data packet payload according to an agreed order and encoding method.

[0191] The periodic interval refers to the fixed time length between two consecutive transmissions of the same broadcast data packet. The setting is based on balancing data freshness and wireless channel occupancy. For example, based on the coexistence data measured by 200 sets of industrial sensors, 100 ms is determined to be a reasonable interval.

[0192] Throwing broadcast packets into the surrounding environment is a vivid description of the action of connectionless broadcasting, emphasizing that its transmission action is unidirectional and non-directional.

[0193] Receiving similar data broadcast by other devices refers to capturing and decoding broadcast data packets with similar structures emitted by other audio devices by continuously scanning the wireless channel. Parsing refers to the process of separating and extracting valid information fields from the original bit stream of the captured broadcast packets according to a pre-agreed data format.

[0194] The global measurement dataset is a collection of data that is finally built locally for each audio device. It contains the raw sound wave arrival time differences measured between all audio devices in the group. It is a structured data view that can be used for subsequent analysis.

[0195] For example, in connection with the original sound wave arrival time difference generation module, speaker device B generates an original sound wave arrival time difference of 148 μs for speaker device A. Speaker device B packages this data together with its own identifier B and the target transmitter identifier A to form a Bluetooth Low Energy broadcast packet and begins to broadcast it outward at a period of 100 ms.

[0196] Audio device A also generates the original sound wave arrival time difference for audio device B, assuming it is 152 μs, and also packages its identifiers A and B for periodic broadcast. While distributing its own data packets, audio device A also listens to the data packets broadcast by audio device B, and after parsing, obtains the data pair (B, A, 148 μs).

[0197] Audio device A summarizes its own measurement data (A, B, 152μs) and the received data (B, A, 148μs) into a local table. Audio device B also summarizes its own data (B, A, 148μs) and the received data (A, B, 152μs). The local data summary tables of audio devices A and B each contain the measurement results of identifier A to B and identifier B to A, as well as timestamps. This set of two sets of bidirectional measurement results constitutes the global measurement dataset of audio devices A and B.

[0198] In one embodiment of the present invention, the topology weight analysis and calculation module is used to perform the following operations:

[0199] The system extracts the original sound wave arrival time difference for a specific device from the global measurement dataset; using a preset sound wave propagation speed constant, it eliminates clock deviations between devices by exchanging bidirectional measurement data, calculates the sound wave propagation time, and calculates the relative distance estimate representing the spatial interval between devices using the sound wave propagation time and sound wave propagation speed; the relative distance estimate serves as the basis for subsequent calculation of topology weight values; it accumulates the relative distance estimates from this device to all other audio devices in the group, calculates their reciprocal or negative correlation values, and obtains the center weight representing the degree of centrality; it identifies the device with the highest center weight in the group as a temporary reference point, and combines the relative distance estimate from this device to the temporary reference point with the azimuth information derived from the microphone array to obtain the surround weight representing the degree of eccentricity; it outputs the combined data containing the center weight and surround weight as the topology weight value.

[0200] Specifically, the device first reads all raw sound wave arrival time difference data related to itself from the global measurement dataset. For each other audio device, it uses the constant speed of sound in air to convert the corresponding raw sound wave arrival time difference value into a relative distance meter characterizing the spatial distance between the two.

[0201] The sound velocity c can be a predefined standard value, such as 340 m / s, or estimated based on the environment through an initialization calibration procedure.

[0202] After completing all relative distance calculations, the device does not attempt to convert these distance relationships into absolute three-dimensional coordinates within the room. Instead, it applies preset weighting rules based on relative distance comparisons and logical judgments. These preset weighting rules are a series of calculation steps and judgment logics pre-stored in the device firmware, used to map relative distance relationships into scores that characterize topological positions. The settings are based on the logical requirements of the multi-channel system for speaker positions.

[0203] The calculation of the center weight is to arithmetically sum the distances of the device to each other member in the group. The smaller this sum, the closer the device is to the geometric center of the entire group, the higher its centrality, and the greater its corresponding center weight value.

[0204] The center weight is a value obtained by summing the distances from this device to all other devices and then performing mathematical transformations, such as taking the reciprocal. It is used to quantify the centrality of this device within the group, and the value of the center weight is positively correlated with the degree of centrality.

[0205] The rules require the calculation of surround weight, which is the reference device that the device identifies from broadcast data or predefined information that has been temporarily identified as the center channel within the group. The surround weight is a value obtained by combining the distance and orientation information of the device to the temporary center channel. It is used to quantify the bias attribute of the device in the surround sound field and can distinguish the scalar or vector output values ​​of the left and right and front and back roles.

[0206] Calculate the distance from this device to the center reference device, based on the original sound wave arrival time difference for the center device measured by the microphone array of this device. Symbols are used to determine relative orientation; for example, in a symmetrical microphone array, This indicates the time when the left microphone was detected. This indicates the time when the right microphone was detected; if the left microphone detected the signal before the right microphone... If the center device is located to the right of this device, then this device is located to the left of the center device. This is combined with the rough orientation relationship derived from the microphone array data, for example, by comparing the positive or negative time difference between the left and right microphones to determine left or right, to form a comprehensive evaluation value.

[0207] This evaluation value is used to characterize the degree of left-right or front-back deviation of the device relative to the center of the sound field. Finally, the device combines the calculated center weight value with the surround weight value, for example, by weighted averaging or forming ordered pairs, to output a topology weight value that can quantitatively describe the position of the device in the group's topology. The topology weight value is the final output value that can comprehensively reflect the position of the device in the group's spatial topology, and serves as the input basis for subsequent steps in role selection.

[0208] The topology weight analysis and calculation module independently analyzes the global measurement dataset for each audio device to generate topology weight values.

[0209] The global measurement dataset contains three types of measurement pairs.

[0210] equipment Measuring equipment The transmitted signal is extracted by the device. azimuth angle measured Obtain the original equipment microphone array time difference and equipment The absolute time when the recorded signal arrives at its reference microphone ;

[0211] equipment Measuring equipment The transmitted signal is from the original equipment. microphone array time difference and equipment The absolute time when the recorded signal arrives at its reference microphone

[0212] Distance derivation principle:

[0213] Because all devices share a unified physical layer time reference, their records of absolute time are based on the same time axis. Considering the devices... Emit detection sound, equipment take over.

[0214] It is equipment The absolute moment when the probe tone is first emitted is determined by its local timer according to the time slot allocation table;

[0215] It is equipment The absolute moment when the recorded signal arrives at its reference microphone;

[0216] Sound waves from the device To the equipment The spread time.

[0217] Then we have: , This represents the remaining small clock offset between the two devices.

[0218] The algorithm for eliminating clock skew is as follows:

[0219] Using bidirectional measurement data: ;

[0220] Add the two equations together and eliminate them. ;

[0221] Therefore, transmission time ;

[0222] By exchanging bidirectional measurement data, clock skew between devices can be eliminated, and the accuracy of sound wave propagation from the device can be estimated. To the equipment transmission time .

[0223] The relative distance is ultimately calculated using the following formula:

[0224] in For the speed of sound, Indicates equipment With equipment The estimated relative distance between them, in meters; This indicates the speed at which sound waves travel through the air; Represents the device obtained from the global measurement dataset. The transmitted signal reaches the device The propagation time is measured in seconds (s).

[0225] Based on the estimated relative distances between the devices and azimuth Based on this, a topology map is constructed to represent the relative positional relationships between all devices within the group, reflecting only the relative distance ratios and orientational relationships between devices.

[0226] Let the device currently calculating the topology weights be... For equipment Define center weight and wrap weight .

[0227] Calculate this device To all other devices in the group Sum of relative distance estimates The center weight is defined as The reciprocal formula makes the center weight value larger for devices with smaller distances.

[0228] Wrap weight The device with the highest center weight is identified in the topology map and used as a temporary sound field center reference point. For composite data, it must at least include orientation attributes relative to a reference point, such as left, right, front, and back. This information is derived from the azimuth angle. Derivation of relative positional relationships and estimation of relative distance to the reference microphone. .

[0229] The final output topological weight value is a structure or vector containing the calculated centers. and surrounding weight It is used to accurately characterize the position of this device in the spatial topology of the group.

[0230] Directional determination, if The sound source is on the right side of the audio equipment; The sound source is on the left side of the audio equipment.

[0231] in, This refers to the time difference between the arrival of sound at the left and right microphones, for the same source.

[0232] equipment wrap weight This can be represented as including quantified directional information, such as: left = +1, right = -1 and / or relative distance estimates. The data structure.

[0233] For example, audio device A and audio device B form a pair, and the global measurement dataset of audio device A includes:

[0234] Device A records the absolute moment when the probe tone arrives at its reference microphone. =T0+20002 μs.

[0235] Device B records the absolute moment when the probe tone arrives at its reference microphone. =T0+20150 μs.

[0236] Based on the time slot allocation table, the absolute start time of transmission for device A is known. =T0+5000 μs, the absolute start time of transmission for device B. =T0+15000 μs.

[0237] To estimate the propagation time of the path between device A and device B, the internal processor of audio device B subtracts the two values ​​to obtain a microphone array time difference of 148μs.

[0238] Thus, =10076μs, relative distance estimate =3.43m.

[0239] Device B measured the internal time difference of the signal from device A to be -148 μs, according to the formula The calculated azimuth angle is approximately =-29°, meaning that device A is located to the left of device B.

[0240] The azimuth angle of device B relative to device A is calculated to be approximately =31°, meaning that device B is located to the right of device A.

[0241] Taking device A as an example, there are currently only two devices in the group, therefore the center weight is 0.29m. -1 Assuming device B is identified as a temporary central reference point, the surrounding weight of device A can be characterized as: [right, 3.43m].

[0242] In one embodiment of the present invention, the voice channel role selection locking module is specifically configured to perform the following operations:

[0243] The channel role selection and locking module allows each audio device to autonomously select and lock its channel role in the multi-channel system based on a calculated topology weight value. The topology weight value quantifies the position of the audio device in the spatial topology relationship within the group. This generates channel playback instructions.

[0244] Each audio device compares its own topology weight value with the weight values ​​declared by other devices, which are decoded from the broadcast packets;

[0245] The roles are determined according to the preset election rules. The election rules include: the device with the highest center weight is automatically locked as the center channel playback role; and the device to the left of the device with the center weight and whose surrounding weight meets the front characteristics is automatically locked as the left front channel role.

[0246] Once the role is determined, the device generates instructions locally, commanding its own audio decoding module to prepare to extract the corresponding channel data.

[0247] Specifically, after each audio device completes the topology weight analysis and calculation module and obtains its own topology weight value, it enters the autonomous channel role election stage.

[0248] First, through its continuously running Bluetooth scanning function, it receives and parses data packets periodically broadcast from all other audio devices in the group. These data packets contain the topology weight values ​​calculated and declared by other devices in the topology weight analysis and calculation module. It compares its own topology weight value with the weight values ​​declared by other devices decoded from the broadcast packets. Each device creates a temporary view containing the weight information of all devices in the group locally, and performs sorting and logical analysis on this view.

[0249] The device adds the weight values ​​of other devices obtained from parsing to its own calculated weight values ​​to a local comparison list. The device runs a preset election rule, which is a series of conditional statements embedded in the device firmware. It defines the mapping relationship from a specific weight mode to a fixed channel role. The setting is based on the layout specifications and acoustic principles of standard multi-channel audio systems. The algorithm is based on the sound field layout logic of multi-channel systems and maps different topological weight features to specific channel roles.

[0250] For example, a typical selection rule is to iterate through the comparison list of all devices' center weight values ​​and determine the device with the highest center weight value as the most suitable to play the role of center channel.

[0251] For non-center channel roles, the rules will further analyze the surround weight information of the devices. For example, after the device with the highest center weight is determined, the rules will filter out the device located to the left of the center device, whose surround weight position information is clearly left and meets the front distance characteristics, and determine it as the left front channel role; similarly, the right front, left surround, right surround, and other roles can be determined.

[0252] Once a device determines its role according to the election rules, it autonomously and unilaterally locks its role status in its internal status register and marks this status as the final decision. Autonomously locking the role as center channel playback means that after the device runs the election rules and determines that it meets all the conditions to become the center channel, it permanently sets its functional role locally until the next re-election, without requiring authorization or confirmation from external devices.

[0253] Once the role is locked, the device's control unit generates an internal command carrying the determined channel role identifier and sends it to the device's audio decoding module, instructing it to enter the corresponding work preparation state.

[0254] The election rules will be implemented with the following priority:

[0255] a) Center Channel Selection: Compare the center weight values ​​of all devices in the list. The device with the highest center weight value is designated as the center channel. If there is a tie for the highest value, the device's unique identifier, such as its MAC address, is compared, and the one with the lower value is selected.

[0256] b) Front Channel Selection: Among the remaining devices, selection is based on the orientation information represented by their surround weights. Devices located to the left of the center channel are added to the left channel candidate pool; those to the right are added to the right channel candidate pool. Within each candidate pool, the distance from the device to the center channel is calculated. If the distance is less than the preset distance threshold... If so, the device is determined to meet the pre-existing characteristics.

[0257] c) Role assignment: Among the devices that meet the front-facing characteristics, select the device closest to the center device on each left / right side and lock it as the left front channel and right front channel role respectively.

[0258] d) Surround channel selection: Based on their location information, the remaining devices after allocation will be locked as either the left or right surround channel.

[0259] 1. Pre-set distance threshold Determination method

[0260] Adaptive calculation: The threshold is not a fixed value, but is dynamically calculated based on the spatial distribution of the current device group;

[0261] Before the election began, all devices knew their distance to the temporary intermediate device. Calculate all of .

[0262] set up = ,in For example, empirical coefficients. =0.8 indicates that the front-end device should be relatively close to the center, adaptable to different room sizes and layouts, and automatically distinguish between the front-end and surrounding areas.

[0263] 2. Detailed arbitration mechanism for role conflicts

[0264] Front channel conflict, such as multiple candidate devices on the same side:

[0265] Select from the candidate pool on the left. The smallest device is used as the left front channel.

[0266] If the distances are equal and within the measurement error range, the signal reception strength indicator of the comparison device is compared with the measured value of the center device, and the device with the larger RSSI is selected. If they are still the same, the comparison device's unique identifier is used.

[0267] Surround channel allocation:

[0268] Devices on the same side that are not selected as the front surround are automatically assigned to the same side surround channels. If there are more than one candidate device for the same side surround, they are sorted from closest to farthest from the center device, with the closest one assigned as the side surround and the next closest one assigned as the rear surround. If 7.1 channels are supported, etc.

[0269] Handling situations where the number of devices exceeds the available audio channels:

[0270] Supports role redundancy or silent standby. Devices that fail to be elected will enter standby mode, only receiving audio streams but not playing them. If a role device fails, the standby device can trigger a re-election.

[0271] Once the device determines its role according to the election rules, it autonomously and unilaterally locks the role status in its internal status register and marks this status as the final decision. After the role is locked, the control unit immediately generates an internal instruction carrying the determined channel role identifier and sends it to the device's audio decoding module, commanding it to enter the corresponding operational preparation state.

[0272] An example of connecting the topology weight analysis calculation module, assuming there are multiple devices, with devices A and B as the main focus in this example:

[0273] Center channel selection: Compare the center weight values ​​of all devices, and select the one with the highest weight value as the center channel;

[0274] Front channel selection: After the center channel is determined, select from the remaining channels;

[0275] Based on the orientation information in the surrounding weights, for example, left / right are divided into left candidate pool and right candidate pool;

[0276] Calculate the distance D from each candidate device to the central device.

[0277] If D < The forward distance threshold can be dynamically calculated to determine if the device meets the forward characteristics.

[0278] On each side, select the device that is closest to the center and meets the characteristics of a front-facing camera, and lock it as the left front-facing camera and the right front-facing camera respectively;

[0279] Surround channel selection: The remaining devices are assigned as left or right surround based on their location;

[0280] Dynamic pre-distance threshold Calculation example:

[0281] Assuming the current equipment group has 5 devices, their distances to device B (assuming it's temporarily centralized) are [3.43, 2.10, 4.50, 3.80, 2.90] m respectively. The median M = 3.43 m. Taking an empirical coefficient α = 0.8, then... =0.8×3.43≈2.74m.

[0282] The specific selection process between equipment A and equipment B:

[0283] Center channel selection: Device A compares its own center weight of 0.29 with the center weight of Device B (0.35) obtained from the decoded broadcast packet, as well as the center weights of other devices that may exist. Device B performs the same comparison.

[0284] Result: Device B has the highest center weight (0.35 > 0.29), therefore Device B automatically locks itself into the center channel role;

[0285] Device A withdraws from the race for the center position and moves on to the next round.

[0286] Front channel selection: Device A checks its own surround weight, with its orientation attribute set to right, but using itself as the reference frame. After determining that Device B is the center channel, Device A recalculates its orientation relative to Device B: based on... = -29° indicates that device A is to the left of device B. Therefore, device A enters the left candidate pool. Device A calculates its distance to the center device B: =3.43m;

[0287] Compare With current dynamic calculation For example, if 2.74m is obtained, then 3.43m > 2.74m. Device A does not meet the front channel characteristics and is not assigned as the left front channel.

[0288] Surround channel selection: Device A does not meet the front channel characteristics and automatically enters the surround channel allocation process. Based on its position to the left of the center device B, device A is automatically locked as the left surround channel role.

[0289] Generate audio channel playback instructions: Device B generates an instruction to command its audio decoding module to extract and decode the center channel data; Device A generates an instruction to command its audio decoding module to extract and decode the left surround channel data.

[0290] If the system has only two devices:

[0291] The system can execute the following simplified election rules: no center channel is assigned because neither device is in the true center; front channels are assigned based on relative orientation. If device A is to the left of device B, device A is locked as the left front channel; if device B is to the right of device A, device B is locked as the right front channel.

[0292] In one embodiment of the present invention, the multi-channel synchronous playback execution module is specifically configured to perform the following operations:

[0293] The multi-channel synchronous playback execution module allows each audio device to execute channel playback commands, extract channel data corresponding to the channel role from the continuously received public broadcast audio stream, and play it synchronously.

[0294] The audio decoding module of the audio equipment receives the channel playback command and parses the target role identifier contained therein;

[0295] Configure data filters to separate the channel data that matches the target role identifier from each frame of the public broadcast audio stream;

[0296] The separated channel data is decoded and used to drive the speakers, enabling precise synchronized playback with other audio devices.

[0297] Specifically, after each audio device locks its own channel role in the channel role election and locking module and generates internal instructions, it enters the final audio playback execution stage. The audio decoding module of the audio device continuously receives and buffers the raw data packets from the public broadcast audio stream that has been locked in the public broadcast stream synchronization locking module.

[0298] When an internal instruction arrives at the audio decoding module, the module dynamically configures its internal data filter based on the channel role identifier carried in the instruction.

[0299] The working logic of the filter is as follows: for each received multi-channel audio data frame, only the original audio sample data belonging to the channel role it plays in the frame is extracted and retained, while the sample data of all other channels in the frame are discarded or ignored.

[0300] For example, in a device with the role of the left front channel, the filter only allows left front channel data in the data frame to pass through. The audio decoding module decodes the filtered original audio sample sequence containing only a single channel and converts it into a pulse code modulation or analog audio signal that can be processed by the speaker driver circuit.

[0301] The audio signal is sent to the power amplifier of the device, which drives the speaker unit to vibrate and produce sound. Since the audio signals played by all audio devices come from the same public broadcast audio stream, and the playback action of each device is driven by the arrival rhythm of the data packets in the stream, the sound emitted by all speakers is strictly synchronized in time from the sound source, thereby achieving a precise synchronous playback effect of multi-channel audio.

[0302] Among them, extracting the corresponding channel data from the continuously received public broadcast audio stream means that the audio decoding module selectively reads and separates the multi-channel data stream according to instructions, and only obtains the part of audio information that matches its own role.

[0303] Real-time filtering and decoding means that the data selection and format conversion process is synchronized with the arrival of audio data packets in order to maintain the real-time performance and smoothness of playback.

[0304] Sending the processed audio signal to the speaker for playback means transmitting the final processed audio electrical signal to the sound-generating unit, converting it into sound waves. Since the sound source of all audio equipment comes from the same and synchronized public broadcast audio stream, precise synchronous playback of multi-channel audio is achieved. The fundamental reason for this result is that all devices share the same audio data source and clock reference with strict timing, thereby eliminating the problem of audio-visual asynchrony or phase difference between channels caused by different transmission links or clock drift at the physical layer.

[0305] See attached document Figure 2 A method based on Bluetooth Auracast and spatially aware multi-channel speakers includes the following steps:

[0306] S1. Start the audio broadcast source, encode the audio to be played into a public broadcast audio stream containing multi-channel audio data, and transmit the public broadcast audio stream at fixed broadcast intervals;

[0307] S2. Multiple audio devices listen to and lock onto the public broadcast audio stream, capture the physical time of arrival of broadcast data packets, and generate a unified physical layer time reference as the starting point for coordinated actions;

[0308] S3. Based on a unified physical layer time reference, each audio device drives the loudspeaker to emit a high-frequency detection tone within a preset time slot, forming a sequence of acoustic detection signals that do not overlap in time.

[0309] S4. When the audio equipment is in a non-transmitting state, it uses a microphone array to receive high-frequency detection tones, records the time when the sound arrives at different microphones, and generates the original sound wave arrival time difference that characterizes the direction of the sound source.

[0310] S5. Each audio device sends the arrival time difference of its own generated original sound waves through connectionless broadcasting, and receives similar data broadcast by other audio devices, and summarizes them to generate a global measurement dataset containing measurement results between devices within the group.

[0311] S6. Each audio device independently analyzes the global measurement dataset, calculates its relative distance and positional relationship with other members in the group, and generates a topology weight value.

[0312] S7. Each audio device, based on the calculated topology weight value, which quantifies the position of the audio device in the spatial topology relationship within the group, autonomously selects and locks its channel role in the multi-channel system, and generates channel playback instructions.

[0313] S8. Each audio device executes the channel playback command, extracts the channel data corresponding to the channel role from the continuously received public broadcast audio stream, and plays it synchronously.

[0314] The above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.

Claims

1. A multi-channel soundbar system based on Bluetooth Auracast and spatial awareness, characterized in that, The method comprises the following modules: An audio broadcast source transmission module starts an audio broadcast source, encodes audio to be played into a public broadcast audio stream containing multi-channel audio data, and transmits the public broadcast audio stream outward at fixed broadcast time intervals; A public broadcast stream synchronization locking module is listened to and locked by multiple sound equipment, captures the physical time when the broadcast data packet arrives, and generates a unified physical layer time reference as a starting point for cooperative action; An ordered acoustic probe signal transmission module is based on the unified physical layer time reference, and each sound equipment drives a loudspeaker to emit a high-frequency probe sound in a preset time slot to form a sequence of acoustic probe signals that do not overlap in time; An original sound wave arrival time difference generation module is used by sound equipment in a non-transmission state to receive high-frequency probe sounds using a microphone array, record the time when sound arrives at different microphones, and generate original sound wave arrival time differences representing the direction of the sound source; A global measurement data set construction module is used by each sound equipment to send the original sound wave arrival time differences generated by itself through connectionless broadcast, receive similar data broadcast by other sound equipment, and aggregate to generate a global measurement data set containing measurement results between devices in the group; A topology weight analysis calculation module is used by each sound equipment to independently analyze the global measurement data set, calculate the relative distance and position relationship of itself relative to other members in the group, and generate a topology weight value; A channel role election locking module is used by each sound equipment to autonomously elect and lock the channel role it plays in the multi-channel system according to the calculated topology weight value, which quantitatively represents the position of the sound equipment in the spatial topology of the group, and generate a channel playback instruction; A multi-channel synchronous playback execution module is used by each sound equipment to execute the channel playback instruction, extract the channel data corresponding to the channel role from the continuously received public broadcast audio stream and perform synchronous playback.

2. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The audio broadcast source transmission module is specifically configured to perform the following operations: The audio broadcast source device enables its Bluetooth broadcast function and sets it to Auracast broadcast mode; Raw audio content is input into a multi-channel encoder, separated and packaged into multi-channel audio data containing left, right, center and surround channels; The packaged data packets are continuously transmitted at fixed broadcast time intervals to form a public broadcast audio stream for synchronous reception by all sound equipment.

3. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The public broadcast stream synchronization locking module is specifically configured to perform the following operations: When the Bluetooth receiving chip of the sound equipment detects the arrival of the data packet preamble of the public broadcast audio stream at the antenna end, it triggers a hardware interrupt; The clock count in the chip is read to record the physical layer time when the data packet arrives; All sound equipment agrees on the physical layer time when the same data packet is captured as the timing zero point to establish a unified physical layer time reference.

4. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The ordered acoustic probe signal transmission module is specifically configured to perform the following operations: All sound equipment determines the order of transmitting high-frequency probe sounds and the delay time relative to the unified starting time point according to the time slot allocation table generated by the preset rule; When the clock reaches the start of its assigned time slot, the sound device drives its speaker to emit a high-frequency sound signal that is inaudible to human ears as a high-frequency probe sound; The high-frequency probe sounds emitted by different sound devices are sequentially arranged in time and do not overlap with each other, forming an acoustic probe signal sequence covering the entire sound group.

5. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The original sound wave arrival time difference generation module is specifically configured to perform the following operations: The sound device at the receiving end starts the microphone array for continuous sampling to detect the arrival event before the high-frequency probe sound; Based on the unified physical layer time reference, the first absolute time when the wave front arrives at the first microphone and the second absolute time when the wave front arrives at the second microphone are recorded respectively; The difference between the first absolute time and the second absolute time is calculated to obtain the original sound wave arrival time difference that eliminates the influence of the flight time.

6. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The global measurement data set construction module is specifically configured to perform the following operations: Each sound device encapsulates the original sound wave arrival time difference, the device identifier, and the target transmission source identifier into a Bluetooth low energy broadcast packet; At a preset periodic interval, the Bluetooth low energy broadcast packet is transmitted to the surrounding environment without establishing a point-to-point connection; Simultaneously scan and parse the broadcast packets from other devices, and store the measurement data of the sound device and the received measurement data of other devices in a local summary table to construct a global measurement data set.

7. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The topology weight analysis calculation module is specifically configured to perform the following operations: From the global measurement data set, the original sound wave arrival time difference for a specific device pair is extracted; Using a preset sound wave propagation speed constant, the clock deviation between devices is eliminated by exchanging bidirectional measurement data, the sound wave propagation time is calculated, and the relative distance estimate value representing the spatial interval between devices is calculated by the sound wave propagation time and the sound wave propagation speed; The relative distance estimate value is used as the basis for input data for subsequent calculation of the topology weight value; The relative distance estimate value from the sound device to all other sound devices in the group is accumulated, and the reciprocal or negatively correlated value is calculated to obtain the center weight representing the center degree; The device with the highest center weight in the group is identified as the temporary reference point, and the relative distance estimate value from the sound device to the temporary reference point and the azimuth information derived by the microphone array are combined to obtain the surround weight representing the degree of deviation; The combination data containing the center weight and the surround weight are output as the topology weight value.

8. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The sound channel role election and locking module is specifically configured to perform the following operations: Each sound device compares its topology weight value with the weight value declared by other devices decoded from the broadcast packet; According to the preset election rule, the role is determined, and the election rule includes that the device with the highest center weight is automatically locked as the center channel playback role; The device on the left side of the center weight device and with the surround weight meeting the front position characteristics is automatically locked as the left front sound channel role; After the role is determined, the sound device generates a sound channel playback instruction locally.

9. The Bluetooth Auracast and spatial awareness based multi-channel soundbar system of claim 1, wherein, The multi-channel synchronous playback execution module is specifically configured to perform the following operations: The audio decoding module of the sound device receives the sound channel playback instruction and parses the target role identifier contained therein; The data filter is configured to separate the sound channel data matching the target role identifier from each frame of data in the public broadcast audio stream. The separated sound channel data is decoded and used to drive the loudspeaker, realizing accurate synchronization playing with other sound equipment.

10. A method for multi-channel sound box based on Bluetooth Auracast and spatial awareness, comprising the following steps: S1, starting an audio broadcast source, encoding the audio to be played into a public broadcast audio stream containing multi-channel audio data, and emitting the public broadcast audio stream outward at a fixed broadcast time interval; S2, multiple sound equipment listens to and locks the public broadcast audio stream, captures the physical time when the broadcast data packet arrives, and generates a unified physical layer time reference as the starting point of cooperative action; S3, based on the unified physical layer time reference, each sound equipment drives the loudspeaker to emit high-frequency probe sound within a preset time slot, forming a sequence of non-overlapping acoustic probe signals in time; S4, the sound equipment in the non-emitting state uses the microphone array to receive the high-frequency probe sound, records the time when the sound arrives at different microphones, and generates the original sound wave arrival time difference representing the direction of the sound source; S5, each sound equipment sends the original sound wave arrival time difference generated by itself through connectionless broadcast, and receives the same kind of data broadcast by other sound equipment, and generates a global measurement data set containing the measurement results between devices in the group; S6, each sound equipment independently analyzes the global measurement data set, calculates the relative distance and position relationship of itself relative to other members in the group, and generates a topology weight value; S7, the topology weight value quantifies the position of the sound equipment in the spatial topology relationship in the group, and each sound equipment selects and locks the sound channel role it plays in the multi-channel system according to the calculated topology weight value, and generates a sound channel playing instruction; S8, each sound equipment executes the sound channel playing instruction, extracts the sound channel data corresponding to the sound channel role from the continuously received public broadcast audio stream and plays it synchronously.

Citation Information

Patent Citations

  • Wireless multi-channel sound system and automatic channel calibration method thereof

    CN110677771A

  • Conference sound box based on multi-beam forming microphone array and sound wave pickup method thereof

    CN111918169A

  • Audio playing method and device, computer readable storage medium and robot

    CN112492506A