Data processing methods, apparatus, electronic equipment, media and computer program products

By establishing dual communication links between electronic devices and using the identification information and mapping values ​​of data frames to compensate for lost data, the problem of data loss caused by poor network signal is solved, and fast and highly reliable data transmission is achieved.

CN119210654BActive Publication Date: 2025-10-31VIVO MOBILE COMM CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411343731.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-25
Publication Date
2025-10-31
Estimated Expiration
2044-09-25

AI Technical Summary

Technical Problem

In existing technologies, electronic devices face a high risk of data loss during calls due to poor network signals, and the data transmission time is long, making it impossible to effectively compensate for lost data frames.

Method used

By establishing two communication links between the first electronic device and the second electronic device, receiving and sending data frames respectively, and obtaining identification information in the data portion of the data frame or through mapping values, it is ensured that the data frame can be quickly transmitted and lost data can be compensated without changing its original size.

Benefits of technology

It reduces the risk of data loss, improves the reliability and smoothness of data transmission, and ensures data integrity during calls.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119210654B_ABST
    Figure CN119210654B_ABST
Patent Text Reader

Abstract

This application discloses a data processing method, apparatus, electronic device, medium, and computer program product, belonging to the field of communication technology. The method includes: a first electronic device receiving at least one first data frame through a first communication link and receiving at least one second data frame through a second communication link; obtaining identification information of each first data frame from the data portion of the at least one first data frame, and obtaining identification information of each second data frame from the at least one second data frame; or, obtaining identification information and mapping value of each second data frame from the at least one second data frame, and determining identification information of each first data frame based on the mapping value of the at least one second data frame and the data portion of the at least one first data frame; and obtaining a target data frame based on the data portion and identification information of the at least one first data frame, and the data portion and identification information of the at least one second data frame.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of communication technology, specifically relating to a data processing method, apparatus, electronic device, medium, and computer program product. Background Technology

[0002] Currently, mobile phones and other electronic devices have become among the most frequently used products in people's daily lives. Making calls using these devices is a basic requirement for most users. To avoid call disruptions caused by poor signal from the network operator providing the call service, two communication links are typically established between the two electronic devices. This allows the electronic device to transmit Pulse Code Modulation (PCM) data to the other device via these two links. In the event of data loss on one link, the lost data can be compensated for by receiving call data from the other link.

[0003] Typically, electronic devices can encapsulate PCM data into data packets and add a number field to the packet header. This allows them to find the lost data from the data received on another communication link and make up for it if data is lost on one of the communication links.

[0004] However, in the aforementioned data compensation methods, electronic devices need to add a number field to the header of the data packet corresponding to each data frame sent in each link to locate lost data frames. This results in a larger amount of data being transmitted, leading to longer data transmission times and an increased risk of data loss. Summary of the Invention

[0005] The purpose of this application is to provide a data processing method, apparatus, electronic device, medium, and computer program product that can reduce the risk of data loss and improve data reliability.

[0006] In a first aspect, embodiments of this application provide a data processing method applied to a first electronic device. The method includes: receiving at least one first data frame through a first communication link and receiving at least one second data frame through a second communication link, wherein the first and second communication links are communication links established for the same communication service, and the first and second communication links are communication links between the first and second electronic devices; acquiring a data portion and identification information of at least one first data frame, and acquiring a data portion and identification information of at least one second data frame; obtaining a target data frame based on the data portion and identification information of at least one first data frame, and the data portion and identification information of at least one second data frame; wherein acquiring the data portion and identification information of at least one first data frame, and acquiring the data portion and identification information of at least one second data frame includes any one of the following: acquiring identification information of each first data frame from the data portion of at least one first data frame, and acquiring identification information of each second data frame from at least one second data frame; acquiring identification information and a mapping value of each second data frame from at least one second data frame, and determining the identification information of each first data frame based on the mapping value of at least one second data frame and the data portion of at least one first data frame.

[0007] Secondly, embodiments of this application provide a data processing method applied to a second electronic device. The method includes: acquiring at least one first data frame and at least one second data frame; sending at least one first data frame through a first communication link and sending at least one second data frame through a second communication link; the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device; wherein, acquiring at least one first data frame and at least one second data frame includes any one of the following: acquiring at least one first data frame, wherein the third byte or third bit in the data portion of the first data frame includes identification information of the first data frame; and obtaining at least one second data frame based on at least one first data frame; acquiring at least one first data frame; and processing at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and a mapping value.

[0008] Thirdly, embodiments of this application provide a data processing apparatus, comprising: a receiving module and a processing module; the receiving module is configured to receive at least one first data frame via a first communication link and at least one second data frame via a second communication link, wherein the first and second communication links are communication links established for the same communication service, and the first and second communication links are communication links between a first electronic device and a second electronic device; the processing module is configured to acquire the data portion and identification information of the at least one first data frame received by the receiving module, and to acquire the data portion and identification information of the at least one second data frame received by the receiving module; the processing module is further configured to obtain a target data frame based on the data portion and identification information of the at least one first data frame, and the data portion and identification information of the at least one second data frame; wherein the processing module is specifically configured to: acquire identification information of each first data frame from the data portion of the at least one first data frame, and acquire identification information of each second data frame from the at least one second data frame; acquire identification information and a mapping value of each second data frame from the at least one second data frame, and determine the identification information of each first data frame based on the mapping value of the at least one second data frame and the data portion of the at least one first data frame.

[0009] Fourthly, embodiments of this application provide a data processing apparatus, comprising: a processing module and a sending module; the processing module is configured to acquire at least one first data frame and at least one second data frame; the sending module is configured to send at least one first data frame acquired by the processing module through a first communication link and at least one second data frame acquired by the processing module through a second communication link; the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between a first electronic device and a second electronic device; wherein, the processing module is specifically configured to: acquire at least one first data frame, wherein the third byte or third bit in the data portion of the first data frame includes identification information of the first data frame; and obtain at least one second data frame based on at least one first data frame; acquire at least one first data frame; and process at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and a mapping value.

[0010] Fifthly, embodiments of this application provide an electronic device including a processor and a memory. The memory stores programs or instructions that can run on the processor. When the programs or instructions are executed by the processor, they implement the method as described in the first aspect or the steps of the method as described in the second aspect.

[0011] In a sixth aspect, embodiments of this application provide a readable storage medium on which a program or instructions are stored, which, when executed by a processor, implement the method described in the first aspect, or implement the steps of the method described in the second aspect.

[0012] In a seventh aspect, embodiments of this application provide a chip, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the method as described in the first aspect, or to implement the method as described in the second aspect.

[0013] Eighthly, embodiments of this application provide a computer program product stored in a storage medium, which is executed by at least one processor to implement the method described in the first aspect or the method described in the second aspect.

[0014] In this embodiment of the application, a first electronic device can receive at least one first data frame through a first communication link and at least one second data frame through a second communication link, wherein the first and second communication links are communication links established for the same communication service, and the first and second communication links are communication links between the first and second electronic devices; identification information of each first data frame is obtained from the data portion of at least one first data frame, and identification information of each second data frame is obtained from at least one second data frame; or, identification information and mapping value of each second data frame are obtained from at least one second data frame, and identification information of each first data frame is determined based on the mapping value of at least one second data frame and the data portion of at least one first data frame, and a target data frame is obtained based on the data portion and identification information of at least one first data frame and the data portion and identification information of at least one second data frame. With this scheme, during a conversation between the first electronic device and the second electronic device, the identification information of the first data frame can be obtained directly from the data portion of the first data frame, or determined based on the mapping value of the second data frame and the data portion of the first data frame. Therefore, without changing the size of the original data frame, the first electronic device can obtain the identification information of the first data frame, thereby enabling the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability. Attached Figure Description

[0015] Figure 1 This is one of the flowcharts of a data processing method provided in the embodiments of this application;

[0016] Figure 2A This is a schematic diagram of a byte replacement process provided in an embodiment of this application;

