Data transmission method, wireless transmitting device, wireless receiving device, and system

WO2026102649A1PCT designated stage Publication Date: 2026-05-21SHENZHEN HOLLYLAND TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
SHENZHEN HOLLYLAND TECH CO LTD
Filing Date
2024-11-14
Publication Date
2026-05-21

Smart Images

  • Figure CN2024131985_21052026_PF_FP_ABST
    Figure CN2024131985_21052026_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a data transmission method, a wireless transmitting device, a wireless receiving device, a wireless transmission system, a computer program product, and a computer readable storage medium. Each time a wireless transmitting end sends data packets and corresponding error correction check packets to a wireless receiving end, the number of lost packets in the current transmission process can be predicted on the basis of packet loss information fed back by the wireless receiving end the previous time, and then the number of error correction check packets that need to be sent to the wireless receiving end is determined on the basis of the number of lost packets. By dynamically adjusting, on the basis of real-time packet loss information, the number of error correction check packets that need to be sent in the current data transmission process, an appropriate number of error correction check packets can be sent during each data transmission, thereby ensuring rapid recovery of lost data packets, reducing latency, and also avoiding waste of network resources.
Need to check novelty before this filing date? Find Prior Art

Description

Data transmission methods, wireless transmitting equipment, wireless receiving equipment and systems Technical Field

[0001] This application relates to the field of wireless transmission technology, and more specifically, to a data transmission method, a wireless transmitting device, a wireless receiving device, a wireless transmission system, a computer program product, and a computer-readable storage medium. Background Technology

[0002] In wireless transmission scenarios, external interference can increase the bit error rate, making parsing impossible and resulting in packet loss. Since packet loss leads to data loss and affects subsequent use, the wireless receiver needs to recover lost data packets using various methods. In scenarios with packet loss, the wireless receiver can request the wireless transmitter to retransmit the lost data packets using retransmission technology. However, retransmission introduces a delay, which cannot guarantee real-time data transmission. Alternatively, error correction techniques can be used to recover lost data packets. For example, when sending data packets to the wireless receiver, the wireless transmitter can simultaneously send error correction and verification packets for packet recovery. When data packets are lost, the wireless receiver can directly recover the lost packets using the error correction and verification packets. Compared to retransmission, this method reduces latency.

[0003] In current technology, the number of error correction packets sent by the wireless transmitter is fixed each time. If the number of error correction packets sent is consistently more than the number needed to recover lost data packets, it may consume excessive wireless bandwidth, resulting in a waste of network resources. Conversely, if the number of error correction packets sent is consistently less than the number needed to recover lost data packets, the wireless receiver still needs to request retransmission from the wireless transmitter, and the latency problem persists. Therefore, it is necessary to provide a data transmission scheme that can reduce data transmission latency while avoiding bandwidth waste.

[0004] Summary of the Invention

[0005] In view of the above, this application provides a data transmission method, a wireless transmitting device, a wireless receiving device, a wireless transmission system, a computer program product, and a computer-readable storage medium.

[0006] According to a first aspect of this application, a data transmission method is provided, the method being applicable to a wireless transmitter, the wireless transmitter being communicatively connected to a wireless receiver, the method comprising:

[0007] Multiple data packets to be sent are acquired, and the multiple data packets are encoded to obtain multiple error correction and verification packets; wherein, the multiple error correction and verification packets are used to recover the multiple data packets;

[0008] M error correction verification packets are selected from the plurality of error correction verification packets; where M is a positive integer, and M is determined based on the packet loss information returned by the wireless receiver in the last time.

[0009] The multiple data packets and the M error correction and verification packets are sent to the wireless receiving end so that the wireless receiving end can determine the packet loss information of the multiple data packets during transmission based on the received data packets and return it to the wireless transmitting end, and recover the multiple data packets based on the received data packets and error correction and verification packets if packet loss is determined to exist.

[0010] According to a second aspect of this application, a data transmission method is provided, the method being applicable to a wireless receiver, the wireless receiver being communicatively connected to a wireless transmitter, the method comprising:

[0011] Receive multiple data packets and multiple error correction and verification packets sent by the wireless transmitter;

