WO2018132964A1 - 传输编码数据的方法、装置、计算机系统和移动设备 - Google Patents

传输编码数据的方法、装置、计算机系统和移动设备 Download PDF

Info

Publication number
WO2018132964A1
WO2018132964A1 PCT/CN2017/071491 CN2017071491W WO2018132964A1 WO 2018132964 A1 WO2018132964 A1 WO 2018132964A1 CN 2017071491 W CN2017071491 W CN 2017071491W WO 2018132964 A1 WO2018132964 A1 WO 2018132964A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
encoded
transmitted
encoded data
channel bandwidth
Prior art date
Application number
PCT/CN2017/071491
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
Application filed by 深圳市大疆创新科技有限公司 filed Critical 深圳市大疆创新科技有限公司
Priority to CN201780000112.9A priority Critical patent/CN107078852B/zh
Priority to PCT/CN2017/071491 priority patent/WO2018132964A1/zh
Priority to EP18741391.9A priority patent/EP3571840B1/en
Priority to PCT/CN2018/072444 priority patent/WO2018133734A1/en
Priority to CN201880006102.0A priority patent/CN110169066A/zh
Priority to JP2019537365A priority patent/JP6862633B2/ja
Publication of WO2018132964A1 publication Critical patent/WO2018132964A1/zh
Priority to US16/511,839 priority patent/US20190342551A1/en
Priority to US16/514,559 priority patent/US11159796B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0014Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the source coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters

Definitions

  • the present invention relates to the field of information technology and, more particularly, to a method, apparatus, computer system and mobile device for transmitting encoded data.
  • the low-latency video transmission system under the condition of real-time variation of channel bandwidth is the hot research and application direction of the present.
  • the source may change with time, and the channel may change with time.
  • the conditions affecting the channel are more, for example, the distance of the transceiver device, the relative position, whether there is occlusion, the instantaneous electromagnetic environment interference, and the like.
  • the source and channel vary independently of each other and are difficult to predict, which makes it difficult to match the source code and the channel bandwidth in real time. For example, when the channel is stable, sudden camera motion, or large motion of objects in the camera's finder frame, will cause a sudden change in the size of the encoded code stream. If the code stream is doubled, it means that the transmission delay is doubled. When the source is stable, the stream size is stable at this time, but suddenly the channel changes, and the transmission delay jitter is also caused. If the bandwidth is reduced by two times, the transmission delay is also reduced by two times.
  • a rate control algorithm is adopted, and the average code rate of a certain period of time (several frames) can be stabilized at a given target bit rate to ensure that the average overall delay jitter range of frames of several frames or a period of time is compared. small.
  • Embodiments of the present invention provide a method, an apparatus, a computer system, and a computer system for transmitting encoded data.
  • Mobile devices that control the encoded data transmission delay in real time.
  • a first aspect provides a method for transmitting encoded data, including: acquiring multiplexed encoded data, wherein the multiplexed encoded data is encoded data encoded according to a plurality of code rates for the same to-be-coded data; a channel bandwidth, in which the encoded data to be transmitted is selected, wherein the encoded data to be transmitted is one encoded data that matches the bandwidth of the channel; and the encoded data to be transmitted is transmitted through the channel.
  • an apparatus for transmitting encoded data comprising: an obtaining module, configured to acquire multiplexed encoded data, wherein the multiplexed encoded data is encoded data that is encoded according to a plurality of code rates for the same to-be-coded data; a module, configured to select, according to a current channel bandwidth of the channel, coded data to be transmitted, where the coded data to be transmitted is one coded data that matches a bandwidth of the channel; and a transmission module, configured to pass the channel Transmitting the encoded data to be transmitted.
  • a computer system comprising: a memory for storing computer executable instructions; a processor for accessing the memory and executing the computer executable instructions to perform the following operations: acquiring more Channel encoded data, wherein the multiplexed encoded data is encoded data that is encoded according to a plurality of code rates for the same to-be-coded data; and the encoded data to be transmitted is selected in the multiplexed encoded data according to a current channel bandwidth of the channel, where The coded data to be transmitted is one piece of coded data that matches the channel bandwidth; the coded data to be transmitted is transmitted through the channel.
  • a mobile device comprising: a plurality of sensors for acquiring a plurality of image data sources; and the device for transmitting encoded data of the second aspect.
  • a mobile device comprising: a plurality of sensors for acquiring a plurality of image data sources; and the computer system of the above third aspect.
  • a computer storage medium having stored therein program code, the program code being operative to indicate a method of performing the first aspect described above.
  • the technical solution of the embodiment of the present invention can maintain the source channel matching in real time by selecting one channel coded data that matches the channel bandwidth for transmission in the multiplexed coded data encoded by the same code to be encoded. Thereby, the encoded data transmission delay can be controlled in real time.
  • FIG. 1 is an architectural diagram of a technical solution to which an embodiment of the present invention is applied.
  • FIGS 2a-2c are diagrams showing the processing architecture of an encoder according to an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of data to be encoded according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a mobile device according to an embodiment of the present invention.
  • FIG. 5 is a schematic flowchart of a method for transmitting encoded data according to an embodiment of the present invention.
  • Figure 6 is a schematic block diagram of an apparatus for transmitting encoded data in accordance with one embodiment of the present invention.
  • FIG. 7 is a schematic block diagram of an apparatus for transmitting encoded data according to another embodiment of the present invention.
  • FIG. 8 is a schematic block diagram of an apparatus for transmitting encoded data according to still another embodiment of the present invention.
  • FIG. 9 is a schematic block diagram of a computer system in accordance with an embodiment of the present invention.
  • Figure 10 is a schematic block diagram of a mobile device in accordance with one embodiment of the present invention.
  • FIG. 11 is a schematic block diagram of a mobile device in accordance with another embodiment of the present invention.
  • the size of the sequence numbers of the processes does not imply a sequence of executions, and the order of execution of the processes should be determined by its function and internal logic, and should not be construed as an embodiment of the present invention.
  • the implementation process constitutes any limitation.
  • the technical solution of the embodiment of the present invention can be used to control the coded data transmission delay in real time.
  • the technical solution of the embodiment of the present invention can control the transmission time of each frame within a certain range.
  • FIG. 1 is an architectural diagram of a technical solution to which an embodiment of the present invention is applied.
  • system 100 can receive data 102 to be encoded, encode coded data 102, generate encoded data 108, and transmit encoded data 108 over a channel.
  • system 100 can receive video data, compress the video data to produce a compressed bit stream, and transmit over the channel.
  • components in system 100 may be implemented by one or more processors, which may be processors in a computing device or processors in a mobile device (eg, a drone).
  • the processor may be any type of processor, which is not limited in this embodiment of the present invention.
  • One or more memories may also be included in system 100.
  • the memory can be used to store instructions and data, such as computer-executable instructions to implement the technical solution of the embodiments of the present invention, data to be encoded 102, encoded data 108, and the like.
  • the memory can be any kind of memory, and this embodiment of the invention also Not limited.
  • system 100 can encode the same to-be-encoded data 102 at a plurality of code rates to obtain multiplexed encoded data 108, and select a matching channel bandwidth in multiplexed encoded data 108 based on the current channel bandwidth of the channel.
  • One way encoded data 108 is transmitted.
  • an encoder implemented by a processor and a memory may be included in system 100.
  • the encoder is configured to receive the data to be encoded 102, encode the data to be encoded 102, and provide encoded data 108.
  • the encoder may be a multi-rate encoder that may encode the encoded data 102 at a plurality of code rates to obtain multiplexed encoded data 108.
  • a plurality of encoders may be included in the system 100, and the plurality of encoders may encode the encoded data 102 at a rate-free rate to obtain multiplexed encoded data 108.
  • the data to be encoded 102 may include text, images, graphic objects, animation sequences, audio, video, or any other data that needs to be encoded.
  • the data to be encoded 102 may include sensory data from sensors, which may be vision sensors (eg, cameras, infrared sensors), microphones, near field sensors (eg, ultrasonic sensors, radar), position sensors, Temperature sensor, touch sensor, etc.
  • the data to be encoded 102 may include information from a user, such as biometric information, which may include facial features, fingerprint scans, retinal scans, voice recordings, DNA sampling, and the like.
  • Encoding is necessary for efficient and/or secure transmission or storage of data.
  • the encoding of the encoded data 102 may include data compression, encryption, error correction encoding, format conversion, and the like.
  • compression of multimedia data such as video or audio, can reduce the number of bits transmitted in the network.
  • Sensitive data such as financial information and personally identifiable information, can be encrypted to protect confidentiality and/or privacy prior to transmission and storage.
  • Any suitable coding technique can be used to encode the data 102 to be encoded.
  • the type of encoding depends on the data being encoded and the specific coding requirements.
  • the encoder can implement one or more different codecs.
  • Each codec may include code, instructions or a computer program that implements different encoding algorithms. Based on various factors, including the type and/or source of the data to be encoded 102, the receiving entity of the encoded data, the available computing resources, the network environment, the business environment, the rules and standards, etc., a suitable encoding algorithm can be selected for encoding. Data to be encoded 102.
  • the encoder can be configured to encode a series of video frames. Encoding the data in each frame can take a series of steps.
  • the encoding step can include prediction, transformation, volume Processing steps such as entropy coding.
  • Figure 2a shows a processing architecture diagram of an encoder in accordance with an embodiment of the present invention.
  • the prediction process may include intra prediction and inter prediction.
  • a residual corresponding to the data unit for example, a pixel point
  • the pixel obtained by reconstructing the reference pixel point can be obtained from the stored context, according to the reference pixel point.
  • the pixel obtained after the reconstruction and the pixel of the pixel point obtain the pixel residual corresponding to the pixel point.
  • the pixel residual is subjected to entropy coding by transforming and quantization.
  • the control of the quantization rate can be achieved by controlling the quantization parameter.
  • the quantization process can be performed in accordance with a variety of quantization parameters such that multiple rate encoding can be achieved.
  • the quantized pixel residual corresponding to a certain pixel point may also be subjected to inverse quantization inverse transform processing, and then reconstructed to obtain a pixel reconstructed by the pixel, and the reconstructed pixel of the pixel is stored, so that When the pixel is used as the reference pixel, the pixel reconstructed by the pixel acquires the pixel residual corresponding to the other pixel.
  • the quantization parameter may include a quantization step size indicating a quantization step size or a value related to the quantization step size, for example, a quantization parameter (QP) in an H.264 or similar encoder, or a quantization matrix or a reference matrix thereof Wait.
  • QP quantization parameter
  • the same code to be encoded may be encoded at a plurality of code rates using a multi-rate encoder to obtain multiplexed coded data.
  • the modules in the area 201 can be shared between different single rate encoding modules in the multi-rate encoder, and the same operations in prediction and mode selection are maximized. This part of the computational complexity and computing resource consumption accounts for about 70% of the total encoder.
  • Each single rate encoding module may include modules in the area 202, and may provide multiple encoded data of different code rates according to actual needs. With the multi-rate encoder of this structure, resource consumption can be saved.
  • one channel of encoded data matching the channel bandwidth may be selected for transmission in the multiple encoded data provided by the plurality of single rate encoding modules according to the current channel bandwidth of the channel;
  • the context of the selected encoded data is used as the context of the next encoded data to be encoded.
  • the reconstructed data corresponding to the selected encoded data is stored and referenced in the prediction processing of the next frame.
  • FIG. 3 shows a schematic diagram of data to be encoded in an embodiment of the present invention.
  • the data 302 to be encoded may include a plurality of frames 304.
  • multiple frames 304 may represent consecutive image frames in a video stream.
  • Each frame 304 can include one or more strips 306.
  • Each strip 306 can include one or more macroblocks 308.
  • Each macroblock 308 can include one or more blocks 310.
  • Each block 310 can include one or more pixels 312.
  • Each pixel 312 One or more data sets may be included, corresponding to one or more data portions, such as a luminance data portion and a chrominance data portion.
  • the data unit can be a frame, a stripe, a macroblock, a block, a pixel, or a group of any of the above.
  • the size of the data unit can vary.
  • one frame 304 may include 100 stripes 306, each strip 306 may include 10 macroblocks 308, each macroblock 308 may include 4 (eg, 2x2) blocks 310, each block 310 may include 64 (eg, 8x8) pixels 312.
  • the mobile device which may also be referred to as a mobile device, may transmit the encoded data by using the technical solution of the embodiment of the present invention.
  • the mobile device may be a drone, an unmanned ship or a robot, etc., but the embodiment of the present invention is not limited thereto.
  • FIG. 4 is a schematic architectural diagram of a mobile device 400 in accordance with an embodiment of the present invention.
  • mobile device 400 can include power system 410, control system 420, sensing system 430, and processing system 440.
  • Power system 410 is used to power the mobile device 400.
  • the power system of the drone may include an electronic governor (referred to as an electric current), a propeller, and a motor corresponding to the propeller.
  • the motor is connected between the electronic governor and the propeller, and the motor and the propeller are disposed on the corresponding arm; the electronic governor is used for receiving the driving signal generated by the control system, and providing driving current to the motor according to the driving signal to control the motor Rotating speed.
  • the motor is used to drive the propeller to rotate to power the drone's flight.
  • the sensing system 430 can be used to measure attitude information of the mobile device 400, that is, location information and status information of the mobile device 400 in space, such as three-dimensional position, three-dimensional angle, three-dimensional velocity, three-dimensional acceleration, and three-dimensional angular velocity, and the like.
  • the sensing system 430 may include, for example, at least one of a gyroscope, an electronic compass, an Inertial Measurement Unit (IMU), a vision sensor, a Global Positioning System (GPS), a barometer, an airspeed meter, and the like.
  • IMU Inertial Measurement Unit
  • GPS Global Positioning System
  • barometer an airspeed meter
  • the sensing system 430 is further configured to collect data to be encoded, that is, the sensing system 430 includes a sensor for collecting data to be encoded, such as a camera or the like.
  • Control system 420 is used to control the movement of mobile device 400.
  • Control system 420 can control mobile device 400 in accordance with pre-programmed program instructions. For example, control system 420 can control the movement of mobile device 400 based on the attitude information of mobile device 400 as measured by sensing system 430. Control system 420 can also control mobile device 400 based on control signals from the remote control.
  • Processing system 440 can process the data to be encoded collected by sensing system 430. For example, processing The system 440 can encode the same to-be-encoded data according to a plurality of code rates, and select one channel of encoded data that matches the channel bandwidth for transmission.
  • Processing system 440 can be system 100 in FIG. 1, or processing system 440 can include system 100 in FIG.
  • the mobile device 400 may also include other components not shown in FIG. 4, which are not limited by the embodiments of the present invention.
  • FIG. 5 shows a schematic flow chart of a method 500 of transmitting encoded data according to an embodiment of the present invention.
  • the method 500 can be performed by the system 100 shown in FIG. 1; or by the mobile device 400 shown in FIG. 4, and in particular, by the processing system 440 of FIG.
  • multiplexed encoded data of different code rates are acquired for the same data to be encoded. That is, the same code to be encoded is encoded according to a plurality of code rates to obtain multiplexed coded data.
  • the encoding operation and the subsequent operations may be implemented by the same device, or may be implemented by different devices, for example, the previous device performs an encoding operation, and sends the multi-coded data to the next device, and the latter device performs the following operations.
  • the data to be encoded may be a frame image. That is to say, each frame image is encoded according to a plurality of code rates to obtain multiplexed encoded data.
  • the data to be encoded may be first predicted, and then quantized and entropy encoded according to multiple quantization parameters.
  • the multiplex coding process can share the relevant modules of the prediction process, and is further divided into multiple channels in the subsequent quantization process and the entropy coding process, and different modules are respectively used.
  • a multi-rate encoder may be employed, the multi-rate encoder includes a common prediction module for performing prediction processing on the coded data, and the multi-rate encoder further includes a plurality of single rate coding modules, each of which has a different rate.
  • the quantization parameter performs quantization processing and entropy coding on the data processed by the prediction module.
  • the multi-pass encoding process may also employ multiple encoders, and different encoders encode the encoded data according to the code rate.
  • multiple quantization parameters corresponding to multiple code rates may be configured at predetermined intervals.
  • the difference between the quantization parameters should be widened, so that the code rate output with obviously different gear positions can be generated; when the number of coding channels is large, the quantization parameters can be further grouped and refined to optimize the code rate.
  • the gears become more delicate and more selective.
  • one encoded data that matches the channel bandwidth is selected as the encoded data to be transmitted.
  • the encoded data matching the channel bandwidth can be transmitted in real time under the condition that the channel bandwidth changes in real time.
  • the to-be-transmitted encoded data may be selected according to the channel bandwidth and the delay target.
  • the delay target can also be referred to as a delay control target, indicating the desired delay.
  • the coded data to be transmitted may be one coded data that is transmitted under the channel bandwidth and whose delay is closest to the delay target.
  • the coded data to be transmitted may be one coded data that is transmitted at the channel bandwidth and whose delay is not higher than and closest to the delay target.
  • the coded data to be transmitted may be one coded data with the highest code rate whose difference between the delay transmitted in the channel bandwidth and the delay target is within a predetermined range.
  • the one-pass encoded data with the highest code rate whose difference between the delay and the delay target is within a predetermined range can be selected, and the highest-quality encoded data can be selected while satisfying the delay target.
  • the to-be-transmitted encoded data may be selected according to the channel bandwidth, the delay target, and the encoding quality. That is to say, the choice of encoded data can be combined with the requirements of channel bandwidth, delay target and coding quality.
  • the coded data to be transmitted may be the one coded data with the best coding quality within a predetermined range of the difference between the delay transmitted in the channel bandwidth and the delay target.
  • the cost function may be determined according to the channel bandwidth, the delay target, the encoding quality, and the code rate, where the encoded data to be transmitted may be one encoded data that minimizes the value of the cost function.
  • the cost function can be:
  • Cost A*
  • Cost represents the cost
  • a and B represent the weighted value
  • the context of the encoded data to be transmitted may also be used as the context of the next data to be encoded. That is to say, the context of the selected encoded data is used as the context of the next encoded data to be encoded.
  • the reconstructed data corresponding to the selected encoded data is stored and referenced in the prediction processing of the next frame.
  • the encoded data selected in the foregoing step that is, the encoded data to be transmitted, is transmitted. Since the encoded data to be transmitted is one encoded data that matches the bandwidth of the channel, transmitting the encoded data to be transmitted can reduce delay jitter.
  • the method for transmitting encoded data in the embodiment of the present invention can select one channel of encoded data that matches the channel bandwidth for transmission in the multiplexed encoded data encoded by the same code rate for the same data to be encoded, and can be maintained in real time.
  • the source channel is matched so that the encoded data transmission delay can be controlled in real time.
  • FIG. 6 shows a schematic block diagram of an apparatus 600 for transmitting encoded data in accordance with an embodiment of the present invention.
  • the apparatus 600 can perform the method of transmitting encoded data in the above-described embodiments of the present invention.
  • the device 600 can be disposed in a mobile device.
  • the apparatus 600 can include:
  • the obtaining module 610 is configured to obtain multiplexed encoded data, where the multiplexed encoded data is encoded data that is encoded according to a plurality of code rates for the same to-be-coded data;
  • the selecting module 620 is configured to select, in the multiplexed encoded data, the encoded data to be transmitted according to the current channel bandwidth of the channel, where the encoded data to be transmitted is one encoded data that matches the channel bandwidth;
  • the transmission module 630 is configured to transmit the to-be-transmitted encoded data by using the channel.
  • the apparatus for transmitting encoded data can select a channel encoded data matched with a channel bandwidth for transmission in a plurality of coded data encoded by the same code rate to be encoded, so that the source can be maintained in real time.
  • Channel matching enables control of the encoded data transmission delay in real time.
  • the selecting module 620 is specifically configured to:
  • the coded data to be transmitted is selected according to the channel bandwidth and the delay target.
  • the coded data to be transmitted is one channel coded data that is transmitted under the channel bandwidth and whose delay is closest to the delay target.
  • the coded data to be transmitted is one coded data that is transmitted at the channel bandwidth and whose delay is not higher than and closest to the delay target.
  • the coded data to be transmitted is one channel coded data with a maximum code rate whose difference between the delay transmitted in the channel bandwidth and the delay target is within a predetermined range.
  • the selecting module 620 is specifically configured to:
  • the coded data to be transmitted is selected according to the channel bandwidth, the delay target, and the coding quality.
  • the to-be-transmitted encoded data is one-channel encoded data with the best encoding quality of a difference between the delay transmitted in the channel bandwidth and the delay target within a predetermined range.
  • the to-be-transmitted encoded data is one-way encoded data that minimizes a value of a cost function, wherein the cost function is determined according to the channel bandwidth, the delay target, the encoding quality, and the code rate. .
  • the cost function is:
  • Cost A*
  • Cost represents the cost
  • a and B represent the weighted value
  • the obtaining module 610 is specifically configured to:
  • the data to be encoded is encoded according to a plurality of code rates to obtain the multiplexed encoded data.
  • the obtaining module 610 is specifically configured to:
  • the data to be encoded is subjected to prediction processing, and then quantized and entropy encoded according to various quantization parameters.
  • the plurality of quantization parameters are configured at predetermined intervals.
  • the obtaining module 610 is further configured to:
  • the context of the encoded data to be transmitted is used as the context of the next data to be encoded.
  • the obtaining module 610 may include:
  • a multi-rate encoder 601 configured to encode the data to be encoded according to multiple code rates, to obtain the Multi-channel encoded data.
  • the multi-rate encoder 601 includes:
  • a prediction module 603, configured to perform prediction processing on the data to be encoded
  • a plurality of single rate encoding modules 605 each of the plurality of single rate encoding modules 605 is configured to perform quantization processing and entropy encoding on the data processed by the prediction module 603 according to different quantization parameters.
  • the prediction module 603 is further configured to:
  • the context of the encoded data to be transmitted is used as the context of the next data to be encoded.
  • the obtaining module 610 may include:
  • a plurality of encoders 607 each of the plurality of encoders 607 is configured to encode the data to be encoded according to a code rate.
  • the data to be encoded is a frame image.
  • FIG. 9 shows a schematic block diagram of a computer system 900 in accordance with an embodiment of the present invention.
  • the computer system 900 can include a processor 910 and a memory 920.
  • the computer system 900 may also include components that are generally included in other computer systems, such as input and output devices, communication interfaces, and the like, which are not limited by the embodiments of the present invention.
  • Memory 920 is for storing computer executable instructions.
  • the memory 920 may be various kinds of memories, for example, may include a high speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk memory, which is implemented by the present invention. This example is not limited to this.
  • RAM high speed random access memory
  • non-volatile memory such as at least one disk memory
  • the processor 910 is configured to access the memory 920 and execute the computer executable instructions to perform the operations in the method of transmitting encoded data in the above-described embodiments of the present invention.
  • the processor 910 may include a microprocessor, a Field-Programmable Gate Array (FPGA), a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), etc., and is implemented by the present invention. This example is not limited to this.
  • FIG. 10 shows a schematic block diagram of a mobile device 1000 in accordance with one embodiment of the present invention.
  • the mobile device 1000 can be a drone, an unmanned boat or a robot or the like.
  • the mobile device 1000 can include:
  • a sensor 1010 configured to acquire data to be encoded
  • the apparatus 600 for transmitting encoded data according to the embodiment of the present invention described above.
  • the mobile device 1000 can be the mobile device 400 of FIG. 4, the sensor 1010 can be a sensor in the sensing system 430, and the device 600 for transmitting encoded data can be disposed in the processing system 440.
  • FIG. 11 shows a schematic block diagram of a mobile device 1100 in accordance with another embodiment of the present invention.
  • the mobile device 1100 can be a drone, an unmanned boat or a robot or the like.
  • the mobile device 1100 can include:
  • a sensor 1110 configured to acquire data to be encoded
  • the mobile device 1100 can be the mobile device 400 of FIG. 4, the sensor 1110 can be a sensor in the sensing system 430, and the computer system 1100 can be disposed in the processing system 440.
  • the apparatus, computer system, and mobile device for transmitting encoded data according to an embodiment of the present invention may correspond to an execution body of a method for transmitting encoded data according to an embodiment of the present invention, and transmit an apparatus for encoding data, a computer system, and each module in a mobile device.
  • the above and other operations and/or functions are respectively implemented in order to implement the corresponding processes of the foregoing various methods, and are not described herein for brevity.
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores program code, and the program code can be used to indicate a method for transmitting the encoded data according to the embodiment of the invention.
  • the term "and/or” is merely an association relationship describing an associated object, indicating that there may be three relationships.
  • a and/or B may indicate that A exists separately, and A and B exist simultaneously, and B cases exist alone.
  • the character "/" in this article generally indicates that the contextual object is an "or" relationship.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, or an electrical, mechanical or other form of connection.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiments of the present invention.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention contributes in essence or to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