[0017] Figure 2B This is a schematic diagram of a byte replacement provided in an embodiment of this application;

[0018] Figure 3A This is a schematic diagram of a bit replacement process provided in an embodiment of this application;

[0019] Figure 3B This is a schematic diagram of a bit substitution provided in an embodiment of this application;

[0020] Figure 4 This is a schematic diagram illustrating the addition of a header to a data packet corresponding to a data frame, as provided in an embodiment of this application.

[0021] Figure 5 This is a second flowchart of a data processing method provided in an embodiment of this application;

[0022] Figure 6 This is the third flowchart of a data processing method provided in the embodiments of this application;

[0023] Figure 7 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application;

[0024] Figure 8 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application;

[0025] Figure 9 This is one of the hardware structure diagrams of an electronic device provided in the embodiments of this application;

[0026] Figure 10 This is a second schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0027] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.

[0028] The terms "first," "second," etc., used in this application's specification are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class, without limiting the number of objects; for example, a first object can be one or more. Furthermore, in the specification, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects have an "or" relationship.

[0029] The terms "at least one" and "at least one" in this application's specification refer to any one, any two, or a combination of two or more of the included objects. For example, "at least one of a, b, and c" can mean "a", "b", "c", "a and b", "a and c", "b and c", and "a, b, and c", where a, b, and c can be single or multiple. Similarly, "at least two" refers to two or more, and its meaning is similar to "at least one". The identifiers in this application are text, symbols, images, etc., used to indicate information, and can use identifiers or other containers as carriers for displaying information, including but not limited to text identifiers, image identifiers, and symbol identifiers.

[0030] The data processing methods, apparatus, electronic devices, media, and computer program products provided in this application will be described in detail below with reference to the accompanying drawings and through specific embodiments and application scenarios.

[0031] The data processing method, apparatus, electronic device, medium, and computer program product provided in this application are applicable to scenarios where data frames are transmitted between two electronic devices, especially scenarios where two electronic devices establish a call connection to transmit data frames.

[0032] In the data processing methods, apparatus, electronic devices, media, and computer program products provided in the embodiments of this application, during the communication between the first electronic device and the second electronic device, since the identification information of the first data frame can be directly obtained from the data portion of the first data frame, or the identification information of the first data frame can be determined based on the mapping value of the second data frame and the data portion of the first data frame, the first electronic device can obtain the identification information of the first data frame without changing the size of the original data frame. This allows the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0033] The data processing method provided in this application can be executed by a data processing device. Exemplarily, the data processing device can be an electronic device, or a component within that electronic device, such as an integrated circuit or a chip. The data processing method provided in this application will be described executively below using an electronic device as an example.

[0034] This application provides a data processing method. Figure 1 A flowchart illustrating a data processing method provided in an embodiment of this application is shown, which can be applied to a first electronic device. Figure 1 As shown, the data processing method provided in this application embodiment may include the following steps 101 to 103.

[0035] Step 101: The first electronic device receives at least one first data frame through the first communication link and at least one second data frame through the second communication link.

[0036] The first communication link and the second communication link mentioned above are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device.

[0037] In some embodiments of this application, when the user of the first electronic device needs to communicate with the user of the second electronic device, the first electronic device can establish a communication connection with the second electronic device for the communication service.

[0038] In some embodiments of this application, the aforementioned communication service can be a communication service conducted by a user using an electronic device as a medium.

[0039] In some embodiments of this application, the aforementioned first communication link and second communication link being communication links established for the same communication service can be understood as follows: two communication links (i.e., the first communication link and the second communication link) can be established between the first electronic device and the second electronic device for a single communication service. It can be understood that one of these two communication links can serve as the primary communication link for the aforementioned communication service, and the other communication link can serve as the secondary communication link for the aforementioned communication service, so that the single communication service can achieve better communication quality.

[0040] In some embodiments of this application, the aforementioned communication services may include, but are not limited to: Circuit Switched (CS), Voice over Long-Term Evolution (VoLTE), Voice over New Radio (VoNR), Video over Long-Term Evolution (ViLTE), Video over New Radio (ViNR), Evolved Packet System fallback (EPS fallback), CS fallback, Voice over WiFi (VoWiFi), and Video over WiFi (ViWiFi).

[0041] It should be noted that the first electronic device and the second electronic device are two electronic devices serving the same communication service. In other words, the first electronic device can be either the calling device or the called device; similarly, the second electronic device can be either the calling device or the called device. This application does not specifically limit this aspect.

[0042] In some embodiments of this application, the first communication link and the second communication link described above may be two different links for transmitting data frames between the first electronic device and the second electronic device.

[0043] In some embodiments of this application, the first communication link can be a voice call link, and the second communication link can be a network link.

[0044] In some embodiments of this application, during a call, the first electronic device can connect to the core network equipment of a Circuit Switch (CS) / Internet Protocol Multimedia Subsystem (IMS) via an access network element to establish a first communication link with the second electronic device. In other words, the aforementioned first communication link can be a communication link under the operator network corresponding to the Subscriber Identity Module (SIM) card used to provide call services in the first electronic device.

[0045] In some embodiments of this application, the second communication link may be a communication link in a different communication network than the first communication link.

[0046] For example, the communication network corresponding to the first communication link can be an operator network, and the communication network corresponding to the second communication link can be a data network.

[0047] For example, assuming the first electronic device is a dual-SIM electronic device, the communication network corresponding to the first communication link can be the operator network corresponding to the primary SIM card of the first electronic device, and the communication network corresponding to the second communication link can be the operator network corresponding to the secondary SIM card of the first electronic device.

[0048] In this way, during a conversation between the first electronic device and the second electronic device, call data can be transmitted through a network link to compensate for the call data transmitted through the call link, thus ensuring the integrity of the call data received by the first electronic device.

[0049] In some embodiments of this application, during a call between a first electronic device and a second electronic device, the second electronic device can copy the data frame to be transmitted and then transmit it via both the first and second communication links. That is, the data frame sent by the second electronic device via the first communication link has the same data portion as the data frame sent via the second communication link. Thus, the first electronic device can receive two data frames with identical data portions via both the first and second communication links, thereby improving the reliability of data transmission during the call.

[0050] In some embodiments of this application, the data frame may include audio or video frames collected by a second electronic device.

[0051] In some embodiments of this application, the aforementioned data frame is a protocol data unit of the data link layer, which may include three parts: a frame header, a data portion, and a frame trailer. The frame header and trailer contain necessary control information, such as synchronization information, address information, and error control information; the data portion contains data transmitted from the network layer, such as data packets.

[0052] It is understandable that the aforementioned voice and video frames can be obtained by a second electronic device sampling the user or the user's voice during a call at a certain sampling rate. The data obtained after each sampling and digital-to-analog conversion can be called a sampling unit, and the sampling unit is the basic unit that makes up a data frame.

[0053] For example, at a sampling rate of 8000Hz, a 20ms data frame can contain 160 sampling units.

[0054] In some embodiments of this application, each sampling unit may have a different number of bytes to store media information.

[0055] In some embodiments of this application, the aforementioned data frame may be a PCM data frame.

[0056] In some embodiments of this application, the data frames of the aforementioned PCM data can be encapsulated as Real-time Transport Protocol (RTP) data packets for transmission.

[0057] For example, each PCM data frame can be encapsulated as an RTP packet for transmission.

[0058] It is understandable that when the first electronic device sends a data frame to the second electronic device, the data frame sent by the first electronic device through the first communication link has the same data portion as the data frame sent through the second communication link.

[0059] It should be noted that in actual implementation, any number of communication links can be established between the first electronic device and the second electronic device, and data frames can be copied multiple times and transmitted through these multiple communication links. This embodiment only illustrates the establishment of a first communication link and a second communication link between the first electronic device and the second electronic device.