[0012] Based on the received data packets, packet loss information in the current data transmission process is determined and returned to the wireless transmitter, so that the wireless transmitter can determine the number of error correction and verification packets to be sent in the next data transmission process based on the packet loss information; and

[0013] If packet loss is detected, multiple data packets sent by the wireless transmitter are recovered based on the received data packets and error correction verification packets.

[0014] According to a third aspect of this application, a wireless transmitting device is provided, which can implement the data transmission method mentioned in the first aspect above.

[0015] According to a fourth aspect of this application, a wireless receiving device is provided, which can implement the data transmission method mentioned in the second aspect above.

[0016] According to a fifth aspect of this application, a wireless transmission system is provided, the wireless transmission system including the wireless transmitting device mentioned in the third aspect above, and one or more wireless receiving devices mentioned in the fourth aspect above.

[0017] According to a sixth aspect of this application, a computer program product is provided, the computer program product comprising a computer program that, when executed, implements the methods mentioned in the first aspect and / or the second aspect above.

[0018] According to a seventh aspect of this application, a computer storage medium is provided, wherein computer instructions are stored therein, and when executed, the computer instructions implement the methods mentioned in the first aspect and / or the second aspect above.

[0019] Applying the scheme provided in this application, each time the wireless transmitter sends a data packet and its corresponding error correction and verification packet to the wireless receiver, it can predict the number of packets lost in the current transmission process based on the packet loss information previously fed back by the wireless receiver, and then determine the number of error correction and verification packets to be sent to the wireless receiver based on this number of packets lost. By dynamically adjusting the number of error correction and verification packets to be sent in the current data transmission process based on real-time packet loss information, an appropriate number of error correction and verification packets can be sent in each data transmission, which can ensure the rapid recovery of lost data packets, reduce latency, and avoid wasting network resources.

[0020] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0021] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0022] Figure 1 is a schematic diagram of data interaction between a wireless transmitter and a wireless receiver according to an embodiment of this application.

[0023] Figure 2 is a schematic diagram of data transmission between a wireless transmitter and a wireless receiver through a broadcast channel and a unicast channel according to an embodiment of this application.

[0024] Figure 3 is a schematic diagram of data transmission between a wireless transmitter and a wireless receiver through a broadcast channel and a unicast channel according to an embodiment of this application.

[0025] Figure 4 is a schematic diagram of data transmission between a wireless transmitter and multiple wireless receivers according to an embodiment of this application. Detailed Implementation

[0026] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0027] In wireless transmission scenarios, external interference can increase the bit error rate, making parsing impossible and resulting in packet loss. Since packet loss leads to data loss and affects subsequent use, the wireless receiver needs to recover the lost data packets using various methods. For example, in wireless video data transmission, packet loss during transmission can cause stuttering or screen tearing during video playback, compromising the video's playback quality.

[0028] To address packet loss, the wireless receiver can request the wireless transmitter to retransmit lost data packets based on retransmission technology to recover the data. However, since retransmission introduces a certain delay, it may not guarantee transmission quality in scenarios with high real-time data transmission requirements (such as video transmission scenarios), resulting in issues like video stuttering or screen tearing.

[0029] Of course, to quickly recover lost data packets, error correction techniques such as FEC (Forward Error Correction) can also be used. For example, when a wireless transmitter sends a data packet to a wireless receiver, it can also simultaneously send an error correction check packet for recovering the packet. That is, when a data packet is lost, the wireless receiver can recover the lost data packet using the error correction check packet. Compared to retransmission, this method can reduce latency.

[0030] Taking FEC (Error Correction and Check) technology as an example, FEC can recover data contained in damaged, discarded, or lost data packets by encoding redundant information. This redundant information can be used by the wireless receiver to reconstruct the lost data. Therefore, FEC can provide faster data recovery than retransmission, making it particularly suitable for streaming media transmission. Specifically, FEC can pre-encode n error correction and check packets from m data packets to be sent, where m and n are both positive integers. The m data packets can be reconstructed using these m+n data packets and any m data from the error correction and check packets. Therefore, even if any n or fewer data packets are lost, they can still be recovered from the remaining data.

