WO2024000959A1 - 一种数据传输方法、电子设备及介质 - Google Patents

一种数据传输方法、电子设备及介质 Download PDF

Info

Publication number
WO2024000959A1
WO2024000959A1 PCT/CN2022/128010 CN2022128010W WO2024000959A1 WO 2024000959 A1 WO2024000959 A1 WO 2024000959A1 CN 2022128010 W CN2022128010 W CN 2022128010W WO 2024000959 A1 WO2024000959 A1 WO 2024000959A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
enhancement layer
electronic device
layer data
packets
Prior art date
Application number
PCT/CN2022/128010
Other languages
English (en)
French (fr)
Inventor
韩云锋
闫永立
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN202211073688.7A external-priority patent/CN117394962A/zh
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2024000959A1 publication Critical patent/WO2024000959A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Definitions

  • This application relates to the field of communication technology, and in particular to a data transmission method, electronic equipment and media.
  • the sending device 100 can send the video data corresponding to the live video to the receiving device 200 in real time for screen projection.
  • the way the sending device transmits video data to the receiving device can be shown in Figure 2:
  • the sending device locally renders the data to be transmitted, that is, splits each frame into multiple slices (SLICE), for example, Divide each frame into SLICE0, SLICE1, SLICE2 and SLICE3.
  • SLICE is hierarchically coded according to quality to obtain the corresponding coded data.
  • the coded data corresponding to SLICE0, SLICE1, SLICE2 and SLICE3 are S00, S01, S02 and S03 respectively.
  • the coded data corresponding to each SLICE needs to be transmitted over the wireless channel through a block acknowledgment (BlockACK) transmission method within a fixed time window (called a transmission time window).
  • BlockACK block acknowledgment
  • the encoded data S00 corresponding to SLICE0 needs to be transmitted within the S00 time window
  • the encoded data S01 corresponding to SLICE1 needs to be transmitted within the S01 time window
  • the encoded data S02 corresponding to SLICE2 needs to be transmitted within the S02 time window.
  • the encoded data S03 corresponding to SLICE3 needs to be transmitted within the S03 time window.
  • the encoded data corresponding to each SLICE can include a basic layer data packet and multiple enhanced layers, and the basic layer data packets and multiple enhanced layer data packets corresponding to each SLICE have priority order.
  • electronic The device will transmit multiple layers corresponding to each SLICE according to the above priority order.
  • the priority order of each layer in S00 is basic layer data packet>enhancement layer data packet 1>...enhancement layer data packet n.
  • the sending end electronic device follows the above Multiple layers corresponding to SLICE0 are transmitted in order of priority.
  • the encoding method for each SLICE can be inter-frame or intra-frame encoding, that is, the encoding and decoding in two adjacent layers have a dependency relationship.
  • the encoding of enhancement layer data packet 1 can depend on the base layer data packet.
  • the encoding of enhancement layer packet 2 depends on enhancement layer packet 1....
  • the decoding of enhancement layer data packet 1 also needs to rely on the base layer data packet, and the decoding of enhancement layer data packet 2 needs to rely on enhancement layer data packet 1... to decode successfully. Therefore, when an error occurs in any sub-data packet in the base layer data packet or any enhancement layer data packet, subsequent sub-data packets will not be decoded successfully, so the sending device needs to retransmit the data packet.
  • the receiving device when the receiving device receives an error in a sub-data packet of enhancement layer packet 1, the receiving device will not send an acknowledgment response. If the sending device does not receive the confirmation response of the corresponding data after the set time, the corresponding data will be retransmitted.
  • the sending device does not receive the confirmation response of the corresponding data after the set time, the corresponding data will be retransmitted.
  • multiple retransmissions of the sub-data packets will cause a waste of channel transmission resources, reduce the decoding speed of the receiving end, and reduce the speed of the screen display.
  • embodiments of the present application provide a data transmission method, electronic device, and medium.
  • this application provides a data transmission method, including: a first electronic device obtains data to be transmitted; the first electronic device encodes the data to be transmitted to obtain first encoded data, where the first encoded data includes a base layer data packet and Multiple enhancement layer data packets; the first electronic device sends the base layer data packet to the second electronic device; the first electronic device performs combined encoding processing on the multiple enhancement layer data packets based on the priorities of the multiple enhancement layer data packets, and obtains second encoded data, wherein the second encoded data includes a first type of combined encoding packet, and the first type of combined encoding packet includes data in at least two enhancement layer data packets among a plurality of enhancement layer data packets; the first electronic device will The second encoded data is sent to the second electronic device.
  • the data transmission method provided in the embodiment of the present application combines and encodes the enhancement layer data packets.
  • the decoding end only needs to obtain a certain number of combined encoded packets. It can be decoded correctly, increasing the probability of successful decoding, and can effectively avoid the technical problems in the existing technology that require retransmission due to errors in any enhancement packet, resulting in slower successful decoding speed and lower efficiency of the receiving device.
  • this data transmission method is convenient for the transmission of frames with a long aggregation degree.
  • multiple enhancement layer data packets are combined and encoded based on different priorities of the enhancement layer data packets, that is, by controlling the number of combined encoding packets corresponding to the enhancement layer data packets of different priorities. It provides unequal transmission protection for enhancement layer data packets of different priorities. In this way, the probability of high-priority enhancement layer data packets being decoded is greater, which can effectively ensure the performance of the image quality received by the receiving end.
  • the first electronic device sending the base layer data packet to the second electronic device includes: the first electronic device sending the base layer data packet to the second electronic device in a block acknowledgment transmission manner.
  • the base layer data packet adopts the block acknowledgment transmission method.
  • the sending end device can still retransmit the corresponding data, which can effectively ensure the transmission quality of the base layer data packet and ensure Basic picture quality at the receiving end.
  • the first electronic device sending the second encoded data to the second electronic device includes: the first electronic device sending the second encoded data to the second electronic device in a non-confirmation transmission manner.
  • the secondary coded data corresponding to the enhancement layer data packet is transmitted in an unconfirmed transmission mode, so that the receiving device does not need to respond, reducing the transmission of response frames and saving channel resources.
  • multiple enhancement layer data packets are combined and encoded based on the priorities of the multiple enhancement layer data packets to obtain the second encoded data; including: obtaining each enhancement layer in the multiple enhancement layer data packets.
  • Sub-data blocks of the data packet; multiple data block combinations are determined based on the sub-data blocks of each enhancement layer data packet, the multiple data block combinations include a first type of combination, and the first type of combination includes at least a combination of multiple enhancement layer data packets A sub-data block; select each combination of data blocks to be transmitted from multiple data block combinations, perform combined coding on each combination of data blocks to be transmitted, and obtain the second coded data.
  • the second coded data includes the data corresponding to each combination of data blocks to be transmitted.
  • Combined coding packets wherein the second coded data satisfies that the number of combined coding packets corresponding to enhancement layer data packets with high priority is greater than the number of combined coding packets corresponding to enhancement layer data packets with low priority.
  • unequal transmission protection of enhancement layer data packet data of different priorities is achieved by controlling the number of combined encoding packets corresponding to enhancement layer data packets of different priorities.
  • high priority Level enhancement layer data packets have a higher probability of being decoded, which can effectively ensure the performance of the image quality received by the receiving end.
  • the multiple data block combinations include a second type of combination, and the second type of combination includes at least one sub-data block of the same enhancement layer data packet.
  • the multiple combined coding packets include a second type of combined coding packet; the second type of combined coding packet includes data in the same enhancement layer data packet in multiple enhancement layer data packets.
  • the first electronic device performs combined encoding processing on multiple enhancement layer data packets based on the priorities of the multiple enhancement layer data packets; including: the first electronic device based on the priorities of the multiple enhancement layer data packets Multiple enhancement layer data packets are combined and encoded using the fountain code encoding method to obtain the second encoded data; where the second encoded data satisfies the requirement that the number of combined encoded packets corresponding to the enhancement layer data packets with high priority is greater than that of the enhancement layer data packets with low priority. The number of combined encoding packets corresponding to enhancement layer data packets.
  • the first electronic device performs combined encoding processing on multiple enhancement layer data packets based on the priorities of the multiple enhancement layer data packets; including encoding based on the current total amount of transmittable data and the multiple enhancement layer data packets.
  • Priority is used to perform combined encoding processing on multiple enhancement layer data packets; the current total amount of transmittable data is based on the elapsed transmission time of the basic layer data packet, the set total transmission time of the first encoded data, the first electronic device and the second electronic device. The current transmission speed of the transmission channel between devices is determined.
  • the method of obtaining the current transmission speed of the transmission channel between the first electronic device and the second electronic device includes: obtaining the current error vector amplitude in the transmission channel through channel quality indication detection technology. ; Determine the current modulation and coding method of the transmission channel based on the current error vector amplitude; determine the current transmission speed of the transmission channel based on the current modulation and coding method.
  • the present application provides an electronic device, including: a memory for storing instructions executed by one or more processors of the electronic device, and a processor, which is one of the one or more processors of the electronic device, for To perform the data transmission method mentioned in this application.
  • this application provides a readable storage medium. Instructions are stored on the readable medium. When the instructions are executed on an electronic device, the electronic device causes the electronic device to execute the data transmission method mentioned in this application.
  • the present application provides a computer program product, including: execution instructions.
  • the execution instructions are stored in a readable storage medium.
  • At least one processor of the electronic device can read the execution instructions from the readable storage medium.
  • the at least one processor Executing the above execution instructions causes the electronic device to execute the data transmission method mentioned in this application.
  • Figure 1 shows a schematic diagram of a data transmission scenario according to some embodiments of the present application
  • Figure 2 shows a schematic diagram of a video data transmission method according to some embodiments of the present application
  • Figure 3 shows a schematic diagram of data transmission according to some embodiments of the present application.
  • Figure 4 shows a schematic diagram of data transmission according to some embodiments of the present application.
  • Figure 5 shows a schematic diagram of a coding method for enhancement layer data packets according to some embodiments of the present application
  • Figure 6 shows a schematic structural diagram of a mobile phone according to some embodiments of the present application.
  • Figure 7 shows a schematic flow chart of data transmission according to some embodiments of the present application.
  • Figure 8 shows a schematic diagram of a method for encoding enhancement layer data packets according to some embodiments of the present application.
  • Illustrative embodiments of the present application include, but are not limited to, a channel transmission method, electronic equipment, and media.
  • Block ACK transmission A data transmission mechanism specified in the wireless communication protocol 802.11.
  • the sending device transmits data through the block acknowledgment transmission mechanism.
  • the receiving device When the receiving device receives the data, it will send a confirmation response; when there is an error in the data Or when the receiving end does not receive data, the receiving end device will not send a confirmation response. If the sending device does not receive the confirmation response of the corresponding data after the set time, the corresponding data will be retransmitted.
  • No acknowledgment (NO ACK) transmission A data transmission mechanism specified in the wireless communication protocol 802.11. If the sending device transmits data through the no acknowledgment transmission mechanism, the receiving device does not need to respond.
  • a data transmission method which includes: the sending end device obtains data to be transmitted, and the data to be transmitted may be the current frame data. Encode each SLICE in the data to be transmitted to obtain encoded data, where the encoded data includes a base layer data packet and multiple enhancement layer data packets.
  • the sending device sends the basic layer data packet to the receiving device through block acknowledgment transmission. And after the basic layer data packet is transmitted, the sending end device can determine the current SLICE transmission window, that is, the total amount of data that can be transmitted within the transmission duration; and then match it based on the total amount of data that can be transmitted remaining and the priority of each enhancement layer data packet.
  • Multiple enhancement layer data packets are subjected to secondary encoding processing to obtain the secondary encoded data, and the secondary encoded data is sent to the receiving end device using no acknowledgment transmission (No acknowledgment, noACK).
  • the method of determining the total amount of transmittable data remaining in the current SLICE transmission window can be: determining the transmission speed of subsequent enhancement layer data packet data according to the transmission channel state, and determining the transmission speed of subsequent enhancement layer data packets according to the total duration of the current transmission window and the basic layer data packet transmission.
  • the elapsed time determines the remaining available transmission time of the enhancement layer packet, thereby determining the total amount of remaining transmittable data of the sending device based on the transmission speed and remaining transmission time.
  • the secondary encoding process includes: obtaining each sub-data block in each enhancement layer data packet, and determining all achievable data block combinations based on each sub-data block of each enhancement layer data packet, where each achievable data block combination
  • the block combination may include some sub-data blocks in at least two enhancement layer data packets, and the data block combination to be transmitted is selected from all achievable data packet combinations based on the total amount of remaining transmittable data and the priority of the enhancement layer data packet. , and performs combined coding on the corresponding data packet according to the combination of data blocks to be transmitted, and obtains the combined coded packet to be transmitted.
  • the rule for selecting the combination of data blocks to be transmitted is: the total data amount of the encoded combined coded packet corresponding to the combination to be transmitted is as close as possible to and does not exceed the total amount of data that can currently be transmitted, and the higher the priority, the enhancement layer data The greater the number of combined encoding packages corresponding to the package. It can be understood that the combined coding packet corresponding to each enhancement layer data packet is a combined coding packet including any sub-data block of the enhancement layer data packet.
  • each enhancement layer data packet can be split into any number of sub-data blocks according to actual needs. data block.
  • the data amount of each sub-data block mentioned above can also be set according to actual needs.
  • the data amount of each sub-data block can be 1 bit, or it can be other values.
  • the method of obtaining each sub-data block in each enhancement layer data packet may be to split and obtain each sub-data block in each enhancement layer data packet.
  • the enhancement layer data packets are combined and encoded.
  • the decoder can correctly decode as long as it obtains a certain number of combined coded packets, which increases Decoding success probability, and can effectively avoid the technical problems in the existing technology that due to errors in any enhancement packets, which require retransmission, resulting in slower successful decoding speed and lower efficiency of the receiving device.
  • this data transmission method is convenient for the transmission of frames with a long aggregation degree.
  • the first enhancement layer data packet includes sub-data block D1 and sub-data block D2
  • the second enhancement layer data packet includes sub-data block D3 and sub-data block D4
  • the third enhancement layer data packet includes sub-data block D5.
  • all achievable combined coding corresponding to the enhancement layer data packet is shown in the arrow flow in Figure 5, including combined coding packets D1, D2, D3, D4, D5, D1D2, D1D3, D1D4, D1D5, D2D3,D2D4,D2D5,D3D4,D3D5,D4D5,D1D2D3,D1D2D4,D1D2D5,D1D3D4,D1D3D5,D1D4D5,D2D3D4,D2D3D5,D1D4D5,D2D3D4,D2D3D5,D2D4D5,D1D2D3D4,D2D3D5,D2D4D5,D1D2D3D4,D1D3D5,D2D4D5,D1D2
  • the priority of the first enhancement layer data packet is greater than the priority of the second enhancement layer data packet, and the priority of the second enhancement layer data packet is greater than the priority of the third enhancement layer data packet, if it is determined that the combined coded packet
  • the total amount of encoded data of D1D3, D1D4, D2D3, D2D4, D1D5, D2D5, D3, and D5 is closest to the total amount of data that can currently be transmitted, and the combined encoding packet corresponding to the first enhancement layer data packet is D1D3, D1D4, D2D3, D2D4, D1D5, D2D5, D3, D5, the number is 8;
  • the combined coding packet corresponding to the second enhancement layer data packet is D1D3, D1D4, D2D3, D2D4, D3, the number is 5, the number of the third enhancement layer data packet corresponds to
  • the combined coding packets are D1D5, D2D5, and the number of D5 is 3, which satisfies the rule that the higher the priority, the higher the data volume
  • the method of determining the combination to be transmitted in the embodiment of the present application can adopt any implementable method such as neural network model, algorithm program, etc.
  • all achievable data block combinations determined based on each sub-data block of each enhancement layer data packet may include multiple types of combinations, for example, may include a first type of combination and a second type of combination.
  • One class of combinations includes any number of data chunks from different enhancement layer packets, and a second class of combinations includes some or all of the data chunks of a single enhancement layer packet.
  • the basic layer data packet in the encoded data contains basic information of the image data, such as the outline information of the image data, etc.
  • each enhancement layer data packet can correspond to other detailed information of different image data, such as , image color information, image highlight reflection information, image diffuse reflection information, etc.
  • the basic layer data packet adopts the block acknowledgment transmission method.
  • the sending end device can still retransmit the corresponding data, which can effectively ensure the transmission quality of the basic layer data packet and ensure the basic quality of the receiving end. Picture quality.
  • the secondary coded data corresponding to the enhancement layer data packet is transmitted in a non-acknowledged transmission manner, so that the receiving device does not need to respond, reducing the transmission of response frames and saving channel resources.
  • the data of the enhancement layer data packets of different priorities is realized.
  • Transmission protection means that high-priority enhancement layer data packets are more likely to be decoded, which can effectively ensure the performance of the image quality received by the receiving end.
  • the sending end device can perform channel quality indication (CQI) detection on the transmission channel in real time to obtain the Error Vector Magnitude (EVM) in the transmission channel.
  • CQI channel quality indication
  • EVM Error Vector Magnitude
  • MCS modulation and coding scheme
  • both the sending-end electronic device and the receiving-end electronic device in the embodiments of the present application can be a tablet computer (portable android device, PAD), a personal digital assistant (Personal Digital Assistant, PDA), a handheld device with a wireless communication function, or a computing device.
  • equipment vehicle-mounted equipment or wearable devices, virtual reality (VR) terminal equipment, augmented reality (AR) terminal equipment, wireless terminals in industrial control (industrial control), and self-driving (selfdriving) Wireless terminals, wireless terminals in remote medical, wireless terminals in smart grid, wireless terminals in transportation safety, wireless terminals in smart city, smart homes ( Mobile terminals or fixed terminals with touch screens such as wireless terminals in smarthomes.
  • the form of the electronic device is not specifically limited.
  • the mobile phone 10 may include a processor 110, a power module 140, a memory 180, a mobile communication module 130, a wireless communication module 120, a sensor module 190, an audio module 150, a camera 170, an interface module 160, a button 101 and a display. Screen 102 etc.
  • the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the mobile phone 10 .
  • the mobile phone 10 may include more or less components than shown in the figures, or combine some components, or split some components, or arrange different components.
  • the components illustrated may be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example, may include a central processing unit (Central Processing Unit, CPU), a graphics processor (Graphics Processing Unit, GPU), a digital signal processor DSP, a microprocessor (Micro- Processing modules or processing circuits such as programmed Control Unit (MCU), artificial intelligence (Artificial Intelligence, AI) processor or programmable logic device (Field Programmable Gate Array, FPGA). Among them, different processing units can be independent devices or integrated in one or more processors.
  • a storage unit may be provided in the processor 110 for storing instructions and data. In some embodiments, the storage unit in processor 110 is cache memory 180.
  • the processor may be used to execute the data transmission method provided by the embodiments of the present application.
  • Power module 140 may include a power supply, power management components, and the like.
  • the power source can be a battery.
  • the power management component is used to manage the charging of the power supply and the power supply from the power supply to other modules.
  • the power management component includes a charge management module and a power management module.
  • the charging management module is used to receive charging input from the charger; the power management module is used to connect the power supply, the charging management module and the processor 110 .
  • the power management module receives input from the power supply and/or charging management module and supplies power to the processor 110, the display screen 102, the camera 170, the wireless communication module 120, etc.
  • the mobile communication module 130 may include, but is not limited to, an antenna, a power amplifier, a filter, an LNA (Low noise amplifier), etc.
  • the mobile communication module 130 can provide wireless communication solutions including 2G/3G/4G/5G applied on the mobile phone 10 .
  • the mobile communication module 130 can receive electromagnetic waves through an antenna, perform filtering, amplification and other processing on the received electromagnetic waves, and transmit them to the modem processor for demodulation.
  • the mobile communication module 130 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves through the antenna for radiation.
  • at least part of the functional modules of the mobile communication module 130 may be disposed in the processor 110 .
  • Wireless communication technologies can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband code division Multiple access (wideband code division multiple access, WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (long term evolution, LTE), Bluetooth (bluetooth, BT), global navigation Satellite system (global navigation satellite system, GNSS), wireless local area networks (WLAN), near field communication technology (near field communication, NFC), frequency modulation (FM) and/or field communication (NFC) , infrared technology (infrared, IR) technology, etc.
  • GSM global system for mobile communications
  • GPRS general packet radio service
  • CDMA code division multiple access
  • WCDMA broadband code division Multiple access
  • TD-SCDMA time-division code division multiple access
  • LTE long term evolution
  • Bluetooth blue, BT
  • global navigation Satellite system global navigation satellite system
  • WLAN wireless local area networks
  • NFC near field communication technology
  • FM frequency modulation
  • the GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi) -zenith satellite system (QZSS) and/or satellite based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite based augmentation systems
  • the wireless communication module 120 may include an antenna, and implements the transmission and reception of electromagnetic waves via the antenna.
  • the wireless communication module 120 can provide applications on the mobile phone 10 including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) network), Bluetooth (bluetooth, BT), and global navigation satellite systems. (global navigation satellite system, GNSS), frequency modulation (FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • WLAN wireless local area networks
  • Wi-Fi wireless fidelity
  • Bluetooth bluetooth, BT
  • global navigation satellite systems global navigation satellite system
  • FM frequency modulation
  • NFC near field communication technology
  • infrared technology infrared, IR
  • the mobile phone 10 can communicate with the network and other devices through wireless communication technology.
  • the mobile communication module 130 and the wireless communication module 120 of the mobile phone 10 may also be located in the same module.
  • the display screen 102 is used to display human-computer interaction interfaces, images, videos, etc.
  • Display 102 includes a display panel.
  • the display panel can use a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (active-matrix organic light).
  • LCD liquid crystal display
  • OLED organic light-emitting diode
  • active-matrix organic light-emitting diode active-matrix organic light.
  • emitting diode AMOLED
  • FLED flexible light-emitting diode
  • Miniled MicroLed, Micro-oLed, quantum dot light emitting diode (QLED), etc.
  • the sensor module 190 may include a proximity light sensor, a pressure sensor, a gyroscope sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, and the like.
  • the audio module 150 is used to convert digital audio information into an analog audio signal output, or convert an analog audio input into a digital audio signal. Audio module 150 may also be used to encode and decode audio signals. In some embodiments, the audio module 150 may be disposed in the processor 110 , or some functional modules of the audio module 150 may be disposed in the processor 110 . In some embodiments, audio module 150 may include speakers, earpieces, microphones, and headphone jacks.
  • Camera 170 is used to capture still images or video.
  • the object passes through the lens to produce an optical image that is projected onto the photosensitive element.
  • the photosensitive element converts the optical signal into an electrical signal, and then passes the electrical signal to ISP (Image Signal Processing) to convert it into a digital image signal.
  • ISP Image Signal Processing
  • the mobile phone 10 can realize the shooting function through the ISP, camera 170, video codec, GPU (Graphic Processing Unit, graphics processor), display screen 102 and application processor.
  • the interface module 160 includes an external memory interface, a universal serial bus (USB) interface, a subscriber identification module (subscriber identification module, SIM) card interface, etc.
  • the external memory interface can be used to connect external memory cards, such as Micro SD cards, to expand the storage capacity of the mobile phone 10.
  • the external memory card communicates with the processor 110 through the external memory interface to implement data storage functions.
  • the Universal Serial Bus interface is used by mobile phones 10 and other electronic devices to communicate.
  • the user identity module card interface is used to communicate with the SIM card installed in the mobile phone 1010, such as reading the phone number stored in the SIM card, or writing the phone number into the SIM card.
  • the mobile phone 10 also includes buttons 101, motors, indicators, etc.
  • the keys 101 may include volume keys, on/off keys, etc.
  • the motor is used to cause the mobile phone 10 to produce a vibration effect, for example, when the user's mobile phone 10 is called, it vibrates to prompt the user to answer the incoming call.
  • Indicators may include laser pointers, radio frequency indicators, LED indicators, etc.
  • Figure 7 shows a schematic flow chart of a data transmission method according to an embodiment of the present application.
  • the data transmission method includes:
  • the sending device obtains the data to be transmitted.
  • the data to be transmitted can be any data such as picture data or video data being displayed by the sending device.
  • the data to be transmitted may be the current frame image data displayed by the sending device.
  • the sending device can split each frame of data into multiple slices (SLICE), for example, divide each frame into SLICE0, SLICE1, SLICE2 and SLICE3. Then each SLICE is hierarchically encoded according to quality to obtain the corresponding encoded data.
  • the encoded data corresponding to SLICE0, SLICE1, SLICE2 and SLICE3 are S00, S01, S02 and S03 respectively.
  • the encoded data corresponding to each SLICE can include a Base layer packets and multiple additional layers.
  • the encoded data corresponding to each SLICE needs to be transmitted sequentially within a fixed time window (called a transmission time window).
  • a transmission time window For example, as shown in Figure 2 above, the encoded data S00 corresponding to SLICE0 needs to be transmitted within the S00 time window, the encoded data S01 corresponding to SLICE1 needs to be transmitted within the S01 time window, and the encoded data S02 corresponding to SLICE2 needs to be transmitted within the S02 time window. , the encoded data S03 corresponding to SLICE3 needs to be transmitted within the S03 time window.
  • the basic layer data packet in the encoded data contains basic information of the image data, such as the outline information of the image data, etc.
  • each enhancement layer data packet can correspond to other detailed information of different image data, such as , image color information, image highlight reflection information, image diffuse reflection information, etc.
  • 703 Send the base layer data packet in the encoded data to the receiving device through block acknowledgment transmission.
  • the sending device transmits data through the block confirmation transmission mechanism
  • the receiving device when the receiving device receives the data, it will send a confirmation response.
  • the receiving device When there is an error in the data or the receiving end does not receive the data, the receiving device will not send a confirmation response. . If the sending device does not receive the confirmation response of the corresponding data after the set time, the corresponding data will be retransmitted.
  • the basic layer data packet is sent to the receiving end device through block acknowledgment transmission.
  • the receiving device can detect each sub-data packet in the basic layer data packet. If an incorrect sub-data packet is found, or any sub-data packet is missing, such as packet loss, it will not Send confirmation response. If the sending device does not receive the confirmation response of the corresponding sub-data packet after the set time, the corresponding sub-data packet will be retransmitted.
  • the receiving device can also feedback the data reception status through a private frame. For example, when the receiving device detects that the reception status is the receipt of an incorrect sub-data packet, or the lack of any sub-data packet, such as packet loss. , sending the reception status to the sending device. After receiving the reception situation, the sending device can resend the original sub-data packet corresponding to the incorrect sub-data packet or the missing sub-data packet.
  • the sending device determines the total amount of data that can be transmitted within the current time window.
  • the sending end device can determine the transmission speed of subsequent enhancement layer data packets according to the transmission channel status, and determine the transmission speed according to the transmission window of each SLICE, that is, the total transmission time and the elapsed time of basic layer data packet transmission.
  • the remaining available transmission time of the enhancement layer data packet, and the total amount of remaining transmittable data of the sending device is determined based on the transmission speed and the remaining transmission time.
  • the total transmission window time is 4ms
  • the basic layer data packet transmission time is 1ms
  • the remaining available transmission time of the enhancement layer data packet is 3ms
  • the total remaining transmittable data is 36M .
  • the sending end device can determine the transmission speed of subsequent enhancement layer data packets based on the transmission channel status.
  • the sending end device can perform channel quality indication (CQI) detection on the transmission channel in real time to obtain the transmission speed.
  • CQI channel quality indication
  • EVM Error Vector Magnitude
  • MCS Modulation and Coding Scheme
  • the receiving end device can also feedback the EVM in the transmission channel through a private frame.
  • the sending end device performs secondary encoding processing on multiple enhancement layer data packets based on the total amount of remaining transmittable data and the priority of each enhancement layer data packet, and obtains the secondary encoding data.
  • FIG. 8 shows a schematic flow chart of secondary encoding processing of the enhancement layer data packet in the embodiment of the present application.
  • the method of secondary encoding processing may include:
  • Each enhancement layer data packet can include any number of sub-data blocks.
  • the first enhancement layer data packet includes sub-data block D1 and sub-data block D2
  • the second enhancement layer data packet includes sub-data block D3 and sub-data block D4
  • the third enhancement layer data packet includes sub-data block D5.
  • the data amount of each sub-data block mentioned above can also be set according to actual needs.
  • the data amount of each sub-data block can be 1 bit, or it can be other values.
  • the method of obtaining each sub-data block in each enhancement layer data packet may be to split and obtain each sub-data block in each enhancement layer data packet.
  • the first enhancement layer data packet includes sub-data block D1 and sub-data block D2
  • the second enhancement layer data packet includes sub-data block D3 and sub-data block D4
  • the third enhancement layer data packet includes sub-data
  • block D5 all achievable data block combination packages D1, D2, D3, D4, D5, D1D2, D1D3, D1D4, D1D5, D2D3, D2D4, D2D5, D3D4, D3D5, D4D5, D1D2D3, D1D2D4, D1D2D5, D1D3D4, D1D3D5,D1D4D5,D2D3D4, D2D3D5,D1D4D5,D2D3D4,D2D3D5,D2D4D5,D1D2D3D4,D1D3D5,D2D4D5,D1D2D3D5,D1D2D3D4,D1D2D3D5,D2D4D5,D1D2D3D5,D1D2D4D5,D
  • all achievable data block combinations determined based on each sub-data block of each enhancement layer data packet may include multiple types of combinations, for example, may include a first type of combination and a second type of combination.
  • One type of combination includes any number of data blocks from different enhancement layer packets, and the second type of combination includes some or all data blocks of a single enhancement layer data packet.
  • the combined coded packet to be transmitted is secondary coded data.
  • the rule for selecting the combination of data blocks to be transmitted is: the total data amount of the encoded combined coded packet corresponding to the combination to be transmitted is as close as possible to and does not exceed the total amount of data that can currently be transmitted, and the higher the priority, the enhancement layer data The data amount of the combined encoding package corresponding to the package is larger.
  • the priority of the first enhancement layer data packet is greater than the priority of the second enhancement layer data packet, the priority of the second enhancement layer data packet is greater than the priority of the third enhancement layer data packet.
  • the total amount of encoded data of D1D3, D1D4, D2D3, D2D4, D1D5, D2D5, D3, and D5 is closest to the total amount of data that can currently be transmitted, and the first enhancement layer data packet corresponds to
  • the combined coding packets are D1D3, D1D4, D2D3, D2D4, D1D5, D2D5, and the number is 6;
  • the combined coding packets corresponding to the second enhancement layer data packet are D1D3, D1D4, D2D3, D2D4, D3, and the number is 5.
  • the combined coding packets corresponding to the enhancement layer data packets are D1D5, D2D5, and D5, and the number is 3, which satisfies the rule that the higher the priority, the higher the number of combined coding packets corresponding to the enhancement layer data packets. Then it is determined that the encoded combined coded packets corresponding to D1D3, D1D4, D2D3, D2D4, D1D5, D2D5, D3, and D5 are the combined coded packets to be transmitted.
  • the enhancement layer data packet to be encoded includes enhancement layer data packet 1, enhancement layer data packet 2, ..., enhancement layer data packet n
  • the above-mentioned secondary encoding process can be used to obtain
  • the combined coded packets to be transmitted include, for example, combined coded packet 1, combined coded packet 2, ..., combined coded packet N.
  • the total number of combined encoding packets to be transmitted may be greater than the total number K of sub-data packets of the enhancement layer data packet to be encoded. In this way, the success rate of decoding can be effectively guaranteed.
  • the secondary encoding processing of the enhancement layer data packets can be implemented by encoding each enhancement layer data packet with fountain code, and can also be based on the total amount of remaining transmittable data and the number of each enhancement layer data packet.
  • the priority sets different coding redundancies for each enhancement layer data packet, that is, the total data amount of the combined coded packet obtained after fountain code encoding is as close as possible and does not exceed the current total amount of data that can be transmitted, and the priority is higher Higher enhancement layer data packets correspond to a greater number of combined coding packets.
  • the enhancement layer data packets are combined and encoded.
  • decoding only a set number of combined coded packets can be obtained to decode correctly, which can effectively avoid the problem of arbitrary enhancement packets in the prior art.
  • An error occurs, resulting in the need for retransmission, resulting in technical problems such as slower successful decoding speed and lower efficiency of the receiving device.
  • the data of the enhancement layer data packets of different priorities is realized.
  • Transmission protection means that high-priority enhancement layer data packets are more likely to be decoded, which can effectively ensure the performance of the image quality received by the receiving end.
  • the method of determining the above-mentioned combined coded packet to be transmitted can adopt any implementable method such as neural network model, algorithm program, etc.
  • the sending device sends the secondary encoded data to the receiving device using No acknowledgment (noACK).
  • the basic layer data packet adopts the block acknowledgment transmission method.
  • the sending end device can still retransmit the corresponding data, which can effectively ensure the transmission quality of the basic layer data packet and ensure the basic quality of the receiving end. Picture quality.
  • the secondary coded data corresponding to the enhancement layer data packet is transmitted in a non-acknowledged transmission manner, so that the receiving device does not need to respond, reducing the transmission of response frames and saving channel resources.
  • the data of the enhancement layer data packets of different priorities is realized.
  • Transmission protection means that high-priority enhancement layer data packets are more likely to be decoded, which can effectively ensure the performance of the image quality received by the receiving end.
  • An embodiment of the present application provides an electronic device, including: a memory for storing instructions executed by one or more processors of the electronic device, and the processor is one or more processors of the electronic device.
  • One for performing data transfer methods One for performing data transfer methods.
  • Embodiments of the present application provide a readable storage medium. Instructions are stored on the readable medium. When the instructions are executed on an electronic device, they cause the electronic device to perform a data transmission method.
  • Embodiments of the mechanisms disclosed in this application may be implemented in hardware, software, firmware, or a combination of these implementation methods.
  • Embodiments of the present application may be implemented as a computer program or program code executing on a programmable system including at least one processor, a storage system (including volatile and non-volatile memory and/or storage elements) , at least one input device and at least one output device.
  • This application provides a computer program product, including: execution instructions, the execution instructions are stored in a readable storage medium, at least one processor of an electronic device can read the execution instructions from the readable storage medium, and the at least one processor executes the above execution instructions
  • the electronic device is caused to perform the data transmission method mentioned in this application.
  • Embodiments disclosed in this application may be implemented in hardware, software, firmware, or a combination of these implementation methods.
  • Embodiments of the present application may be implemented as a computer program or program code executing on a programmable system including at least one processor, a storage system (including volatile and non-volatile memory and/or storage elements) , at least one input device and at least one output device.
  • Program code may be applied to input instructions to perform the functions described herein and to generate output information.
  • Output information can be applied to one or more output devices in a known manner.
  • a processing system includes any system having a processor such as, for example, a digital signal processor (DSP), a microcontroller, an application specific integrated circuit (ASIC), or a microprocessor.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • Program code may be implemented in a high-level procedural language or an object-oriented programming language to communicate with the processing system.
  • assembly language or machine language can also be used to implement program code.
  • the mechanisms described in this application are not limited to the scope of any particular programming language. In either case, the language may be a compiled or interpreted language.
  • the disclosed embodiments may be implemented in hardware, firmware, software, or any combination thereof.
  • the disclosed embodiments may also be implemented as instructions carried on or stored on one or more transitory or non-transitory machine-readable (e.g., computer-readable) storage media, which may be operated by one or more processors Read and execute.
  • instructions may be distributed over a network or through other computer-readable media.
  • machine-readable media may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer), including, but not limited to, floppy disks, optical disks, optical disks, read-only memories (CD-ROMs), magnetic Optical disk, read-only memory (ROM), random-access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic or optical card, flash memory, or Tangible machine-readable storage used to transmit information (e.g., carrier waves, infrared signals, digital signals, etc.) using electrical, optical, acoustic, or other forms of propagated signals over the Internet.
  • machine-readable media includes any type of machine-readable media suitable for storing or transmitting electronic instructions or information in a form readable by a machine (eg, computer).
  • each unit/module mentioned in each device embodiment of this application is a logical unit/module.
  • a logical unit/module can be a physical unit/module, or it can be a physical unit/module.
  • Part of the module can also be implemented as a combination of multiple physical units/modules.
  • the physical implementation of these logical units/modules is not the most important.
  • the combination of functions implemented by these logical units/modules is what solves the problem of this application. Key technical issues raised.
  • the above-mentioned equipment embodiments of this application do not introduce units/modules that are not closely related to solving the technical problems raised by this application. This does not mean that the above-mentioned equipment embodiments do not exist. Other units/modules.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本申请涉及通信技术领域,公开了一种数据传输方法、电子设备及介质;其中,方法包括:第一电子设备对待传输数据进行编码获取第一编码数据,其中第一编码数据包括基本层数据包和多个增强层数据包;第一电子设备将基本层数据包发送至第二电子设备;第一电子设备基于多个增强层数据包的优先级对多个增强层数据包进行组合编码处理,获取第二编码数据,其中,第二编码数据包括第一类组合编码包,第一类组合编码包包括多个增强层数据包中的至少两个增强层数据包中的数据;第一电子设备将第二编码数据发送至第二电子设备。基于上述方案,能够有效增大接收端的解码成功概率,提高解码速度。