[0060] Step 102: The first electronic device acquires at least one data portion and identification information of a first data frame, and acquires at least one data portion and identification information of a second data frame.

[0061] In some embodiments of this application, the identification information of the data frame described above can be used to uniquely identify the data frame.

[0062] For example, the identification information of the aforementioned data frame can be the frame number information of the data frame.

[0063] In some embodiments of this application, the second electronic device may insert identification information of the data frame into the data portion of the acquired data frame; or, it may add identification information only to the second data frame transmitted via the second communication link, and obtain the identification information of the first data frame based on the matching between the data portions of the first data frame and the data portions of the second data frame. This allows the first electronic device to sort and play the data frame according to its identification information upon receiving it.

[0064] It is understandable that, for the data packet corresponding to the first data frame, since there is no need to add a packet header, the first electronic device can obtain its identification information. Therefore, the size of the original data frame can be maintained during the transmission of the data frame, so that the data frame carrying the identification information can be transmitted in a short time.

[0065] In the embodiments of this application, step 102 may include step 102a or step 102b as described below.

[0066] Step 102a: The first electronic device obtains the identification information of each first data frame from the data portion of at least one first data frame, and obtains the identification information of each second data frame from at least one second data frame.

[0067] In some embodiments of this application, the data portion of the first data frame may include the identification information of the first data frame, and the data portion of the second data frame may include the identification information of the second data frame.

[0068] In some embodiments of this application, the step 102a above, "obtaining the identification information of each first data frame from the data portion of the at least one first data frame", may include the following step A, and the step 102a above, "obtaining the identification information of each second data frame from the at least one second data frame", may include the following step B.

[0069] Step A: The first electronic device obtains the identification information of each first data frame from the first byte or the first bit of the data portion of each first data frame.

[0070] Step B: The first electronic device obtains the identification information of each second data frame from the second byte or the second bit of the data portion of each second data frame.

[0071] In some embodiments of this application, the second electronic device may insert identification information into the data portion of the data frame, so that the first electronic device can determine whether a data frame is lost after receiving the first data frame through the first communication link. Thus, if a data frame is lost in the data frames received through the first communication link, the first electronic device can merge at least one first data frame and at least one second data frame to obtain the target data frame.

[0072] In some embodiments of this application, the first byte or first bit can be at least one byte or bit at the target position of the first data frame.

[0073] In some embodiments of this application, the second byte or second bit can be at least one byte or bit at the target position of the second data frame.

[0074] In some embodiments of this application, the target positions of the first data frame and the second data frame can be defaulted to by the first and second electronic devices, agreed upon by the first and second electronic devices, or specified by the network-side device. This application does not impose specific limitations on these embodiments.

[0075] In some embodiments of this application, after acquiring at least one data frame to be transmitted, the second electronic device can replace at least one byte or bit at the target position of the data frame with identification information to obtain at least one first data frame. Then, the second electronic device can copy the at least one first data frame to obtain at least one second data frame. The second electronic device can transmit the at least one first data frame via a first communication link and the at least one second data frame via a second communication link. Thus, after receiving at least one first data frame via the first communication link and at least one second data frame via the second communication link, the first electronic device can parse the identification information of each first data frame from the target position in the data portion of each first data frame, and parse the identification information of each second data frame from the target position in the data portion of each second data frame, respectively, to merge the at least one first data frame and the at least one second data frame according to the identification information.

[0076] It is understandable that for each data frame, the second electronic device can replace a fixed length of bytes or bits with the frame number information of the data frame at the target position of the data frame; thus, after receiving the data frame, the first electronic device can parse the frame number information of the data frame at the target position of the data frame according to the fixed length.

[0077] For example, taking data frame 20 as the original data frame acquired by the second electronic device, with the target position being 0x00F0 in data frame 20, and the identification information of data frame 20 being the frame number information, as an example. Figure 2A As shown, the second electronic device can replace the byte "1010101010101010" indicated by 0x00F0 in data frame 20 with frame number information. For example... Figure 2B As shown, the byte “0000000011111111” indicated by 0x00F0 in the replaced data frame 20 is the frame number information of data frame 20.

[0078] For example, taking data frame 30 as the raw data frame acquired by the second electronic device, the target position is the lowest bit of each byte in the 16 bytes indicated by 0x00F0 to 0x00FF in data frame 30, and the identification information of data frame 30 is the frame number information. Figure 3A As shown, the second electronic device can replace the lowest bit of each of the 16 bytes indicated by 0x00F0 to 0x00FF in data frame 30 with frame number information. For example... Figure 3B As shown, in the replaced data frame 30, the lowest bit of each of the 16 bytes indicated by 0x00F0 to 0x00FF is the frame number information of data frame 20.

[0079] It should be noted that, Figure 2A , Figure 2B , Figure 3A as well as Figure 3B The dashed line is only used to indicate the byte or bit that needs to be replaced and is not visible in the actual implementation.

[0080] In some embodiments of this application, after receiving at least one first data frame through a first communication link, the first electronic device can convert the bytes or bits at the target position of each first data frame into identification information of the data frame corresponding to the at least one first data frame by parsing the at least one first data frame.

[0081] In some embodiments of this application, after obtaining the identification information of each first data frame in the at least one first data frame, the first electronic device can determine the identification information of the data frame lost in the first communication link after arranging the data frames according to the identification information.

[0082] For example, assuming that the first electronic device parses and obtains the identification information of at least one first data frame as 1, 2, 4, 5, the first electronic device can determine that the data frame with frame number 3 is lost.

[0083] Understandably, after obtaining the identification information, the first electronic device can delete the corresponding bytes or bits of the identification information and not use them as data to be played, thereby avoiding the introduction of noise during playback.

[0084] In some embodiments of this application, after receiving at least one second data frame through a second communication link, the first electronic device can convert the bytes or bits at the target position of each second data frame in the at least one second data frame into identification information of each first data frame in the at least one second data frame.

[0085] In some embodiments of this application, after obtaining the identification information of each first data frame in at least one second data frame, the first electronic device can identify the second data frame that is identical to the identification information of each first data frame in the data frames lost in the first communication link as the data frames lost in the first communication link.

[0086] In some embodiments of this application, the first electronic device can insert the identified missing data frames into at least one first data frame in the order of the data frames indicated by the identification information, so as to supplement the missing data frames in the at least one first data frame and thus ensure the smoothness of playing data frames.

[0087] Thus, by obtaining the identification information of the data frame from the data portion of the data frame, the playback order of the data frames can be restored without changing the data format of the data frame. Compared with the processing method of protocol encapsulation for data frame numbering and adding headers to data frames, this simplifies the process of parsing data frames by the first electronic device.

[0088] Step 102b: The first electronic device obtains the identification information and mapping value of each second data frame from at least one second data frame, and determines the identification information of each first data frame based on the mapping value of at least one second data frame and the data portion of at least one first data frame.

[0089] In some embodiments of this application, the second data frame may include identification information of the second data frame and a mapping value of the second data frame.

[0090] In some embodiments of this application, the step 102b described above, "determining the identification information of each first data frame based on the mapping value of at least one second data frame and the data portion of at least one first data frame", may include the following steps C and D.

[0091] Step C: The first electronic device determines the mapping value of each first data frame based on the data portion of each first data frame.

[0092] In some embodiments of this application, the mapping value can be a unique mapping value for a data frame, used to indicate specific data. It is understood that the same data has the same corresponding mapping value; different data has different corresponding mapping values.

[0093] In some embodiments of this application, after receiving at least one first data frame through a first communication link, the first electronic device can calculate the mapping value of each first data frame in the at least one first data frame using a message digest algorithm.

[0094] For example, taking a hash algorithm as the message digest algorithm, the first electronic device can calculate the hash value corresponding to each first data frame as the mapping value of that first data frame.

[0095] It should be noted that after acquiring the data frame, the second electronic device can send the original data frame to the first electronic device through the first communication link. It can also calculate the mapping value of the data frame using a message digest algorithm, and add this mapping value and the data frame's identification information to the header of the corresponding data packet, before sending it to the first electronic device through the second communication link.