[0031] In current technology, the wireless transmitter typically sends m data packets and n error correction and verification packets simultaneously to the wireless receiver. When some of the m data packets are lost, the complete m data packets can be recovered from the n verification packets, thus solving the packet loss problem. However, with changes in the network environment, the number of data packets lost in each transmission is usually different. For example, the number of lost data packets may be greater than n or less than n. If the number of lost data packets is consistently less than n, meaning the number of error correction and verification packets sent is always greater than the number needed to recover the lost data packets, it will undoubtedly consume excessive wireless bandwidth, wasting network resources. Conversely, if the amount of lost data packets is consistently greater than n, meaning the number of error correction and verification packets sent is always less than the number needed to recover the lost data packets, the wireless receiver may need to request the wireless transmitter to retransmit data every time, causing data transmission delays.

[0032] Considering that the number of packet losses during wireless transmission is usually affected by the current network environment, which is dynamic, the number of packet losses also changes dynamically. The quality of the network environment can usually be assessed by observing packet loss during transmission. Based on this, this embodiment proposes that when the wireless transmitter sends a data packet and its corresponding error correction and verification packet to the wireless receiver each time, it can predict the number of packet losses in the current transmission based on the packet loss information previously reported by the wireless receiver, and then determine the number of error correction and verification packets to be sent to the wireless receiver based on this number. By dynamically adjusting the number of error correction and verification packets to be sent in the current data transmission based on real-time packet loss information, an appropriate number of error correction and verification packets can be sent in each data transmission, ensuring rapid recovery of lost data packets, reducing latency, and avoiding resource waste.

[0033] The wireless transmitter in this application can communicate with one or more wireless receivers. The two can communicate based on various wireless protocols such as WiFi, Bluetooth, or custom proprietary protocols. This application does not impose any restrictions on these protocols.

[0034] The data transmitted between the wireless transmitter and the wireless receiver can be of various types, such as video data and audio data, and this application embodiment does not impose any restrictions.

[0035] Figure 1 is a schematic diagram of data interaction between the wireless transmitter and the wireless receiver in an embodiment of this application.

[0036] S102. The wireless transmitter acquires multiple data packets to be transmitted and encodes the multiple data packets to obtain multiple error correction and verification packets; wherein, the multiple error correction and verification packets are used to recover the multiple data packets;

[0037] In step S102, for the raw data to be transmitted, the wireless transmitter can perform packet splitting and grouping processing on the raw data. Each group can include multiple data packets, and then the data is transmitted in units of groups, with each group's data packets being sent sequentially. For example, assuming the raw data is split into 64 data packets, and 8 data packets are grouped into 8 groups, then 8 groups can be obtained, and these 8 groups can be sent to the wireless receiver in 8 separate transmissions.

[0038] After acquiring multiple data packets to be transmitted in the current packet, the wireless transmitter can encode these data packets to obtain multiple corresponding error correction and verification packets (ECPs). These ECPs can be used to recover the data packets. For example, FEC encoding can be performed on these data packets to obtain multiple ECPs. The number of ECPs obtained can be the same as or different from the number of data packets, depending on the actual needs. For example, assuming 8 data packets are grouped together, 8 ECPs can be encoded for each group of 8 data packets, and these 8 ECPs can be used to recover these 8 data packets. For example, if 3 data packets are lost, the lost 3 data packets can be recovered using any 3 of these 8 ECPs.

[0039] S104. The wireless transmitter selects M error correction and verification packets from the plurality of error correction and verification packets; wherein M is a positive integer, and M is determined based on the packet loss information previously returned by the wireless receiver.

[0040] In step S104, after encoding multiple error correction and verification packets, the wireless transmitter can randomly select M error correction and verification packets as the error correction and verification packets to be sent in this data transmission. To ensure that the number of error correction and verification packets sent matches the number of data packets that may be lost during transmission as closely as possible (where matching means that the number of error correction and verification packets is the same as or slightly greater than the number of data packets that may be lost, thus avoiding retransmissions and minimizing network resource waste), the wireless transmitter can predict the possible number of packet losses in the current transmission based on the packet loss information returned by the wireless receiver in the previous transmission, and thus determine the number M of error correction and verification packets to be sent in the current data transmission.

[0041] For example, if each group consists of 8 data packets and 8 error correction and verification packets, the number of data packets that may be lost during the transmission of these 8 data packets can be predicted based on the packet loss information returned by the wireless receiver. If the number is 3, then 3 error correction and verification packets can be randomly selected from the 8 error correction and verification packets for transmission.