Description

一种数据传输方法、电子设备及介质
本申请要求于2022年06月29日提交中国专利局、申请号为202210763347.6、申请名称为“一种信道传输方法、电子设备及介质”,以及2022年09月02日提交中国专利局、申请号为202211073688.7、名称为“一种数据传输方法、电子设备及介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别涉及一种数据传输方法、电子设备及介质。
背景技术
目前,随着技术的发展,电子设备功能越来越多,例如,现在很多电子设备都具备投屏功能。例如,如图1所示,发送端设备100可以将直播视频对应的视频数据实时发送至接收端设备200进行投屏显示。其中,发送端设备向接收端设备进行视频数据传输的方式可以如图2所示:首先发送端设备对待传输的数据进行本地渲染,即将每一帧画面拆成多个片(SLICE),例如,将每一帧画面分成SLICE0,SLICE1,SLICE2和SLICE3。然后将每个SLICE按质量分层编码后获取对应的编码数据,例如SLICE0,SLICE1,SLICE2和SLICE3分别对应的编码数据为S00,S01,S02和S03。每个SLICE对应的编码数据需要在固定的时间窗口(称为传输时间窗)内通过块确认(BlockACK)传输方式进行无线信道传输。例如,如图2所示,SLICE0对应的编码数据S00需要在S00时间窗内传输,SLICE1对应的编码数据S01需要在S01时间窗内传输,SLICE2对应的编码数据S02需要在S02时间窗内传输,SLICE3对应的编码数据S03需要在S03时间窗内传输。
其中每个SLICE对应的编码数据可以包括一个基本层数据包和多个增层,且每个SLICE对应的基本层数据包和多个增强层数据包具有优先级顺序,在传输时间窗内,电子设备会按照上述优先级顺序对每个SLICE对应的多个层进行传输。例如,如图3所示,S00中各层的优先级顺序为基本层数据包>增强层数据包1>...增强层数据包n,在传输时间窗S00内,发送端电子设备按照上述优先级顺序对SLICE0对应的多个层依次进行传输。
目前,对每个SLICE进行编码的方式可以为帧间及帧内编码方式,即相邻两层中的编解码具有依赖关系,例如,增强层数据包1的编码可以依赖于基本层数据包,增强层数据包2的编码依赖于增强层数据包1......。而在解码时,增强层数据包1的解码也需要依赖基本层数据包,增强层数据包2的解码需要依赖增强层数据包1......才能解码成功。因此,当基本层数据包或任意增强层数据包中任意子数据包出现错误时,后续子数据包将无法解码成功,因此发送端设备均需要进行数据包的重传。例如,如图4所示,当接收端设备接收到增强层数据包1的一个子数据包出现错误时,接收端设备不会发送确认应答。发送端设备在设定时间后未接受到对应数据的确认应答,将会重新传输对应数据。而当多个子数据包出现错误时,多次子数据包的重新传输将会造成信道传输资源浪费,且造成接收端解码速度降低,导致投屏显示的速度降低。
发明内容
为解决上述现有数据传输方法中,当多个子数据包出现错误时,多次子数据包的重新传输将会造成信道传输资源浪费,且造成接收端解码速度降低,导致投屏显示的速度降低的技术问题,本申请实施例提供一种数据传输方法、电子设备及介质。
第一方面,本申请提供一种数据传输方法,包括:第一电子设备获取待传输数据;第一电子设备对待传输数据进行编码获取第一编码数据,其中第一编码数据包括基本层数据包和多个增强层数据包;第一电子设备将基本层数据包发送至第二电子设备;第一电子设备基于多个增强层数据包的优先级对多个增强层数据包进行组合编码处理,获取第二编码数据,其中,第二编码数据包括第一类组合编码包,第一类组合编码包包括多个增强层数据包中的至少两个增强层数据包中的数据;第一电子设备将第二编码数据发送至第二电子设备。
基于上述方案,本申请实施例中提供的数据传输方法,将增强层数据包进行组合编码,在进行解码时,即使存在部分组合编码包数据错误,解码端只要获取到一定数量的组合编码包即可正确解码,增大解码成功概率,且能有效避免现有技术中由于任意增强包出现错误,导致需要重新传输,造成的接收端设备成功解码速度较慢,效率较低的技术问题。且该数据传输方式便于用于聚合度较长的帧的传输。
另外,本申请实施例中,基于不用增强层数据包的优先级对多个增强层数据包进行组合编码处理,即通过控制不同优先级的增强层数据包对应的组合编码包的数量不同以实现了不同优先级的增强层数据包数据的不等传输保护,如此,使得高优先级的增强层数据包被解码出的概率更加大,能够有效保证接收端接收到的画质的性能。
在一种可能的实现中,第一电子设备将基本层数据包发送至第二电子设备,包括:第一电子设备将基本层数据包通过块确认传输方式发送至第二电子设备。
可以理解,本申请实施例中,基本层数据包采用块确认传输方式,在基本层数据包出现错误时,发送端设备仍然能够重传对应数据,能够有效保证基本层数据包的传输质量,保证接收端的基本画质。
在一种可能的实现中,第一电子设备将第二编码数据发送至第二电子设备,包括:第一电子设备将第二编码数据通过无确认传输方式发送至第二电子设备。
可以理解,本申请实施例中,增强层数据包对应的二次编码数据的传输方式采用无确认传输方式,使得接收设备无需应答,减小了应答帧的发送,节省信道资源。
在一种可能的实现中,基于多个增强层数据包的优先级对多个增强层数据包进行组合编码处理,获取第二编码数据;包括:获取多个增强层数据包中每个增强层数据包的子数据块;基于每个增强层数据包的子数据块确定多个数据块组合,多个数据块组合中包括第一类组合,第一类组合包括多个增强层数据包的至少一个子数据块;从多个数据块组合中选取各待传输数据块组合,对各待传输数据块组合进行组合编码,获取第二编码数据,第二编码数据包括各待传输数据块组合对应的组合编码包;其中,第二编码数据满足优先级高的增强层数据包对应的组合编码包的数量大于优先级低的增强层数据包对应的组合编码包的数量。
可以理解,本申请实施例中,通过控制不同优先级的增强层数据包对应的组合编码包的数量不同以实现了不同优先级的增强层数据包数据的不等传输保护,如此,使得高优先级的增强层数据包被解码出的概率更加大,能够有效保证接收端接收到的画质的性能
在一种可能的实现中,多个数据块组合包括第二类组合,第二类组合包括同一增强层数据包的至少一个子数据块。
在一种可能的实现中,多个组合编码包包括第二类组合编码包;第二类组合编码包包括多个增强层数据包中的同一增强层数据包中的数据。
在一种可能的实现中,第一电子设备基于多个增强层数据包的优先级对多个增强层数据包进行组合编码处理;包括:第一电子设备基于多个增强层数据包的优先级通过喷泉码编码方式对多个增强层数据包进行组合编码处理,获取第二编码数据;其中,第二编码数据满足优先级高的增强层数据包对应的组合编码包的数量大于优先级低的增强层数据包对应的组合编码包的数量。
在一种可能的实现中,第一电子设备基于多个增强层数据包的优先级对多个增强层数据包进行组合编码处理;包括基于当前可传输数据总量和多个增强层数据包的优先级对多个增强层数据包进行组合编码处理;当前可传输数据总量基于基本层数据包的已用传输时间、第一编码数据的设定总传输时间、第一电子设备和第二电子设备之间传输信道的当前传输速度确定。
在一种可能的实现中,获取所述第一电子设备和所述第二电子设备之间传输信道的当前传输速度的方式,包括:通过信道质量指示探测技术获取传输信道内的当前误差向量幅度;基于当前误差向量幅度确定传输信道的当前调制编码方式;基于当前调制编码方式确定传输信道的当前传输速度。
第二方面,本申请提供一种电子设备,包括:存储器,用于存储电子设备的一个或多个处理器执行的指令,以及处理器,是电子设备的一个或多个处理器之一,用于执行本申请中提及的数据传输方法。
第三方面,本申请提供一种可读存储介质,可读介质上存储有指令,指令在电子设备上执行时使得电子设备执行本申请中提及的数据传输方法。
第四方面,本申请提供一种计算机程序产品,包括:执行指令,执行指令存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取执行指令,至少一个处理器执行上述执行指令使得电子设备执行本申请中提及的数据传输方法。
附图说明
图1根据本申请的一些实施例,示出了数据传输的场景示意图;
图2根据本申请的一些实施例,示出了一种视频数据的传输方式示意图;
图3根据本申请的一些实施例,示出了一种数据传输的示意图;
图4根据本申请的一些实施例,示出了一种数据传输的示意图;
图5根据本申请的一些实施例,示出了一种增强层数据包的编码方式示意图;
图6根据本申请的一些实施例,示出了一种手机的结构示意图;
图7根据本申请的一些实施例,示出了一种数据传输的流程示意图;
图8根据本申请一些实施例,示出了一种对增强层数据包进行编码的方法示意图。
具体实施方式
本申请的说明性实施例包括但不限于基于一种信道传输方法、电子设备及介质。
为更加清楚理解本申请的方案,首先对本申请涉及到的术语进行解释。
块确认(Block ACK)传输:无线通信协议802.11中规定的一种数据传输机制,发送端设备通过块确认传输机制传输的数据,接收端设备接收到数据时,会发送确认应答;当数据出现错误或者接收端未接收端到数据时,接收端设备不会发送确认应答。发送端设备在设定时间后未接受到对应数据的确认应答,将会重新传输对应数据。
无确认(NO ACK)传输:无线通信协议802.11中规定的一种数据传输机制,发送端设备若通过无 确认传输机制传输数据,接收端设备无需进行应答。
为解决上述问题,本申请实施例提供一种数据传输方法,包括:发送端设备获取待传输数据,待传输数据可以为当前帧数据。对待传输数据中每个SLICE进行编码获取编码数据,其中编码数据包括一个基本层数据包和多个增强层数据包。发送端设备将基本层数据包通过块确认传输方式发送至接收端设备。且在基本层数据包传输后,发送端设备可以确定当前SLICE的传输窗口即传输时长内剩余的可传输数据总量;然后根据剩余可传输数据总量以及各增强层数据包的优先级对对多个增强层数据包进行二次编码处理,获取二次编码数据,并将二次编码数据用过无确认传输(No acknowledgment,noACK)方式发送至接收端设备。
其中,确定当前SLICE的传输窗口内剩余的可传输数据总量的方式可以为:根据传输信道状态确定后续增强层数据包数据的传输速度,并根据当前传输窗口的总时长以及基本层数据包传输已用时间确定增强层数据包剩余可用传输时间,从而根据传输速度和剩余传输时间确定发送端设备的剩余可传输数据总量。
其中,二次编码处理包括:获取每个增强层数据包中的各个子数据块,基于各增强层数据包的各子数据块确定所有可实现的数据块组合,其中,每个可实现的数据块组合中可以包括至少两个增强层数据包中的部分子数据块,根据剩余可传输数据总量以及增强层数据包的优先级从所有可实现的数据包合中选取待传输的数据块组合,并根据待传输的数据块组合对对应的数据包进行组合编码,获取待传输的组合编码包。选取待传输的数据块组合的规则为:待传输的组合对应的编码后的组合编码包的数据总量尽可能接近且不超过当前可传输的数据总量,且优先级越高的增强层数据包对应的组合编码包的数量越多。可以理解,每个增强层数据包对应的组合编码包为包括有该增强层数据包的任意子数据块的组合编码包。
可以理解,本申请实施例中,上述每个增强层数据包包括的子数据块的数量只是举例说明,本申请实施例中,每个增强层数据包可以根据实际需求拆分为任意数量的子数据块。
其中,上述提及的每个子数据块的数据量也可以根据实际需求进行设置,例如,可以为每个子数据块的数据量可以为1bit,也可以为其他数值等。
在一些实施例中,获取每个增强层数据包中的各个子数据块的方式可以为对每个增强层数据包中各子数据包进行拆分获取。
可以理解,本申请实施例中,将增强层数据包进行组合编码,在进行解码时,即使存在部分组合编码包数据错误,解码端只要获取到一定数量的组合编码包即可正确解码,增大解码成功概率,且能有效避免现有技术中由于任意增强包出现错误,导致需要重新传输,造成的接收端设备成功解码速度较慢,效率较低的技术问题。且该数据传输方式便于用于聚合度较长的帧的传输。
例如,第一增强层数据包包括子数据块D1和子数据块D2,第二增强层数据包包括子数据块D3和子数据块D4,第三增强层数据包包括子数据块D5。则如图5所示,增强层数据包对应的所有可实现的组合编码如图5中箭头流所示,包括组合编码包D1,D2,D3,D4,D5,D1D2,D1D3,D1D4,D1D5,D2D3,D2D4,D2D5,D3D4,D3D5,D4D5,D1D2D3,D1D2D4,D1D2D5,D1D3D4,D1D3D5,D1D4D5,D2D3D4,D2D3D5,D2D4D5,D3D4D5,D1D2D3D4,D1D2D3D5,D2D3D4D5,D1D2D4D5,D1D3D4D5,D1D2D3D4D5。其中,组合编码包D1D3既是第一增强层数据包对应的组合编码包,也是第二增强层数据包对应的组合编码包。
在第一增强层数据包的优先级大于第二增强层数据包的优先级,第二增强层数据包的优先级大于第三增强层数据包的优先级的情况下,若确定出组合编码包D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5 的编码后的数据总量与当前可传输的数据总量最为接近,且第一增强层数据包对应的组合编码包为D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5,数量为8个;第二增强层数据包对应的组合编码包为D1D3,D1D4,D2D3,D2D4,D3数量为5个,第三增强层数据包对应的组合编码包为D1D5,D2D5,D5数量为3个,满足优先级越高的增强层数据包对应的组合编码包的数据量越多的规则。则确定D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5对应的编码后的组合编码包为待传输的组合编码包。
例如,在上述例子中,接收端设备接收到的8个组合编码包D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5中,若D3对应的组合编码包出现错误,接收端设备基于剩下的组合编码包D1D3,D1D4,D2D3,D2D4,D1D5,D5仍然可以成功解码。
可以理解,本申请实施例中确定上述待传输组合的方式可以采用神经网络模型、算法程序等任意可实施的方式。
可以理解,上述图5中,基于各增强层数据包的各子数据块确定的所有可实现的数据块组合可以包括有多类组合,例如可以包括第一类组合和第二类组合,第一类组合包括不同增强层数据包的任意数量的数据块,第二类组合包括单个增强层数据包的部分或全部数据块。
可以理解,本申请实施例中,编码数据中的基本层数据包包含图像数据的基本信息,例如图像数据的轮廓信息等,每个增强层数据包可以对应不同的图像数据的其他细节信息,例如,图像颜色信息、图像高光反射信息、图像漫反射信息等。
本申请实施例中,基本层数据包采用块确认传输方式,在基本层数据包出现错误时,发送端设备仍然能够重传对应数据,能够有效保证基本层数据包的传输质量,保证接收端的基本画质。本申请实施例中增强层数据包对应的二次编码数据的传输方式采用无确认传输方式,使得接收设备无需应答,减小了应答帧的发送,节省信道资源。
另外,本申请实施例中,通过控制不同优先级的增强层数据包对应的组合编码包的数量不同,即进行不同冗余度的编码,实现了不同优先级的增强层数据包数据的不等传输保护,即使得高优先级的增强层数据包被解码出的概率更加大,能够有效保证接收端接收到的画质的性能。
可以理解,在一些实施例中,发送端设备可以通过实时对传输信道进行信道质量指示(channel quality indication,CQI)探测,以获取传输信道内的误差向量幅度(Error Vector Magnitude,EVM),通过传输信道的EVM确定增强层数据包数据传输的调制编码方式(Modulation and Coding Scheme,MCS),其中,MCS可以用于限定增强层数据包的数据传输速度。
可以理解,本申请实施例中的发送端电子设备和接收端电子设备均可以为平板电脑(portable androiddevice,PAD)、个人数字处理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备、车载设备或可穿戴设备,虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(selfdriving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smarthome)中的无线终端等具有触摸屏的移动终端或固定终端。本申请实施例中对电子设备的形态不做具体限定。
下面以手机为例对本申请实施例提供的电子设备的硬件结构进行说明。如图5所示,手机10可以包括处理器110、电源模块140、存储器180,移动通信模块130、无线通信模块120、传感器模块190、音频模块150、摄像头170、接口模块160、按键101以及显示屏102等。
可以理解的是,本发明实施例示意的结构并不构成对手机10的具体限定。在本申请另一些实施例中,手机10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的 部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如,可以包括中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、数字信号处理器DSP、微处理器(Micro-programmed Control Unit,MCU)、人工智能(Artificial Intelligence,AI)处理器或可编程逻辑器件(Field Programmable Gate Array,FPGA)等的处理模块或处理电路。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器110中可以设置存储单元,用于存储指令和数据。在一些实施例中,处理器110中的存储单元为高速缓冲存储器180。
其中,处理器可以用于执行本申请实施例提供的数据传输方法。
电源模块140可以包括电源、电源管理部件等。电源可以为电池。电源管理部件用于管理电源的充电和电源向其他模块的供电。在一些实施例中,电源管理部件包括充电管理模块和电源管理模块。充电管理模块用于从充电器接收充电输入;电源管理模块用于连接电源,充电管理模块与处理器110。电源管理模块接收电源和/或充电管理模块的输入,为处理器110,显示屏102,摄像头170,及无线通信模块120等供电。
移动通信模块130可以包括但不限于天线、功率放大器、滤波器、LNA(Low noise amplify,低噪声放大器)等。移动通信模块130可以提供应用在手机10上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块130可以由天线接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块130还可以对经调制解调处理器调制后的信号放大,经天线转为电磁波辐射出去。在一些实施例中,移动通信模块130的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块130至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),无线局域网(wireless local area networks,WLAN),近距离无线通信技术(near field communication,NFC),调频(frequency modulation,FM)和/或field communication,NFC),红外技术(infrared,IR)技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
无线通信模块120可以包括天线,并经由天线实现对电磁波的收发。无线通信模块120可以提供应用在手机10上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。手机10可以通过无线通信技术与网络以及其他设备进行通信。
在一些实施例中,手机10的移动通信模块130和无线通信模块120也可以位于同一模块中。
显示屏102用于显示人机交互界面、图像、视频等。显示屏102包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED), 有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。
传感器模块190可以包括接近光传感器、压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
音频模块150用于将数字音频信息转换成模拟音频信号输出,或者将模拟音频输入转换为数字音频信号。音频模块150还可以用于对音频信号编码和解码。在一些实施例中,音频模块150可以设置于处理器110中,或将音频模块150的部分功能模块设置于处理器110中。在一些实施例中,音频模块150可以包括扬声器、听筒、麦克风以及耳机接口。
摄像头170用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件把光信号转换成电信号,之后将电信号传递给ISP(Image Signal Processing,图像信号处理)转换成数字图像信号。手机10可以通过ISP,摄像头170,视频编解码器,GPU(Graphic Processing Unit,图形处理器),显示屏102以及应用处理器等实现拍摄功能。
接口模块160包括外部存储器接口、通用串行总线(universal serial bus,USB)接口及用户标识模块(subscriber identification module,SIM)卡接口等。其中外部存储器接口可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机10的存储能力。外部存储卡通过外部存储器接口与处理器110通信,实现数据存储功能。通用串行总线接口用于手机10和其他电子设备进行通信。用户标识模块卡接口用于与安装至手机1010的SIM卡进行通信,例如读取SIM卡中存储的电话号码,或将电话号码写入SIM卡中。
在一些实施例中,手机10还包括按键101、马达以及指示器等。其中,按键101可以包括音量键、开/关机键等。马达用于使手机10产生振动效果,例如在用户的手机10被呼叫的时候产生振动,以提示用户接听手机10来电。指示器可以包括激光指示器、射频指示器、LED指示器等。
下面结合上述电子设备,对本申请实施例提及的数据传输方法进行说明。如图7所示,图7示出了本申请实施例一种数据传输方法的流程示意图,数据传输方法包括:
701:发送端设备获取待传输数据。
可以理解,本申请实施例中,待传输数据可以为发送端设备正在显示的图片数据或者视频数据等任意数据。例如,待传输数据可以为发送端设备显示的当前帧图像数据。
702:对待传输数据中的每个片进行编码获取编码数据。
可以理解,本申请实施例中,发送端设备可以将每一帧数据拆成多个片(SLICE),例如,将每一帧分成SLICE0,SLICE1,SLICE2和SLICE3。然后将每个SLICE按质量分层编码后获取对应的编码数据,例如SLICE0,SLICE1,SLICE2和SLICE3分别对应的编码数据为S00,S01,S02和S03,其中每个SLICE对应的编码数据可以包括一个基本层数据包和多个增层。
每个SLICE对应的编码数据需要在固定的时间窗口(称为传输时间窗)内进行依次传输。例如,如前述图2所示,SLICE0对应的编码数据S00需要在S00时间窗内传输,SLICE1对应的编码数据S01需要在S01时间窗内传输,SLICE2对应的编码数据S02需要在S02时间窗内传输,SLICE3对应的编码数据S03需要在S03时间窗内传输。
可以理解,本申请实施例中,编码数据中的基本层数据包包含图像数据的基本信息,例如图像数据的轮廓信息等,每个增强层数据包可以对应不同的图像数据的其他细节信息,例如,图像颜色信息、图像高光反射信息、图像漫反射信息等。
703:将编码数据中的基本层数据包通过块确认传输方式发送至接收端设备。
可以理解,发送端设备通过块确认传输机制传输的数据,接收端设备接收到数据时,会发送确认应答,当数据出现错误或者接收端未接收端到数据时,接收端设备不会发送确认应答。发送端设备在设定时间后未接受到对应数据的确认应答,将会重新传输对应数据。
本申请实施例中,将基本层数据包通过块确认传输方式发送至接收端设备。接收端设备可以在接收到基本层数据包时,对基本层数据包中的每个子数据包进行检测,若发现错误的子数据包,或缺少任意子数据包,例如丢包情况,则不会发送确认应答。发送端设备在设定时间后未接受到对应子数据包的确认应答,将会重新传输对应的子数据包。
如此,能够有效保证基本层数据包的传输质量,保证解码端的基本画质。
在一些实施例中,接收端设备也可以通过私有帧反馈数据接收情况,例如,在接收端设备检测到接收情况为接收到错误的子数据包,或缺少任意子数据包,例如丢包情况时,发送接收情况至发送端设备。发送端设备在接收到该接收情况后,可以重新发送错误子数据包或丢失子数据包对应的原始子数据包。
704:发送端设备确定当前时间窗内剩余可传输数据总量。
可以理解,本申请实施例中,发送端设备可以根据传输信道状态确定后续增强层数据包数据的传输速度,并根据每个SLICE的传输窗口即传输总时间以及基本层数据包传输已用时间确定增强层数据包剩余可用传输时间,并根据传输速度和剩余传输时间确定发送端设备的剩余可传输数据总量。
例如,当数据传输速度为12M/ms,传输窗口的总时间为4ms,基本层数据包传输已用时间为1ms,则增强层数据包剩余可用传输时间为3ms,剩余可传输数据总量为36M。
可以理解,发送端设备根据传输信道状态确定后续增强层数据包数据的传输速度的方式可以为,发送端设备可以通过实时对传输信道进行信道质量指示(channel quality indication,CQI)探测,以获取传输信道内的误差向量幅度(Error Vector Magnitude,EVM),通过传输信道的EVM确定增强层数据包数据传输的调制编码方式(Modulation and Coding Scheme,MCS),其中,MCS可以用于限定增强层数据包的数据传输速度。
可以理解,在一些实施例中,接收端设备也可以通过私有帧反馈传输信道内的EVM。
705:发送端设备根据剩余可传输数据总量以及各增强层数据包的优先级对对多个增强层数据包进行二次编码处理,获取二次编码数据。
可以理解,本申请实施例中,图8中示出了本申请实施例中对增强层数据包进行二次编码处理的流程示意图。如图8所示,二次编码处理的方法可以包括:
7051:获取每个增强层数据包中的各个子数据块。
其中,每个增强层数据包可以包括任意数量的子数据块。例如,第一增强层数据包包括子数据块D1和子数据块D2,第二增强层数据包包括子数据块D3和子数据块D4,第三增强层数据包包括子数据块D5。
在一些实施例中,上述提及的每个子数据块的数据量也可以根据实际需求进行设置,例如,可以为每个子数据块的数据量可以为1bit,也可以为其他数值等。
在一些实施例中,获取每个增强层数据包中的各个子数据块的方式可以为对每个增强层数据包中各子数据包进行拆分获取。
7052:基于各增强层数据包的各子数据块确定所有可实现的数据块组合。
例如,如图5所示,在第一增强层数据包包括子数据块D1和子数据块D2,第二增强层数据包包括子数据块D3和子数据块D4,第三增强层数据包包括子数据块D5时,所有可实现的数据块组合包 D1,D2,D3,D4,D5,D1D2,D1D3,D1D4,D1D5,D2D3,D2D4,D2D5,D3D4,D3D5,D4D5,D1D2D3,D1D2D4,D1D2D5,D1D3D4,D1D3D5,D1D4D5,D2D3D4,D2D3D5,D2D4D5,D3D4D5,D1D2D3D4,D1D2D3D5,D2D3D4D5,D1D2D4D5,D1D3D4D5,D1D2D3D4D5。
可以理解,本申请实施例中,基于各增强层数据包的各子数据块确定的所有可实现的数据块组合可以包括有多类组合,例如可以包括第一类组合和第二类组合,第一类组合包括不同增强层数据包的任意数量的数据块,第二类组合包括单个增强层数据包的部分或全部数据块。
7053:根据剩余可传输数据总量以及增强层数据包的优先级选取待传输的数据块组合,并根据待传输的数据块组合对对应的子数据块进行组合编码,获取待传输的组合编码包。
可以理解,本申请实施例中,待传输的组合编码包即为二次编码数据。
选取待传输的数据块组合的规则为:待传输的组合对应的编码后的组合编码包的数据总量尽可能接近且不超过当前可传输的数据总量,且优先级越高的增强层数据包对应的组合编码包的数据量越多。
可以理解,本申请实施例中,若第一增强层数据包的优先级大于第二增强层数据包的优先级,第二增强层数据包的优先级大于第三增强层数据包的优先级。
且确定所有可实现的组合中D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5的编码后的数据总量与当前可传输的数据总量最为接近,且第一增强层数据包对应的组合编码包为D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,数量为6个;第二增强层数据包对应的组合编码包为D1D3,D1D4,D2D3,D2D4,D3,数量为5个,第三增强层数据包对应的组合编码包为D1D5,D2D5,D5,数量为3个,满足优先级越高的增强层数据包对应的组合编码包的数量越多的规则。则确定D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5对应的编码后的组合编码包为待传输的组合编码包。
可以理解,在一些实施例中,当待编码增强层数据包包括增强层数据包1,增强层数据包2,...,增强层数据包n时,可以采用上述二次编码处理的方式获取待传输的组合编码包,例如包括组合编码包1,组合编码包2,...,组合编码包N。
其中,在一些实施例中,待传输的组合编码包的总数量,即N的值可以大于待编码增强层数据包的子数据包的总数量K。如此,能够有效保证解码的成功率。
可以理解,本申请实施例中,若增强层数据包的子数据包的总数量为K,待传输的组合编码包的总数量为N,但只要任意收到超出子数据包总数据量的设定数量E的包将可以完全保证还原出原始K个子数据包,大大提高解码器成功解码的概率。
可以理解,本申请实施例中,对增强层数据包的二次编码处理的方式可以通过对各增强层数据包喷泉码编码实现,同时可以基于剩余可传输数据总量以及各增强层数据包的优先级为各增强层数据包设置不同的编码冗余度,即使得通过喷泉码编码后获得的组合编码包的数据总量尽可能接近且不超过当前可传输的数据总量,且优先级越高的增强层数据包对应的组合编码包的数量越多。
可以理解,本申请实施例中,将增强层数据包进行组合编码,在进行解码时,只需获取到设定数量的组合编码包即可正确解码,能有效避免现有技术中由于任意增强包出现错误,导致需要重新传输,造成的接收端设备成功解码速度较慢,效率较低的技术问题。
例如,在图5所示例子中,接收端设备接收到的8个组合编码包D1D3,D1D4,D2D3,D2D4,D1D5,D2D5,D3,D5中,若D3对应的组合编码包出现错误,接收端设备基于剩下的组合编码包D1D3,D1D4,D2D3,D2D4,D1D5,D5仍然可以成功解码。
另外,本申请实施例中,通过控制不同优先级的增强层数据包对应的组合编码包的数量不同,即进行不同冗余度的编码,实现了不同优先级的增强层数据包数据的不等传输保护,即使得高优先级的增强 层数据包被解码出的概率更加大,能够有效保证接收端接收到的画质的性能。
可以理解,本申请实施例中确定上述待传输组合编码包的方式可以采用神经网络模型、算法程序等任意可实施的方式。
706:发送端设备将二次编码数据用过无确认传输(No acknowledgment,noACK)方式发送至接收端设备。
本申请实施例中,基本层数据包采用块确认传输方式,在基本层数据包出现错误时,发送端设备仍然能够重传对应数据,能够有效保证基本层数据包的传输质量,保证接收端的基本画质。
本申请实施例中增强层数据包对应的二次编码数据的传输方式采用无确认传输方式,使得接收设备无需应答,减小了应答帧的发送,节省信道资源。
另外,本申请实施例中,通过控制不同优先级的增强层数据包对应的组合编码包的数量不同,即进行不同冗余度的编码,实现了不同优先级的增强层数据包数据的不等传输保护,即使得高优先级的增强层数据包被解码出的概率更加大,能够有效保证接收端接收到的画质的性能。
本申请实施例提供一种电子设备,包括:存储器,用于存储所述电子设备的一个或多个处理器执行的指令,以及所述处理器,是所述电子设备的一个或多个处理器之一,用于执行数据传输方法。
本申请实施例提供一种可读存储介质,可读介质上存储有指令,指令在电子设备上执行时使得电子设备执行数据传输方法。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
本申请提供一种计算机程序产品,包括:执行指令,执行指令存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取执行指令,至少一个处理器执行上述执行指令使得电子设备执行本申请中提及的数据传输方法。
本申请公开的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如,计算机) 可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。