[0096] For example, suppose a second electronic device acquires a first data frame, the mapping value of which is a hash value, and the identification information of which is a frame number. Figure 4 As shown, the second electronic device will send the first data frame to the first electronic device via the first communication link. Simultaneously, the second electronic device can add a header to the data packet corresponding to the first data frame to obtain a second data frame. This header contains the hash value and frame number information of the first data frame. Then, the second electronic device can send the second data frame with the added header to the first electronic device via the second communication link.

[0097] Step D: The first electronic device determines the identification information of the third data frame as the identification information of the first data frame.

[0098] The mapping value of the third data frame is matched with the mapping value of the first data frame, and the third data frame is a data frame in at least one second data frame.

[0099] In some embodiments of this application, the matching of the mapping value of the third data frame with the mapping value of the first data frame can be understood as: the mapping value of the third data frame is the same as the mapping value of the first data frame. It can be understood that when the mapping value of the third data frame is the same as the mapping value of the first data frame, the first electronic device can determine that the data indicated by the mapping value of the third data frame is the same as the data indicated by the mapping value of the first data frame. That is, the data portion of the third data frame is the same as the data portion of the first data frame.

[0100] In some embodiments of this application, after calculating the mapping value of each first data frame, the first electronic device can determine the identification information of the first data frame as the identification information of the data frame whose mapping value matches the mapping value of the first data frame in at least one second data frame.

[0101] For example, suppose a first electronic device receives a first data frame 1 and a second data frame 2 through a first communication link, and receives second data frames 1, 2, and 3 through a second communication link. The identification information of the data frames is the frame number information. Specifically, the header of the data packet corresponding to second data frame 1 contains the mapping value ecd543bc67 and frame number information 1; the header of the data packet corresponding to second data frame 2 contains the mapping value 78d5ab3b81 and frame number information 2; and the header of the data packet corresponding to second data frame 3 contains the mapping value aa1b1236ac and frame number information 3. Assume the first electronic device calculates that the mapping value of first data frame 1 is ecd543bc67 and the mapping value of first data frame 2 is aa1b1236ac. Based on this, the first electronic device can determine that the identification information of the first data frame 1 received through the first communication link is frame number information 1, and the identification information of the first data frame 2 is frame number information 3.

[0102] In this way, without changing the original data frames collected by the second electronic device, the identification information of the first data frame can be obtained from the identification information and mapping value in the data frames received in another communication link. This allows the first electronic device to restore the playback order of the information frames and ensures the smoothness of the data frame playback.

[0103] Step 103: The first electronic device obtains the target data frame based on the data portion and identification information of at least one first data frame and the data portion and identification information of at least one second data frame.

[0104] In some embodiments of this application, the target data frame may be a relatively complete and continuous data frame to be played.

[0105] In some embodiments of this application, the first electronic device may, in the event of data loss in the data frames received through the first communication link, merge at least one first data frame and at least one second data frame based on the identification information of each first data frame and the identification information of each second data frame to obtain a target data frame.

[0106] In some embodiments of this application, the aforementioned data loss in the data frames received through the first communication link can be understood as: the data packets corresponding to the data frames are lost during transmission in the first communication link, and at least one first data frame received by the first electronic device through the first communication link is a discontinuous data frame.

[0107] In some embodiments of this application, a first electronic device can obtain a complete target data frame by merging at least one received first data frame and at least one second data frame, and using at least one second data frame to supplement the data frames lost in at least one first data frame.

[0108] The data processing method provided in this application embodiment allows the first electronic device to obtain the identification information of the first data frame directly from the data portion of the first data frame, or to determine the identification information of the first data frame based on the mapping value of the second data frame and the data portion of the first data frame, without changing the size of the original data frame. This enables the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0109] In some embodiments of this application, step 103 may include steps 103a and 103b as described below.

[0110] Step 103a: The first electronic device determines a fourth data frame in which the mapping value in at least one second data frame does not match the mapping value in at least one first data frame.

[0111] In some embodiments of this application, the first electronic device can determine that the second data frame is the fourth data frame of the first communication link that has been lost when the mapping value of a second data frame cannot be matched with the mapping value of a first data frame by matching the mapping value of the second data frame with the mapping value of the first data frame.

[0112] For example, suppose a first electronic device receives a first data frame 1 and a second data frame 2 through a first communication link, and receives second data frames 1, 2, and 3 through a second communication link. The identification information of the data frames is the frame number information. Specifically, the header of the data packet corresponding to second data frame 1 contains the mapping value ecd543bc67 and frame number information 1; the header of the data packet corresponding to second data frame 2 contains the mapping value 78d5ab3b81 and frame number information 2; and the header of the data packet corresponding to second data frame 3 contains the mapping value aa1b1236ac and frame number information 3. Assume the first electronic device calculates that the mapping value of first data frame 1 is ecd543bc67 and the mapping value of first data frame 2 is aa1b1236ac. Based on this, the first electronic device can determine that the identification information of the first data frame 1 received through the first communication link is frame number information 1, and the identification information of the first data frame 2 is frame number information 3. Thus, the first electronic device can determine the lost fourth data frame from the second data frame 2 received through the second communication link.

[0113] Step 103b: The first electronic device inserts the fourth data frame into at least one first data frame based on the identification information of the fourth data frame and the identification information of each first data frame to obtain the target data frame.

[0114] In some embodiments of this application, the first electronic device may perform alignment interpolation on at least one first data frame based on the identification information of the fourth data frame to obtain the target data frame.

[0115] It should be noted that since the mapping value is uniquely determined, for example, a segment of data will yield a 32-byte verification message after being processed by the MD5 algorithm; this 32-byte verification message is the mapping value for that segment of data. Therefore, the first electronic device can determine its corresponding data frame based on the mapping value. However, since the mapping value cannot represent the playback order of the data frames, the second electronic device can add an identification information to the header of the data packet corresponding to the second data frame, in addition to the mapping value, to sort the data frames.

[0116] Thus, on the one hand, since the missing data frames in the first communication link can be determined through the mapping values ​​of the data frames, the accuracy of determining the missing data frames is guaranteed. On the other hand, data frames received through the second communication link can be added to at least one first data frame where data frames are missing, thereby ensuring smooth playback of data frames.

[0117] In some embodiments of this application, after step 101 above, the data processing method provided in the embodiments of this application may further include step 104 below.

[0118] Step 104: If the link parameters of the first communication link meet the first condition, the first electronic device uses at least one second data frame as the target data frame and plays the audio or video data corresponding to the target data frame.

[0119] The first condition includes at least one of the following: the packet loss rate of the first communication link is greater than or equal to a first threshold; the delay of the first communication link is greater than or equal to a second threshold.

[0120] In some embodiments of this application, packet loss rate can refer to the percentage of data packets corresponding to data frames lost during data transmission in a communication link under a communication network, out of the total number of data packets corresponding to transmitted data frames. This indicator is one of the important parameters for measuring the performance of a communication network, and it can reflect the reliability and quality of data transmission in the communication network. It is understood that the lower the packet loss rate, the higher the reliability and quality of data transmission.

[0121] In some embodiments of this application, the packet loss rate of the first communication link being greater than or equal to the first threshold can be understood as: the signal quality of the communication network corresponding to the first communication link is poor, and the data reliability and quality are low. Therefore, when the packet loss rate of the first communication link is greater than or equal to the first threshold, the first electronic device can directly use at least one second data frame received through the second communication link as the target data frame.

[0122] In some embodiments of this application, the aforementioned latency can indicate the time required for a data frame to be transmitted from one end of a communication link to the other. It is understood that the smaller the latency, the smaller the time difference between data frame reception and transmission, and the higher the reliability of the data frame.