提供了一种传输编码数据的方法、装置、计算机系统和移动设备。该方法包括:获取多路编码数据,其中,该多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;根据信道当前的信道带宽,在该多路编码数据中选择待传输编码数据,其中,该待传输编码数据为与该信道带宽匹配的一路编码数据;通过该信道传输该待传输编码数据。本发明实施例的传输编码数据的方法、装置、计算机系统和移动设备,能够实时地控制编码数据传输延时。

Description

传输编码数据的方法、装置、计算机系统和移动设备
版权申明
本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
技术领域
本发明涉及信息技术领域,并且更具体地,涉及一种传输编码数据的方法、装置、计算机系统和移动设备。
背景技术
信道带宽实时变化条件下的低延时视频传输系统是当下的热点研究和应用方向。信源可能随时间变化,信道也可能随时间变化,尤其对于无线信道,影响信道的条件更多,例如,收发设备距离、相对位置,是否存在遮挡,即时的电磁环境干扰等等。信源和信道相互独立变化,难以预测,这给信源编码和信道带宽的实时匹配造成困难。例如,当信道稳定时,突然摄像机运动,或者相机取景框内物体的大幅运动,都会导致编码出的码流的大小有突然的变化,假如码流增加两倍,意味着传输延时增加两倍;当信源稳定时,此时码流大小平稳,但是突然信道发生变化,也会造成传输延时抖动,假如带宽减小两倍,意味着传输延时也减小两倍。
现有技术中采用码率控制算法,控制一段时间(若干帧)的平均码率能够稳定在某个给定目标码率上,以保证若干帧或一段时间的帧的平均总体延时抖动范围较小。
然而,上述方案仅能控制一个帧组的平均总体延时。低延时图像传输(图传),要求每一帧的传输时间都能控制在一定范围内,避免大幅波动而导致接收端解码显示卡顿现象。因此,在信道带宽实时变化条件下,实时地控制延时成为一个亟待解决的技术问题。
发明内容
本发明实施例提供了一种传输编码数据的方法、装置、计算机系统和 移动设备,能够实时地控制编码数据传输延时。
第一方面,提供了一种传输编码数据的方法,包括:获取多路编码数据,其中,该多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;根据信道当前的信道带宽,在该多路编码数据中选择待传输编码数据,其中,该待传输编码数据为与该信道带宽匹配的一路编码数据;通过该信道传输该待传输编码数据。
第二方面,提供了传输编码数据的装置,包括:获取模块,用于获取多路编码数据,其中,该多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;选择模块,用于根据信道当前的信道带宽,在该多路编码数据中选择待传输编码数据,其中,该待传输编码数据为与该信道带宽匹配的一路编码数据;传输模块,用于通过该信道传输该待传输编码数据。
第三方面,提供了一种计算机系统,该计算机系统包括:存储器,用于存储计算机可执行指令;处理器,用于访问该存储器,并执行该计算机可执行指令,以进行如下操作:获取多路编码数据,其中,该多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;根据信道当前的信道带宽,在该多路编码数据中选择待传输编码数据,其中,该待传输编码数据为与该信道带宽匹配的一路编码数据;通过该信道传输该待传输编码数据。
第四方面,提供了一种移动设备,包括:多种传感器,用于获取多种图像数据源;以及上述第二方面的传输编码数据的装置。
第五方面,提供了一种移动设备,包括:多种传感器,用于获取多种图像数据源;以及上述第三方面的计算机系统。
第六方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述第一方面的方法。
本发明实施例的技术方案,通过在对同一待编码数据按照多种码率编码后的多路编码数据中,选择与信道带宽匹配的一路编码数据进行传输,可以实时地保持信源信道匹配,从而能够实时地控制编码数据传输延时。
附图说明
图1是应用本发明实施例的技术方案的架构图。
图2a-图2c是本发明实施例的编码器的处理架构图。
图3是本发明实施例的待编码数据的示意图。
图4是本发明实施例的移动设备的示意性架构图。
图5是本发明实施例的传输编码数据的方法的示意性流程图。
图6是本发明一个实施例的传输编码数据的装置的示意性框图。
图7是本发明另一个实施例的传输编码数据的装置的示意性框图。
图8是本发明又一个实施例的传输编码数据的装置的示意性框图。
图9是本发明实施例的计算机系统的示意性框图。
图10是本发明一个实施例的移动设备的示意性框图。
图11是本发明另一个实施例的移动设备的示意性框图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行描述。
应理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。
还应理解,本发明实施例中的公式只是一种示例,而非限制本发明实施例的范围,各公式可以进行变形,这些变形也应属于本发明保护的范围。
还应理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本发明实施例的技术方案可以用于实时地控制编码数据传输延时。例如,在信道带宽实时变化条件下,本发明实施例的技术方案可以将每一帧的传输时间控制在一定范围内。
图1是应用本发明实施例的技术方案的架构图。
如图1所示,系统100可以接收待编码数据102,对待编码数据102进行编码,产生编码数据108,并通过信道传输编码数据108。例如,系统100可以接收视频数据,压缩视频数据以产生压缩的比特流并通过信道进行传输。在一些实施例中,系统100中的部件可以由一个或多个处理器实现,该处理器可以是计算设备中的处理器,也可以是移动设备(例如无人机)中的处理器。该处理器可以为任意种类的处理器,本发明实施例对此不做限定。系统100中还可以包括一个或多个存储器。该存储器可用于存储指令和数据,例如,实现本发明实施例的技术方案的计算机可执行指令,待编码数据102、编码数据108等。该存储器可以为任意种类的存储器,本发明实施例对此也 不做限定。
在一些实施例中,系统100可以对同一待编码数据102按照多种码率编码,得到多路编码数据108,并根据信道当前的信道带宽,在多路编码数据108中选择与信道带宽匹配的一路编码数据108进行传输。
在一些实施例中,系统100中可以包括由处理器和存储器实现的编码器。编码器用于接收待编码数据102,编码待编码数据102,并提供编码数据108。在一些实施例中,编码器可以为多速率编码器,多速率编码器可以对待编码数据102按照多种码率编码,得到多路编码数据108。在一些实施例中,系统100中可以包括多个编码器,多个编码器可以对待编码数据102按照不种码率编码,得到多路编码数据108。
待编码数据102可以包括文本,图像,图形对象,动画序列,音频,视频,或者任何需要编码的其他数据。在一些情况下,待编码数据102可以包括来自传感器的传感数据,该传感器可以为视觉传感器(例如,相机、红外传感器),麦克风,近场传感器(例如,超声波传感器、雷达),位置传感器,温度传感器,触摸传感器等。在一些情况下,待编码数据102可以包括来自用户的信息,例如,生物信息,该生物信息可以包括面部特征,指纹扫描,视网膜扫描,嗓音记录,DNA采样等。
编码对于高效和/或安全的传输或存储数据是必需的。对待编码数据102的编码可以包括数据压缩,加密,纠错编码,格式转换等。例如,对多媒体数据(例如视频或音频)压缩可以减少在网络中传输的比特数量。敏感数据,例如金融信息和个人标识信息,在传输和存储前可以加密以保护机密和/或隐私。
任何合适的编码技术都可以用于编码待编码数据102。编码类型依赖于被编码的数据和具体的编码需求。
在一些实施例中,编码器可以实现一种或多种不同的编解码器。每种编解码器可以包括实现不同编码算法的代码,指令或计算机程序。基于各种因素,包括待编码数据102的类型和/或来源,编码数据的接收实体,可用的计算资源,网络环境,商业环境,规则和标准等,可以选择一种合适的编码算法编码给定的待编码数据102。
例如,编码器可以被配置为编码一系列视频帧。编码每个帧中的数据可以采用一系列步骤。在一些实施例中,编码步骤可以包括预测、变换、量 化、熵编码等处理步骤。
图2a示出了本发明实施例的编码器的处理架构图。如图2a所示,预测处理可以包括帧内预测和帧间预测。通过预测处理,可以得到数据单元(例如像素点)对应的残差,其中,在对某一像素点进行预测时,可以从存储的上下文中获取参考像素点重建后得到的像素,按照参考像素点重建后得到的像素与该像素点的像素,得到该像素点对应的像素残差。像素残差通过变换、量化后再进行熵编码。在量化处理时,可以通过对量化参数的控制,实现对码率的控制。在一些实施例中,可以按照多种量化参数进行量化处理,从而可以实现多种码率编码。对某一像素点对应的量化处理后的像素残差还可以进行反量化反变换处理,再进行重建处理,得到该像素点重建后的像素,并将该像素点重建后的像素进行存储,以便于在该像素点作为参考像素点时,利用该像素点重建后的像素获取其他像素点对应的像素残差。
量化参数可以包括量化步长,表示量化步长或者与量化步长相关的值,例如,H.264或者类似的编码器中的量化参数(Quantization Parameter,QP),或者,量化矩阵或其参考矩阵等。
在一些实施例中,可以采用多速率编码器对同一待编码数据按照多种码率编码,得到多路编码数据。如图2b所示,多速率编码器中不同单速率编码模块之间可共享区域201中的模块,最大限度共享预测和模式选择中相同的运算。此部分运算复杂度和运算资源消耗占编码器总体的70%左右。每个单速率编码模块可以包括区域202中的模块,并可根据实际需求,提供多路不同码率的编码数据。采用这种结构的多速率编码器,可以节省资源消耗。
在一些实施例中,如图2c所示,可以根据信道当前的信道带宽,在多个单速率编码模块提供的多路编码数据中选择与信道带宽匹配的一路编码数据进行传输;还可以将所选择的那一路编码数据的上下文作为下一待编码数据编码的上下文。例如,将选择的那一路编码数据对应的重建数据存储,在下一帧的预测处理时进行参考。
图3示出了本发明实施例的待编码数据的示意图。
如图3所示,待编码数据302可以包括多个帧304。例如,多个帧304可以表示视频流中的连续的图像帧。每个帧304可以包括一个或多个条带306。每个条带306可以包括一个或多个宏块308。每个宏块308可以包括一个或多个块310。每个块310可以包括一个或多个像素312。每个像素312 可以包括一个或多个数据集,对应于一个或多个数据部分,例如,亮度数据部分和色度数据部分。数据单元可以为帧,条带,宏块,块,像素或以上任一种的组。在不同的实施例中,数据单元的大小可以变化。作为举例,一个帧304可以包括100个条带306,每个条带306可以包括10个宏块308,每个宏块308可以包括4个(例如,2x2)块310,每个块310可以包括64个(例如,8x8)像素312。
在一些设计中,移动设备,也可以称为可移动设备,可以采用本发明实施例的技术方案传输编码数据。该移动设备可以是无人机、无人驾驶船或机器人等,但本发明实施例对此并不限定。
图4是本发明实施例的移动设备400的示意性架构图。
如图4所示,移动设备400可以包括动力系统410、控制系统420、传感系统430和处理系统440。
动力系统410用于为该移动设备400提供动力。
以无人机为例,无人机的动力系统可以包括电子调速器(简称为电调)、螺旋桨以及与螺旋桨相对应的电机。电机连接在电子调速器与螺旋桨之间,电机和螺旋桨设置在对应的机臂上;电子调速器用于接收控制系统产生的驱动信号,并根据驱动信号提供驱动电流给电机,以控制电机的转速。电机用于驱动螺旋桨旋转,从而为无人机的飞行提供动力。
传感系统430可以用于测量移动设备400的姿态信息,即移动设备400在空间的位置信息和状态信息,例如,三维位置、三维角度、三维速度、三维加速度和三维角速度等。传感系统430例如可以包括陀螺仪、电子罗盘、惯性测量单元(Inertial Measurement Unit,IMU)、视觉传感器、全球定位系统(Global Positioning System,GPS)、气压计、空速计等传感器中的至少一种。
在本发明实施例中,传感系统430还用于采集待编码数据,即传感系统430包括用于采集待编码数据的传感器,例如相机等。
控制系统420用于控制移动设备400的移动。控制系统420可以按照预先设置的程序指令对移动设备400进行控制。例如,控制系统420可以根据传感系统430测量的移动设备400的姿态信息控制移动设备400的移动。控制系统420也可以根据来自遥控器的控制信号对移动设备400进行控制。
处理系统440可以处理传感系统430采集的待编码数据。例如,处理 系统440可以对同一待编码数据按照多种码率编码,并选择与信道带宽匹配的一路编码数据进行传输。
处理系统440可以为图1中的系统100,或者,处理系统440可以包括图1中的系统100。
应理解,上述对于移动设备400的各组成部件的划分和命名仅仅是示例性的,并不应理解为对本发明实施例的限制。
还应理解,移动设备400还可以包括图4中未示出的其他部件,本发明实施例对此并不限定。
图5示出了本发明实施例的传输编码数据的方法500的示意性流程图。该方法500可以由图1所示的系统100执行;或者由图4所示的移动设备400执行,具体地,可以由图4中的处理系统440执行。
510,获取多路编码数据,其中,该多路编码数据为对同一待编码数据按照多种码率编码后的编码数据。
在本发明实施例中,针对同一待编码数据获取不同码率的多路编码数据。即,对同一待编码数据按照多种码率编码,得到多路编码数据。应理解,编码操作与后续的操作可以由同一个设备实施,也可以由不同的设备实施,例如,前一个设备进行编码操作,并将多路编码数据发送给后一个设备,由后一个设备进行后续操作。
可选地,该待编码数据可以为一帧图像。也就是说,对每一帧图像按照多种码率编码,得到多路编码数据。
可选地,按照不同码率编码的过程中,可以先对该待编码数据进行预测处理,再按照多种量化参数进行量化处理和熵编码。
具体而言,多路编码流程可以共用预测处理的相关模块,在后续量化处理和熵编码处理时再分为多路,分别采用不同的模块。例如,可以采用多速率编码器,多速率编码器包括一个共用的预测模块,用于对待编码数据进行预测处理;多速率编码器还包括多个单速率编码模块,每个单速率编码模块按照不同量化参数对预测模块处理后的数据进行量化处理和熵编码。通过共用预测模块,可以降低运算复杂度和运算资源消耗。
应理解,多路编码流程也可以采用多个编码器,不同编码器对待编码数据按照不种码率编码。
可选地,多种码率对应的多种量化参数可以按照预定间隔配置。例如, 当编码路数较少时,量化参数间应拉开差距,这样可以产生有明显差别档位的码率输出;当编码路数较多时,量化参数可以再分组进行细化优化,这样把码率档位变得更细腻,可选择性更丰富。
520,根据信道当前的信道带宽,在该多路编码数据中选择待传输编码数据,其中,该待传输编码数据为与该信道带宽匹配的一路编码数据。
具体而言,在获取多路编码数据后,选择与信道带宽匹配的一路编码数据作为待传输编码数据。这样,在信道带宽实时变化条件下,可以实时地传输与信道带宽匹配的编码数据。
可选地,在本发明一个实施例中,可以根据该信道带宽和延时目标选择该待传输编码数据。
延时目标也可以称为延时控制目标,表示期望的延时。
可选地,该待传输编码数据可以为在该信道带宽下传输的延时最接近该延时目标的一路编码数据。
可选地,该待传输编码数据可以为在该信道带宽下传输的延时不高于且最接近该延时目标的一路编码数据。
可选地,该待传输编码数据可以为在该信道带宽下传输的延时与该延时目标的差值在预定范围内的码率最大的一路编码数据。
码率越大,编码质量越高。选择延时与该延时目标的差值在预定范围内的码率最大的一路编码数据,能够在满足延时目标的情况下,选择质量最高的编码数据。
可选地,在本发明一个实施例中,可以根据该信道带宽、延时目标和编码质量选择该待传输编码数据。也就是说,编码数据的选择可以结合信道带宽、延时目标和编码质量的要求。
可选地,该待传输编码数据可以为在该信道带宽下传输的延时与该延时目标的差值在预定范围内的编码质量最好的一路编码数据。
可选地,可以根据该信道带宽、该延时目标、编码质量和码率确定代价函数,该待传输编码数据可以为使得代价函数的值最小的一路编码数据。
例如,该代价函数可以为:
Cost=A*|(码率/信道带宽—延时目标)|+B*编码质量,
其中,Cost表示代价,A和B表示加权值。
可以根据不同场景需求,通过调节A和B的值来控制更偏向质量, 还是更偏向延时控制。
应理解,以上只是选择编码数据的一些优选的实施方式,本发明实施例对此并不限定。
可选地,还可以将该待传输编码数据的上下文作为下一待编码数据编码的上下文。也就是说,将所选择的那一路编码数据的上下文作为下一待编码数据编码的上下文。例如,将选择的那一路编码数据对应的重建数据存储,在下一帧的预测处理时进行参考。
530,通过该信道传输该待传输编码数据。
在该步骤中,将前述步骤所选择的编码数据,即待传输编码数据,传输出去。由于该待传输编码数据为与该信道带宽匹配的一路编码数据,因此传输该待传输编码数据能够降低延时抖动。
因此,本发明实施例的传输编码数据的方法,通过在对同一待编码数据按照多种码率编码后的多路编码数据中,选择与信道带宽匹配的一路编码数据进行传输,可以实时地保持信源信道匹配,从而能够实时地控制编码数据传输延时。
上文中详细描述了本发明实施例的传输编码数据的方法,下面将描述本发明实施例的传输编码数据的装置、计算机系统和移动设备。
图6示出了本发明实施例的传输编码数据的装置600的示意性框图。该装置600可以执行上述本发明实施例的传输编码数据的方法。该装置600可以设置于移动设备中。
如图6所示,该装置600可以包括:
获取模块610,用于获取多路编码数据,其中,该多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;
选择模块620,用于根据信道当前的信道带宽,在该多路编码数据中选择待传输编码数据,其中,该待传输编码数据为与该信道带宽匹配的一路编码数据;
传输模块630,用于通过该信道传输该待传输编码数据。
本发明实施例的传输编码数据的装置,通过在对同一待编码数据按照多种码率编码后的多路编码数据中,选择与信道带宽匹配的一路编码数据进行传输,可以实时地保持信源信道匹配,从而能够实时地控制编码数据传输延时。
可选地,在本发明一个实施例中,该选择模块620具体用于:
根据该信道带宽和延时目标选择该待传输编码数据。
可选地,在本发明一个实施例中,该待传输编码数据为在该信道带宽下传输的延时最接近该延时目标的一路编码数据。
可选地,在本发明一个实施例中,该待传输编码数据为在该信道带宽下传输的延时不高于且最接近该延时目标的一路编码数据。
可选地,在本发明一个实施例中,该待传输编码数据为在该信道带宽下传输的延时与该延时目标的差值在预定范围内的码率最大的一路编码数据。
可选地,在本发明一个实施例中,该选择模块620具体用于:
根据该信道带宽、延时目标和编码质量选择该待传输编码数据。
可选地,在本发明一个实施例中,该待传输编码数据为在该信道带宽下传输的延时与该延时目标的差值在预定范围内的编码质量最好的一路编码数据。
可选地,在本发明一个实施例中,该待传输编码数据为使得代价函数的值最小的一路编码数据,其中,该代价函数根据该信道带宽、该延时目标、编码质量和码率确定。
可选地,在本发明一个实施例中,该代价函数为:
Cost=A*|(码率/信道带宽—延时目标)|+B*编码质量,
其中,Cost表示代价,A和B表示加权值。
可选地,在本发明一个实施例中,该获取模块610具体用于:
对该待编码数据按照多种码率编码,得到该多路编码数据。
可选地,在本发明一个实施例中,该获取模块610具体用于:
对该待编码数据进行预测处理,再按照多种量化参数进行量化处理和熵编码。
可选地,在本发明一个实施例中,该多种量化参数按照预定间隔配置。
可选地,在本发明一个实施例中,该获取模块610还用于:
将该待传输编码数据的上下文作为下一待编码数据编码的上下文。
可选地,在本发明一个实施例中,如图7所示,该获取模块610可以包括:
多速率编码器601,用于对该待编码数据按照多种码率编码,得到该 多路编码数据。
可选地,在本发明一个实施例中,如图7所示,该多速率编码器601包括:
预测模块603,用于对该待编码数据进行预测处理;
多个单速率编码模块605,该多个单速率编码模块605中每个单速率编码模块605用于按照不同量化参数对该预测模块603处理后的数据进行量化处理和熵编码。
可选地,在本发明一个实施例中,该预测模块603还用于:
将该待传输编码数据的上下文作为下一待编码数据编码的上下文。
可选地,在本发明一个实施例中,如图8所示,该获取模块610可以包括:
多个编码器607,该多个编码器607中每个编码器607用于对该待编码数据按照不种码率编码。
可选地,在本发明一个实施例中,该待编码数据为一帧图像。
图9示出了本发明实施例的计算机系统900的示意性框图。
如图9所示,该计算机系统900可以包括处理器910和存储器920。
应理解,该计算机系统900还可以包括其他计算机系统中通常所包括的部件,例如,输入输出设备、通信接口等,本发明实施例对此并不限定。
存储器920用于存储计算机可执行指令。
存储器920可以是各种种类的存储器,例如可以包括高速随机存取存储器(Random Access Memory,RAM),还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器,本发明实施例对此并不限定。
处理器910用于访问该存储器920,并执行该计算机可执行指令,以进行上述本发明实施例的传输编码数据的方法中的操作。
处理器910可以包括微处理器,现场可编程门阵列(Field-Programmable Gate Array,FPGA),中央处理器(Central Processing unit,CPU),图形处理器(Graphics Processing Unit,GPU)等,本发明实施例对此并不限定。
图10示出了本发明一个实施例的移动设备1000的示意性框图。该移动设备1000可以为无人机、无人驾驶船或机器人等。
如图10所示,该移动设备1000可以包括:
传感器1010,用于获取待编码数据;以及
上述本发明实施例的传输编码数据的装置600。
例如,该移动设备1000可以为图4中的移动设备400,传感器1010可以为传感系统430中的传感器,传输编码数据的装置600可以设置于处理系统440中。
图11示出了本发明另一个实施例的移动设备1100的示意性框图。该移动设备1100可以为无人机、无人驾驶船或机器人等。
如图11所示,该移动设备1100可以包括:
传感器1110,用于获取待编码数据;以及
上述本发明实施例的计算机系统900。
例如,该移动设备1100可以为图4中的移动设备400,传感器1110可以为传感系统430中的传感器,计算机系统1100可以设置于处理系统440中。
本发明实施例的传输编码数据的装置、计算机系统和移动设备可对应于本发明实施例的传输编码数据的方法的执行主体,并且传输编码数据的装置、计算机系统和移动设备中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述本发明实施例的传输编码数据的方法。
应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为 超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范 围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (35)

  1. 一种传输编码数据的方法,其特征在于,包括:
    获取多路编码数据,其中,所述多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;
    根据信道当前的信道带宽,在所述多路编码数据中选择待传输编码数据,其中,所述待传输编码数据为与所述信道带宽匹配的一路编码数据;
    通过所述信道传输所述待传输编码数据。
  2. 根据权利要求1所述的方法,其特征在于,所述根据信道当前的信道带宽,在所述多路编码数据中选择待传输编码数据,包括:
    根据所述信道带宽和延时目标选择所述待传输编码数据。
  3. 根据权利要求2所述的方法,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时最接近所述延时目标的一路编码数据。
  4. 根据权利要求2所述的方法,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时不高于且最接近所述延时目标的一路编码数据。
  5. 根据权利要求2所述的方法,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时与所述延时目标的差值在预定范围内的码率最大的一路编码数据。
  6. 根据权利要求1所述的方法,其特征在于,所述根据信道当前的信道带宽,在所述多路编码数据中选择待传输编码数据,包括:
    根据所述信道带宽、延时目标和编码质量选择所述待传输编码数据。
  7. 根据权利要求6所述的方法,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时与所述延时目标的差值在预定范围内的编码质量最好的一路编码数据。
  8. 根据权利要求6所述的方法,其特征在于,所述待传输编码数据为使得代价函数的值最小的一路编码数据,其中,所述代价函数根据所述信道带宽、所述延时目标、编码质量和码率确定。
  9. 根据权利要求8所述的方法,其特征在于,所述代价函数为:
    Cost=A*|(码率/信道带宽—延时目标)|+B*编码质量,
    其中,Cost表示代价,A和B表示加权值。
  10. 根据权利要求1至9中任一项所述的方法,其特征在于,所述获取 多路编码数据,包括:
    对所述待编码数据按照多种码率编码,得到所述多路编码数据。
  11. 根据权利要求10所述的方法,其特征在于,所述对所述待编码数据按照多种码率编码,包括:
    对所述待编码数据进行预测处理,再按照多种量化参数进行量化处理和熵编码。
  12. 根据权利要求11所述的方法,其特征在于,所述多种量化参数按照预定间隔配置。
  13. 根据权利要求10至12中任一项所述的方法,其特征在于,所述方法还包括:
    将所述待传输编码数据的上下文作为下一待编码数据编码的上下文。
  14. 根据权利要求1至13中任一项所述的方法,其特征在于,所述待编码数据为一帧图像。
  15. 一种传输编码数据的装置,其特征在于,包括:
    获取模块,用于获取多路编码数据,其中,所述多路编码数据为对同一待编码数据按照多种码率编码后的编码数据;
    选择模块,用于根据信道当前的信道带宽,在所述多路编码数据中选择待传输编码数据,其中,所述待传输编码数据为与所述信道带宽匹配的一路编码数据;
    传输模块,用于通过所述信道传输所述待传输编码数据。
  16. 根据权利要求15所述的装置,其特征在于,所述选择模块具体用于:
    根据所述信道带宽和延时目标选择所述待传输编码数据。
  17. 根据权利要求16所述的装置,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时最接近所述延时目标的一路编码数据。
  18. 根据权利要求16所述的装置,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时不高于且最接近所述延时目标的一路编码数据。
  19. 根据权利要求16所述的装置,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时与所述延时目标的差值在预定范围内的码率最大的一路编码数据。
  20. 根据权利要求15所述的装置,其特征在于,所述选择模块具体用于:
    根据所述信道带宽、延时目标和编码质量选择所述待传输编码数据。
  21. 根据权利要求20所述的装置,其特征在于,所述待传输编码数据为在所述信道带宽下传输的延时与所述延时目标的差值在预定范围内的编码质量最好的一路编码数据。
  22. 根据权利要求20所述的装置,其特征在于,所述待传输编码数据为使得代价函数的值最小的一路编码数据,其中,所述代价函数根据所述信道带宽、所述延时目标、编码质量和码率确定。
  23. 根据权利要求22所述的装置,其特征在于,所述代价函数为:
    Cost=A*|(码率/信道带宽—延时目标)|+B*编码质量,
    其中,Cost表示代价,A和B表示加权值。
  24. 根据权利要求15至23中任一项所述的装置,其特征在于,所述获取模块具体用于:
    对所述待编码数据按照多种码率编码,得到所述多路编码数据。
  25. 根据权利要求24所述的装置,其特征在于,所述获取模块具体用于:
    对所述待编码数据进行预测处理,再按照多种量化参数进行量化处理和熵编码。
  26. 根据权利要求25所述的装置,其特征在于,所述多种量化参数按照预定间隔配置。
  27. 根据权利要求24至26中任一项所述的装置,其特征在于,所述获取模块还用于:
    将所述待传输编码数据的上下文作为下一待编码数据编码的上下文。
  28. 根据权利要求15至23中任一项所述的装置,其特征在于,所述获取模块包括:
    多速率编码器,用于对所述待编码数据按照多种码率编码,得到所述多路编码数据。
  29. 根据权利要求28所述的装置,其特征在于,所述多速率编码器包括:
    预测模块,用于对所述待编码数据进行预测处理;
    多个单速率编码模块,所述多个单速率编码模块中每个单速率编码模块用于按照不同量化参数对所述预测模块处理后的数据进行量化处理和熵编码。
  30. 根据权利要求29所述的装置,其特征在于,所述预测模块还用于:
    将所述待传输编码数据的上下文作为下一待编码数据编码的上下文。
  31. 根据权利要求15至23中任一项所述的装置,其特征在于,所述获取模块包括:
    多个编码器,所述多个编码器中每个编码器用于对所述待编码数据按照不种码率编码。
  32. 根据权利要求15至31中任一项所述的装置,其特征在于,所述待编码数据为一帧图像。
  33. 一种计算机系统,其特征在于,包括:
    存储器,用于存储计算机可执行指令;
    处理器,用于访问所述存储器,并执行所述计算机可执行指令,以进行根据权利要求1至14中任一项所述的方法中的操作。
  34. 一种移动设备,其特征在于,包括:
    传感器,用于获取待编码数据;以及
    根据权利要求15至32中任一项所述的传输编码数据的装置。
  35. 一种移动设备,其特征在于,包括:
    传感器,用于获取待编码数据;以及
    根据权利要求33所述的计算机系统。