Claims (12)

  1. 一种数据传输方法,其特征在于,包括:
    第一电子设备获取待传输数据;
    所述第一电子设备对所述待传输数据进行编码获取第一编码数据,其中所述第一编码数据包括基本层数据包和多个增强层数据包;
    所述第一电子设备将所述基本层数据包发送至第二电子设备;
    所述第一电子设备基于所述多个增强层数据包的优先级对所述多个增强层数据包进行组合编码处理,获取第二编码数据,其中,所述第二编码数据包括第一类组合编码包,所述第一类组合编码包包括所述多个增强层数据包中的至少两个增强层数据包中的数据;
    所述第一电子设备将所述第二编码数据发送至所述第二电子设备。
  2. 根据权利要求1所述的数据传输方法,其特征在于,所述第一电子设备将所述基本层数据包发送至所述第二电子设备,包括:
    所述第一电子设备将所述基本层数据包通过块确认传输方式发送至所述第二电子设备。
  3. 根据权利要求1所述的数据传输方法,其特征在于,所述第一电子设备将所述第二编码数据发送至所述第二电子设备,包括:
    所述第一电子设备将所述第二编码数据通过无确认传输方式发送至所述第二电子设备。
  4. 根据权利要求1-3任一项所述的数据传输方法,其特征在于,所述基于所述多个增强层数据包的优先级对所述多个增强层数据包进行组合编码处理,获取第二编码数据;包括:
    获取所述多个增强层数据包中每个增强层数据包的子数据块;
    基于所述每个增强层数据包的子数据块确定多个数据块组合,所述多个数据块组合中包括第一类组合,所述第一类组合包括不同增强层数据包的至少一个子数据块;
    从所述多个数据块组合中选取各待传输数据块组合,对所述各待传输数据块组合进行组合编码,获取第二编码数据,所述第二编码数据包括各待传输数据块组合对应的组合编码包;
    其中,所述第二编码数据满足优先级高的增强层数据包对应的组合编码包的数量大于优先级低的增强层数据包对应的组合编码包的数量。
  5. 根据权利要求4所述的数据传输方法,其特征在于,所述多个数据块组合包括第二类组合,所述第二类组合包括同一增强层数据包的至少一个子数据块。
  6. 根据权利要求1-3任一项所述的数据传输方法,其特征在于,所述多个组合编码包包括第二类组合编码包;
    所述第二类组合编码包包括所述多个增强层数据包中的同一增强层数据包中的数据。
  7. 根据权利要求1-3任一项所述的数据传输方法,其特征在于,所述第一电子设备基于所述多个增强层数据包的优先级对所述多个增强层数据包进行组合编码处理;包括:
    所述第一电子设备基于所述多个增强层数据包的优先级通过喷泉码编码方式对所述多个增强层数据包进行组合编码处理,获取第二编码数据;
    其中,所述第二编码数据满足优先级高的增强层数据包对应的组合编码包的数量大于优先级低的增强层数据包对应的组合编码包的数量。
  8. 根据权利要求1-3任一项所述的数据传输方法,其特征在于,所述第一电子设备基于所述多个增强层数据包的优先级对所述多个增强层数据包进行组合编码处理;包括
    基于当前可传输数据总量和所述多个增强层数据包的优先级对所述多个增强层数据包进行组合编码处理;
    所述当前可传输数据总量基于所述基本层数据包的已用传输时间、所述第一编码数据的设定总传输时间、所述第一电子设备和所述第二电子设备之间传输信道的当前传输速度确定。
  9. 根据权利要求8所述的数据传输方法,其特征在于,获取所述第一电子设备和所述第二电子设备之间传输信道的当前传输速度的方式,包括:
    通过信道质量指示探测技术获取所述传输信道内的当前误差向量幅度;
    基于所述当前误差向量幅度确定所述传输信道的当前调制编码方式;
    基于所述当前调制编码方式确定所述传输信道的当前传输速度。
  10. 一种电子设备,其特征在于,包括:存储器,用于存储所述电子设备的一个或多个处理器执行的指令,以及所述处理器,是所述电子设备的一个或多个处理器之一,用于执行权利要求1-9任一项所述的数据传输方法。
  11. 一种可读存储介质,其特征在于,所述可读介质上存储有指令,所述指令在电子设备上执行时使得所述电子设备执行权利要求1-9任一项所述的数据传输方法。
  12. 一种计算机程序产品,包括:执行指令,所述执行指令存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述执行指令,所述至少一个处理器执行所述执行指令使得所述电子设备执行权利要求1-9任一项所述的数据传输方法。