[0123] In some embodiments of this application, the fact that the delay of the first communication link is greater than or equal to the second threshold can be understood as: the signal quality of the communication network corresponding to the first communication link is poor, the data frame transmission is slow, and the data reliability is low. Therefore, when the delay of the first communication link is greater than or equal to the second threshold, the first electronic device can directly use at least one second data frame received through the second communication link as the target data frame.

[0124] In some embodiments of this application, the first threshold and the second threshold described above can be set by the user or can be the default values ​​of the first electronic device. This application does not impose specific limitations on the embodiments.

[0125] Thus, if the link parameters of the first communication link meet the first condition, the first electronic device can determine that the link quality of the first communication link is poor and the reliability of the call data received by the first communication link is low. Therefore, the first electronic device can directly play at least one second data frame received by the second communication link as the target data frame, ensuring the reliability of the call data received by the first electronic device.

[0126] In some embodiments of this application, the "playing audio or video data corresponding to the target data frame" in step 104 above may include any one of the following: step E, step F, step G.

[0127] Step E: The first electronic device silently plays at least one audio or video data corresponding to the first data frame, but does not silently play the audio or video data corresponding to the target data frame.

[0128] Step F: The first electronic device plays at least one audio or video data corresponding to a first data frame at a first volume, and plays the audio or video data corresponding to a target data frame at a second volume.

[0129] The second volume is greater than the first volume.

[0130] Step G: The first electronic device plays the audio or video data corresponding to the target data frame, but does not play at least one audio or video data corresponding to the first data frame.

[0131] In some embodiments of this application, the first electronic device playing audio or video data corresponding to the target data frame and not playing audio or video data corresponding to at least one first data frame can be understood as: the first electronic device shutting down the voice transmission from at least one first data frame received through the first communication link to the audio playback module, and opening the voice transmission from at least one second data frame received through the second communication link to the audio playback module.

[0132] In this way, by playing only the target data frame or adjusting the volume of the target data frame, the user can hear only the data frames received by the high-quality communication link, thereby improving call quality.

[0133] In some embodiments of this application, prior to step 101 above, the data processing method provided in the embodiments of this application may further include step 105 below.

[0134] Step 105: If a first communication link is established with a second electronic device, and the first communication link satisfies the second condition, then the first electronic device establishes a second communication link with the second electronic device.

[0135] The second condition includes at least one of the following:

[0136] The reference signal receiving power (RSRP) of the first communication link is less than or equal to the third threshold;

[0137] The signal-to-noise ratio (SINR) of the first communication link is less than or equal to the fourth threshold;

[0138] The signal transmission power of the first communication link is less than or equal to the fifth threshold;

[0139] The channel resources corresponding to the first communication link are less than or equal to the sixth threshold.

[0140] In some embodiments of this application, the first communication link satisfying the second condition can be understood as: the first communication link deteriorates, the quality of data frames transmitted through the first communication link deteriorates, and reliability decreases. Thus, the first electronic device can establish a second communication link with the second electronic device to compensate for the first communication link, ensuring that the received data frames are as complete and reliable as possible.

[0141] In some embodiments of this application, the third, fourth, fifth, and sixth thresholds described above can be user-set or can be default values ​​of the first electronic device. This application does not impose specific limitations on the embodiments.

[0142] In this way, once the second condition is met in the first communication link, the first electronic device can establish a second communication link with the second electronic device, thereby avoiding unnecessary data transmission and saving the resources of the first electronic device.

[0143] This application provides a data processing method. Figure 5 A flowchart illustrating a data processing method provided in an embodiment of this application is shown, which can be applied to a second electronic device. For example... Figure 5 As shown, the data transmission processing provided in this application embodiment may include the following steps 201 and 202.

[0144] Step 201: The second electronic device acquires at least one first data frame and at least one second data frame.

[0145] In the embodiments of this application, step 201 may include step 201a or step 201b as described below.

[0146] Step 201a: The second electronic device acquires at least one first data frame, wherein the third byte or third bit in the data portion of the first data frame includes the identification information of the first data frame; and based on the at least one first data frame, obtains at least one second data frame.

[0147] Step 201b: The second electronic device acquires at least one first data frame; and processes the at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and mapping value.

[0148] Step 202: The second electronic device sends at least one first data frame through the first communication link and at least one second data frame through the second communication link.

[0149] The first communication link and the second communication link mentioned above are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device.

[0150] It should be noted that for a detailed description of steps 201 and 202, as well as steps 201a and 202b, please refer to the relevant descriptions of steps 101 to 105 above. To avoid repetition, they will not be repeated here.

[0151] The data processing method provided in this application embodiment allows the first electronic device to obtain the identification information of the first data frame directly from the data portion of the first data frame, or to determine the identification information of the first data frame based on the mapping value of the second data frame and the data portion of the first data frame, without changing the size of the original data frame. This enables the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0152] It should be noted that in the data processing method provided in this application embodiment, the first electronic device and the second electronic device can be interchanged. In other words, during the communication between the first electronic device and the second electronic device, the first electronic device and the second electronic device can be either the sending end device or the receiving end device of the data frame. That is, the second electronic device can also perform the above-described steps 101 to 105; the first electronic device can also perform the above-described steps 201 and 202.

[0153] Each of the above-described method embodiments, or various possible implementations of each method embodiment, can be executed individually or in combination of any two or more. The specific implementation can be determined according to actual usage requirements, and this application does not impose any restrictions on this.

[0154] This application provides a data processing method. Figure 6 A flowchart illustrating a data processing method provided in an embodiment of this application is shown. This method can be applied to a first electronic device and a second electronic device. Figure 6 As shown, the data processing method provided in this application embodiment may include the following steps 301 to 307.

[0155] Step 301: The second electronic device acquires at least one fourth data frame.

[0156] Step 302: The second electronic device replaces the first byte or first bit in the data portion of each fourth data frame with identification information to obtain at least one first data frame.

[0157] Step 303: The second electronic device copies at least one first data frame to obtain at least one second data frame.

[0158] Step 304: The second electronic device sends at least one first data frame through the first communication link and at least one second data frame through the second communication link.

[0159] Step 305: The first electronic device receives at least one first data frame through the first communication link and at least one second data frame through the second communication link.

[0160] Step 306: The first electronic device parses the data portion of at least one first data frame to obtain the identification information of each first data frame, and obtains the identification information of each second data frame from at least one second data frame.

[0161] Step 307: The first electronic device merges at least one first data frame and at least one second data frame based on the identification information of each first data frame and the identification information of each second data frame to obtain the target data frame.

[0162] Thus, during the communication between the first electronic device and the second electronic device, since the identification information of the first data frame can be obtained directly from the data portion of the first data frame, or the identification information of the first data frame can be determined based on the mapping value of the second data frame and the data portion of the first data frame, the first electronic device can obtain the identification information of the first data frame without changing the size of the original data frame. This allows the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0163] The data processing method provided in this application can be executed by a data processing device. This application uses an example of a data processing device executing the data processing method to illustrate the data processing device provided in this application.

[0164] Figure 7 A schematic diagram of a possible structure of the data processing apparatus involved in an embodiment of this application is shown. For example... Figure 7 As shown, the data processing device 70 may include a receiving module 71 and a processing module 72.

[0165] The receiving module 71 is configured to receive at least one first data frame through a first communication link and at least one second data frame through a second communication link, wherein the first and second communication links are communication links established for the same communication service, and the first and second communication links are communication links between a first electronic device and a second electronic device; the processing module 72 is configured to acquire the data portion and identification information of at least one first data frame received by the receiving module 71, and to acquire the data portion and identification information of at least one second data frame received by the receiving module 71; and to obtain a target data frame based on the data portion and identification information of at least one first data frame and at least one second data frame.

[0166] The processing module 72 is specifically used for any of the following:

[0167] Identification information of each first data frame is obtained from the data portion of at least one first data frame, and identification information of each second data frame is obtained from at least one second data frame;