[0042] The packet loss information can be various indicators of packet loss during the last data transmission process, such as the number of lost packets, the packet loss rate per unit time, the packet loss time, the packet loss location, etc. The specific settings can be flexibly configured based on actual needs.

[0043] S106. The wireless transmitter sends the plurality of data packets and the M error correction and verification packets to the wireless receiver.

[0044] In step S106, the wireless transmitter can send these multiple data packets and M error correction and verification packets to the wireless receiver.

[0045] S108. The wireless receiver receives the data packet and error correction verification packet sent by the wireless transmitter, determines the packet loss information in the current data transmission process based on the received data packet, and returns it to the wireless transmitter.

[0046] In step S108, the wireless receiver can receive data packets and error correction verification packets sent by the wireless transmitter, and determine the packet loss information in the current data transmission process based on the received data packets. For example, the wireless receiver can determine the number of packet losses, packet loss rate, etc. in the current data transmission process based on the number of received data packets, and then return this packet loss information to the wireless transmitter.

[0047] S110. If the wireless receiver determines that there is packet loss, it recovers multiple data packets sent by the wireless transmitter based on the received data packets and error correction verification packets.

[0048] After receiving the data packet and error correction packet, the wireless receiver can determine whether packet loss has occurred. If no packet loss is found, the wireless receiver can directly reassemble the received data packet and parse out the original data. If packet loss is found, the receiver uses the received error correction packet and data packet to reconstruct the multiple data packets sent by the wireless transmitter, and then reassembles them.

[0049] S112. The wireless transmitter determines the number of error correction and verification packets to be sent in the next data transmission process based on the packet loss information returned by the wireless receiver in the current transmission.

[0050] In step S112, the wireless transmitter receives the packet loss information returned by the wireless receiver in the current transmission and determines the number of error correction and verification packets to be sent in the next data transmission process based on the packet loss information. The wireless transmitter can continuously determine the number of error correction and verification packets to be sent in the current transmission based on the packet loss information returned by the wireless receiver in the previous transmission, thereby dynamically adjusting the number of error correction and verification packets to match the number of packet losses in the current transmission process as closely as possible.

[0051] In some embodiments, the wireless transmission system may have multiple wireless receivers. As shown in Figure 2, in a scenario where there are at least two wireless receivers (Figure 2 uses two wireless receivers as an example), the wireless transmitter can create a broadcast channel to send multiple data packets and M error correction packets to the at least two wireless receivers (wireless receiver 1 and wireless receiver 2 in the figure). Considering that the packet loss situation of each wireless receiver is different, the wireless transmitter can also create at least two unicast channels, each unicast channel being used to receive packet loss information returned by one wireless receiver.

[0052] Similarly, each wireless receiver can also create a broadcast channel and a unicast channel. It can receive multiple data packets and M error correction and verification packets broadcast by the wireless transmitter through the broadcast channel, and send packet loss information to the wireless transmitter through the unicast channel.

[0053] Since the number of error correction packets sent each time is predicted based on the packet loss information previously reported by the wireless receiver, it cannot be guaranteed that the lost data can be recovered every time using the sent error correction packets. Therefore, after receiving the data packets and error correction packets sent by the wireless transmitter, if the wireless receiver determines that the multiple data packets cannot be recovered based on the received data packets and error correction packets, it can send a retransmission request to the wireless transmitter, requesting the wireless transmitter to retransmit the data. In current technology, in scenarios where a wireless transmitter is simultaneously transmitting data to at least two wireless receivers, the wireless transmitter typically uses a broadcast + unicast method for wireless transmission. For example, a piece of data is sent via broadcast, and each wireless receiver sends a retransmission request based on its own packet loss situation. Since the lost data packets of each wireless receiver may be different, the wireless transmitter needs to unicast the retransmitted data back to each wireless receiver individually. For example, assuming there are 4 wireless receivers, if the lost data packets of all 4 wireless receivers contain data packet 1, the wireless transmitter needs to retransmit data packet 1 to each of the 4 wireless receivers, that is, the same data needs to be sent 4 times, which consumes a lot of bandwidth resources.