PCT/CN2017/071491 2017-01-18 2017-01-18 传输编码数据的方法、装置、计算机系统和移动设备 WO2018132964A1 (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN201780000112.9A CN107078852B (zh) 2017-01-18 2017-01-18 传输编码数据的方法、装置、计算机系统和移动设备
PCT/CN2017/071491 WO2018132964A1 (zh) 2017-01-18 2017-01-18 传输编码数据的方法、装置、计算机系统和移动设备
EP18741391.9A EP3571840B1 (en) 2017-01-18 2018-01-12 Rate control
PCT/CN2018/072444 WO2018133734A1 (en) 2017-01-18 2018-01-12 Rate control
CN201880006102.0A CN110169066A (zh) 2017-01-18 2018-01-12 速率控制
JP2019537365A JP6862633B2 (ja) 2017-01-18 2018-01-12 レート制御方法及びレート制御装置
US16/511,839 US20190342551A1 (en) 2017-01-18 2019-07-15 Rate control
US16/514,559 US11159796B2 (en) 2017-01-18 2019-07-17 Data transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/071491 WO2018132964A1 (zh) 2017-01-18 2017-01-18 传输编码数据的方法、装置、计算机系统和移动设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/514,559 Continuation US11159796B2 (en) 2017-01-18 2019-07-17 Data transmission

Publications (1)

Publication Number Publication Date
WO2018132964A1 true WO2018132964A1 (zh) 2018-07-26

Family

ID=59613570

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/CN2017/071491 WO2018132964A1 (zh) 2017-01-18 2017-01-18 传输编码数据的方法、装置、计算机系统和移动设备
PCT/CN2018/072444 WO2018133734A1 (en) 2017-01-18 2018-01-12 Rate control

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/072444 WO2018133734A1 (en) 2017-01-18 2018-01-12 Rate control

Country Status (5)

Country Link
US (2) US20190342551A1 (zh)
EP (1) EP3571840B1 (zh)
JP (1) JP6862633B2 (zh)
CN (2) CN107078852B (zh)
WO (2) WO2018132964A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3306922A1 (en) * 2016-10-05 2018-04-11 Thomson Licensing Method and apparatus for encoding a picture using rate-distortion based block splitting
CN107078852B (zh) * 2017-01-18 2019-03-08 深圳市大疆创新科技有限公司 传输编码数据的方法、装置、计算机系统和移动设备
CN112672152A (zh) * 2017-09-06 2021-04-16 深圳市大疆创新科技有限公司 无线数据传输方法和设备
WO2019047058A1 (zh) * 2017-09-06 2019-03-14 深圳市大疆创新科技有限公司 无线数据传输方法和设备
WO2019055886A1 (en) * 2017-09-18 2019-03-21 Intel IP Corporation APPARATUS, SYSTEM AND METHOD FOR VIDEO CODING
WO2019119175A1 (zh) * 2017-12-18 2019-06-27 深圳市大疆创新科技有限公司 码率控制方法、码率控制装置和无线通信设备
CN108986829B (zh) * 2018-09-04 2020-12-15 北京猿力未来科技有限公司 数据发送方法、装置、设备及存储介质
EP3857869A4 (en) * 2018-09-28 2022-07-13 INTEL Corporation TRANSPORT ORDERED VIDEO CODING
CN109168030B (zh) * 2018-10-12 2021-03-26 中南大学 一种视频转码方法、设备及其存储介质
US11368692B2 (en) * 2018-10-31 2022-06-21 Ati Technologies Ulc Content adaptive quantization strength and bitrate modeling
US11355139B2 (en) * 2020-09-22 2022-06-07 International Business Machines Corporation Real-time vs non-real time audio streaming
US11838796B2 (en) * 2021-08-18 2023-12-05 Corning Research & Development Corporation Compression and decompression between elements of a wireless communications system (WCS)
CN113660488B (zh) * 2021-10-18 2022-02-11 腾讯科技(深圳)有限公司 对多媒体数据进行流控及流控模型训练方法、以及装置
CN117615141A (zh) * 2023-11-23 2024-02-27 镕铭微电子(济南)有限公司 视频的编码方法、系统、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843351A (zh) * 2012-03-31 2012-12-26 华为技术有限公司 一种流媒体业务的处理方法、流媒体服务器及系统
CN103379362A (zh) * 2012-04-24 2013-10-30 腾讯科技(深圳)有限公司 视频点播方法和系统
US20140334553A1 (en) * 2013-05-07 2014-11-13 Magnum Semiconductor, Inc. Methods and apparatuses including a statistical multiplexer with bitrate smoothing
CN105898211A (zh) * 2015-12-21 2016-08-24 乐视致新电子科技(天津)有限公司 一种处理多媒体信息的方法及装置

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3265696B2 (ja) * 1993-04-01 2002-03-11 松下電器産業株式会社 画像圧縮符号化装置
JPH07212757A (ja) * 1994-01-24 1995-08-11 Toshiba Corp 画像圧縮符号化装置
JP3149673B2 (ja) * 1994-03-25 2001-03-26 松下電器産業株式会社 映像符号化装置、映像符号化方法、映像再生装置及び光ディスク
US6366614B1 (en) * 1996-10-11 2002-04-02 Qualcomm Inc. Adaptive rate control for digital video compression
US7062445B2 (en) 2001-01-26 2006-06-13 Microsoft Corporation Quantization loop with heuristic approach
US7062429B2 (en) * 2001-09-07 2006-06-13 Agere Systems Inc. Distortion-based method and apparatus for buffer control in a communication system
US9031128B2 (en) * 2001-12-31 2015-05-12 Stmicroelectronics Asia Pacific Pte Ltd. Video encoding
US20070013561A1 (en) 2005-01-20 2007-01-18 Qian Xu Signal coding
US20090225829A2 (en) 2005-07-06 2009-09-10 Do-Kyoung Kwon Method and apparatus for operational frame-layerrate control in video encoder
US7539612B2 (en) 2005-07-15 2009-05-26 Microsoft Corporation Coding and decoding scale factor information
US8077775B2 (en) 2006-05-12 2011-12-13 Freescale Semiconductor, Inc. System and method of adaptive rate control for a video encoder
KR101329860B1 (ko) * 2006-09-28 2013-11-14 톰슨 라이센싱 효과적인 레이트 제어 및 비디오 인코딩 품질의 향상을 위한 ρ-도메인 프레임 레벨 비트 할당 방법
JP2008283560A (ja) * 2007-05-11 2008-11-20 Canon Inc 画像処理装置およびその方法
EP2286595A1 (en) * 2008-06-16 2011-02-23 Dolby Laboratories Licensing Corporation Rate control model adaptation based on slice dependencies for video coding
EP2321969A4 (en) * 2008-09-09 2012-05-09 Onmobile Global Ltd METHOD AND APPARATUS FOR VIDEO TRANSMISSION
JP5257215B2 (ja) * 2009-04-16 2013-08-07 ソニー株式会社 画像符号化装置と画像符号化方法
CN102036062B (zh) * 2009-09-29 2012-12-19 华为技术有限公司 视频编码方法、装置及电子设备
CN101800885A (zh) * 2010-02-26 2010-08-11 北京新岸线网络技术有限公司 一种视频数据分发方法及系统
CN101888542B (zh) * 2010-06-11 2013-01-09 北京数码视讯科技股份有限公司 视频转码的帧级码率控制方法及转码器
US8644383B2 (en) * 2011-03-10 2014-02-04 Microsoft Corporation Mean absolute difference prediction for video encoding rate control
EP2544450B1 (en) * 2011-07-07 2016-04-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Model parameter estimation for a rate- or distortion-quantization model function
US20130322516A1 (en) * 2012-05-31 2013-12-05 Broadcom Corporation Systems and methods for generating multiple bitrate streams using a single encoding engine
CN102970540B (zh) * 2012-11-21 2016-03-02 宁波大学 基于关键帧码率-量化模型的多视点视频码率控制方法
US9560361B2 (en) 2012-12-05 2017-01-31 Vixs Systems Inc. Adaptive single-field/dual-field video encoding
US9621902B2 (en) * 2013-02-28 2017-04-11 Google Inc. Multi-stream optimization
US20140328384A1 (en) * 2013-05-02 2014-11-06 Magnum Semiconductor, Inc. Methods and apparatuses including a statistical multiplexer with global rate control
EP2879339A1 (en) * 2013-11-27 2015-06-03 Thomson Licensing Method for distributing available bandwidth of a network amongst ongoing traffic sessions run by devices of the network, corresponding device.
KR102249819B1 (ko) 2014-05-02 2021-05-10 삼성전자주식회사 시스템 온 칩과 이를 포함하는 데이터 처리 시스템
CN105208390B (zh) * 2014-06-30 2018-07-20 杭州海康威视数字技术股份有限公司 视频编码的码率控制方法及其系统
US10171807B2 (en) * 2015-01-29 2019-01-01 Arris Enterprises Llc Picture-level QP rate control for HEVC encoding
US9749178B2 (en) * 2015-09-18 2017-08-29 Whatsapp Inc. Techniques to dynamically configure target bitrate for streaming network connections
US20170094301A1 (en) * 2015-09-28 2017-03-30 Cybrook Inc. Initial Bandwidth Estimation For Real-time Video Transmission
CN106170089B (zh) * 2016-08-25 2020-05-22 上海交通大学 基于h.265的多路编码方法
US10542262B2 (en) * 2016-11-15 2020-01-21 City University Of Hong Kong Systems and methods for rate control in video coding using joint machine learning and game theory
CN107078852B (zh) * 2017-01-18 2019-03-08 深圳市大疆创新科技有限公司 传输编码数据的方法、装置、计算机系统和移动设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843351A (zh) * 2012-03-31 2012-12-26 华为技术有限公司 一种流媒体业务的处理方法、流媒体服务器及系统
CN103379362A (zh) * 2012-04-24 2013-10-30 腾讯科技(深圳)有限公司 视频点播方法和系统
US20140334553A1 (en) * 2013-05-07 2014-11-13 Magnum Semiconductor, Inc. Methods and apparatuses including a statistical multiplexer with bitrate smoothing
CN105898211A (zh) * 2015-12-21 2016-08-24 乐视致新电子科技(天津)有限公司 一种处理多媒体信息的方法及装置

Also Published As

Publication number Publication date
CN107078852A (zh) 2017-08-18
WO2018133734A1 (en) 2018-07-26
EP3571840A4 (en) 2020-01-22
US11159796B2 (en) 2021-10-26
JP6862633B2 (ja) 2021-04-21
EP3571840A1 (en) 2019-11-27
CN110169066A (zh) 2019-08-23
CN107078852B (zh) 2019-03-08
EP3571840B1 (en) 2021-09-15
US20190342551A1 (en) 2019-11-07
US20190342771A1 (en) 2019-11-07
JP2020505830A (ja) 2020-02-20

Similar Documents

Publication Publication Date Title
WO2018132964A1 (zh) 传输编码数据的方法、装置、计算机系统和移动设备
US11064110B2 (en) Warp processing for image capture
US11765396B2 (en) Apparatus and methods for video compression
US20200288105A1 (en) Selective culling of multi-dimensional data sets
US11973979B2 (en) Image compression for digital reality
KR20210102482A (ko) 비디오 기반 포인트 클라우드 압축 코덱의 이미지 패딩 개선을 위한 방법 및 장치
JP7043148B2 (ja) 適応型イントラ最確モードを用いた全方位映像符号化のための方法および装置
US10893261B2 (en) Positional zero latency
US10244167B2 (en) Apparatus and methods for image encoding using spatially weighted encoding quality parameters
KR20200044652A (ko) 영상의 주관적 품질을 평가하는 방법 및 장치
US10743002B2 (en) Sequential in-place blocking transposition for image signal processing
US20180213202A1 (en) Generating a Video Stream from a 360-Degree Video
AU2018280337B2 (en) Digital content stream compression
US11653088B2 (en) Three-dimensional noise reduction
WO2018107404A1 (en) System and method for supporting video bit stream switching
EP3731528A1 (en) Image processing device, content processing device, content processing system, and image processing method
Aykut et al. Realtime 3D 360-degree telepresence with deep-learning-based head-motion prediction
WO2017205597A1 (en) Image signal processing-based encoding hints for motion estimation
CN114616834B (zh) 用于视频通话的基于面容的帧封装
US20180211413A1 (en) Image signal processing using sub-three-dimensional look-up tables
JP2017010119A (ja) 情報処理装置、画像処理装置、それらの制御方法及びプログラム
WO2019127100A1 (zh) 视频编码的方法、装置和计算机系统
WO2020019279A1 (zh) 视频压缩的方法、装置、计算机系统和可移动设备
EP3349463A1 (en) Method and apparatus for coding/decoding a picture of an omnidirectional video
EP3349462A1 (en) Method and apparatus for coding/decoding a picture of an omnidirectional video

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: 17893360

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17893360

Country of ref document: EP

Kind code of ref document: A1