Wireless audio data transmission method, device and system
By enabling multiple controllers in wireless audio transmission through the MCBAIG link protocol to receive and respond with acknowledgment data packets, the problem that BLE Audio cannot meet the requirements for high-definition lossless audio transmission is solved, achieving higher transmission reliability and bandwidth efficiency.
Patent Information
- Application Number
- CN202511363195.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-04
- Publication Date
- 2025-12-12
AI Technical Summary
BLE Audio technology cannot meet the high-reliability wireless transmission requirements of high-definition lossless audio, and existing technologies cannot provide sufficient bandwidth and reliability.
The Multi-Controller Batch Acknowledgment Isochronous Group (MCBAIG) link protocol is adopted. By selectively activating multiple controllers during wireless audio transmission to receive and send back acknowledgment data packets, spatial diversity gain is used to improve transmission reliability and bandwidth efficiency.
It effectively reduces the retransmission rate, improves the bandwidth efficiency and reliability of wireless audio data transmission, and meets the transmission requirements of high-definition lossless audio.
Smart Images

Figure CN121126436A_ABST
Abstract
Description
[0001] The present application is a divisional application of application No. 202410718753.X, filed on June 4, 2024, entitled "Wireless audio data transmission method, device and system". TECHNICAL FIELD
[0002] The present application relates to the technical field of wireless communication, in particular to a wireless audio data transmission method, device and system. BACKGROUND
[0003] Bluetooth Low Energy (BLE) Audio technology adopts a synchronous isochronous channel (Isochronous Channels) protocol, including a connected isochronous stream (CIS: Connected Isochronous Stream) link for single-point to single-point communication, a connected isochronous group (CIG: Connected Isochronous Group) link protocol composed of at least one CIS link, a broadcast isochronous stream (BIS: Broadcast Isochronous Stream) link for single-point to multi-point communication, and a broadcast isochronous group (BIG: Broadcast Isochronous Group) link protocol composed of at least one BIS link, bringing people lower power consumption, lower cost, lower latency, higher quality, and more rich wireless audio services.
[0004] However, the maximum 2Mbps physical layer of BLE Audio and the effective bandwidth provided by CIG or BIG link can only provide isochronous stream audio services relying on lossy compression encoding and packet loss concealment (PLC: Packet Loss Concealment), and cannot meet the bandwidth requirements of high-resolution audio (High Resolution Audio), lossless audio (Lossless Audio) or high-resolution lossless audio (HRLA: High Resolution Lossless Audio) high-reliability wireless transmission. Even if the next generation of BLE Audio adopts a higher data throughput (HDT: Higher Data Throughput) to reach a maximum of 4Mbps physical layer and batch transmission and batch confirmation technology, it cannot guarantee the reliability of HRLA wireless transmission. SUMMARY
[0005] Therefore, the embodiments of the present application provide a wireless audio data transmission method, device and system to improve the reliability of HRLA wireless transmission.
[0006] In a first aspect, embodiments of the present application provide a method for wireless audio data transmission, applied to a first device, the first device comprising a main processor and at least two controllers, one or more of the at least two controllers being selectively enabled during wireless audio transmission, the first device having a first working mode, the method comprising:
[0007] If the first device is in the first working mode, at least two controllers are enabled, and in a batch transmission time interval of a current equal time interval, audio data groups batch-transmitted by a second device are simultaneously received, the audio data groups comprising at least two audio data packets;
[0008] Each enabled controller generates an acknowledgement data packet carrying acknowledgement information according to its own reception of the audio data groups in the current equal time interval and the reception of the audio data groups transmitted by the second device by the first device before the current equal time interval;
[0009] Each enabled controller time-divisionally transmits the generated acknowledgement data packet to the second device in a batch acknowledgement time interval of the current equal time interval.
[0010] In combination with the first aspect, in a possible implementation, the batch acknowledgement time interval comprises a plurality of acknowledgement sub-intervals; each enabled controller time-divisionally transmits the generated acknowledgement data packet to the second device in the batch acknowledgement time interval of the current equal time interval, comprising:
[0011] Each enabled controller occupies an acknowledgement sub-interval in the batch acknowledgement time interval to transmit the generated acknowledgement data packet, wherein the acknowledgement sub-intervals occupied by each enabled controller are different from each other.
[0012] In combination with the first aspect, in another possible implementation, the first device further has a second working mode, and the method further comprises: if the first device is in the second working mode, according to the evaluated channel quality of each controller, one controller is selected from the at least two controllers and enabled to receive the audio data groups batch-transmitted by the second device in a batch transmission time interval of a current equal time interval;
[0013] The enabled controller generates an acknowledgement data packet carrying acknowledgement information according to its own reception of the audio data groups in the current equal time interval and the reception of the audio data groups transmitted by the second device by the first device before the current equal time interval;
[0014] The enabled controller transmits the acknowledgement data packet to the second device in a batch acknowledgement time interval of the current equal time interval.
[0015] With reference to the first aspect, in a further possible implementation form of the method, the selecting and enabling one controller from the at least two controllers based on the evaluated channel quality of each controller comprises: periodically evaluating the channel quality between each controller and the second device respectively, and selecting and enabling one controller from the at least two controllers based on the channel quality and a first preset condition.
[0016] The method further comprises: when the first device is in the second working mode, maintaining the data synchronization and channel evaluation functions of all the controllers, and / or at least disabling the remaining controllers which are not enabled from sending the acknowledgement data packet.
[0017] With reference to the first aspect, in a further possible implementation form of the method, the selecting and enabling one controller from the at least two controllers based on the channel quality and a first preset condition comprises:
[0018] When the first channel quality of the first controller is less than a first preset threshold and the second channel quality of the second controller is greater than a second preset threshold, the second controller is selected and enabled, and the first controller is taken as a controller which is not enabled.
[0019] The first controller is one of the at least two controllers, and the second controller is one of the at least two controllers different from the first controller, and the second preset threshold is higher than the first preset threshold.
[0020] With reference to the first aspect, in a further possible implementation form of the method, the method further comprises: periodically evaluating the channel quality between each controller and the second device respectively, and switching the working mode of the first device based on the channel quality and a second preset condition.
[0021] With reference to the first aspect, in a further possible implementation form of the method, the periodically evaluating the channel quality between each controller and the second device respectively, and switching the working mode of the first device based on the channel quality and a second preset condition comprises: in the second working mode, when it is detected that the channel quality between each controller and the second device is less than a first preset threshold, switching the working mode of the first device from the second working mode to the first working mode.
[0022] With reference to the first aspect, in a further possible implementation form of the method, the periodically evaluating the channel quality between each controller and the second device respectively, and switching the working mode of the first device based on the channel quality and a second preset condition comprises:
[0023] In the first working mode, when it is detected that the channel quality between at least one controller and the second device is greater than a second preset threshold, switching the working mode of the first device from the first working mode to the second working mode.
[0024] In a further possible implementation form of the first aspect, the first device further has a third operation mode, and the method further comprises: enabling a target controller to receive the audio data group batch-transmitted by the second device in a batch transmission time slot of a current isochronous interval, if the first device is in the third operation mode, the target controller being one of the at least two controllers and being connected to the main processor;
[0025] The target controller generates an acknowledgement data packet carrying the acknowledgement information according to a reception status of the audio data group by the target controller in the current isochronous interval and a reception status of the audio data group transmitted by the second device before the current isochronous interval.
[0026] The target controller transmits the acknowledgement data packet to the second device in a batch acknowledgement time slot of the current isochronous interval.
[0027] In a further possible implementation form of the first aspect, the first device and the second device perform the wireless audio data transmission communication based on a wireless communication link; the acknowledgement data packet comprises a BAE field for indicating whether to enable a batch data packet acknowledgement function of the wireless communication link.
[0028] If the BAE field indicates to enable the batch data packet acknowledgement function, the acknowledgement data packet further comprises a STARTSN field and a BA mapping table for indicating the acknowledgement information, wherein:
[0029] The STARTSN field is used to indicate a sequence number PDUSN of an audio data packet.
[0030] The BA mapping table is used to indicate information of whether one or more audio data packets starting from the sequence number PDUSN indicated by the STARTSN field are correctly received or information of whether the second device needs to retransmit.
[0031] In a further possible implementation form of the first aspect, each isochronous interval further comprises a transmission TX time slot and a reception RX time slot of a Bluetooth low energy asynchronous connection ACL link, which are used to negotiate whether the first device enables two or more than two controllers and a number of the enabled controllers.
[0032] The second aspect provides a wireless audio data transmission method, applied to a second device, the method comprising:
[0033] Batch-transmitting an audio data group to a first device in a batch transmission time slot of a current isochronous interval, the audio data group comprising at least two audio data packets; the first device comprising a main processor and at least two controllers, one or more of the at least two controllers being selectively enabled in a wireless audio transmission process.
[0034] receiving at least one acknowledgement data packet carrying acknowledgement information sent by the enabled at least one controller in the batch acknowledgement time slot of the current isochronous interval;
[0035] combining the acknowledgement information in all the received acknowledgement data packets to determine the reception of the audio data packets sent by the second device to the first device in the current isochronous interval and the isochronous intervals before the current isochronous interval.
[0036] In combination with the second aspect, in a possible implementation, the batch acknowledgement time slot comprises a plurality of acknowledgement sub-time slots; and the receiving at least one acknowledgement data packet carrying acknowledgement information sent by the enabled at least one controller in the batch acknowledgement time slot of the current isochronous interval comprises: receiving in each of the acknowledgement sub-time slots of the batch acknowledgement time slot to obtain at least one acknowledgement data packet sent by the enabled at least one controller.
[0037] In combination with the second aspect, in another possible implementation, the combining the acknowledgement information in all the received acknowledgement data packets to determine the reception of the audio data packets sent by the second device to the first device in the current isochronous interval and the isochronous intervals before the current isochronous interval comprises:
[0038] According to the acknowledgement information in all the received acknowledgement data packets, determining the audio data packet as not correctly received or needing retransmission by all the acknowledgement data packets indicating the audio data packet as not correctly received or needing retransmission.
[0039] In combination with the second aspect, in yet another possible implementation, the method further comprises: determining a next audio data group based on the reception of the audio data group sent by the second device to the first device, and batch sending the next audio data group to the first device in a next isochronous interval.
[0040] The next audio data group comprises at least one of: an audio data packet to be first sent, an audio data packet to be retransmitted, and a pre-retransmission audio data packet selected from the audio data packet to be first sent and / or the audio data packet to be retransmitted.
[0041] In combination with the second aspect, in yet another possible implementation, the second device and the first device perform the transmission communication of the wireless audio data based on a wireless communication link.
[0042] Each of the audio data packets in the audio data group comprises:
[0043] a BTE word field indicating whether to enable the batch data packet sending function of the wireless communication link.
[0044] If the BTE field indicates that the bulk data packet transmission function is enabled, each audio data packet further comprises:
[0045] a BTN field, used for indicating the total number of bulk-transmitted audio data packets in the current isochronous interval;
[0046] a BTSN field, used for indicating the sequence number of the bulk-transmitted audio data packet in the current isochronous interval;
[0047] a PDUSN field, used for indicating the sequence number of the audio data packet transmitted by the second device;
[0048] a BAN field, used for indicating the number of times that the first device can reply to the acknowledgement data packet.
[0049] In a third aspect, the embodiments of the present application further provide a first device for executing the method in the first aspect or any of the embodiments of the first aspect, wherein the first device comprises a main processor and at least two controllers, one or more of the at least two controllers are selectively enabled in a wireless audio transmission process, and the first device has a first working mode.
[0050] In the first working mode, the at least two controllers are enabled, and wherein:
[0051] each enabled controller is configured to receive a bulk-transmitted audio data group from the second device in a bulk transmission time slot of a current isochronous interval, the audio data group comprising at least two audio data packets;
[0052] each enabled controller is further configured to generate an acknowledgement data packet carrying acknowledgement information according to a reception status of the audio data group by the controller in the current isochronous interval and a reception status of the audio data group transmitted by the second device before the current isochronous interval;
[0053] each enabled controller is further configured to transmit the acknowledgement data packet carrying the acknowledgement information to the second device in a bulk acknowledgement time slot of the current isochronous interval.
[0054] In a possible implementation of the third aspect, each controller comprises one or more of an antenna, a radio frequency unit, a modem unit, a baseband processor, and a link protocol processor; and the main processor is connected to the at least two controllers based on an interface defined in a Bluetooth core specification.
[0055] In combination with the third aspect, in another possible implementation, the at least two controllers include one master controller and one or more slave controllers; the master controller includes a first interface and a second interface defined by the Bluetooth Core Specification, the first interface being used to connect the master processor, and the second interface being used to connect the one or more slave controllers.
[0056] In combination with the third aspect, in another possible implementation, the master controller and the slave controller are packaged in the same chip, and the antenna pins of the master controller and the slave controller are located at two different surfaces of the chip.
[0057] In the fourth aspect, the embodiments of the present application further provide a second device for executing the method in the foregoing second aspect or any of the possible implementations of the second aspect, and the second device includes:
[0058] a transceiving module, configured to batch transmit the audio data group to the first device in a current isochronous batch transmission time interval, and receive at least one acknowledgement data packet carrying acknowledgement information transmitted by the enabled at least one controller in a current isochronous batch acknowledgement time interval; wherein the audio data group includes at least two audio data packets, and the first device includes a master processor and at least two controllers, and one or more of the at least two controllers are selectively enabled;
[0059] a processing module, configured to integrate the acknowledgement information in all the received acknowledgement data packets, and determine the reception status of the audio data group transmitted by the second device to the first device in the current isochronous time interval and the isochronous time interval before the current isochronous time interval.
[0060] In the fifth aspect, the embodiments of the present application further provide a wireless audio data transmission system, including a first device and a second device, and the first device and the second device perform wireless audio data transmission communication based on a wireless communication link.
[0061] wherein the first device is configured to execute the wireless audio data transmission method in the foregoing first aspect or any of the possible implementations of the first aspect; and the second device is configured to execute the wireless audio data transmission method in the foregoing second aspect or any of the possible implementations of the second aspect.
[0062] The wireless audio data transmission method, device and system provided by the embodiment, the first device comprises a main processor and at least two controllers. In the isochronous stream audio data transmission process, the first device can adopt a first working mode, i.e. the receiving functions of two or more than two controllers are simultaneously enabled, and the audio data groups sent in batches from the second device are received, and the audio data groups contain at least two audio data packets. The enabled controllers can also respectively reply to the second device with the confirmation data packets carrying the confirmation information. The method can effectively reduce the retransmission rate and improve the bandwidth efficiency and transmission reliability of the wireless audio data transmission through the spatial diversity gain provided by the multiple controllers of the first device, so as to meet the bandwidth demand of various high-reliability wireless transmission such as high-definition audio, lossless audio or high-definition lossless audio. BRIEF DESCRIPTION OF DRAWINGS
[0063] In order to more clearly illustrate the specific embodiments of the present application or the technical solutions in the prior art, the drawings needed in the specific embodiments or the prior art description will be briefly introduced below. Obviously, the drawings in the following description are some embodiments of the present application, and those skilled in the art can also obtain other drawings according to these drawings without creative labor.
[0064] Figure 1 is a structure schematic diagram of an HRLA system provided by an embodiment of the present application;
[0065] Figure 2a is a structure schematic diagram of a cascade connection between multiple controllers provided by an embodiment of the present application;
[0066] Figure 2b is a structure schematic diagram of a parallel connection between multiple controllers provided by an embodiment of the present application;
[0067] Figure 3 is a flow schematic diagram of a wireless audio data transmission method provided by an embodiment of the present application;
[0068] Figure 4 is a schematic diagram of a MCBAIG link time slot structure provided by an embodiment of the present application;
[0069] Figure 5 is a schematic diagram of the format of a MCBAIS PDU extension header provided by an embodiment of the present application;
[0070] Figure 6 is a flow schematic diagram of another wireless audio data transmission method provided by an embodiment of the present application;
[0071] Figure 7 is a flow schematic diagram of the first device in the first working mode provided by an embodiment of the present application;
[0072] Figure 8a is a flowchart of a first device in a second working mode according to an embodiment of the present application;
[0073] Figure 8b is another flowchart of a first device in a second working mode according to an embodiment of the present application;
[0074] Figure 9 is a flowchart of a first device in a third working mode according to an embodiment of the present application;
[0075] Figure 10 is another flowchart of a wireless audio data transmission method according to an embodiment of the present application;
[0076] Figure 11 is a structural diagram of a first device according to an embodiment of the present application;
[0077] Figure 12 is a structural block diagram of a controller according to an embodiment of the present application;
[0078] Figure 13 is a structural diagram of a second device according to an embodiment of the present application. DETAILED DESCRIPTION
[0079] In order to make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative efforts belong to the scope of the present application.
[0080] The terms "first", "second", and the like in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than that illustrated or described herein, and the objects distinguished by "first", "second" are generally of a kind and do not limit the number of objects, for example, the first object can be one or more. In addition, "and / or" in the specification and claims means at least one of the connected objects, and the character " / " generally represents an "or" relationship between the associated objects before and after.
[0081] The wireless audio data transmission method provided by the embodiments of the present application will be described in detail below with reference to the drawings and specific embodiments and their application scenarios.
[0082] First, a specific application scenario of the technical solution of the present application is introduced, but it can be understood that the technical solution of the present application is not limited to the specific application scenario.
[0083] The present application is applied to a wireless communication system, such as a high-definition lossless audio (HRLA) system, the structure of which is shown in Figure 1 The HRLA system includes an HRLA sending device and an HRLA receiving device. The HRLA sending device and the HRLA receiving device transmit audio data by using the wireless audio data transmission method based on the present embodiment. In a specific embodiment, the wireless communication link protocol realized based on the wireless audio data transmission method described in the present embodiment can be referred to as a multi-controller block acknowledgement isochronous group (MCBAIG) link protocol. The wireless communication link between the HRLA sending device and the HRLA receiving device containing multiple controllers can be referred to as a multi-controller block acknowledgement isochronous stream (MCBAIS) link. The MCBAIG is composed of at least one MCBAIS link.
[0084] In the present embodiment, the at least one MCBAIS link can be used to transmit various audio data, such as high-definition lossy audio data, lossless audio data, and high-definition lossless audio data.
[0085] Optionally, the HRLA sending device is also referred to as an HRLA master device or an MCBAIG master device. The HRLA receiving device is also referred to as an HRLA slave device or an MCBAIG slave device.
[0086] In the present embodiment, the spatial diversity gain provided by the HRLA receiving device containing multiple controllers is used to improve the bandwidth efficiency and reliability of HRLA wireless transmission.
[0087] Further, in the present embodiment, the HRLA receiving device adopts a scalable controller structure. Specifically, the HRLA receiving device includes a host processor and a scalable controller, and the scalable controller includes multiple controllers. Each controller can be in a parallel relationship or a master-slave relationship.
[0088] In some embodiments, the controller can be similar to the controller defined in the Bluetooth specification, i.e. including Radio, Baseband, Link Controller, Link Manager or Link Layer, etc.
[0089] In some embodiments, the scalable controller can be composed of a Master Controller and one or more Slave Controllers.
[0090] In which, the Master Processor communicates with at least one of the Slave Controllers through the Master-Slave interface defined in the Bluetooth Core Specification, such as the Host Controller Interface (HCI). Further, the physical interface of the HCI can be UART, USB or SDIO, etc.
[0091] The Master Controller and the Slave Controllers can be connected in two ways. The first is in cascade / series, and the second is in parallel. As shown in Figure 2a the cascade / series connection diagram, Figure 2b the parallel connection diagram.
[0092] In the connection shown in Figure 2a , the Master Controller includes a first interface and a second interface defined in the Bluetooth Core Specification. The first interface is used to connect the Master Processor, and the second interface is used to connect at least one Slave Controller. Further, the first interface is the HCI interface, and the second interface is also the HCI interface. Specifically, the Master Controller connects the Slave Controller 1 through the second interface, the Slave Controller 1 connects the Slave Controller 2, and so on, until the Mth Slave Controller in cascade / series. The physical interface can be the Universal Asynchronous Receiver / Transmitter (UART), the Universal Serial Bus (USB) or the Secure Digital Input and Output (SDIO), etc. It should be understood that the number of Slave Controllers in cascade / series can be customized according to actual needs.
[0093] In the connection shown in Figure 2bIn the connection mode shown, the plurality of controllers can also be connected in parallel. For example, the host processor connects the plurality of controllers in parallel through a plurality of physical interfaces. Each controller is connected to the host processor through an HCI interface. The plurality of controllers include a master controller, a slave controller 1, and a slave controller M.
[0094] The two connection modes differ in that, in the parallel connection mode shown in Figure 2b , the host processor needs to connect the interfaces of the plurality of controllers in parallel, needs to control the protocols of the plurality of controllers, and the plurality of controllers do not need to be connected to each other. In the cascade connection mode shown in Figure 2a , the connection mode of the host processor and the connection mode of the controller are the same as those of a common BLE Audio or HRLA receiving device.
[0095] In order to obtain better spatial diversity, the master controller and each slave controller are kept at a certain spatial distance in the two connection modes described above. At least the antennas are kept at a sufficient spatial distance, so that the fading correlation coefficient of the wireless signals received by each controller is small enough to provide a large spatial diversity gain. In a specific embodiment, the master controller and the slave controller can be packaged in the same chip, and the antenna pins of the master controller and the slave controller are on two different surfaces of the chip.
[0096] The wireless audio data transmission method provided by the embodiments of the present application is applicable to both HRLA receiving devices in the cascade connection mode and HRLA receiving devices in the parallel connection mode. The embodiments are described taking the HRLA receiving device in the connection mode shown in Figure 2a as an example.
[0097] It should be noted that the roles of the HRLA transmitting device and the HRLA receiving device described above can be interchanged, i.e., the HRLA transmitting device can act as a receiving device, and the HRLA receiving device can act as a transmitting device. Both devices transmit audio data packets to each other, i.e., bidirectional transmission of audio data groups. The embodiments of the present application are described taking unidirectional HRLA wireless transmission.
[0098] According to the embodiments of the present application, a wireless audio data transmission method embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0099] Embodiment one
[0100] A wireless audio data transmission method is provided in the present embodiment, which can be used in a first device or a second device. The first device and the second device perform wireless audio data transmission based on a wireless communication link, such as a MCBAIS link.
[0101] Referring to Figure 3 A wireless audio data transmission method is provided in the present embodiment, which comprises the following steps:
[0102] In step 101, the second device bulk transmits an audio data group to the first device in a bulk transmission time slot of a current isochronous interval.
[0103] In some specific embodiments, the second device can be the HRLA transmitting device as shown in the above Figure 1 The first device can be the HRLA receiving device. It can be understood that the second device and the first device can also be other devices suitable for the method of the present embodiment.
[0104] The audio data group contains at least two audio data packets. The second device can bulk transmit multiple audio data packets based on the audio data group in the bulk transmission time slot of the current isochronous interval, so as to achieve bulk transmission of audio data.
[0105] The first device comprises a main processor and at least two controllers, and one or more of the at least two controllers are selectively enabled during wireless audio transmission. The enabled controllers are used to receive the audio data group bulk transmitted by the second device and feed back an acknowledgement packet.
[0106] The first device can select which controllers to enable and the number of enabled controllers according to specific application scenarios, for example, whether each controller is enabled can be determined according to the communication quality of each controller. The first device can also adopt different controller enabling strategies in different working modes.
[0107] A possible implementation is that the first device receives the audio data group transmitted by the second device in the current isochronous interval. The first device has at least a first working mode. When the first device is in the first working mode, at least two controllers are enabled. In the bulk transmission time slot of the current isochronous interval, each enabled controller receives the audio data group bulk transmitted by the second device.
[0108] Another possible implementation is that the first device can have two or more operation modes, for example, three operation modes. In each operation mode, the way the controllers are enabled in the first device is different. In this embodiment, the first device (HRLA receiving device) can have three operation modes, which are: 1) Cooperation Spatial Diversity mode, 2) Selective Spatial Diversity mode, and 3) Default mode.
[0109] In this embodiment, the first operation mode is Cooperation Spatial Diversity mode.
[0110] 1) Cooperation Spatial Diversity mode is that at least two controllers are enabled to work, and the at least two enabled controllers, such as the first controller and the second controller, simultaneously receive the audio data group sent by the second device (HRLA sending device). In this embodiment, the first controller and the second controller independently reply to the second device with batch acknowledgement information in time-sharing manner.
[0111] Step 102, each enabled controller in the first device generates an acknowledgement data packet carrying acknowledgement information according to its own reception of the audio data group in the current equal time interval and the reception of the audio data group sent by the second device in the first device before the current equal time interval.
[0112] If the second device has sent the audio data group to the first device before the current equal time interval, for example, in a historical equal time interval, then in the current equal time interval, each enabled controller generates the acknowledgement data packet according to the audio data packet it receives in the current equal time interval and the audio data packets received by all the enabled controllers in the historical equal time interval (which can be one or more equal time intervals).
[0113] If the second device has not sent the audio data group to the first device before the current equal time interval, i.e., there is no historical equal time interval, then each enabled controller only needs to generate the acknowledgement data packet according to the audio data packet it receives in the current equal time interval.
[0114] Step 103, each enabled controller sends the acknowledgement data packet it generates in the batch acknowledgement time slot of the current equal time interval to the second device in time-sharing manner.
[0115] Correspondingly, the second device receives at least one acknowledgement data packet carrying acknowledgement information sent by at least one enabled controller in the batch acknowledgement time slot of the current equal time interval.
[0116] Specifically, refer to Figure 4As shown, it is a time slot structure of MCBAIG link of HRLA wireless transmission system. The MCBAIG link divides the wireless transmission time into the same MCBAIG intervals. Each MCBAIG interval includes the following time slots: batch sending time slot and BA (Block Acknowledgement) time slot.
[0117] Among them, the batch sending time slot is divided into two categories. One is the sending time slot, which is used to send the audio data packet generated in the current equal time interval. The other is the retransmission time slot, which is used to retransmit the audio data packet that the first device does not correctly receive, or to retransmit the audio data packet being sent in the current equal time interval by using the pre-repetition sending or pre-retransmission (PRT: Pre-Retransmission) technology. The current equal time interval is the current MCBAIG interval.
[0118] The BA time slot is used for the time slot in which the first device replies to the acknowledgement data packet carrying batch acknowledgement information. Each controller of the first device replies to the acknowledgement data packet in time division multiplexing. That is, after the batch sending time slot, the determined time slots reply to the acknowledgement data packet in turn. Optionally, each controller can repeatedly send the acknowledgement data packet carrying batch acknowledgement information.
[0119] Among them, the acknowledgement data packet includes BA information, such as BA mapping table (MT, Mapping Table), which is used to indicate the information of correctly receiving the audio data packet by the controller in the current MCBAIG interval and one or more MCBAIG intervals before, or the information of whether the HRLA sending device needs to retransmit the audio data packet.
[0120] Among them, the batch acknowledgement time slot includes a plurality of acknowledgement sub-time slots; for example Figure 4 The time periods indicated by BA0, BA1, …, BAD. Step 103 specifically includes that each enabled controller occupies an acknowledgement sub-time slot in the batch acknowledgement time slot to send the acknowledgement data packet generated by itself, wherein the acknowledgement sub-time slots occupied by each enabled controller are different from each other. It can be understood that the acknowledgement sub-time slot that can be occupied by each enabled controller can be configured according to the specific application scenario. In different equal time intervals, the sub-time slot occupied by a certain enabled controller can be the same or different, which is not limited in the present application.
[0121] For example Figure 4As shown, the second device always sends audio data packets to the first device in the bulk transmission time slot as shown in P1, P2, …, PM, P1, P2 to PK. Then, in each of the BA0, BA1, …, BA D, the enabled controller 1, controller 2, …, controller M sends the generated acknowledgement data packet to the second device in the indicated acknowledgement sub-time slot. For example, the controller 1 sends the generated acknowledgement data packet to the second device in BA0, the controller 2 sends the generated acknowledgement data packet in BA1, and so on until the controller M sends the generated acknowledgement data packet in BA D. Here, BA0, BA1, …, BA D are different acknowledgement sub-time slots.
[0122] In each of the BA time slots, each enabled controller in the first device time-division multiplexes the reply of the acknowledgement data packet carrying the BA information, i.e., the reply of the acknowledgement data packet is sequentially performed in the time slot determined after the bulk transmission time slot. Different controllers send the acknowledgement data packet in different BA time slots, such as BA0, BA1, BA2, …, BA D in sequence. Optionally, the number of times each controller sends the acknowledgement data packet can be greater than 1. For example, each controller sequentially repeats multiple times of sending the acknowledgement data packet, or can sequentially repeat sending the acknowledgement data packet in interleaving. Without loss of generality, the embodiments of the present application only discuss the case where each controller sends the acknowledgement data packet once.
[0123] Optionally, in each of the equal time intervals (MCBAIG intervals), other time slots are also included, such as Figure 4 As shown, the other time slots include the transmission (TX) and reception (RX) time slots of the BLE asynchronous connection (ACL: Asynchronous Connection-Oriented) link, which are used to assist in establishing the MCBAIS link, negotiating the MCBAIS link parameters, negotiating whether the HRLA slave device enables multiple controllers and the number of enabled controllers, and the like.
[0124] Figure 4 In the MCBAIS, the interval between each two audio data packets is the minimum slot space (T_MSS: Minimum Slot Space). The interval between the start of the current equal time MCBAIG interval, i.e., the start of the transmission of the first audio data packet, and the start of the reply of the acknowledgement data packet carrying the bulk acknowledgement information is a preset fixed interval, i.e., BA delay (BA Delay), and the BA Delay is less than the MCBAIG interval.
[0125] No matter how many audio data packets the second device sends, each enabled controller in the first device sends the acknowledgement data packet carrying the bulk acknowledgement information in the negotiated and preset determined acknowledgement sub-time slot, so as to facilitate the second device to correctly receive the bulk acknowledgement information.
[0126] Step 104, the second device synthesizes the acknowledgement information in all the received acknowledgement data packets to determine the reception of the audio data group sent by the first device to the second device in the current isochronous interval and the isochronous interval before the current isochronous interval.
[0127] Specifically, the second device receives the acknowledgement data packets sent by the different controllers in different acknowledgement sub-slots, such as BA 0 to BA D. The second device can receive multiple acknowledgement data packets, which can be sent by different controllers, and the BA information carried in the multiple acknowledgement data packets can be different. The second device needs to synthesize the BA information in all the received acknowledgement data packets to determine whether the audio data packets are correctly received by the first device. If it is detected that one or more audio data packets are not correctly received by all the controllers in the current isochronous interval, it is determined that the one or more audio data packets are lost in transmission, and the second device needs to retransmit the audio data packets in the next MCBAIG interval.
[0128] The data packets or the audio data group retransmitted in the next MCBAIG interval at least include one of the audio data packets to be first transmitted, the audio data packets to be retransmitted, and the audio data packets to be pre-retransmitted. The audio data packets to be pre-retransmitted are selected from the audio data packets to be first transmitted and / or the audio data packets to be retransmitted.
[0129] If it is detected that at least one controller correctly receives the information of an audio data packet, it is determined that the audio data packet is correctly received by the first device.
[0130] The method provided in the embodiment includes the first device including a main processor and at least two controllers. In the isochronous audio data transmission process, the first device can adopt a first working mode, that is, the receiving functions of two or more controllers are simultaneously enabled, and the audio data group sent in batches by the second device is received, and the audio data group includes at least two audio data packets. The enabled controllers can also respectively reply the acknowledgement data packets carrying the acknowledgement information to the second device. The spatial diversity gain provided by the multiple controllers of the first device can effectively reduce the retransmission rate, improve the bandwidth efficiency and transmission reliability of the audio data wireless transmission, so as to meet the bandwidth demand of various high-reliability wireless transmissions such as high-definition audio, lossless audio, or high-definition lossless audio.
[0131] In a possible implementation, the step 101 further includes generating the audio data group including one or more audio data packets before the second device sends the audio data group in the isochronous interval.
[0132] In some embodiments, in order to improve the compatibility of the present embodiments with Bluetooth technology, the MCBAIS link protocol is based on the BLE synchronous isochronous channel (Isochronous Channels) protocol, the HRLA master device uses the MCBAIS protocol data unit (PDU: Protocol Data Unit) disclosed in the present application to send audio data, and the HRLA slave device uses a block acknowledgement (BA: Block Acknowledgement) PDU to send batch acknowledgement information. The MCBAIS PDU has the same structure as the BLE connected isochronous stream (CIS: Connected Isochronous Stream) PDU but a different packet header format, i.e., an extended header CIS PDU. Similar to the CIS PDU, the MCBAIS PDU includes an MCBAIS data (Data) PDU and an MCBAIS null (Null) PDU. The MCBAIS Data PDU is used when there is audio data to be sent, and the MCBAIS Null PDU is used when there is no audio data to be sent.
[0133] In the present embodiments, the audio data packet can be an MCBAIS Data PDU, and the acknowledgement data packet can be an MCBAIS Null PDU.
[0134] As shown in Figure 5 FIG. 1 is a format diagram of an MCBAIS PDU extended header provided by the present embodiments. The format of the extended header is based on the CIS PDU header, and a BTE (Block Transmission Enable) word field is set in the first reserved field (RFU: Reserved for Future Use) to indicate whether to enable the batch data packet sending function of a wireless communication link such as the MCBAIS link. A BAE (Block Acknowledgement Enable) word field is set in the second reserved field (RFU) to indicate whether to enable the batch data packet acknowledgement function of the wireless communication link such as the MCBAIS link.
[0135] Optionally, if the BTE word field is assigned a value of 1, it indicates that the batch sending function of the MCBAIS link is enabled; if the BTE word field is assigned a value of 0, it indicates that the batch sending function of the MCBAIS link is not enabled. In the present embodiments, when the BTE word field is assigned a value of 1, the extended header increases a certain number of word fields, specifically including at least one of the following word fields.
[0136] ① BTN (Block Transmission Number) field, indicating the total number of audio data packets MCBAIS Data PDU sent in batch in the current time interval, such as in the MCBAIG interval, including the MCBAIS Data PDU sent in advance repeatedly, the size of the BTN field is 4 bits.
[0137] ② BTSN (Block Transmission Sequence Number) field, indicating the sequence number of the audio data packet MCBAIS Data PDU sent in batch in the current time interval, such as in the MCBAIG interval, the size of the BTSN field is 4 bits.
[0138] ③ PDUSN (PDU Sequence Number) field, indicating the sequence number of the audio data packet MCBAIS Data PDU sent by the second device, i.e. the HRLA sending device, the size of the PDUSN field is 6 bits.
[0139] ④ BAN (Block Acknowledgement Number) field, indicating the number of times that the first device, i.e. the HRLA receiving device, can reply to the acknowledgement data packet BA PDU, which can be the number of times that any controller sends BA repeatedly, or the number of times that multiple controllers send BA in turn, the size of the BAN field is 1 bit.
[0140] If the BTE field is assigned a value of 0, the above four fields ① to ④ are not increased.
[0141] Further, if the BAE field is assigned a value of 1, the MCBAIS PDU extended packet header further includes a STARTSN (Start Sequence Number) field and a BA mapping table MT.
[0142] The STARTSN field is used to indicate the sequence number PDUSN of an audio data packet.
[0143] The BA MT is used to indicate whether the audio data packet MCBAIS Data PDU starting from the PDUSN represented by the STARTSN sent in the current MCBAIG interval and at least one or more MCBAIG intervals before is correctly received, or whether the second device, i.e. the HRLA sending device, needs to retransmit the corresponding audio data packet MCBAIS Data PDU.
[0144] Each bit of the BA MT corresponds to a PDUSN of the MCBAIS Data PDU, the lowest bit represents the STARTSN indicated PDUSN of the MCBAIS Data PDU, and the bits arranged from low to high represent the PDUSN greater than the STARTSN, and the highest PDUSN that can be indicated is determined by the STARTSN and the number of bits of the BA MT.
[0145] In addition, the default value of each bit of the BA MT is 1, which means that the second device or the HRLA sending device needs to send or resend the MCBAIS Data PDU corresponding to the PDUSN represented by the bit. After the MCBAIS Data PDU corresponding to the PDUSN represented by the STARTSN is correctly received by the first device, the corresponding value of the BA MT is set to 0, that is, the second device does not need to resend the MCBAIS Data PDU corresponding to the PDUSN represented by the bit.
[0146] In addition, the MCBAIS PDU extension header also includes other fields, such as a logical link (Logical Link Identifier, LLID) identification bit, which is used to indicate the type of the load of the data packet; a sequence number SN; a next expected sequence number (NESN: Next Expected Sequence Number); a close isochronous event (Close Isochronous Event, CIE) flag bit, which is used to identify whether to close the isochronous event; a null PDU indicator (Null PDU Indicator, NPI), which is used to identify whether the data packet carries data; and a load length (Length) identification bit, which is used to identify the load length of the data packet. Among them, the SN field and the NESN field are invalid in the MCBAIS PDU.
[0147] Optionally, each of the above-mentioned fields occupies a certain number of bits, for example, the LLID field occupies 2 bits; the NESN field, the SN field, the CIE field, the BTE field, the NPI field, and the BAE field each occupy 1 bit; the BTN field and the BTSN field each occupy 4 bits; and the PDUSN field occupies 6 bits. It should be understood that the size of each field can also be customized and is not limited to the above-mentioned byte size.
[0148] In the embodiment, when the second device sends the MCBAIS Data PDU, the NPI field is set to 0; and when the second device sends the MCBAIS Null PDU, the NPI field is set to 1.
[0149] In the one-way HRLA wireless transmission process, since only the HRLA sending device sends the audio data packet, the HRLA receiving device does not send the audio data packet. Therefore, the audio data packet MCBAIS Data PDU sent by the HRLA sending device has the related word field set as: BTE=1, BAE=0, NPI=0. The HRLA receiving device sends the batch confirmation information by using the MCBAIS Null PDU, and the related word field is set as: BTE=0, BAE=1, NPI=1.
[0150] It should be noted that in the process of transmitting the audio data by the two-way HRLA wireless transmission, both directions can use the extended header of the MCBAIS Data PDU to carry the batch confirmation information, that is, the BTE and BAE word fields are both set to 1. Without loss of generality, the present application explains the MCBAIS or MCBAIG link protocol by using the one-way HRLA wireless transmission, so the first device is taken as the HRLA receiving device, and the second device is taken as the HRLA sending device, and therefore each audio data packet sent by the second device is configured as BTE=1, BAE=0, NPI=0.
[0151] In step 102 of the above embodiment, each controller of the first device includes the BAE word field in each confirmation data packet in the process of generating the confirmation data packet carrying the confirmation information, and the BAE word field can be configured as 0 or 1.
[0152] If BAE=1, it indicates that the batch data packet confirmation function is enabled, at this time, the confirmation data packet MCBAIS Null PDU includes the STARTSN word field and the BA MT, which are used to indicate the confirmation information. The STARTSN word field is used to indicate the sequence number PDUSN of one audio data packet; the BA MT is used to indicate whether one or more audio data packets starting from the sequence number PDUSN indicated by the STARTSN word field are correctly received, or whether the second device needs to retransmit. In the cooperative spatial diversity mode, each enabled controller generates the BA MT according to the receiving conditions of all the controllers in the previous MCBAIG interval and the receiving condition of the controller itself in the current MCBAIG interval, that is, according to whether each audio data packet MCBAIS Data PDU is correctly received. The confirmation data packet MCBAIS Null PDU carrying the batch confirmation information returned by each controller, that is, the confirmation data packet MCBAIS Null PDU including the STARTSN word field and the BA MT, determines which MCBAIS Data PDU in the audio data group sent by the second device in batch is correctly received, which is not correctly received, or which MCBAIS Data PDU needs to be retransmitted. The information is set in the corresponding bits in the extended header BAMT of the audio data packet to be sent.
[0153] Specifically, as shown in Figure 6 the second device, the above-mentioned step 103 comprises:
[0154] Step 1031, receiving in each of the confirmation sub-slots of the batch confirmation slot to obtain at least one confirmation data packet sent by the enabled controller.
[0155] In some embodiments, the second device performs the action of receiving data in each of the confirmation sub-slots of the batch confirmation slot to obtain as many confirmation data packets as possible sent by the first device, which may be sent by one controller of the first device or by multiple controllers.
[0156] For example, the second device performs the receiving operation in the confirmation sub-slot BA0 to receive the confirmation data packet sent by the first controller, and performs the receiving operation in the confirmation sub-slot BA1 to receive the confirmation data packet sent by the second controller, and performs the receiving operation in the confirmation sub-slot BA D to receive the confirmation data packet sent by the Mth controller. Each of the confirmation data packets can include the STARTSN word field and the BAMT to carry the batch confirmation information.
[0157] In other embodiments, the second device can also receive in the pre-designated or negotiated partial confirmation sub-slot. The specific setting can be based on the actual application scenario, which is not limited in the present application.
[0158] The above-mentioned step 104 specifically comprises:
[0159] Step 1041, the second device determines the audio data packet that is indicated by all the received confirmation data packets as not correctly received or needing retransmission as the audio data packet that is not correctly received or needing retransmission by the first device.
[0160] The BA MT can contain information about whether the audio data packet sent in the last one or more MCBAIG intervals needs to be retransmitted. In order to improve the reliability of the reply batch confirmation information, the first device can also choose to repeatedly send the confirmation data packet carrying the batch confirmation information multiple times. The number of repeated transmissions can be customized according to the actual situation, which is not limited in the present embodiment.
[0161] If the BAE word field of the extended packet header of the batch confirmation information confirmation data packet is assigned a value of 1, and the lowest bit of the BAMT corresponds to the audio data packet represented by the STARTSN indicated PDUSN, then the high bits of the BAMT correspond to the audio data packets represented by the higher PDUSN in turn.
[0162] If a bit of the BAMT is set to 1, it means that the second device or the HRLA transmitting device needs to retransmit or transmit the audio data packet corresponding to the PDUSN represented by the bit. If a bit of the BAMT is set to 0, it means that the second device does not need to retransmit the audio data packet corresponding to the PDUSN represented by the bit.
[0163] Generally, the lowest bit of the BAMT is always set to 1, i.e. the minimum PDUSN of the audio data packet that the first device needs the second device to transmit or retransmit is STARTSN. STARTSN can represent the audio data packet currently being batch transmitted in the MCBAIG interval, or the audio data packet transmitted in the last one or more MCBAIG intervals, or the PDUSN of the 0th audio data packet to be transmitted in the next MCBAIG interval. If the audio data packets in the current MCBAIG interval and the last one or more MCBAIG intervals are all correctly received, STARTSN represents the PDUSN of the 0th audio data packet to be batch transmitted in the next MCBAIG interval, and no packet loss occurs in the transmission.
[0164] Step 105, the second device transmits the audio data packet that is not correctly received or needs to be retransmitted to the first device.
[0165] Specifically, the audio data packet that is not correctly received or needs to be retransmitted is packaged in the next audio data group, and then the next audio data group is batch transmitted to the first device in the next equal time interval.
[0166] The next audio data group at least includes the audio data packet that is not correctly received or needs to be retransmitted (to be retransmitted), and can further include a pre-retransmitted audio data packet. Further, the pre-retransmitted audio data packet is selected from the audio data to be first transmitted and / or the audio data packet to be retransmitted.
[0167] It can be understood that the next equal time interval is one equal time interval after the current equal time interval.
[0168] The method provided by the embodiment is configured / added with some word fields at the packet header of the transmitted audio data packet, such as setting the BTE word field and the BTN, BTSN, PDUSN and BAN word fields in each audio data packet by the second device, for indicating the function of enabling batch transmission of the audio data packet, and the sequence number, total number of packets and the like of the transmitted audio data packet. The first device at the receiving end indicates the function of enabling batch data packet acknowledgement by setting the BAE word field and the STARTSN word field and the BAMT, and the receiving condition of the audio data packet transmitted by the second device, so that the second device can accurately determine the receiving condition of the audio data packet transmitted by the first device in the current equal time interval according to the acknowledgement information in all the comprehensive acknowledgement data packets, and provide a basis for determining and transmitting the audio data packet in the subsequent equal time interval.
[0169] The above embodiment is the method flow of the first device in the first working mode, and the first working mode is the cooperative spatial diversity mode, which is suitable for a wireless environment with deep fading and strong interference, such as Figure 7 As shown in the figure, in the cooperative spatial diversity mode, at least two controllers are enabled, such as the first controller and the second controller simultaneously enabling the function of receiving the audio data packet, and the remaining controllers can be disabled, such as the controller M being in the closed state, and M≥2.
[0170] Optionally, the first controller can be a master controller, and the second controller can be any slave controller.
[0171] In the cooperative spatial diversity mode, the first controller and the second controller not only maintain the synchronization state with the second device, i.e., the HRLA transmitting device, but also simultaneously receive the audio data packet transmitted by the second device. The first controller and the second controller each execute the method flow of steps 101 to 103 in the foregoing Figure 3 After the first controller and the second controller each generate the acknowledgement data packet, the first controller and the second controller each transmit the respective acknowledgement data packet to the second device in the corresponding acknowledgement sub-time slot. For example, the first controller transmits the first acknowledgement data packet generated by itself in the first acknowledgement sub-time slot, such as BA0. The second controller transmits the second acknowledgement data packet generated by itself in the second acknowledgement sub-time slot, such as BA1. BA0 and BA1 are different, and are both after the BA delay of the equal time interval.
[0172] In the first working mode, the probability that the first controller and the second controller independently enabled and simultaneously not correctly receiving the audio data packet is greatly reduced due to spatial fading, and therefore, the cooperative spatial diversity mode can obviously improve the receiving performance of the HRLA receiving device and guarantee the transmission reliability.
[0173] Optionally, in another embodiment, the first device further has a second operation mode, which is a selective spatial diversity mode. In this mode, the first device selects one of the at least two controllers and enables it according to the evaluated channel quality of each controller, and receives the audio data group batch-transmitted by the second device in the current isochronous interval.
[0174] As shown in FIG. 2, in the second operation mode, the first device selects the first controller and enables it according to the channel quality of each controller. When the first controller is enabled, the first controller generates a first acknowledgement data packet carrying batch acknowledgement information according to the reception of the audio data group by the first controller in the current isochronous interval and the reception of the audio data group transmitted by the second device before the current isochronous interval, and transmits the first acknowledgement data packet to the second device in the first acknowledgement sub-interval. Optionally, the first acknowledgement data packet is a BAPDU carrying batch acknowledgement information. Figure 8a
[0175] Further, the first device selects the first controller and enables it according to the evaluated channel quality of each controller, specifically including: the first device periodically evaluates the channel quality between each controller and the second device respectively, and selects the first controller and enables it from the at least two controllers based on all the evaluated channel qualities and a first preset condition.
[0176] In this case, the channel quality of the first controller is better than that of the other controllers, so the first controller is selected and enabled to receive the audio data packet and the feedback acknowledgement data packet. The first preset condition is that the first channel quality is greater than or equal to a first preset threshold, the first channel quality being the channel quality of the first controller, and the second channel quality is less than the first preset threshold, the second channel quality being the channel quality of the second controller.
[0177] Meanwhile, the data synchronization and channel evaluation functions of the other controllers not enabled are maintained, and / or at least the remaining controllers not enabled are prohibited from transmitting the acknowledgement data packet, such as the second controller to controller M being prohibited from transmitting the batch acknowledgement data packet. In this case, the second controller and the other controllers not enabled are in a closed state.
[0178] In the process of the first controller enabled to receive the audio data packet and the batch feedback acknowledgement data packet, the above method further includes: when it is detected that the first channel quality of the first controller is less than the first preset threshold and the second channel quality of the second controller is greater than a second preset threshold, the second controller is selected and enabled, and the first controller is prohibited from transmitting the acknowledgement data packet. Figure 8b The second preset threshold is higher than the first preset threshold. At this time, the preset condition for switching the controller is that the first channel quality of the first controller is less than the first preset threshold and the second channel quality of the second controller is greater than the second preset threshold.
[0179] At this time, although the first controller is prohibited from sending the acknowledgement data packet, the channel quality of the first controller is still detected and evaluated in order to be ready to switch to enable at any time when the channel quality changes.
[0180] Optionally, the wireless channel quality of each controller can be measured by a packet error rate (PER), and the lower the packet error rate, the better the channel quality. In addition, the first preset threshold and the second preset threshold are both inverses of the PER.
[0181] The first controller is one of the at least two controllers, and the second controller is one of the at least two controllers different from the first controller. Optionally, in a specific embodiment, the first controller can be a master controller, and the second controller can be a slave controller.
[0182] In the second working mode, the first controller is used to receive the audio data packet sent by the second device. When the channel quality of the first controller is lower than the first preset threshold and the channel quality of the second controller is higher than the second preset threshold, it indicates that the channel quality of the second controller is better than that of the first controller at this time, and the second controller is enabled to receive the audio data packet, and the first controller is prohibited from feeding back the acknowledgement data packet, but still maintains synchronization with the second device and periodically performs channel evaluation.
[0183] Similarly, during wireless transmission, when the channel quality of the second controller is lower than the first preset threshold and the channel quality of the first controller is higher than the second preset threshold, the first controller is selected to receive the audio data packet. Whether the first controller or the second controller receives the audio data packet, an acknowledgement data packet carrying batch acknowledgement information is independently returned to the second device. The controller which is prohibited from sending the acknowledgement data packet continues to maintain channel quality evaluation in order to be ready to switch to enable at any time when the channel quality changes.
[0184] In addition, the second working mode and the first working mode can also be switched. Specifically, the first device periodically evaluates the channel quality between each controller and the second device, and switches the working mode of the first device based on the channel quality and a second preset condition. The second preset condition is that the channel quality between each controller and the second device is less than the first preset threshold.
[0185] Specifically, in the second operating mode, when the channel quality between all controllers in the first device and the second device reaches the aforementioned second preset condition, the operating mode of the first device is switched from the second operating mode to the first operating mode, that is, from selective spatial diversity mode to cooperative spatial diversity mode. This is because in selective spatial diversity mode, enabling any single controller alone cannot guarantee the reliability of audio data packet transmission, so it is necessary to enable two or more controllers to receive simultaneously. The specific controllers to be enabled can be determined based on the channel quality and preset conditions evaluated for each controller. Please refer to the description of the aforementioned embodiments for details, which will not be repeated here.
[0186] In addition, in this embodiment, the first device may also have a third operating mode, namely the default mode. Under good wireless conditions, i.e., when the communication distance is short, channel fading is low, and interference is minimal, the default mode is used. The default mode means that the first device only enables the target controller; if the master controller is working, all other slave controllers are in a power-down state, but channel quality assessment and monitoring of other controllers are still maintained.
[0187] like Figure 9 As shown, after the target controller of the first device is enabled, the target controller sends a first confirmation data packet to the second device within the first confirmation sub-slot of the current equal time interval. The batch confirmation information carried in the first confirmation data packet, such as the STARTSN field and BAMT content, can be found in the description of the foregoing embodiments, and will not be repeated here.
[0188] In addition, while enabling the target controller to send and receive data packets, channel quality assessment between other controllers and the second device is maintained simultaneously. This is because in a changing wireless environment, if enabling the target controller fails to meet communication performance requirements, the operating mode of the first device can be switched, for example, to either the first operating mode or the second operating mode.
[0189] In this embodiment, the first device can have three working modes. Based on the current channel quality and preset conditions of each controller, it can freely switch between different modes such as the first working mode, the second working mode, and the third working mode. This allows for the dynamic selection of one or more controllers to enable and receive audio data packets and feedback confirmation data packets according to the communication environment, thereby reducing the retransmission rate and ensuring transmission reliability.
[0190] Example 2
[0191] This embodiment details the process of setting up and sending audio data packets using the second device described in Embodiment 1 above.
[0192] The second device, the HRLA sending device, divides the audio stream data into audio service data units (SDUs) of the same size, each of which corresponds to the payload of an audio data packet. It is assumed that the second device generates or inputs L new SDUs in each MCBA IG interval, i.e., encapsulates L audio data packets, and L≤M and L<N, and sequentially saves them in the sending buffer according to the PDU SN number, i.e., each SDU or the encapsulated audio data packet corresponds to a different PDU SN.
[0193] Optionally, the audio data packet is an MCBA IS Data PDU.
[0194] The step 101 of the above embodiment one, the second device sets the audio data packet, and the method process of sending the audio data group to the first device on the MCBA IS link is as shown in Figure 10 The specific steps include:
[0195] Step 201, take the SDU as the payload from the sending buffer according to the PDU SN number from small to large, and encapsulate it into an audio data packet.
[0196] Among them, the SDU taken from the sending buffer by the second device can also be the SDU input in the last one or more MCBA IG intervals and not confirmed by the HRLA from device to be correctly received, or it can be a new SDU input in the current MCBA IG interval.
[0197] Step 202, judge whether the number M of SDUs in the buffer is greater than or equal to N.
[0198] N is the maximum number of SDUs or audio data packets that the second device can send in the current MCBA IG interval.
[0199] Step 203, if yes, i.e., M≥N, then sequentially and continuously send N audio data packets to the first device according to the PDU SN from small to large.
[0200] Specifically, the N audio data packets form an audio data group, and the audio data group is sent to the first device in the current MCBA IS interval.
[0201] Step 204, if no, i.e., M<N, then judge whether the PRT technology is enabled.
[0202] Among them, the PRT technology can be understood as pre-repeated transmission of at least part of the data at least twice or more times in the current time interval using the redundant time slot, so as to improve the reliability of data transmission.
[0203] Step 205, if PRT technology is enabled, M+K audio data packets are sent to the first device in a loop according to the ascending order of PDU SN.
[0204] Specifically, K SDUs in the pre-retransmission buffer are read in a loop according to the ascending order of PDU SN, and the number of the SDUs is K, and the total number of the SDUs is M+K, and M+K≤N. For example, when M=7 and N=8, K=1. The PDU SN number carried in the extended packet header of the audio data packet corresponding to the pre-retransmitted SDU is the same as that of the original audio data packet, but the BTSN is different. In the current MCBAIG interval, the number of BTN fields carried in the extended packet header of the audio data packet sent by the second device in sequence is M+K=8.
[0205] Step 206, if PRT technology is not used, M audio data packets are sent in a loop according to the ascending order of PDU SN.
[0206] Specifically, the number of SDUs or audio data packets sent in the current MCBAIG interval is equal to M. For example, M=7.
[0207] In addition, step 103 of the above embodiment one specifically includes:
[0208] Step 207, the second device starts to receive the confirmation data packet carrying batch confirmation information sent by the first device after the start of the MCBAIG interval through the BA delay according to the BAN field in the extended packet header of the audio data packet, and combines the BA information of all the confirmation data packets to determine the reception of the audio data group by the first device.
[0209] After the second device sends the BTN group audio data packet in the current MCBAIG interval, the second device receives the confirmation data packet sent by each enabled controller on each confirmation sub-slot BA0, BA1, …, BAD, and each confirmation data packet includes the STARTSN field and the BA mapping table.
[0210] If the first device is in the second working mode (selective spatial diversity mode) or the third working mode (default mode), the confirmation data packet received by the second device in each confirmation sub-slot is sent by the same controller, and the BA information is the same. The purpose of repeated sending is to improve the transmission reliability.
[0211] If the first device is in the first working mode, i.e., in the cooperative spatial diversity mode, the confirmation data packet received by the second device in each confirmation sub-slot can be sent by different controllers, and the BA information can be different.
[0212] The second device determines whether the first device correctly receives the audio data packets according to the BA information in all the received acknowledgement data packets. Only when all the controllers do not correctly receive the audio data packets, the audio data packets are retransmitted in the subsequent MCBAIG interval.
[0213] The second device determines which of the batched audio data packets are correctly received by the first device and which are not according to the acknowledgement data packets carrying batch acknowledgement information that are correctly received. The correctly received audio data packets are deleted from the sending buffer. The audio data packets / SDUs that are not correctly received are kept in the sending buffer and are retransmitted in the next or subsequent MCBAIG interval.
[0214] Optionally, when the audio data packets are transmitted in the next MCBAIG interval, the second device preferentially transmits the audio data packets / SDUs in the sending buffer, i.e., the SDUs that are not transmitted in the current MCBAIG interval or in the previous one or more MCBAIG intervals.
[0215] When the number of SDUs is less than N, the SDUs in the sending buffer are sequentially transmitted in the redundancy time slots in ascending order of PDUSN. After the next MCBAIG interval correctly receives the acknowledgement data packet carrying batch acknowledgement information, it is determined whether the SDUs batched in the previous one or more MCBAIG intervals are correctly received or need to be retransmitted. In this way, the number of times that the second device receives the audio data packets carrying batch acknowledgement information is increased, and the reliability of receiving batch acknowledgement information is improved, thereby reducing the number of times that the audio data packets / SDUs are repeatedly transmitted and the batch acknowledgement data packets are repeatedly transmitted, so as to improve the link efficiency.
[0216] However, the number of new acknowledgement data packets / SDUs that the second device transmits cannot exceed the maximum number that the BAMT can indicate. Specifically, the maximum PDUSN number of new SDUs that the second device can transmit is the sum of STARTSN in the header of the acknowledgement data packet carrying batch acknowledgement information that is most recently received by the second device and the number of BAMT bits, minus 1, before new batch acknowledgement information is received again. If this threshold is exceeded, the second device can only cyclically transmit the acknowledgement data packets / SDUs that have been transmitted before and have not been confirmed to be correctly received by the first device until the acknowledgement data packet carrying batch acknowledgement information is received again.
[0217] In the cooperative space diversity mode, the first device enables two or more controllers to reply to the confirmation data packet carrying the batch confirmation information, which improves the reliability of the second device in receiving the confirmation information to a certain extent, greatly reduces the probability that the second device only sends the audio data packets in the cache that have been sent and not confirmed by the first device, effectively reduces the retransmission rate, and improves the bandwidth efficiency and transmission reliability of the audio data wireless transmission, thereby meeting the bandwidth requirements of various high-reliability wireless transmissions such as high-definition audio, lossless audio, or high-definition lossless audio.
[0218] Embodiment Three
[0219] This embodiment takes a wireless stereo high-resolution lossless audio earphone system as a specific embodiment to illustrate the above-mentioned wireless audio data transmission method. The wireless stereo high-resolution lossless audio earphone system includes an HRLA master device and a stereo HRLA earphone.
[0220] The HRLA master device includes but is not limited to a smartphone, a smart TV, or a computer. The stereo HRLA earphone as an HRLA slave device includes a master controller and a slave controller, and adopts the next-generation BLE technology, including a 4 Mbps physical layer and supporting a larger packet length. It should be understood that the stereo HRLA earphone can also include more slave controllers, which is not limited in this embodiment.
[0221] The HRLA master device is configured to divide a stereo high-resolution digital audio signal with a sampling rate of 48 kHz and a quantization bit of 24 into a frame every 2.5 ms, corresponding to 120 stereo sampling points. A lossless audio encoder, for example, a certain technology's low-latency high-resolution audio codec (LHDC: Low-Latency Hi-Definition Audio Codec), encodes the digital audio signal of a frame into 500 bytes of audio data and encapsulates it in a service data unit (SDU: Service Data Unit) to send to the HRLA earphone through the MCBAIG link.
[0222] As Figure 5In the MCBAIS PDU extension header shown, the BTN field and the BTSN field each occupy 4 bits, the PDUSN field occupies 6 bits, the BAN field occupies 2 bits, the STARTSN field is 8 bits, and the BA MT is 40 bits. Therefore, the BTE of the audio data packet MCBAISData PDU for batch transmission is configured as 1, the BAE is configured as 0, the NPI is set as 0, and the extension header size occupies 4 bytes. The BTE of the acknowledgement data packet MCBAIS Null PDU for replying to the batch acknowledgement information is configured as 0, the BAE is configured as 1, the NPI is set as 1, and the extension header is 8 bytes.
[0223] As shown in the MCBAIG link time slot structure, Figure 4 In the MCBAIG link time slot structure shown, the MCBAIG interval is set as 20 ms, the number L of SDUs input by the HRLA master device in each MCBAIG interval is equal to 8, and the number L of audio data packets MCBAISData PDU encapsulated corresponding thereto is equal to 8. Each SDU is sequentially numbered and saved in the sending buffer, where the number of bits of the PDUSN is 6, i.e., the number is from 0 to 63, and after 64, the numbering is recycled from 0. After the recycling, the PDUSN with the number 0 is considered to be greater than the PDUSN with the number 63 next to it.
[0224] In addition, each audio data packet MCBAISData PDU is transmitted by using the BLE HDT 4Mbps physical layer, and the air packet length of an audio data packet MCBAISData PDU with a payload size of 500 bytes is 1068us. As shown in the MCBAIG link time slot structure, Figure 4 In the MCBAIG link time slot structure shown, T_MSS is equal to 150us. The air time for sending an audio data packet MCBAISData PDU is 1068us plus 150us, i.e., 1218us. As shown in the MCBAIG link time slot structure, Figure 4 In the MCBAIG link time slot structure shown, the maximum number of MCBAISData PDU that can be batch transmitted is 14, i.e., N=14, and the total air time is 17.052ms. The corresponding BA Delay 0 is equal to 17.052ms.
[0225] The acknowledgement data packet MCBAIS Null PDU is transmitted by using the BLE 2Mbps rate, and the air packet length of the acknowledgement data packet MCBAIS Null PDU carrying the batch acknowledgement information is 68us. Adding T_MSS equal to 150us, the air time for sending an acknowledgement data packet MCBAIS Null PDU is 218us. Therefore, the corresponding BA Delay 1 is equal to 17.27ms. As shown in the MCBAIG link time slot structure, Figure 4As shown, each HRLA earphone contains two controllers, which send one MCBAIS Null PDU (at this time, the BAN in the extended header of the audio data packet MCBAIS Data PDU is 2) and 14 audio data packets MCBAIS Data PDU, which occupies 17.488 ms of air time. The remaining 2.512 ms is used for the HRLA master device and the HRLA earphone to maintain the BLE ACL link.
[0226] Referring to the foregoing Figure 3 and Figure 6 As shown in the flow chart of wireless audio data transmission. In the first MCBAIG interval, the number L of audio data packets (SDU) input by the HRLA master device is equal to 8, which is encapsulated as the number L of audio data packets MCBAIS Data PDU, which is equal to 8, and the PDUSN is numbered in turn 0, 1, 2, …, 7. Using PRT technology, the number M of audio data packets MCBAIS Data PDU sent in the current MCBAIG interval is equal to 14. The BTN field in the extended header of the audio data packet MCBAIS Data PDU is set to 14, the BAN field is set to 2, and the BTSN field in the 14 audio data packets MCBAIS Data PDU is set in turn 0, 1, 2, …, 11, 12, 13, which corresponds to PDUSN 0, 1, 2, …, 7, 0, 1, 2, …, 5 respectively.
[0227] The HRLA master device sends 14 audio data packets MCBAIS Data PDU to the HRLA earphone in turn, and at the same time, the two controllers of the HRLA earphone receive 14 audio data packets MCBAIS Data PDU in turn. After the time point BA Delay 0 is equal to 17.052 ms, the master controller and the slave controller of the HRLA earphone send the confirmation data packet MCBAIS Null PDU carrying batch confirmation information in turn and are correctly received by the HRLA master device.
[0228] One case is that the BTSN equal to 1, 3 and 7 audio data packets (MCBAIS Data PDU) of the master controller are not correctly received due to interference, while the audio data packets of other BTSN are correctly received. Since the audio data packets of BTSN equal to 1 and 3 are the same as the audio data packets of BTSN equal to 9 and 11 respectively, they correspond to the same PDU SN. Therefore, although there is interference resulting in incorrect reception, using PRT technology, only the SDU of PDU SN equal to 7 of the 8 SDUs input by the HRLA master device in the current MCBAIG interval is not correctly received by the master controller.
[0229] The START SN in the extended header of the acknowledgement data packet MCBAIS Null PDU sent by the master controller of the HRLA earphone is set to 7, and the value of all the bits of BA MT is 1, which means that the SDUs of PDU SN less than 7 do not need to be retransmitted.
[0230] Another case is that the BTSN equal to 5 and 6 audio data packets (MCBAIS Data PDU) of the slave controller are not correctly received due to interference, while the audio data packets of other BTSN are correctly received. Since the audio data packet of BTSN equal to 5 is the same as the audio data packet of BTSN equal to 13, they correspond to the same PDU SN. Therefore, although there is interference resulting in incorrect reception, using PRT technology, only the SDU of PDU SN equal to 6 of the 8 SDUs input by the HRLA master device in the current MCBAIG interval is not correctly received by the master controller. The START SN in the extended header of the acknowledgement data packet sent by the slave controller of the HRLA earphone is set to 6, the first bit of BA MT is set to 0, and the value of all the other bits is 1, which means that the SDUs of PDU SN less than 6 and equal to 7 do not need to be retransmitted.
[0231] The HRLA master receives the MCBAIS Null PDU carrying the batch acknowledgement information from the master and slave controllers respectively, and combines the batch acknowledgement information to determine the reception status of the HRLA earphone. In this embodiment, based on the feedback of the MCBAIS Null PDU, the HRLA master determines that the SDU with PDUSN equal to 7 is not correctly received by the master controller, but is correctly received by the slave controller. It also determines that the SDU with PDUSN equal to 6 is not correctly received by the slave controller, but is correctly received by the master controller. After combining, it is determined that all the 8 SDUs sent in the current MCBAIG interval are correctly received by the HRLA earphone, and thus the SDUs with PDUSN less than 8 in the sending buffer are deleted. As can be seen from the above example, in the first working mode, the HRLA earphone enables the dual-controller reception and feedback of the MCBAIS Null PDU carrying the batch acknowledgement information, which can improve the transmission reliability of the HRLA.
[0232] In addition, in the next equal time interval, such as in the second MCBAIG interval, the number L of the SDUs input by the HRLA master is equal to 8, the number L of the MCBAIS Data PDUs encapsulated is equal to 8, and the PDUSN is sequentially numbered as 8, 9, 10, …, 15. Using the PRT technology, the number M of the MCBAIS Data PDUs sent in the current MCBAIG interval is equal to 14. The BTN in the MCBAIS Data PDU extension header is set to 14, the BAN is set to 2, and the BTSN in the 14 MCBAIS Data PDUs is sequentially set to 0, 1, 2, …, 11, 12, 13, which respectively correspond to the PDUSN of 8, 9, 10, …, 15, 8, 9, …, 13. The HRLA master sends the 14 MCBAIS Data PDUs to the HRLA earphone in sequence, and the HRLA earphone receives the 14 MCBAIS Data PDUs in sequence. After the time point BA Delay 0 is equal to 17.052 ms, the master and slave controllers of the HRLA earphone send the MCBAIS Null PDU carrying the batch acknowledgement information in sequence, and are correctly received by the HRLA master.
[0233] In one case, the MCBAISData PDUs with BTSN equal to 2 and 7 are not correctly received by the HRLA headset master controller due to interference, but the MCBAISData PDUs with other BTSN are correctly received. Since the MCBAISData PDU with BTSN equal to 2 is the same as the MCBAISData PDU with BTSN equal to 10, they correspond to the same PDU SN. Therefore, although there is interference resulting in incorrect reception, using the PRT technique, only the MCBAISData PDU with PDU SN equal to 15 of the 8 SDUs sent by the HRLA master in the current MCBAIG interval is incorrectly received, and the other 7 SDUs are all correctly received.
[0234] Since the SDUs not correctly received by the HRLA headset master controller in the first MCBAIG interval are correctly received by the slave, in the current MCBAIG interval, the START SN in the extended header of the MCBAIS Null PDU sent by the HRLA headset master controller is set to 15, and the value of all the bits of the BA MT is 1, indicating that the MCBAISData PDUs with PDU SN equal to 8 to 14 do not need to be retransmitted, and only the MCBAISData PDU with PDU SN equal to 15 needs to be retransmitted.
[0235] In another case, the MCBAISData PDUs with BTSN equal to 5 and 13 are not correctly received by the HRLA headset slave due to interference, but the MCBAISData PDUs with other BTSN are correctly received. Since the MCBAISData PDU with BTSN equal to 5 is the same as the MCBAISData PDU with BTSN equal to 13, they correspond to the same PDU SN. Of the 8 SDUs sent by the HRLA master in the current MCBAIG interval, only the MCBAISData PDU with PDU SN equal to 13 is incorrectly received, and the other 7 SDUs are all correctly received. The START SN in the extended header of the MCBAIS Null PDU sent by the HRLA headset slave is set to 13, the first and second bits of the BA MT are 0, and the value of all the other bits is 1, indicating that the MCBAISData PDUs with PDU SN equal to 8 to 12, 14 and 15 do not need to be retransmitted, and only the MCBAISData PDU with PDU SN equal to 13 needs to be retransmitted.
[0236] The HRLA master device receives the MCBAIS Null PDU carrying batch acknowledgement information from the master and slave controllers of the HRLA headset in different acknowledgement sub-slots, and after integrating the batch acknowledgement information, it is confirmed that the PDUSN equal to 15 SDUs not correctly received by the master controller are correctly received by the slave controller, and the PDUSN equal to 13 SDUs not correctly received by the slave controller are correctly received by the master controller, that is, the 8 SDUs sent in the current MCBAIG interval are all correctly received by the HRLA headset, and therefore, the SDUs with PDUSN less than 16 in the sending buffer are deleted. As can be seen from the above example, in the first working mode, the HRLA headset enables the dual-controller reception and feedback of the MCBAIS Null PDU carrying batch acknowledgement information, which can improve the transmission reliability of the HRLA.
[0237] As can be seen from the present embodiment, the HRLA headset system based on the MCBAIG link protocol can provide a reliable stereo high-resolution lossless audio stream service with a transmission rate of up to 1.6 Mbps. The spatial diversity gain obtained by using dual-controller reception not only reduces the retransmission rate, but also improves the effective bandwidth and reliability of the HRLA wireless transmission.
[0238] Embodiment Four
[0239] The present embodiment is a hardware device embodiment, and the present embodiment provides a first device which can be used as an HRLA receiving device or an HRLA slave device, for executing the method steps of the aforementioned HRLA receiving device or HRLA slave device.
[0240] As shown in Figure 11 , the device includes a main processor and at least two controllers, which can be extensible controllers. The main processor and the extensible controllers are connected through an HCI interface. Figure 11 It is shown in
[0241] In the first working mode, at least two controllers in the extensible controller are enabled, wherein: each enabled controller is used to receive an audio data group batch sent by the second device in the current equal-time interval batch sending time slot, and the audio data group contains at least two audio data packets.
[0242] Each enabled controller is also used to generate an acknowledgement data packet carrying acknowledgement information according to its own reception of the audio data group in the current equal-time interval and the reception of the audio data group sent by the second device by the first device before the current equal-time interval.
[0243] Further, each enabled controller is further configured to send the acknowledgement data packet carrying the acknowledgement information to the second device in a time-shared manner within a batch acknowledgement time slot of a current isochronous interval.
[0244] The enabled controllers include at least two of the master controller, the slave controller 1 and the slave controller 2.
[0245] The master controller includes a first interface and a second interface defined in the Bluetooth Core Specification, the first interface is configured to connect a host processor located outside the extensible controller, and the second interface is configured to connect at least one slave controller. Figure 11 The second interface is connected to the slave controller 1. In addition, the slave controller 1, the slave controller 2 and the master controller are connected in a cascade / series manner, specifically, connected through a physical interface such as a UART, USB or SDIO interface.
[0246] Further, the master controller and each slave controller have a structure as shown in Figure 12 The master controller and each slave controller have a structure as shown in
[0247] The number of the antenna 1201 is one or more, and the antenna 1201 is configured to receive an audio data packet sent by the second device. In the embodiment, the antenna corresponding to the master controller and the antenna corresponding to each slave controller are isolated from each other.
[0248] The antenna 1201, the radio frequency unit 1202, the modem unit 1203, the baseband processor 1204 and the link protocol processor 1205 cooperate to perform the wireless audio data transmission method described in the first embodiment and the second embodiment.
[0249] The link protocol processor 1205 includes a first interface and a second interface, and the first interface and the second interface are both HCI interfaces. Optionally, the number of the second interfaces is greater than or equal to 1.
[0250] It should be noted that if the master controller and the two slave controllers are connected in a cascade manner, the master controller can connect the slave controller 1 through one second interface; if the master controller and the two slave controllers are connected in a parallel manner, the master controller can connect the slave controller 1 and the slave controller 2 through two second interfaces, and the number of the second interfaces is determined according to the number of the slave controllers connected.
[0251] In addition, the master controller in this embodiment can be the first controller in the above-mentioned embodiments, and the slave controller 1 or the slave controller 2 can be the second controller in the above-mentioned embodiments.
[0252] The memory or the storage unit can be used to store transmission data, such as audio data packets and acknowledgement data packets. In addition, the memory or the storage unit can also be used to store computer-readable program instructions, which, when executed by a computer, can implement the wireless audio data transmission method described in Embodiment I and Embodiment II.
[0253] It should be noted that the memory or the storage unit can be integrated in the baseband processor 1204 or the link protocol processor 1205, or can also be connected to other units / modules in the controller as a separate module / unit, and the present embodiment does not limit this.
[0254] Optionally, in a possible implementation, the master controller and the at least one slave controller are packaged in the same chip, and the antenna pins of the master controller and the at least one slave controller are located on two different surfaces of the chip, so as to keep a sufficient spatial distance between the two antennas of the master controller and the slave controller, so that the correlation coefficient of the signals received by the two antennas is small enough to obtain a large spatial diversity gain.
[0255] In the above-mentioned embodiment, the pin is also referred to as a pin. It is understood as a connection between the internal circuit of an integrated circuit (chip) and a peripheral circuit. All pins constitute the interface of the chip. The pins are located on both sides of the chip, so that the antennas can be better arranged at different positions, and a sufficient spatial distance is left between the two antennas.
[0256] In addition, the present embodiment also provides a second device, which can be used as an HRLA sending device or an HRLA master device, and is used to execute the method steps of the above-mentioned HRLA sending device or HRLA master device. The structure is as shown in Figure 13 The second device can also include more or fewer modules, such as a memory, a storage unit, etc.
[0257] Specifically, the transceiver module 1301 is configured to batch send audio data groups to the first device in the current equal-time interval batch sending time slot, and is configured to receive at least one acknowledgement data packet carrying acknowledgement information sent by the enabled at least one controller in the current equal-time interval batch acknowledgement time slot. The acknowledgement data packet is an acknowledgement data packet sent by the master controller and / or the slave controller of the first device.
[0258] The processing module 1302 is used to integrate the confirmation information in all received confirmation data packets to determine the reception status of the audio data group sent by the first device to the second device within the current equal time interval and the equal time interval before the current equal time interval.
[0259] Furthermore, the processing module 1302 is specifically used to determine the next audio data group based on the reception status of the audio data group sent by the first device to the second device.
[0260] The transceiver module 1301 is further configured to send the next audio data group to the first device in batches within the next equal time interval. The next audio data group includes at least one of: an audio data packet to be sent for the first time, an audio data packet to be retransmitted, and a pre-retransmitted audio data packet, wherein the pre-retransmitted audio data packet is selected from the audio data to be sent for the first time and / or the audio data packet to be retransmitted.
[0261] In this embodiment, the modules in the second device are also used to implement other functions described in Embodiments 1 to 3 above, which will not be repeated hereafter. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0262] It should be noted that the specific implementation of the transceiver module 1301 and the processing module 1302 in the second device described above can be compared with... Figure 12 The structure shown is the same, meaning it can be implemented by units / modules such as antenna 1201, radio frequency unit 1202, modulation and demodulation unit 1203, baseband processor 1204, and link protocol processor 1205. Alternatively, it can be implemented by other functional modules; this embodiment does not impose any limitations on this.
[0263] In addition, the memory or storage unit in the second device is also used to store data such as audio data packets and confirmation data packets. It can also be used to store computer-readable program instructions. When the instructions are run by the computer, the wireless audio data transmission method described in Embodiment 1 and Embodiment 2 can be implemented.
[0264] Based on the first and second devices described above, this embodiment also provides a wireless audio data transmission system, such as a wireless stereo high-resolution lossless audio headphone system or an HRLA system, including the above-mentioned... Figure 11 The first device shown and Figure 13 The second device is shown. The structure of this transmission system can be seen in the aforementioned example. Figure 1 The first and second devices communicate wirelessly via a wireless communication link, such as an MCBAIS link.
[0265] Further, the first device and the second device are configured to perform the wireless audio data transmission method as described above. Figure 3 、 Figure 6 and Figure 10 The wireless audio data transmission method can achieve spatial diversity gain provided by the multi-controller audio receiving device, reduce retransmission rate, improve bandwidth efficiency and transmission reliability of the wireless audio data transmission, and meet bandwidth requirements of various high-reliability wireless transmission such as high-definition audio, lossless audio, or high-definition lossless audio.
[0266] In addition, the embodiments of the present application also provide a computer readable storage medium, and the method according to the embodiments of the present application can be implemented in hardware, firmware, or recorded in a storage medium, or stored in a remote storage medium or a non-transitory machine readable storage medium and stored in a local storage medium by downloading through a network, so that the method described herein can be processed by such software stored on a storage medium using a general-purpose computer, a special-purpose processor, or programmable or special-purpose hardware.
[0267] The storage medium can be a magnetic disk, an optical disk, a read-only memory, a random access memory, a flash memory, a hard disk, or a solid-state disk, etc. Further, the storage medium can also include a combination of the above-mentioned types of memories. It can be understood that the computer, the processor, the microprocessor controller, or the programmable hardware includes a storage component that can store or receive software or computer code, and when the software or computer code is accessed and executed by the computer, the processor, or the hardware, the wireless audio data transmission method shown in the above embodiments is implemented.
[0268] Although the embodiments of the present application are described in conjunction with the accompanying drawings, various modifications and changes can be made by those skilled in the art without departing from the spirit and scope of the present application, and such modifications and changes fall within the scope defined by the appended claims.
Claims
1. A method for transmitting wireless audio data, characterized in that, Applied to a first device, the first device including a main processor and at least two controllers, one or more of the at least two controllers being selectively enabled during wireless audio transmission, the first device having a first operating mode and a second operating mode, the method comprising: If the first device is in the first working mode, at least two controllers are enabled to simultaneously receive audio data groups sent by the second device in batches within the current equal time interval of batch transmission. The audio data groups contain at least two audio data packets. Each activated controller generates an acknowledgment data packet carrying acknowledgment information based on its own reception of the audio data group within the current equal time interval and the reception of the audio data group sent by the first device to the second device before the current equal time interval. Each of the activated controllers sends its own generated confirmation data packets to the second device in a time-sharing manner within the current equal-time interval of the batch confirmation slot; The method further includes: In the second operating mode, the first device selects one controller from the at least two controllers and enables it.
2. The method according to claim 1, characterized in that, The batch confirmation time slot includes multiple confirmation sub-time slots; Each activated controller, within the current equal-time interval of the batch confirmation slot, sends its own generated confirmation data packet to the second device in a time-sharing manner, including: Each activated controller occupies an acknowledgment sub-slot within the batch acknowledgment slot to send the acknowledgment data packet it generates, wherein the acknowledgment sub-slots occupied by each activated controller are different.
3. The method according to claim 1, characterized in that, The method further includes: If the first device is in the second operating mode, based on the channel quality of each controller evaluated, one controller is selected from the at least two controllers and enabled, and the audio data groups transmitted in batches by the second device are received within the current equal-time interval batch transmission slot; The activated controller generates an acknowledgment data packet carrying acknowledgment information based on its own reception of the audio data group within the current equal time interval and the reception of the audio data group sent by the first device to the second device before the current equal time interval. The activated controller sends the confirmation data packet to the second device within the current equal-time interval of the batch confirmation slot.
4. The method according to claim 3, characterized in that, The step of selecting and enabling one controller from the at least two controllers based on the evaluated channel quality of each controller includes: The channel quality between each controller and the second device is periodically evaluated, and based on the channel quality and a first preset condition, one controller is selected from the at least two controllers and enabled. The method further includes: When the first device is in the second operating mode, maintain data synchronization and channel evaluation functions for all controllers, and / or at least prohibit the remaining unenabled controllers from sending the acknowledgment data packets.
5. The method according to claim 4, characterized in that, The step of selecting and activating one controller from the at least two controllers based on the channel quality and the first preset condition includes: When the quality of the first channel of the first controller is less than the first preset threshold and the quality of the second channel of the second controller is greater than the second preset threshold, the second controller is selected and enabled, and the first controller is designated as an inactive controller. The first controller is one of the at least two controllers, and the second controller is a controller that is different from the first controller among the at least two controllers; the second preset threshold is higher than the first preset threshold.
6. The method according to claim 5, characterized in that, The method further includes: The channel quality between each controller and the second device is periodically evaluated, and the operating mode of the first device is switched based on the channel quality and a second preset condition.
7. The method according to claim 6, characterized in that, The process of periodically evaluating the channel quality between each controller and the second device, and switching the operating mode of the first device based on the channel quality and a second preset condition, includes: In the second working mode, when it is detected that the channel quality between each controller and the second device is less than the first preset threshold, the working mode of the first device is switched from the second working mode to the first working mode.
8. The method according to claim 6, characterized in that, The process of periodically evaluating the channel quality between each controller and the second device, and switching the operating mode of the first device based on the channel quality and a second preset condition, includes: In the first working mode, when it is detected that the channel quality between at least one controller and the second device is higher than the second preset threshold, the working mode of the first device is switched from the first working mode to the second working mode.
9. The method according to claim 1, characterized in that, The first device also has a third operating mode, and the method further includes: If the first device is in the third working mode, the target controller is enabled to receive the audio data groups sent by the second device in batches within the current equal time interval batch transmission time slot. The target controller is one of the at least two controllers and is connected to the main processor. The target controller generates an acknowledgment data packet carrying acknowledgment information based on its own reception of the audio data group within the current equal time interval and the reception of the audio data group sent by the first device to the second device before the current equal time interval. The target controller sends the confirmation data packet to the second device within the current equal-time interval of the batch confirmation time slot.
10. The method according to any one of claims 1-9, characterized in that, The first device and the second device communicate to transmit the wireless audio data based on a wireless communication link. The confirmation data packet includes a BAE field, which is used to indicate whether the bulk data packet confirmation function of the wireless communication link is enabled. If the BAE field indicates that the bulk data packet acknowledgment function is enabled, then the acknowledgment data packet further includes: a STARTSN field and a BA mapping table, used to indicate the acknowledgment information, wherein: The STARTSN field is used to indicate the sequence number PDUSN of an audio data packet; The BA mapping table is used to indicate whether one or more audio data packets, starting from the sequence number PDUSN indicated by the STARTSN field, have been correctly received, or whether the second device needs to retransmit the data.
11. The method according to claim 10, characterized in that, Each of the equal time intervals also includes: a transmission time slot and a reception time slot for the Bluetooth Low Energy Asynchronous Connection (ACL) link, used to negotiate whether the first device enables two or more controllers and the number of controllers enabled.
12. A method for transmitting wireless audio data, characterized in that, Applied to a second device, the method includes: Within a batch transmission time slot of equal time interval, a batch of audio data groups is transmitted to a first device, the audio data group containing at least two audio data packets; the first device includes a main processor and at least two controllers, the at least two controllers being selectively enabled by the wireless audio data transmission method according to any one of claims 1 to 11 during the wireless audio transmission process; Within the current equal-time interval of the batch confirmation slot, at least one confirmation data packet carrying confirmation information is received from at least one enabled controller. By combining the confirmation information in all received confirmation data packets, the reception status of the audio data group sent by the first device to the second device within the current equal time interval and the equal time interval before the current equal time interval is determined. Specifically, based on the confirmation information in all received confirmation data packets, audio data packets that are indicated by all confirmation data packets as not received correctly or needing to be retransmitted are determined as audio data packets that were not received correctly by the first device or needing to be retransmitted.
13. The method according to claim 12, characterized in that, The batch confirmation time slot includes multiple confirmation sub-time slots; The step of receiving at least one confirmation data packet carrying confirmation information sent by at least one enabled controller within the current equal-time interval batch confirmation slot includes: At least one acknowledgment data packet sent by the enabled controller is received in each of the acknowledgment sub-slots of the batch acknowledgment slot.
14. The method according to any one of claims 12-13, characterized in that, The second device and the first device communicate via a wireless communication link to transmit the wireless audio data. Each audio data packet in the audio data group includes: The BTE field is used to indicate whether the bulk data packet transmission function of the wireless communication link is enabled; If the BTE field indicates that the bulk data packet transmission function is enabled, then each audio data packet further includes: The BTN field is used to indicate the total number of audio data packets sent in a batch within the current equal time interval; The BTSN field is used to indicate the sequence number of the audio data packets sent in a batch within the current equal time interval; The PDUSN field is used to indicate the sequence number of the audio data packet sent by the second device; The BAN field is used to indicate the number of times the first device can reply with an acknowledgment packet.
15. A first device for performing a method for transmitting wireless audio data as claimed in any one of claims 1 to 11, characterized in that, The device includes a main processor and at least two controllers, one or more of which are selectively enabled during wireless audio transmission, and the first device has a first operating mode. In the first operating mode, at least two controllers are enabled, wherein: Each activated controller is configured to receive a batch of audio data transmitted from the second device within a current equal-interval batch transmission time slot, the batch of audio data containing at least two audio data packets; Each activated controller is also configured to generate an acknowledgment data packet carrying acknowledgment information based on its own reception of the audio data group within the current equal time interval and the reception of the audio data group sent by the first device to the second device before the current equal time interval. Each activated controller is also configured to send confirmation data packets carrying confirmation information to the second device in a time-sharing manner within the current equal-time interval of the batch confirmation slot.
16. The first device according to claim 15, characterized in that, Each of the controllers includes one or more antennas, radio frequency units, modulation and demodulation units, baseband processors, and link protocol processors; The main processor and the at least two controllers are connected via an interface defined by the Bluetooth core specification.
17. The first device according to claim 15, characterized in that, The at least two controllers include a master controller and one or more slave controllers; The main controller includes a first interface and a second interface defined according to the Bluetooth core specification. The first interface is used to connect to the main processor, and the second interface is used to connect to the one or more slave controllers.
18. The first device according to claim 17, characterized in that, The master controller and the one or more slave controllers are packaged in the same chip, and the antenna pins of the master controller and the one or more slave controllers are located on two different sides of the chip.
19. A second device for performing a method for transmitting wireless audio data as claimed in any one of claims 12 to 14, characterized in that, include: A transceiver module is used to send audio data groups in batches to a first device within a batch transmission time slot of equal time interval, wherein the audio data group contains at least two audio data packets, and the first device includes a main processor and at least two controllers, wherein one or more of the at least two controllers are selectively enabled; The transceiver module is also configured to receive at least one confirmation data packet carrying confirmation information sent by at least one enabled controller within the current equal time interval of the batch confirmation time slot; The processing module is used to integrate the confirmation information in all received confirmation data packets to determine the reception status of the audio data group sent by the first device to the second device within the current equal time interval and the equal time interval before the current equal time interval.
20. A wireless audio data transmission system, characterized in that, It includes a first device and a second device, which transmit wireless audio data based on a wireless communication link; The first device is used to perform the wireless audio data transmission method as described in any one of claims 1 to 11; The second device is used to perform the wireless audio data transmission method as described in any one of claims 12 to 14.