[0054] Considering that even if different wireless receivers lose different data packets, they can all be recovered using the same error correction and verification packet, when multiple wireless receivers request retransmission, an error correction and verification packet that enables all of them to recover data can be broadcast. This avoids duplicate transmission of the same data and saves bandwidth. In some embodiments, when there are at least two wireless receivers, after the wireless transmitter sends the multiple data packets and M error correction and verification packets to the at least two wireless receivers, the at least two wireless receivers can determine whether there is packet loss based on the data packets they receive. If there is packet loss, they can further determine whether the received error correction and verification packets can recover the lost data (i.e., whether the number of error correction and verification packets is equal to or greater than the number of lost packets). If so, the received error correction and verification packets are used directly to recover the lost data and perform packet reassembly. If the received error correction and verification packets cannot be used to recover the lost data, a retransmission request can be returned to the wireless transmitter. Each retransmission request can carry the number of error correction and verification packets to be retransmitted. Considering that the number of error correction and verification packets requested by each wireless receiver is different, as shown in Figure 3, each wireless receiver can send a retransmission request through a unicast channel.

[0055] Of course, the wireless receiver can also include the number of packets lost in the current data transmission process in the retransmission request, and the wireless transmitter can determine the number of error correction and verification packets to be retransmitted based on the number of packets lost and the number of error correction and verification packets already sent.

[0056] The wireless transmitter can receive retransmission requests returned by one or more of the at least two wireless transmitters, determine the maximum number N from the number carried in the received retransmission requests, and then select N error correction check packets from the remaining error correction check packets (excluding the M error correction check packets already sent) as retransmission data. This retransmission data is then broadcast through a broadcast channel. As shown in Figure 3, the wireless transmitter can send the retransmission data to wireless receiver 1 and wireless receiver 2 via the broadcast channel. Therefore, only one retransmission data needs to be sent, and multiple wireless receivers can recover lost packets based on this retransmission data, saving bandwidth resources.

[0057] For example, suppose the wireless transmitter needs to send 8 data packets. Based on these 8 data packets, 8 error correction (EC) packets are encoded. Based on the packet loss information returned by the wireless receiver, the number of EC packets to be sent is determined to be 3. That is, 3 EC packets can be randomly selected from the 8 EC packets for transmission. The wireless transmitter broadcasts the 8 data packets + 3 EC packets to two wireless receivers (wireless receiver 1 and wireless receiver 2). Wireless receivers 1 and 2 can determine whether retransmission is needed based on the received data packets and EC packets. For example, if wireless receiver 1 loses 4 data packets, it can request the wireless transmitter to retransmit 1 EC packet; if wireless receiver 2 loses 5 data packets, it can request the wireless transmitter to retransmit 2 EC packets. After receiving the two retransmission requests, the wireless transmitter determines that the maximum number of EC packets to be retransmitted is 2. Therefore, it can randomly select 2 more EC packets from the remaining 5 EC packets and broadcast them. After receiving the two retransmitted error correction and verification packets, wireless receiver 1 can select one to recover the lost data. Wireless receiver 2 can then recover the lost data based on the two retransmitted error correction and verification packets. In some embodiments, after sending a retransmission request to the wireless transmitter, the wireless receiver can receive the retransmitted error correction and verification packets and perform packet assembly processing on the retransmitted error correction and verification packets. To quickly utilize the retransmitted error correction and verification packets to recover the lost data and reduce latency, the packet assembly priority of the retransmitted error correction and verification packets is higher than the packet assembly priority of other data packets; that is, the wireless receiver prioritizes the packet assembly processing of the retransmitted error correction and verification packets.

[0058] In some embodiments, the packet loss information can be the packet loss rate per unit time. The wireless transmitter can determine the maximum packet loss rate from the packet loss rates per unit time previously returned by the at least two wireless receivers, and determine the number M of error correction and verification packets to be sent this time based on the number of multiple data packets to be sent and the maximum packet loss rate. Since the wireless transmitter broadcasts the error correction and verification packets to the at least two wireless receivers, meaning that the error correction and verification packets received by the at least two wireless receivers are the same, in order to ensure that each wireless receiver can recover the lost data based on the received error correction and verification packets, the number M of error correction and verification packets to be sent can be determined based on the maximum packet loss rate returned by the at least two wireless receivers.