[0168] From at least one second data frame, obtain the identification information and mapping value of each second data frame, and determine the identification information of each first data frame based on the mapping value of at least one second data frame and the data portion of at least one first data frame.

[0169] In one possible implementation, the processing module 72 described above is specifically used for:

[0170] The identification information of each first data frame is obtained from the first byte or the first bit of the data portion of each first data frame;

[0171] The identification information of each second data frame is obtained from the second byte or the second bit of the data portion of each second data frame.

[0172] In one possible implementation, the second data frame includes identification information of the second data frame and a mapping value of the second data frame;

[0173] The aforementioned processing module 72 is specifically used for:

[0174] Determine the mapping value for each first data frame based on the data portion of each first data frame;

[0175] The identification information of the third data frame is determined as the identification information of the first data frame, the mapping value of the third data frame matches the mapping value of the first data frame, and the third data frame is a data frame in at least one second data frame.

[0176] In one possible implementation, the processing module 72 described above is specifically used for:

[0177] Identify a fourth data frame in which the mapping value in at least one second data frame does not match the mapping value in at least one first data frame;

[0178] Based on the identification information of the fourth data frame and the identification information of each first data frame, the fourth data frame is inserted into at least one first data frame to obtain the target data frame.

[0179] In one possible implementation, the above-mentioned device further includes: a playback module;

[0180] The above-mentioned processing module 72 is further configured to, after the receiving module 71 receives at least one first data frame through the first communication link and at least one second data frame through the second communication link, use at least one second data frame as the target data frame if the link parameters of the first communication link meet the first condition.

[0181] The aforementioned playback module is used to play the audio or video data corresponding to the target data frame obtained by the processing module 72;

[0182] The first condition includes at least one of the following:

[0183] The packet loss rate of the first communication link is greater than or equal to the first threshold;

[0184] The delay of the first communication link is greater than or equal to the second threshold.

[0185] In one possible implementation, the aforementioned playback module is specifically used for:

[0186] Mute playback of at least one audio or video data corresponding to the first data frame, but not mute playback of the audio or video data corresponding to the target data frame; or...

[0187] At least one audio or video data corresponding to a first data frame is played using a first volume, and the audio or video data corresponding to a target data frame is played using a second volume, where the second volume is greater than the first volume; or...

[0188] Play the audio or video data corresponding to the target data frame, but do not play the audio or video data corresponding to at least one first data frame.

[0189] In one possible implementation, the processing module 72 is further configured to, before the receiving module 71 receives at least one first data frame through the first communication link and at least one second data frame through the second communication link, establish a second communication link with the second electronic device if the first communication link satisfies a second condition.

[0190] The second condition includes at least one of the following:

[0191] The reference signal received power RSRP of the first communication link is less than or equal to the third threshold;

[0192] The signal-to-noise ratio (SINR) of the first communication link is less than or equal to the fourth threshold;

[0193] The signal transmission power of the first communication link is less than or equal to the fifth threshold;

[0194] The channel resources corresponding to the first communication link are less than or equal to the sixth threshold.

[0195] In one possible implementation, the first communication link is a voice link, and the second communication link is a network link.

[0196] This application provides a data processing device. During a conversation between the data processing device and a second electronic device, since the identification information of the first data frame can be directly obtained from the data portion of the first data frame, or the identification information of the first data frame can be determined based on the mapping value of the second data frame and the data portion of the first data frame, the data processing device can obtain the identification information of the first data frame without changing the size of the original data frame. This allows the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0197] Figure 8 A schematic diagram of a possible structure of the data processing apparatus involved in an embodiment of this application is shown. For example... Figure 8 As shown, the data processing device 80 may include a processing module 81 and a sending module 82.

[0198] The processing module 81 is used to acquire at least one first data frame and at least one second data frame; the sending module 82 is used to send at least one first data frame acquired by the processing module 81 through a first communication link and at least one second data frame acquired by the processing module 81 through a second communication link; the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device.

[0199] The processing module 81 is specifically used for any of the following:

[0200] At least one first data frame is acquired, wherein the third byte or third bit in the data portion of the first data frame includes the identification information of the first data frame; and at least one second data frame is obtained based on the at least one first data frame.

[0201] Acquire at least one first data frame; and process the at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and mapping value.

[0202] This application provides a data processing device. During a conversation between a first electronic device and the data processing device, since the identification information of the first data frame can be directly obtained from the data portion of the first data frame, or the identification information of the first data frame can be determined based on the mapping value of the second data frame and the data portion of the first data frame, the first electronic device can obtain the identification information of the first data frame without changing the size of the original data frame. This allows the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0203] The data processing device in this application embodiment can be an electronic device or a component within an electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices besides a terminal. For example, the electronic device can be a mobile phone, tablet computer, laptop computer, PDA, in-vehicle electronic device, mobile internet device (MID), augmented reality (AR) / virtual reality (VR) device, robot, wearable device, ultra-mobile personal computer (UMPC), netbook, or personal digital assistant (PDA), etc. It can also be a server, network attached storage (NAS), personal computer (PC), television set (TV), ATM, or self-service machine, etc. This application embodiment does not specifically limit the device.

[0204] The data processing device in this application embodiment can be a device with an operating system. The operating system can be Android, iOS, or other possible operating systems; this application embodiment does not specifically limit the specific operating system.

[0205] The data processing apparatus provided in this application embodiment can implement the various processes implemented in the above data processing method embodiment, and achieve the same technical effect. To avoid repetition, it will not be described again here.

[0206] Optionally, such as Figure 9 As shown, this application embodiment also provides an electronic device 900, including a processor 901 and a memory 902. The memory 902 stores a program or instructions that can run on the processor 901. When the program or instructions are executed by the processor 901, they implement the various steps of the above-described data processing method embodiment and can achieve the same technical effect. To avoid repetition, they will not be described again here.

[0207] It should be noted that the electronic devices in the embodiments of this application include the mobile electronic devices and non-mobile electronic devices described above.

[0208] Figure 10 A schematic diagram of the hardware structure of an electronic device to implement an embodiment of this application.

[0209] The electronic device 1000 includes, but is not limited to, components such as: radio frequency unit 1001, network module 1002, audio output unit 1003, input unit 1004, sensor 1005, display unit 1006, user input unit 1007, interface unit 1008, memory 1009, and processor 1010.

[0210] Those skilled in the art will understand that the electronic device 1000 may also include a power supply (such as a battery) for supplying power to various components. The power supply may be logically connected to the processor 1010 through a power management system, thereby enabling functions such as managing charging, discharging, and power consumption through the power management system. Figure 10 The electronic device structure shown does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown, or combine certain components, or have different component arrangements, which will not be elaborated here.

[0211] The radio frequency unit 1001 is configured to receive at least one first data frame via a first communication link and at least one second data frame via a second communication link, wherein the first and second communication links are communication links established for the same communication service, and the first and second communication links are communication links between a first electronic device and a second electronic device; the processor 1010 is configured to acquire the data portion and identification information of at least one first data frame received by the radio frequency unit 1001, and to acquire the data portion and identification information of at least one second data frame received by the radio frequency unit 1001; and to obtain a target data frame based on the data portion and identification information of at least one first data frame and at least one second data frame.

[0212] Specifically, processor 1010 is used for any of the following:

[0213] Identification information of each first data frame is obtained from the data portion of at least one first data frame, and identification information of each second data frame is obtained from at least one second data frame;

[0214] From at least one second data frame, obtain the identification information and mapping value of each second data frame, and determine the identification information of each first data frame based on the mapping value of at least one second data frame and the data portion of at least one first data frame.

[0215] In one possible implementation, the processor 1010 described above is specifically used for:

[0216] The identification information of each first data frame is obtained from the first byte or the first bit of the data portion of each first data frame;

[0217] The identification information of each second data frame is obtained from the second byte or the second bit of the data portion of each second data frame.