PCT/CN2022/128010 2022-06-29 2022-10-27 一种数据传输方法、电子设备及介质 WO2024000959A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202210763347 2022-06-29
CN202210763347.6 2022-06-29
CN202211073688.7A CN117394962A (zh) 2022-06-29 2022-09-02 一种数据传输方法、电子设备及介质
CN202211073688.7 2022-09-02

Publications (1)

Publication Number Publication Date
WO2024000959A1 true WO2024000959A1 (zh) 2024-01-04

Family

ID=89383812

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/128010 WO2024000959A1 (zh) 2022-06-29 2022-10-27 一种数据传输方法、电子设备及介质

Country Status (1)

Country Link
WO (1) WO2024000959A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1321399A (zh) * 1999-07-06 2001-11-07 皇家菲利浦电子有限公司 应用基层编码信息改进精确颗粒可定标图像的系统和方法
CN101409630A (zh) * 2007-10-11 2009-04-15 北京大学 一种流媒体数据发送接收方法、装置及系统
US20130243082A1 (en) * 2012-03-15 2013-09-19 Kabushiki Kaisha Toshiba Rate optimisation for scalable video transmission
US20160295239A1 (en) * 2013-07-26 2016-10-06 University-Industry Cooperation Group Of Kyung Hee University Method and apparatus for integrated encoding/decoding of different multilayer video codec
CN107995502A (zh) * 2016-10-26 2018-05-04 中国电信股份有限公司 实现自适应流媒体的方法和设备以及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1321399A (zh) * 1999-07-06 2001-11-07 皇家菲利浦电子有限公司 应用基层编码信息改进精确颗粒可定标图像的系统和方法
CN101409630A (zh) * 2007-10-11 2009-04-15 北京大学 一种流媒体数据发送接收方法、装置及系统
US20130243082A1 (en) * 2012-03-15 2013-09-19 Kabushiki Kaisha Toshiba Rate optimisation for scalable video transmission
US20160295239A1 (en) * 2013-07-26 2016-10-06 University-Industry Cooperation Group Of Kyung Hee University Method and apparatus for integrated encoding/decoding of different multilayer video codec
CN107995502A (zh) * 2016-10-26 2018-05-04 中国电信股份有限公司 实现自适应流媒体的方法和设备以及系统