[0059] For example, the maximum number of packet losses during this transmission can be predicted based on the number of error correction and verification packets to be sent and the maximum packet loss rate. In some scenarios, the number M of error correction and verification packets to be sent can be directly set to the predicted maximum number of packet losses. Of course, in some scenarios, in order to improve anti-interference, the number M of error correction and verification packets to be sent can also be set to be larger than the predicted maximum number of packet losses, so as to ensure that the recovery of lost data can be achieved based solely on error correction and verification packets, avoiding the need to start the retransmission process.

[0060] For example, suppose there are two wireless receivers (wireless receiver 1 and wireless receiver 2). The packet loss rate of wireless receiver 1 in the last returned data per unit time (e.g., 100ms) was 30%, and the packet loss rate of wireless receiver 2 in the last returned data per unit time (e.g., 100ms) was 50%. If 8 data packets need to be sent in the current transmission, then the maximum number of packet losses during data transmission can be predicted to be 8 × 50% = 4. Therefore, the number of error correction packets to be sent can be 4, or a larger number, such as 5 or 6.

[0061] To ensure the wireless receiver can receive the retransmitted error correction and verification packets from the wireless transmitter as quickly as possible and recover the data, reducing latency, the wireless transmitter can configure two transmission queues: a first transmission queue and a second transmission queue. The first transmission queue is used to send retransmitted data (i.e., the error correction and verification packets to be retransmitted), while the second transmission queue is used to send non-retransmitted data, i.e., normally transmitted data packets and error correction and verification packets. The first transmission queue has a higher priority than the second transmission queue, thus ensuring that retransmitted data is sent first, reducing data transmission latency.

[0062] To further explain the data transmission method provided in the embodiments of this application, a specific embodiment will be described below.

[0063] Figure 4 shows a wireless transmission system, which includes a wireless transmitter and N wireless receivers (wireless receivers 1 to N). The wireless transmitter can transmit video data to these N wireless receivers. The specific process includes the following:

[0064] (1) The wireless transmitter creates a broadcast transmission channel, and each wireless receiver creates a broadcast reception channel.

[0065] (2) The wireless transmitter establishes a communication connection with each of the N wireless receivers. The communication connection is implemented through unicast and is mainly used to receive the number of lost packets and the packet loss rate per unit time as counted by the wireless receiver.

[0066] (3) The wireless transmitter creates a high-priority queue and a low-priority queue. The high-priority queue is used to send retransmitted data, and the low-priority queue is used to send data packets for normal transmission. Each time data is sent through the broadcast channel, if there is data in the high-priority queue, it will be sent first, and then the data in the low-priority queue will be sent.

[0067] (4) Assuming a video frame is 100KB and the broadcast channel MTU (Maximum Transmission Unit) is 1500B, this video frame will be divided into 69 data packets. Assuming FEC encoding is performed in blocks of 8 data packets, and each block is encoded with the same number of error correction and check packets as the original data packets, 8 groups of 8 original data packets + 8 error correction and check packets and 1 group of 5 original data packets + 5 error correction and check packets will be encoded.

[0068] (5) The wireless transmitter transmits data in blocks, sending 8 raw data packets and 0 error correction packets in the first transmission (to reduce transmission delay caused by invalid error correction packets). The number of error correction packets is then dynamically adjusted according to the packet loss rate, as shown in step (9) below.

[0069] (6) After receiving the data from the broadcast channel, each wireless receiver performs statistics, calculating its own packet loss count and packet loss rate per unit time (for example, the packet loss counts of wireless receiver 1, wireless receiver 2, and wireless receiver N are A, B, and C, respectively). If there is no packet loss, the data packets are framed into video frames. If the error correction and verification packets carried by the block can meet the recovery conditions, only the packet loss rate is calculated. If fewer than 8 packets are received, the current block packet loss count and packet loss rate per unit time are calculated. For example, suppose that after the current block is sent, the packet loss situation of each wireless receiver is as follows: Wireless receiver 1 has 2 packet losses in the current block with a packet loss rate of 10% per 100ms; Wireless receiver 2 has 4 packet losses in the current block with a packet loss rate of 30% per 100ms. Then, this packet loss information is reported to the sender.