[0218] In one possible implementation, the second data frame includes identification information of the second data frame and a mapping value of the second data frame;

[0219] The aforementioned processor 1010 is specifically used for:

[0220] Determine the mapping value for each first data frame based on the data portion of each first data frame;

[0221] The identification information of the third data frame is determined as the identification information of the first data frame, the mapping value of the third data frame matches the mapping value of the first data frame, and the third data frame is a data frame in at least one second data frame.

[0222] In one possible implementation, the processor 1010 described above is specifically used for:

[0223] Identify a fourth data frame in which the mapping value in at least one second data frame does not match the mapping value in at least one first data frame;

[0224] Based on the identification information of the fourth data frame and the identification information of each first data frame, the fourth data frame is inserted into at least one first data frame to obtain the target data frame.

[0225] In one possible implementation, the processor 1010 is further configured to, after the radio frequency unit 1001 receives at least one first data frame through the first communication link and at least one second data frame through the second communication link, use at least one second data frame as the target data frame if the link parameters of the first communication link satisfy the first condition.

[0226] The aforementioned audio output unit 1003 is used to play the audio data or video data corresponding to the target data frame obtained by the processor 1010;

[0227] The first condition includes at least one of the following:

[0228] The packet loss rate of the first communication link is greater than or equal to the first threshold;

[0229] The delay of the first communication link is greater than or equal to the second threshold.

[0230] In one possible implementation, the audio output unit 1003 described above is specifically used for:

[0231] Mute playback of at least one audio or video data corresponding to the first data frame, but not mute playback of the audio or video data corresponding to the target data frame; or...

[0232] At least one audio or video data corresponding to a first data frame is played using a first volume, and the audio or video data corresponding to a target data frame is played using a second volume, where the second volume is greater than the first volume; or...

[0233] Play the audio or video data corresponding to the target data frame, but do not play the audio or video data corresponding to at least one first data frame.

[0234] In one possible implementation, the processor 1010 is further configured to, before the radio frequency unit 1001 receives at least one first data frame through the first communication link and at least one second data frame through the second communication link, establish a second communication link with the second electronic device if the first communication link satisfies a second condition.

[0235] The second condition includes at least one of the following:

[0236] The reference signal received power RSRP of the first communication link is less than or equal to the third threshold;

[0237] The signal-to-noise ratio (SINR) of the first communication link is less than or equal to the fourth threshold;

[0238] The signal transmission power of the first communication link is less than or equal to the fifth threshold;

[0239] The channel resources corresponding to the first communication link are less than or equal to the sixth threshold.

[0240] In one possible implementation, the first communication link is a voice link, and the second communication link is a network link.

[0241] This application provides an electronic device in which, during a conversation between a first electronic device and a second electronic device, the identification information of the first data frame can be obtained directly from the data portion of the first data frame, or determined based on the mapping value of the second data frame and the data portion of the first data frame. Therefore, without changing the size of the original data frame, the first electronic device can obtain the identification information of the first data frame, thereby enabling the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0242] When the electronic device is a second electronic device, the processor 1010 is used to acquire at least one first data frame and at least one second data frame; the radio frequency unit 1001 is used to send at least one first data frame acquired by the processor 1010 through a first communication link, and send at least one second data frame acquired by the processor 1010 through a second communication link; the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device;

[0243] Specifically, processor 1010 is used for any of the following:

[0244] At least one first data frame is acquired, wherein the third byte or third bit in the data portion of the first data frame includes the identification information of the first data frame; and at least one second data frame is obtained based on the at least one first data frame.

[0245] Acquire at least one first data frame; and process the at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and mapping value.

[0246] This application provides an electronic device in which, during a conversation between a first electronic device and a second electronic device, the identification information of the first data frame can be obtained directly from the data portion of the first data frame, or determined based on the mapping value of the second data frame and the data portion of the first data frame. Therefore, without changing the size of the original data frame, the first electronic device can obtain the identification information of the first data frame, thereby enabling the data frame carrying the identification information to be transmitted in a shorter time, reducing the risk of data loss and improving data reliability.

[0247] It should be understood that, in this embodiment, the input unit 1004 may include a graphics processing unit (GPU) 10041 and a microphone 10042. The GPU 10041 processes image data of still images or videos obtained by an image capture device (such as a camera) in video capture mode or image capture mode. The display unit 1006 may include a display panel 10061, which may be configured in the form of a liquid crystal display, an organic light-emitting diode, or the like. The user input unit 1007 includes a touch panel 10071 and at least one of other input devices 10072. The touch panel 10071 is also called a touch screen. The touch panel 10071 may include a touch detection device and a touch controller. Other input devices 10072 may include, but are not limited to, physical keyboards, function keys (such as volume control buttons, power buttons, etc.), trackballs, mice, and joysticks, which will not be described in detail here.

[0248] The memory 1009 can be used to store software programs and various data. The memory 1009 may primarily include a first storage area for storing programs or instructions and a second storage area for storing data. The first storage area may store the operating system, application programs or instructions required for at least one function (such as sound playback, image playback, etc.). Furthermore, the memory 1009 may include volatile memory or non-volatile memory, or both. The non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DRRAM). The memory 1009 in this embodiment includes, but is not limited to, these and any other suitable types of memory.

[0249] The processor 1010 may include one or more processing units; optionally, the processor 1010 integrates an application processor and a modem processor, wherein the application processor mainly handles operations involving the operating system, user interface, and applications, and the modem processor mainly handles wireless communication signals, such as a baseband processor. It is understood that the aforementioned modem processor may also not be integrated into the processor 1010.

[0250] This application also provides a readable storage medium storing a program or instructions. When the program or instructions are executed by a processor, they implement the various processes of the above-described data processing method embodiments and achieve the same technical effects. To avoid repetition, they will not be described again here.

[0251] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.

[0252] This application embodiment also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above data processing method embodiments and can achieve the same technical effect. To avoid repetition, it will not be described again here.

[0253] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.

[0254] This application provides a computer program product, which is stored in a storage medium and executed by at least one processor to implement the various processes of the data processing method embodiments described above, and can achieve the same technical effect. To avoid repetition, it will not be described again here.

[0255] It should be noted that, in this document, 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 limitations, 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 that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.

[0256] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a computer software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0257] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

Claims

1. A data processing method, characterized in that, Applied to a first electronic device, the method includes: At least one first data frame is received through a first communication link, and at least one second data frame is received through a second communication link, wherein the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device. Obtain the data portion and identification information of the at least one first data frame, and obtain the data portion and identification information of the at least one second data frame; Based on the data portion and identification information of the at least one first data frame, and the data portion and identification information of the at least one second data frame, a target data frame is obtained; Wherein, obtaining the data portion and identification information of the at least one first data frame, and obtaining the data portion and identification information of the at least one second data frame, includes any one of the following: Identification information of each first data frame is obtained from the data portion of the at least one first data frame, and identification information of each second data frame is obtained from the at least one second data frame; From the at least one second data frame, obtain the identification information and mapping value of each second data frame, and determine the identification information of each first data frame based on the mapping value of the at least one second data frame and the data portion of the at least one first data frame.

2. The method according to claim 1, characterized in that, Obtaining the identification information of each first data frame from the data portion of the at least one first data frame includes: The identification information of each first data frame is obtained from the first byte or the first bit of the data portion of each first data frame; The step of obtaining the identification information of each second data frame from the at least one second data frame includes: The identification information of each second data frame is obtained from the second byte or the second bit of the data portion of each second data frame.

3. The method according to claim 1, characterized in that, The second data frame includes the identification information of the second data frame and the mapping value of the second data frame; The step of determining the identification information of each first data frame based on the mapping value of the at least one second data frame and the data portion of the at least one first data frame includes: Based on the data portion of each first data frame, determine the mapping value for each first data frame; The identification information of the third data frame is determined to be the identification information of the first data frame, the mapping value of the third data frame is matched with the mapping value of the first data frame, and the third data frame is a data frame in the at least one second data frame.