Similar Documents

Publication Publication Date Title
JP7258041B2 (ja) サイドリンクの伝送方法及び端末
WO2020135214A1 (zh) 上行控制信息uci的传输方法及终端
US12003332B2 (en) Systems and methods for implementing hybrid automatic repeat request retransmission scheduling
EP4369632A1 (en) Outbound data transmission method and system in beidou communication system, and related apparatus
WO2021203976A1 (zh) 数据处理方法、装置及系统
WO2023011362A1 (zh) 一种北斗通信系统中出站传输控制方法、系统及相关装置
WO2018201984A1 (zh) 数据的传输方法和设备
WO2020223973A1 (zh) 混合自动重传请求反馈的传输方法、装置及存储介质
JP7215427B2 (ja) 無線lan通信装置、無線lan通信方法および無線lan通信プログラム
WO2020164134A1 (zh) 通信方法、装置及系统
WO2024000959A1 (zh) 一种数据传输方法、电子设备及介质
US20230188270A1 (en) Data Transmission Method, Transmit Device, and Receive Device
WO2020243887A1 (zh) 混合自动重传请求反馈的传输方法、装置及存储介质
WO2020211061A1 (zh) 一种数据传输方法、装置及存储介质
WO2023011605A1 (zh) 北斗通信系统中的信件下载查询方法、系统及相关装置
US20220263607A1 (en) Method and device for data storage
CN117394962A (zh) 一种数据传输方法、电子设备及介质
WO2021087688A1 (zh) 数据传输方法、装置及存储介质
CN112217611A (zh) 用于实现混合自动重复请求过程的系统和方法
WO2021244160A1 (zh) 一种通信方法及装置
WO2024067430A1 (zh) 一种传输方法、系统及相关装置
CN112567663B (zh) 数据传输方法、装置及存储介质
WO2022126456A1 (zh) 数据重传的方法、装置、通信设备及存储介质
EP4387138A1 (en) Video transmission method and electronic device
WO2023011377A1 (zh) 一种北斗通信系统中应用层回执传输方法、系统及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22949043

Country of ref document: EP

Kind code of ref document: A1