[0070] (7) The wireless transmitter receives the packet loss information reported by the wireless receiver and calculates the maximum number of error correction and verification packets that need to be retransmitted in this block. For example, as shown in the figure, assuming the maximum number of packet loss is K, K error correction and verification packets need to be retransmitted. Among them, any K error correction and verification packets that have not been sent can be selected from the 8 error correction and verification packets. FEC decoding can be restored normally. The error correction and verification packets are added to the high-priority transmission queue for retransmission. For example, taking the case of step (6) as an example, the wireless transmitter calculates that a maximum of 4 error correction and verification packets should be retransmitted.

[0071] (8) After receiving the retransmitted error correction check packets, the wireless receiver performs data recovery. It can select any number of error correction check packets as needed for recovery. If the error correction check packets are sent together with the original data packets in the first transmission, they need to be staggered during retransmission to avoid receiving duplicate error correction check packets and being unable to recover. For example, taking the case in step (6) as an example, wireless receiver 1 selects any 2 error correction check packets, and the remaining error correction check packets can be discarded. Wireless receiver 2 needs 4 error correction check packets.

[0072] (9) The wireless transmitter counts the packet loss rate per unit time reported by the wireless receiver, predicts the number of packets that may be lost in the next transmission block, and sets the number of error correction and verification packets to be sent based on the maximum packet loss rate. For example, taking the case in step (6) as an example, the maximum packet loss rate per unit time is 30%, and 3 (8 × 30% = 3) error correction and verification packets need to be sent together. The next transmission from the transmitter will be 8 original data packets + 3 error correction and verification packets.

[0073] (10) Data transmission can be based on the real-time packet loss rate to predict the number of packets that may be lost in the wireless environment. The latency of transmitting the initial data packets is used to compensate for the latency caused by retransmission, thereby reducing the video transmission latency. If stronger anti-interference and reduced latency caused by retransmission are desired, a fixed number of error correction and verification packets can be added when transmitting the initial data packets to improve anti-interference. For example, taking the case of step (6) as an example, the maximum packet loss rate per unit time is 30%. It is calculated that 3 error correction and verification packets will be sent. If the initial data packet transmission is to be improved by 25% to reduce interference, 2 more error correction and verification packets will be added. The next transmission will be 8 original data packets + 5 error correction and verification packets.

[0074] The solutions in the above embodiments can be freely combined to obtain new solutions when there is no conflict. Due to space limitations, they will not be listed one by one here.

[0075] This application also provides a wireless transmitting device that can realize the functions of the wireless transmitting end described in the above embodiments.

[0076] This application also provides a wireless receiving device that can implement the functions of the wireless receiving end described in the above embodiments.

[0077] This application also provides a wireless transmission system, which includes a wireless transmitting device and one or more wireless receiving devices. The wireless transmitting device can perform the functions of the wireless transmitting end described in the above embodiments, and the wireless receiving device can perform the functions of the wireless receiving end described in the above embodiments.

[0078] This application also provides a computer program product, which includes a computer program that, when executed, implements the methods described in the above embodiments.

[0079] This application also provides a computer storage medium storing computer instructions, which, when executed, implement the methods described in the above embodiments.

[0080] Accordingly, this application also provides a computer storage medium storing a program that, when executed by a processor, implements the method in any of the above embodiments.

[0081] The embodiments of this application may take the form of a computer program product implemented on one or more storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing program code. Computer-usable storage media include permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information may be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to: phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device.

[0082] For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without creative effort.

[0083] The user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.

[0084] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. The terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0085] The methods and apparatus provided in the embodiments of this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only for the purpose of helping to understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this application should not be construed as a limitation of this application.

Claims

1. A data transmission method, characterized by, The method is applicable to a wireless transmitter, wherein the wireless transmitter is communicatively connected to a wireless receiver, and the method includes: Multiple data packets to be sent are acquired, and the multiple data packets are encoded to obtain multiple error correction and verification packets; wherein, the multiple error correction and verification packets are used to recover the multiple data packets; M error correction verification packets are selected from the plurality of error correction verification packets; where M is a positive integer, and M is determined based on the packet loss information returned by the wireless receiver in the last time. The multiple data packets and the M error correction and verification packets are sent to the wireless receiving end so that the wireless receiving end can determine the packet loss information of the multiple data packets during transmission based on the received data packets and return it to the wireless transmitting end, and recover the multiple data packets based on the received data packets and error correction and verification packets if packet loss is determined to exist.