4. The method according to claim 3, characterized in that, The process of obtaining a target data frame based on the data portion and identification information of at least one first data frame, and the data portion and identification information of at least one second data frame, includes: A fourth data frame is identified in which the mapping value in the at least one second data frame does not match the mapping value in the at least one first data frame. Based on the identification information of the fourth data frame and the identification information of each of the first data frames, the fourth data frame is inserted into the at least one first data frame to obtain the target data frame.

5. The method according to claim 1, characterized in that, After receiving at least one first data frame through the first communication link and at least one second data frame through the second communication link, the method further includes: If the link parameters of the first communication link meet the first condition, the at least one second data frame is used as the target data frame, and the audio or video data corresponding to the target data frame is played. The first condition includes at least one of the following: The packet loss rate of the first communication link is greater than or equal to the first threshold; The delay of the first communication link is greater than or equal to the second threshold.

6. The method according to claim 5, characterized in that, The playback of the audio or video data corresponding to the target data frame includes: Mute the audio or video data corresponding to at least one first data frame, but do not mute the audio or video data corresponding to the target data frame; or... The audio or video data corresponding to at least one first data frame is played at a first volume, and the audio or video data corresponding to the target data frame is played at a second volume, wherein the second volume is greater than the first volume; or... Play the audio or video data corresponding to the target data frame, but do not play the audio or video data corresponding to at least one first data frame.

7. The method according to claim 1, characterized in that, Before receiving at least one first data frame via the first communication link and at least one second data frame via the second communication link, the method further includes: If the first communication link is established with the second electronic device, and the first communication link meets the second condition, then the second communication link with the second electronic device is established. The second condition includes at least one of the following: The reference signal received power (RSRP) of the first communication link is less than or equal to the third threshold. The signal-to-noise ratio (SINR) of the first communication link is less than or equal to the fourth threshold. The signal transmission power of the first communication link is less than or equal to the fifth threshold. The channel resources corresponding to the first communication link are less than or equal to the sixth threshold.

8. The method according to any one of claims 1 to 7, characterized in that, The first communication link is a voice link, and the second communication link is a network link.

9. A data processing method, characterized in that, Applied to a second electronic device, the method includes: Acquire at least one first data frame and at least one second data frame; The at least one first data frame is sent through a first communication link, and the at least one second data frame is sent through a second communication link; the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between a first electronic device and a second electronic device; Wherein, acquiring at least one first data frame and at least one second data frame includes any one of the following: At least one first data frame is acquired, wherein the third byte or third bit in the data portion of the first data frame includes the identification information of the first data frame; and at least one second data frame is obtained based on the at least one first data frame. Acquire at least one first data frame; and process the at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and mapping value.

10. A data processing apparatus, characterized in that, The device, applied to a first electronic device, comprises: a receiving module and a processing module; The receiving module is configured to receive at least one first data frame through a first communication link and at least one second data frame through a second communication link, wherein the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between the first electronic device and the second electronic device. The processing module is used to obtain the data portion and identification information of the at least one first data frame received by the receiving module, and to obtain the data portion and identification information of the at least one second data frame received by the receiving module. The processing module is further configured to obtain a target data frame based on the data portion and identification information of the at least one first data frame and the data portion and identification information of the at least one second data frame; The processing module is specifically used for any of the following: Identification information of each first data frame is obtained from the data portion of the at least one first data frame, and identification information of each second data frame is obtained from the at least one second data frame; From the at least one second data frame, obtain the identification information and mapping value of each second data frame, and determine the identification information of each first data frame based on the mapping value of the at least one second data frame and the data portion of the at least one first data frame.

11. The apparatus according to claim 10, characterized in that, The processing module is specifically used for: The identification information of each first data frame is obtained from the first byte or the first bit of the data portion of each first data frame; The identification information of each second data frame is obtained from the second byte or the second bit of the data portion of each second data frame.

12. The apparatus according to claim 10, characterized in that, The second data frame includes the identification information of the second data frame and the mapping value of the second data frame; The processing module is specifically used for: Based on the data portion of each first data frame, determine the mapping value for each first data frame; The identification information of the third data frame is determined to be the identification information of the first data frame, the mapping value of the third data frame is matched with the mapping value of the first data frame, and the third data frame is a data frame in the at least one second data frame.

13. The apparatus according to claim 12, characterized in that, The processing module is specifically used for: A fourth data frame is identified in which the mapping value in the at least one second data frame does not match the mapping value in the at least one first data frame. Based on the identification information of the fourth data frame and the identification information of each of the first data frames, the fourth data frame is inserted into the at least one first data frame to obtain the target data frame.

14. The apparatus according to claim 10, characterized in that, The device further includes: a playback module; The processing module is further configured to, after the receiving module receives at least one first data frame through the first communication link and at least one second data frame through the second communication link, use the at least one second data frame as the target data frame if the link parameters of the first communication link meet the first condition. The playback module is used to play the audio data or video data corresponding to the target data frame obtained by the processing module; The first condition includes at least one of the following: The packet loss rate of the first communication link is greater than or equal to the first threshold; The delay of the first communication link is greater than or equal to the second threshold.

15. The apparatus according to claim 14, characterized in that, The playback module is specifically used for: Mute the audio or video data corresponding to at least one first data frame, but do not mute the audio or video data corresponding to the target data frame; or... The audio or video data corresponding to at least one first data frame is played using a first volume, and the audio or video data corresponding to the target data frame is played using a second volume, wherein the second volume is greater than the first volume. or, Play the audio or video data corresponding to the target data frame, but do not play the audio or video data corresponding to at least one first data frame.

16. The apparatus according to claim 10, characterized in that, The processing module is further configured to, before the receiving module receives at least one first data frame through the first communication link and at least one second data frame through the second communication link, establish the second communication link with the second electronic device if the first communication link satisfies a second condition, in the case of establishing the first communication link with the second electronic device. The second condition includes at least one of the following: The reference signal received power (RSRP) of the first communication link is less than or equal to the third threshold. The signal-to-noise ratio (SINR) of the first communication link is less than or equal to the fourth threshold. The signal transmission power of the first communication link is less than or equal to the fifth threshold. The channel resources corresponding to the first communication link are less than or equal to the sixth threshold.

17. The apparatus according to any one of claims 10 to 16, characterized in that, The first communication link is a voice link, and the second communication link is a network link.

18. A data processing apparatus, characterized in that, Applied to a second electronic device, the device includes: a processing module and a transmitting module; The processing module is used to acquire at least one first data frame and at least one second data frame; The sending module is used to send the at least one first data frame obtained by the processing module through a first communication link, and to send the at least one second data frame obtained by the processing module through a second communication link; the first communication link and the second communication link are communication links established for the same communication service, and the first communication link and the second communication link are communication links between a first electronic device and a second electronic device; The processing module is specifically used for any of the following: At least one first data frame is acquired, wherein the third byte or third bit in the data portion of the first data frame includes the identification information of the first data frame; and at least one second data frame is obtained based on the at least one first data frame. Acquire at least one first data frame; and process the at least one first data frame to obtain at least one second data frame, wherein the at least one second data frame includes identification information and mapping value.

19. An electronic device, characterized in that, It includes a processor and a memory, the memory storing a program or instructions that can run on the processor, the program or instructions being executed by the processor to implement the data processing method as described in any one of claims 1 to 8, or to implement the steps of the data processing method as described in claim 9.

20. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the data processing method as described in any one of claims 1 to 8, or implement the steps of the data processing method as described in claim 9.

21. A computer program product stored in a storage medium, the computer program product being executed by at least one processor to implement the data processing method as claimed in any one of claims 1 to 8, or to implement the steps of the data processing method as claimed in claim 9.

Citation Information

Patent Citations

  • Image frame acquisition method and apparatus, and communication device

    CN116347536A

  • Method for link adaptation and transmit power control

    CN1582539A