VIDEO LATENCY IMPROVEMENT METHOD THROUGH PACKET DUPLICATION MECHANISM
20230370643 · 2023-11-16
Assignee
Inventors
Cpc classification
H04N19/67
ELECTRICITY
International classification
H04N19/67
ELECTRICITY
Abstract
The present invention provides a control method of an electronic device, wherein the control method includes the steps of: obtaining a plurality of MPDUs, wherein the plurality of MPDUs corresponds to at least one I-frame and at least one P-frame; selectively duplicating the MPDUs corresponding to the I-frame to generate a plurality of duplicated MPDUs; and aggregating the plurality of MPDUs and the plurality of duplicated MPDUs in at least one PPDU.
Claims
1. A control method of an electronic device, comprising: obtaining a plurality of media access control protocol data units (MPDU), wherein the plurality of MPDUs correspond to at least one Intra-coded frame (I-frame) and at least one predicted frames (P-frame); selectively duplicating the MPDUs corresponding to the at least one I-frame or the at least one P-fame to generate a plurality of duplicated MPDUs; and aggregating the plurality of MPDUs and the plurality of duplicated MPDUs in at least one physical layer protocol data unit (PPDU) in at least one link among multiple links.
2. The control method of claim 1, further comprising: classifying media access control service data units (MSDU) corresponding to the at least one I-frame into a first group; generating the MPDUs corresponding to the I-frame according to the MSDUs of the first group; classifying MSDUs corresponding the at least one P-frame into a second group; and generating the MPDUs corresponding to the P-frame according to the MSDUs of the second group.
3. The control method of claim 2, wherein the MSDUs of the first group have a first traffic identity (TID), and the MSDUs of the second group have a second TID different from the first TID.
4. The control method of claim 1, further comprising: determining whether at least one specific parameter of the electronic device satisfies a first condition to generate a first determination result; and the step of selectively duplicating the MPDUs corresponding to the at least one I-frame or the at least one P-frame to generate the plurality of duplicated MPDUs comprises: in response to the first determination result indicating that the at least one specific parameter of the electronic device satisfies the first condition, duplicating all of the MPDUs corresponding to the I-frame to generate the plurality of duplicated MPDUs.
5. The control method of claim 4, wherein the at least one specific parameter represents a packet transmission quality of the electronic device, or the at least one specific parameter represents an ability of processing the plurality of MPDUs.
6. The control method of claim 5, wherein the at least one specific parameter comprises at least one of a packet error rate, an available bandwidth, SINR, Doppler, Mobility Speed from smart phone GPS/GNSS, QoS priority, Application priority from smart phone and an aggregation count of MPDUs within one PPDU.
7. The control method of claim 4, further comprising: in response to the first determination result indicating that the at least one specific parameter of the electronic device does not satisfy the first condition, determining whether the at least one specific parameter of the electronic device satisfies a second condition to generate a second determination result; and the step of selectively duplicating the MPDUs corresponding to the I-frame to generate the plurality of duplicated MPDUs comprises: in response to the second determination result indicating that the at least one specific parameter of the electronic device satisfies the second condition, duplicating only part of the MPDUs corresponding to the I-frame to generate the plurality of duplicated MPDUs.
8. The control method of claim 7, wherein the step of selectively duplicating the MPDUs corresponding to the at least one I-frame or the at least one P-frame to generate the plurality of duplicated MPDUs comprises: in response to the second determination result indicating that the at least one specific parameter of the electronic device does not satisfy the second condition, not duplicating any MPDU corresponding to the I-frame.
9. The control method of claim 1, wherein the step of aggregating the plurality of MPDUs and the plurality of duplicated MPDUs in at least one PPDU comprises: aggregating the plurality of MPDUs and the plurality of duplicated MPDUs in one PPDU.
10. The control method of claim 9, wherein the step of selectively duplicating the MPDUs corresponding to the at least one I-frame or the at least one P-frame to generate the plurality of duplicated MPDUs comprises: duplicating only part of the MPDUs corresponding to the I-frame to generate the plurality of duplicated MPDUs.
11. The control method of claim 9, wherein the MPDUs corresponding to the I-frame have consecutive sequence numbers, and the only part of the MPDUs have a head of the consecutive sequence numbers.
12. The control method of claim 9, wherein the MPDUs corresponding to the I-frame have consecutive sequence numbers, and the only part of the MPDUs have a tail of the consecutive sequence numbers.
13. The control method of claim 1, wherein the electronic device establishes a first link and a second link with another electronic device, and the step of aggregating the plurality of MPDUs and the plurality of duplicated MPDUs in the at least one PPDU comprises: aggregating the plurality of MPDUs in a first PPDU; aggregating the plurality of duplicated MPDUs in a second PPDU; and the control method further comprises: wirelessly transmitting the first PPDU to the another electronic device via the first link; and wirelessly transmitting the second PPDU to the another electronic device via the second link.
14. The control method of claim 13, wherein the first link and the second link correspond to a same channel frequency.
15. The control method of claim 1, wherein the electronic device is an access point (AP) router or a non-AP station, and the electronic device is configured to wirelessly transmit the at least one PPDU to another electronic device, and the control method further comprises: receiving a request from the another electronic device to request an MPDU duplication mechanism; wherein the step of selectively duplicating the MPDUs corresponding to the I-frame to generate the plurality of duplicated MPDUs is executed after receiving the request from the another electronic device.
16. The control method of claim 15, further comprising: receiving information from the another electronic device, wherein the information indicates which MPDU corresponds to the I-frame.
17. The control method of claim 16, wherein the information is a specific TID.
18. A circuitry within an electronic device, configured to perform the steps of: obtaining a plurality of media access control protocol data units (MPDU), wherein the plurality of MPDUs corresponds to at least one Intra-coded frame (I-frame) and at least one predicted frames (P-frame); selectively duplicating the MPDUs corresponding to the at least one I-frame or the at least one P-frame to generate a plurality of duplicated MPDUs; and aggregating the plurality of MPDUs and the plurality of duplicated MPDUs in at least one physical layer protocol data unit (PPDU) .
19. The circuitry of claim 18, further comprising: classifying media access control service data units (MSDU) corresponding to the at least one I-frame into a first group; generating the MPDUs corresponding to the I-frame according to the MSDUs of the first group; classifying MSDUs corresponding the at least one P-frame into a second group; and generating the MPDUs corresponding to the P-frame according to the MSDUs of the second group.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0007]
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
DETAILED DESCRIPTION
[0017] Certain terms are used throughout the following description and claims to refer to particular system components. As one skilled in the art will appreciate, manufacturers may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following discussion and in the claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to ...”. The terms “couple” and “couples” are intended to mean either an indirect or a direct electrical connection. Thus, if a first device couples to a second device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections.
[0018]
[0019] In order to reduce the packet loss to shorten video frame latency of the video stream transmission between the electronic devices 110 and 120, the electronic device 110 actively performs packet duplication to increase the probability of the electronic device 120 successfully receiving the packets. Specifically, referring to
[0020]
[0021] In a first embodiment, the specific parameter may be a packet error rate (PER), wherein the packet error rate can be calculated based on a number of packets not successfully received by the electronic device 120 and a number of packets transmitted from the electronic device 110 to the electronic device 120. For example, if the packet error rate is greater than a first threshold value, it is determined that the packet error rate satisfies the first condition, and the flow enters Step 310; and if the packet error rate is not greater than the first threshold value, it is determined that the packet error rate does not satisfy the first condition, and the flow enters Step 312.
[0022] In a second embodiment, the specific parameter may be an available bandwidth capable of being used to transmit the video stream to the electronic device 120. If the available bandwidth is greater than a threshold, it is determined that the available bandwidth satisfies the first condition, and the flow enters Step 310; and if the available bandwidth is not greater than the threshold, it is determined that the available bandwidth does not satisfy the first condition, and the flow enters Step 312.
[0023] In a third embodiment, the specific parameter may be an aggregation count of the MPDUs within one PPDU, that is how many MPDUs can be included in in a PPDU at most. If the aggregation count is available for adding the duplicated MPDUs in the PPDU, it is determined that the available bandwidth satisfies the first condition, and the flow enters Step 310; and if the aggregation count is not available for adding the duplicated MPDUs in the PPDU (e.g., too many MPDUs are generated), it is determined that the aggregation count does not satisfy the first condition, and the flow enters Step 312.
[0024] In one embodiment, the above three embodiments of the specific parameters can be considered together to determine if the specific parameters satisfy the first condition. For example, the first condition is satisfied only when the packet error rate is greater than the first threshold value, the available bandwidth is greater than the threshold, and the aggregation count is available for adding the duplicated MPDUs in the PPDU.
[0025] It is noted that the above embodiments for executing Step 308 are for illustrative, not a limitation of the present invention. That is, the above packet error rate can be replaced by any parameter capable of representing a packet transmission quality, and the available bandwidth and the aggregation count can be replaced by any parameter capable of representing an ability of processing the MPDUs. In one embodiment, the specific parameter can be one of SINR (Signal to Interference plus Noise Ratio), Doppler, Mobility Speed from smart phone GPS/GNSS, QoS priority, Application priority from smart phone
[0026] In Step 310, the MAC layer 118 duplicates all of the MPDUs corresponding to the I-frame(s), and the original MPDUs and the duplicated MPDUs corresponding to the I-frame (s) are aggregated into one or more PPDUs. Taking
[0027] In Step 312, the MAC layer 118 determines if one or more specific parameters of the electronic device 110 satisfy a second condition, if yes, the flow enters Step 314; and if not, the flow enters Step 316. In one embodiment, the specific parameter may be a packet error rate, and if the packet error rate is greater than a second threshold value lower than the first threshold value mentioned in Step 308, it is determined that the packet error rate satisfies the second condition, and the flow enters Step 314; and if the packet error rate is not greater than the second threshold value, it is determined that the packet error rate does not satisfy the second condition, and the flow enters Step 316. In another embodiment, the specific parameter may be an available bandwidth capable of being used to transmit the video stream to the electronic device 120. If the available bandwidth is greater than another threshold which is lower than the threshold mentioned in Step 308, it is determined that the available bandwidth satisfies the second condition, and the flow enters Step 314; and if the available bandwidth is not greater than the other threshold, it is determined that the available bandwidth does not satisfy the second condition, and the flow enters Step 316. In another embodiment, the specific parameter may be an aggregation count of the MPDUs within one PPDU, that is how many MPDUs can be included in in a PPDU at most. If the aggregation count is available for adding the duplicated MPDUs in the PPDU, it is determined that the available bandwidth satisfies the second condition, and the flow enters Step 314; and if the aggregation count is not available for adding the duplicated MPDUs in the PPDU (e.g., too many MPDUs are generated), it is determined that the aggregation count does not satisfy the second condition, and the flow enters Step 316.
[0028] Step 314, the MAC layer 118 duplicates only part of the MPDUs corresponding to the I-frame(s), and the original MPDUs and the duplicated MPDUs corresponding to the I-frame (s) are aggregated into one or more PPDUs. Taking
[0029] In Step 316, the MAC layer 118 does not duplicate any MPDU, that is any two of the MPDUs aggregated in to the PPDU do not have the same sequence number.
[0030] In Step 318, the physical layer 119 wirelessly transmits the PPDU to the electronic device 120. After receiving the PPDU, the electronic device 120 can use a legacy circuitry to filter out the duplicated MPDU (if both the original MPDU and the duplicated MPDU are successfully received), for the following operations.
[0031] In the above embodiments shown in
[0032] In the above embodiments, only the MPDUs corresponding to the I-frames are duplicated, so the PPDU may comprises the original MPDUs corresponding to the I-frame, the duplicated MPDUs corresponding to the I-frame and the original MPDUs corresponding to the P-frame. In an alternative embodiment, the MAC layer 118 may also duplicate part or all of the MPDUs corresponding to the P-frame, that is, the PPDU may comprises the original MPDUs corresponding to the I-frame, the duplicated MPDUs corresponding to the I-frame, the original MPDUs corresponding to the P-frame, and the duplicated MPDUs corresponding to the P-frame.
[0033] In one embodiment, the electronic device 110 can establish multiple links with the electronic device 120, wherein the multiple links may correspond to different frequency bands or the same channel frequency. For example, the electronic device 110 may use channels belonging to a 2.4 GHz band and 5 GHz band (e.g., 4.915 GHz - 5.825 GHz) to communicate with the electronic device 120 simultaneously, or the electronic device 110 may use channels belonging to a 2.4 GHz band and 6 GHz band (e.g., 5.925 GHz - 7.125 GHz) to communicate with the electronic device 120 simultaneously. Based on the multiple links established between the electronic device 110 and the electronic device 120, another control method of the electronic device 100 is provided in
[0034] In Step 610, the MAC layer 118 determines if one or more specific parameters of the electronic device 110 satisfy a first condition, if yes, the flow enters Step 612; and if not, the flow enters Step 614. The operation of the Step 610 is similar to the Step 308 shown in
[0035] In Step 612, the MAC layer 118 duplicates all of the MPDUs corresponding to the I-frame(s), and the original MPDUs and the duplicated MPDUs corresponding to the I-frame(s) are aggregated to the PPDUs corresponding to different links. Taking
[0036] In Step 614, the MAC layer 118 determines if one or more specific parameters of the electronic device 110 satisfy a second condition, if yes, the flow enters Step 616; and if not, the flow enters Step 618. The operation of the Step 614 is similar to the Step 312 shown in
[0037] Step 616, the MAC layer 118 duplicates only part of the MPDUs corresponding to the I-frame(s), and the original MPDUs and the duplicated MPDUs corresponding to the I-frame (s) are aggregated into different PPDUs. Taking
[0038] In Step 618, the MAC layer 118 does not duplicate any MPDU, that is any two of the MPDUs aggregated in to the PPDU do not have the same sequence number.
[0039] In Step 620, the physical layer 119 wirelessly transmits the first PPDU and the second PPDU to the electronic device 120 via the first link and the second link, respectively. It is noted that the first PPDU may further have MPDUs corresponding to P-frames, and the second PPDU may also have other MPDUs.
[0040]
[0041] In order to reduce the packet loss to shorten video frame latency of the video stream transmission between the electronic device 910 and the station 930, the electronic device 910 actively performs packet duplication to increase the probability of the station 930 successfully receiving the packets. Similar to the embodiment shown in
[0042] After receiving the PPDU from the electronic device 910, the station 930 will filter output the duplicated MPDUs and regenerate the PPDU having the filtered MPDUs, and the regenerated PPDU is transmitted to the electronic device 920. In order to reduce the packet loss to shorten video frame latency of the video stream transmission between the station 930 and the electronic device 920, the electronic device 920 can actively send a request to the station 930 to request the station 930 to adopt the MPDU duplication mechanism.
[0043]
[0044] Briefly summarized, in the embodiments of the present invention, by actively duplicating part or all of the MPDUs corresponding to the I-frames, the probability of the electronic device successfully receiving the MPDUs corresponding to the I-frames will become higher, and the video latency can be shortened. In addition, because the I-frames are basic frames for the decoding operation, successfully receiving the MPDUs corresponding to the I-frames t means that the video can be played fluently.
[0045] Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.