2. The method of claim 1, wherein, The wireless receiver includes at least two, and the wireless transmitter creates a broadcast channel and at least two unicast channels. Each unicast channel is used to communicate with one wireless receiver. The wireless transmitter sends the plurality of data packets and the M error correction and verification packets to the at least two wireless receivers through the broadcast channel, and receives packet loss information returned by the at least two wireless receivers through the at least two unicast channels respectively.

3. The method of claim 2, wherein, After transmitting the plurality of data packets and the M error correction and verification packets to the at least two wireless receivers through the broadcast channel, the method further includes: Receive one or more retransmission requests returned by one of the at least two wireless receivers, wherein the retransmission request carries the number of error correction and verification packets to be retransmitted. Determine the maximum number N from the number carried in the received retransmission request; N error correction check packets are selected from the plurality of error correction check packets as retransmitted data, and the retransmitted data is broadcast through the broadcast channel. The selected N error correction check packets are... Other error correction and verification packages besides the M error correction and verification packages.

4. The method of claim 3, wherein, The wireless transmitter is provided with a first transmission queue and a second transmission queue. The first transmission queue is used to transmit the retransmitted data, and the second transmission queue is used to transmit other data besides the retransmitted data. The priority of the first transmission queue is higher than that of the second transmission queue.

5. The method of claim 1, wherein, After sending the plurality of data packets and the M error correction and verification packets to the wireless receiver, the method further includes: The system receives packet loss information returned by the wireless receiver and determines the number of error correction and verification packets to be sent next based on the received packet loss information.

6. The method of claim 1, wherein, The wireless receiver includes at least two, and the packet loss information includes the packet loss rate per unit time. The M is determined based on the packet loss information previously returned by the at least two wireless receivers, including: The maximum packet loss rate is determined from the packet loss rates received from the at least two wireless receivers in the previous return within a unit of time. The M is determined based on the number of data packets to be sent and the maximum packet loss rate.

7. A data transmission method, characterized by, The method is applicable to a wireless receiver, wherein the wireless receiver is communicatively connected to a wireless transmitter, and the method includes: Receive multiple data packets and multiple error correction and verification packets sent by the wireless transmitter; Based on the received data packets, packet loss information in the current data transmission process is determined and returned to the wireless transmitter, so that the wireless transmitter can determine the number of error correction and verification packets to be sent in the next data transmission process based on the packet loss information; and If packet loss is detected, multiple data packets sent by the wireless transmitter are recovered based on the received data packets and error correction verification packets.

8. The method of claim 7, wherein, The process of recovering multiple data packets sent by the wireless transmitter based on the received data packets and error correction verification packets includes: If it is determined that the received error correction and verification packets can be used to recover the multiple data packets sent by the wireless transmitter, then the received error correction and verification packets can be used directly to recover the multiple data packets sent by the wireless transmitter. Data packets; If it is determined that the received error correction and verification packets cannot recover the multiple data packets sent by the wireless transmitter, a retransmission request is sent to the wireless transmitter, and the retransmission request carries the number of error correction and verification packets to be retransmitted.

9. The method of claim 7, wherein, After sending a retransmission request to the wireless transmitter, the method further includes: After receiving the retransmitted error correction verification packet from the wireless transmitter, the retransmitted error correction verification packet is processed into a packet assembly, wherein the packet assembly priority of the retransmitted error correction verification packet is higher than the packet assembly priority of other data packets.

10. A wireless transmitting device, comprising: The wireless transmitting device can implement the data transmission method according to any one of claims 1-6.

11. A wireless receiving device, characterized by The wireless receiving device can implement the data transmission method according to any one of claims 7-9.

12. A radio transmission system, characterized by The wireless transmission system includes the wireless transmitting device as described in claim 10, and one or more wireless receiving devices as described in claim 11.

13. A computer program product, characterised in that, The computer program product includes a computer program that, when executed, implements the method described in any one of claims 1-6 and / or 7-9.

14. A computer storage medium, characterized in that The computer storage medium stores computer instructions, which, when executed, implement the method described in any one of claims 1-6 and / or 7-9.