WO2017005096A2 - 一种多路视频流的编码方法及装置 - Google Patents

一种多路视频流的编码方法及装置 Download PDF

Info

Publication number
WO2017005096A2
WO2017005096A2 PCT/CN2016/086872 CN2016086872W WO2017005096A2 WO 2017005096 A2 WO2017005096 A2 WO 2017005096A2 CN 2016086872 W CN2016086872 W CN 2016086872W WO 2017005096 A2 WO2017005096 A2 WO 2017005096A2
Authority
WO
WIPO (PCT)
Prior art keywords
video
encoding
stream
encoded
composite
Prior art date
Application number
PCT/CN2016/086872
Other languages
English (en)
French (fr)
Other versions
WO2017005096A3 (zh
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 阿里巴巴集团控股有限公司
Publication of WO2017005096A2 publication Critical patent/WO2017005096A2/zh
Publication of WO2017005096A3 publication Critical patent/WO2017005096A3/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream

Definitions

  • the present application relates to the field of communications technologies, and in particular, to a method and an apparatus for encoding a multiple video stream.
  • the sender user shares the local document and video with the recipient and causes the document and video to be displayed simultaneously on the recipient's screen.
  • the document signal and the video signal need to be separately encoded to generate two code streams, and the receiver receives the two code streams and then separately decodes them.
  • the display processing of the display screen is performed according to a predetermined layout manner.
  • Prior art implementations are based on multiplexing multiple coded code streams, due to various video compression standards based on industry traditional differential pulse code modulation (DPCM), including coding semantic structures of different types of load head units, Multiple coded code streams mean more payload overhead.
  • DPCM differential pulse code modulation
  • An object of the present application is to provide a method and apparatus for encoding a multi-channel video stream, which improves the compression ratio when encoding a multi-channel video stream.
  • an encoding method of a multi-channel video stream includes:
  • the composite video stream is encoded to generate a video stream.
  • an encoding apparatus for a multi-channel video stream comprising:
  • An obtaining unit configured to acquire a multiple video stream to be encoded
  • a synthesizing unit configured to synthesize video represented by the multiple video streams to generate a composite video stream representing the synthesized video
  • a coding unit configured to encode the composite video stream to generate a video code stream.
  • the multi-channel video stream is superimposed and then encoded, and outputted in a single video stream structure, which eliminates the semantic coding redundancy caused by the inclusion of different types of load head units in the multi-channel video stream, and improves the composite.
  • the compression ratio of the code stream is the compression ratio of the code stream.
  • FIG. 2 is a flowchart of steps of synthesizing video represented by the multiple video streams according to an embodiment of the present application
  • FIG. 3 is a schematic diagram of multi-channel video synthesis in a picture-in-picture format according to an embodiment of the present application
  • FIG. 4 is a schematic diagram of a multi-channel video synthesis in a tile format according to an embodiment of the present application
  • FIG. 5 is a flowchart of a process of encoding the composite video stream to output a video code stream according to an embodiment of the present application
  • FIG. 6 is a schematic diagram of an apparatus according to an embodiment of the present application.
  • Computer device also referred to as “computer” in the context, is meant an intelligent electronic device that can perform predetermined processing, such as numerical calculations and/or logical calculations, by running a predetermined program or instruction, which can include a processor and The memory is executed by the processor to execute a predetermined process pre-stored in the memory to execute a predetermined process, or is executed by hardware such as an ASIC, an FPGA, a DSP, or the like, or a combination of the two.
  • Computer devices include, but are not limited to, servers, personal computers, notebook computers, tablets, smart phones, and the like.
  • the computer device includes a user device and a network device.
  • the user equipment includes, but is not limited to, a computer, a smart phone, a PDA, etc.
  • the network device includes but is not limited to a single network server, a server group composed of multiple network servers, or a cloud computing based computer Or a cloud composed of a network server, wherein cloud computing is a type of distributed computing, a super virtual computer composed of a group of loosely coupled computers.
  • the computer device can be operated separately to implement the present application, and can also access the network and implement the application through interaction with other computer devices in the network.
  • the network in which the computer device is located includes, but is not limited to, the Internet, a wide area network, a metropolitan area network, a local area network, a VPN network, and the like.
  • the user equipment, the network equipment, the network, and the like are only examples, and other existing or future computer equipment or networks may be applicable to the present application, and should also be included in the scope of the present application. It is included here by reference.
  • the method of the present application can be applied to a server or a client.
  • it is applied to a server side or a client of an application having a multimedia transmission function.
  • FIG. 1 is a method for encoding a multi-channel video stream according to an embodiment of the present application.
  • step 110 a plurality of video streams to be encoded are acquired.
  • the multi-channel video stream to be encoded is not limited to a video in a conventional sense, and may also include a document, a picture, a photo, and the like.
  • the user selects a document locally and transmits the video to other users.
  • step 120 the video represented by the multiple video streams is synthesized to generate a composite video stream representing the synthesized video.
  • the step of synthesizing the video represented by the multiple video streams to generate a composite video stream representing the synthesized video may specifically include step 1201 and step 1202.
  • a composite point location of a video represented by the multiple video streams is determined according to a resolution of the multiple video streams and a predetermined layout format.
  • the multiplexed video stream may include an uncoded video signal (original video signal) and/or a coded video stream.
  • unencoded video signals the resolution of the video is recorded.
  • the video code stream generated by the encoding the video stream can be semantically parsed, and the resolution of the video stream is obtained from the information obtained by the semantic parsing.
  • the predetermined layout format is a preset format for synthesizing video represented by the multiple video streams. Moreover, after the multi-channel video stream is encoded and output, the video represented by the multi-channel video stream is also displayed in the predetermined layout format during decoding playback.
  • the predetermined layout format may be a picture-in-picture format.
  • the picture-in-picture format refers to playing at least one in-channel video simultaneously in the internal area of the screen of the played external video. Therefore, for the picture-in-picture layout format, the video represented by one video stream is selected from the multi-channel video stream as the outer video of the picture-in-picture, and the video represented by the remaining video streams is used as the inner picture of the picture-in-picture.
  • step 1201 If the predetermined layout format is a picture-in-picture format, a specific implementation of step 1201 is:
  • the video represented by the most resolved video stream in the multiple video streams is used as the external video of the picture-in-picture, and the video represented by the remaining video streams in the multiple video streams is used as the internal video of the picture-in-picture.
  • the video represented by the less-resolved video stream is used as the external video of the picture-in-picture, it may be necessary to stretch the picture, resulting in poor picture quality and affecting the final video playback effect. Therefore, in order to improve the final playback effect of the encoded video stream after encoding, the video represented by the most resolved video stream in the multiple video streams may be used as the external video of the picture-in-picture, and the video represented by the remaining video streams may be used as the picture.
  • the inner video of the middle picture so that even if the video with the highest resolution is used as the outer video of the picture-in-picture, the picture is stretched, and the ratio of the stretch is smaller than the video with less resolution as the picture-in-picture.
  • the video has a small stretch ratio, so it is possible to get a better picture-in-picture format.
  • the combined position of the different inner video and outer video corresponding to the different video numbers and the size (width and height) of the superimposed area may be preset, in the picture-in-picture format, the inner video and the outer video
  • the superimposed area refers to the area where the inner video and the outer video are superimposed, and the size of the superimposed area is the size (or window) of the inner video of the picture-in-picture during playback.
  • the composite point position of the multi-channel video may be the relative coordinates of the upper left corner vertex of each inner video relative to the upper left corner vertex of the outer video.
  • FIG. 3 is a schematic diagram of multi-channel video synthesis in a picture-in-picture format according to an embodiment of the present application.
  • 301 is the external video of the picture-in-picture
  • 302 is the inner video of the picture-in-picture.
  • the inner area of the picture-in-picture video 301 has only one channel of video 302, and the inner video 302 can Located at the lower left corner of the outer video 301.
  • the upper left corner vertex of the outer video 301 screen is the coordinate origin (0, 0), and the relative coordinate of the upper left corner vertex of the inner video 302 relative to the upper left corner vertex of the outer video 301 is (dx, dy), that is,
  • the composite point position of the inner video 302 and the outer video 301 is (dx, dy).
  • the coordinates of the composite point position relative to the vertices of the outer video of the picture-in-picture or the vertices of the background are positive integer multiples of the basic coding unit.
  • the horizontal component and the vertical component of the coordinates of the composite point are positive integer multiples of the corresponding components of the basic coding unit, wherein the horizontal component and the vertical component of the composite point coordinate and the basic coding unit corresponding component are represented by the number of pixels.
  • the basic coding units of different compression standards are different.
  • the ITU H.263 compression standard uses 8 ⁇ 8 pixel blocks as the basic coding unit.
  • the number of pixels corresponding to the horizontal component of the synthesized point coordinates corresponds to the vertical component.
  • the number of pixels is an integer multiple of 8.
  • the ISO MPEG4-part10/ITU H.264 compression standard is based on a 16 ⁇ 16 pixel block.
  • the number of pixels corresponding to the horizontal component of the composite point coordinate and the number of pixels corresponding to the vertical component are An integer multiple of 16.
  • the predetermined layout format may be a tile format.
  • the tile format refers to displaying the images of the multi-channel video side by side without overlapping on the screen.
  • the tile format can be viewed as a picture-in-picture format in which the external video is a blank signal or a background signal. Therefore, for the tile format, a signal may be generated first as an external video, and a video represented by the multiple video streams to be encoded may be used as an internal video.
  • the external video 401 is a generated signal as a background, and the signal may be a blank signal or a preset background signal (for example, a preset blue background signal).
  • the composite point position of the multi-channel video may be the relative coordinates of the upper left corner vertex of each inner video relative to the upper left corner vertex of the outer video.
  • the upper left corner vertex of the screen other than the video 401 is the coordinate origin (0, 0), and the coordinates of the upper left corner vertex of the inner video 402 and the inner video 403 relative to the upper left corner vertex of the outer video 401 (dx0, dy).
  • (dx1, dy) is the composite point position of the inner video 402 and the inner video 403 and the outer video 401, respectively. Similar to the previous embodiment, to ensure the information availability of the encoded video stream, the composite point position is relative to the outer video.
  • the coordinates of the vertices of the vertex or background are positive integer multiples of the basic coding unit.
  • step 1202 the video represented by the multiple video streams is synthesized according to the determined composite point position to generate the one composite video stream.
  • the position of the superimposed area of each video and the outer video of the picture-in-picture can be determined according to the determined position of the composite point, and then the data of each in-channel video is copied according to the determined position of the superimposed area. The corresponding superimposed area on the outer video to generate the one composite video stream.
  • the position of the superimposed region may be determined according to the determined composite point position of the inner video and the outer video and the determined width and height of the inner video and outer video superimposed region.
  • the width and height of the determined overlapping area of the inner video and the outer video are determined according to a predetermined layout format. In different layout formats, the overlapping area width and height of the corresponding inner video and outer video in the case of different video numbers may be preset in advance.
  • the composite point of the inner video and the outer video is the upper left corner vertex of the superimposed area. Therefore, the right of each inner video and outer video superimposed area is determined according to the combined point coordinates of the inner video and the outer video and the width and height of the determined superimposed area.
  • the lower corner vertex determines the position of the superimposed area of each inner video and outer video on the outer video.
  • the coordinates of the synthesized point of the inner video 302 and the outer video 301 in FIG. 3 are (dx, dy), and the width and height of the determined overlapping area are respectively w and h (wherein the width and height are pixel sizes, that is, pixels).
  • the number of coordinates of the lower right vertex of the superimposed area of the inner video 302 and the outer video 301 is (dx+w, dy+h), the upper left vertex (dx, dy) to the lower right vertex (dx+w, dy+ h)
  • the rectangular area formed is the superimposed area of the inner video 302 and the outer video 301.
  • step 1202 may further include the following steps:
  • the coordinates of the superimposed region may be represented by the coordinates of the upper left corner vertex of the region and the coordinates of the lower right corner vertex.
  • the upper left corner vertex of the video 301 in FIG. 3 is the coordinate origin
  • the coordinates of the upper left corner vertex of the superimposed area of the inner video 302 and the outer video 301 are (dx, dy)
  • the coordinates of the lower right corner vertex are (dx+w, Dy+h)
  • the coordinates of the superimposed area can be expressed as (dx, dy) - (dx + w, dy + h).
  • step 130 the composite video stream is encoded to generate a video stream.
  • the multiplexed video stream to be encoded may include an uncoded video signal and/or a coded video stream.
  • the composite video stream is encoded by encoding the uncoded video signal data and/or the encoded video stream data in the composite composite video stream, and encoding the generated video code stream according to the image.
  • the (frame) sequence is output in the structure of one video stream.
  • step 130 When the multiplexed video stream includes an uncoded video signal, a specific implementation of step 130 is:
  • the uncoded video signal may be predicted by using a predictive coding method of inter prediction and/or intra prediction to remove redundant information and obtain inter and/or intra prediction information.
  • the inter-frame and/or intra prediction is performed on the uncoded video signal in units of macroblocks.
  • Performing a predetermined encoding process flow for example, transforming, quantizing, entropy encoding processing based on the obtained prediction information
  • the output video code stream may also include information required for decoding, for example, a motion vector.
  • the prediction information includes: a prediction mode and residual data.
  • the intra prediction process can include:
  • the predicted macroblock is generated by performing encoding processing based on the obtained residual data.
  • the prediction information includes: a reference frame index, a macroblock division manner, a motion vector, and residual data.
  • the inter prediction process can include:
  • the most similar macroblock of the current macroblock that is, the matching macroblock, subtracts the position between the current macroblock and the matching macroblock to obtain a motion vector, and according to the position specified by the motion vector, the current macroblock and the best match
  • the macroblock performs motion compensation to obtain residual data.
  • the encoding process is performed based on the obtained residual data.
  • the above steps are: when predicting an uncoded video signal in the composite video stream, predictive coding of a video stream in a superimposed region of an outer video and an inner video, and predicting a source of intra prediction used in predictive coding in the superimposed region Inside. That is to say, the source of the predicted macroblock of the intra prediction does not exceed the macroblock within the range of the superimposed area of the inner video and the outer video.
  • the above steps are: when predicting an uncoded video signal in the composite video stream, predictive coding of a video stream in a superimposed area of the outer video and the inner video, and the motion search range of the inter prediction used in the predictive coding is less than or equal to the Overlay area.
  • the positive integer search window of the motion search is iterated as ⁇ pixels, and the corresponding motion search range of a certain macro block in the superimposed area may be:
  • the luminance component buffer size of each reference frame is not less than (w+2 ⁇ ) ⁇ (h+2 ⁇ ) bytes to satisfy the inbound video.
  • the step 130 may further include step 1301, step 1302, and step 1303.
  • a video stream generated by encoding in the composite video stream is semantically parsed to obtain prediction information in a code through which the encoded video stream is encoded.
  • the video code stream generated by the encoding in the composite video stream may be generated by encoding the original video signal or the video code stream. Therefore, semantically parsing the encoded video code stream may obtain the passed Predictive information in the encoding.
  • the prediction information includes: a prediction mode obtained by intra prediction and a reference frame index obtained by residual data and/or inter prediction, a macroblock division manner, a motion vector, and residual data (residual macroblock, motion) Vector deviation).
  • step 1302 prediction information when encoding the encoded video code stream is acquired according to prediction information in the passed coding.
  • step 1302 One specific implementation of step 1302 is:
  • the encoded video stream is generated.
  • the encoded code adopts the ISO MPEG4-part10/ITU H.264 video compression standard, and the preset video coding standard for encoding the synthesized composite video stream is also the MPEG4-part10/ITU H.264 video coding standard. Therefore, the inter-prediction and/or intra prediction of the video stream that is generated by the encoding is not required, and the prediction information in the encoding of the encoded video stream may be directly determined as being The prediction information when encoding the generated video code stream is encoded.
  • step 1302 if the video coding standard used in the coding is different from the video coding standard when the composite video stream is encoded, a specific implementation manner of step 1302 is:
  • the generated video code stream is subjected to intra prediction to determine prediction information when the composite video stream is encoded.
  • the intra prediction mode needs to be selected in the intra prediction, for example, the R-D cost function in each intra prediction mode is calculated, and the least cost prediction mode is determined as the optimal prediction mode.
  • the video code stream generated by the encoding may determine a prediction mode when encoding the encoded video code stream according to the optimal prediction mode determined in the passed code to reduce the computational complexity of the prediction mode selection.
  • step 1302 is:
  • Determining prediction information when encoding the encoded video code stream is determined according to the determined motion vector deviation.
  • the step of determining a motion vector deviation when encoding the encoded video code stream according to the motion vector deviation obtained by performing inter prediction on the video code stream in the passed coding includes:
  • the motion vector deviation represents a prediction residual of the motion vector, and the motion vector of the current macroblock may be predicted according to the motion vector of the neighboring block available around the current macroblock to obtain a predicted motion vector.
  • the motion vector deviation is the difference between the actual motion vector of the current macroblock and the predicted motion vector, that is, the difference between the actual motion vector of the macroblock and the predicted motion vector in the encoding of the video code stream.
  • the motion vector deviation (MVD x ', MVD y ') encoding the encoded video code stream can be calculated by the following conversion formula (2):
  • MVD x and MVD y are respectively the horizontal component and the vertical component corresponding to the motion vector deviation obtained during the interframe prediction in the encoding of the encoded video stream;
  • fpp Fraction Pixel
  • Precision represents the motion compensated fractional pixel precision corresponding to the video coding standard when encoding the composite video stream, for example, the Fpp of the H.263 video coding standard is 1/2, and the fpp of the H.264 video coding standard is 1 /4.
  • steps may further include:
  • the calculated motion vector deviation is used as a search starting point for performing motion search on the encoded video code stream, and the video code stream is re-interframe-predicted motion search to obtain the coded generated The final motion vector deviation when the video bitstream is encoded.
  • the motion search can be performed based on the encoded reference frame through which the encoded video stream passes. Pass The prediction information obtained by the re-interframe motion search is more matched with the currently encoded macroblock, which can improve the video quality.
  • the foregoing steps are similar to the prediction of the uncoded video signal, the prediction coding of the video stream of the superimposed area of the external video and the internal video, and the prediction coding when predicting the video code stream generated by the encoding in the composite video stream.
  • the predicted source of intra prediction employed in the superimposed region. That is to say, the source of the predicted macroblock of the intra prediction does not exceed the macroblock within the range of the superimposed area of the inner video and the outer video.
  • the foregoing steps are similar to the prediction of the uncoded video signal, the prediction coding of the video stream of the superimposed area of the external video and the internal video, and the prediction coding when predicting the video code stream generated by the encoding in the composite video stream.
  • the motion search range of the inter prediction used in is less than or equal to the superimposed region.
  • the scope of the motion search for inter-predicting the video stream generated by the encoding may be described with reference to an implementation of inter-prediction for the uncoded video signal, which is not described herein.
  • step 1303 based on the obtained prediction information when encoding the encoded video code stream, the encoded video code stream is encoded.
  • performing a predetermined encoding process flow on the encoded video code stream for example, performing transformation based on the obtained prediction information, Quantization, entropy coding processing) to generate a video stream as part of the output of one video stream.
  • the obtained residual macroblock D (residual data) is transformed and quantized to generate a set of quantized transform coefficients X, and the transform coefficients X are reordered and then entropy is generated.
  • Encoding generating a video stream as all or part of the output of a video stream.
  • n is a positive integer greater than 1 input video stream.
  • Stream 0 is the video stream representing the external video;
  • Stream 1 to Stream n-1 are the remaining (n-1) channels.
  • the video stream representing the inner video, if it is an unencoded original video, the corresponding Stream i (0 ⁇ i ⁇ n) represents the load required by the encoding system in the prior art.
  • the load amount saved by the present application includes the sum of the loads of the video stream of the (n-1) way representing the inner video. And the sum of the difference between the original encoding payload Overlap Li (the original encoding payload of the outer video in the superimposed region) and the encoding load Overlap Si of the inner video in each of the inner video and outer video superimposed regions. Therefore, according to the technical solution of the present application, the code rate saving is huge and considerable, and the network transmission can be better adapted.
  • the technical solution of the present application combines multiple video streams to generate a composite video stream, and then uniformly encodes and outputs one video code stream, thereby eliminating semantic coding redundancy of different types of load head units included in the multi-channel video code stream. , improve the compression ratio of the composite stream.
  • the technical solution of the present application fixes the layout manner of the multiple video streams in the single-channel video code stream of the encoded output, and the receiver does not need to consider the layout when the video is displayed, and only needs to decode the received single-channel video code stream. , you can achieve simultaneous playback of multiple channels of video.
  • the technical solution of the present application performs secondary coding based on the existing prediction data of the video code stream for the input video code stream, which can improve the calculation performance of the compression processing of the composite video stream and further improve the compression efficiency.
  • FIG. 6 shows a schematic diagram of an encoding device 6 for a multi-channel video stream.
  • the encoding device 6 comprises:
  • An obtaining unit 610 configured to acquire a multiple video stream to be encoded
  • a synthesizing unit 620 configured to synthesize video represented by the multiple video streams to generate a composite video stream representing the synthesized video
  • the encoding unit 630 is configured to encode the composite video stream to generate a video code stream.
  • the synthesizing unit 620 includes:
  • a composite point location determining unit configured to determine a composite point location of a video represented by the multiple video stream according to a resolution of the multiple video stream and a predetermined layout format
  • a synthesis processing unit configured to perform a synthesis process on the video represented by the multiple video streams according to the determined composite point position to generate the one composite video stream.
  • the predetermined layout format is a picture-in-picture format
  • the composite point location determining unit is configured to:
  • the video represented by the most resolved video stream in the multiple video streams is used as the external view of the picture-in-picture Frequency
  • the video represented by the remaining video streams in the multiple video streams is used as the inner video of the picture-in-picture.
  • the coordinates of the synthesized point position relative to the vertices of the outer video of the picture-in-picture or the vertices of the background are positive integer multiples of the basic coding unit.
  • the synthesis processing unit is configured to:
  • the encoding unit 630 is configured to:
  • the motion search range of the inter prediction used in the predictive coding is less than or equal to the superimposed area and the frame used in the predictive coding.
  • the predicted source of the intra prediction is within the superimposed region.
  • the multi-channel video stream includes an uncoded video signal.
  • the coding unit 630 includes:
  • a prediction unit configured to perform prediction on the uncoded video signal in the composite video stream, to obtain prediction information that encodes the uncoded video signal
  • An encoding processing unit configured to perform encoding processing on the uncoded video signal based on the obtained prediction information
  • the prediction information includes: a prediction mode obtained by intra prediction and a reference frame index obtained by residual data and/or inter prediction, a macroblock division manner, a motion vector, and residual data.
  • the multiple video streams include encoded video streams.
  • the coding unit 630 includes:
  • a semantic parsing unit configured to perform semantic parsing on the video code stream generated by the encoding in the composite video stream, to obtain prediction information in the encoding of the video stream generated by the encoding
  • a prediction information acquiring unit configured to acquire prediction information when encoding the encoded video code stream according to the predicted information in the encoded code
  • An encoding processing unit configured to perform encoding processing on the encoded video code stream based on the obtained prediction information when encoding the encoded video code stream;
  • the prediction information includes: a prediction mode obtained by intra prediction and a reference frame index obtained by residual data and/or inter prediction, a macroblock division manner, a motion vector, and residual data.
  • the prediction information acquiring unit includes:
  • a determining subunit configured to determine whether a video coding standard used by the encoded code is the same as a video coding standard when encoding the composite video stream
  • Determining a subunit if the same, determining prediction information in the passed code as prediction information when encoding the encoded video code stream.
  • the determining subunit is configured to:
  • the determining subunit is further configured to:
  • the determining subunit is further configured to:
  • the present application can be implemented in software and/or a combination of software and hardware.
  • the various devices of the present application can be implemented using an application specific integrated circuit (ASIC) or any other similar hardware device.
  • the software program of the present application can be executed by a processor to implement the steps or functions described above.
  • the software program of the present application (including related numbers) According to the structure, it can be stored in a computer readable recording medium such as a RAM memory, a magnetic or optical drive or a floppy disk, and the like.
  • some of the steps or functions of the present application may be implemented in hardware, for example, as a circuit that cooperates with a processor to perform various steps or functions.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供了一种多路视频流的编码方法及装置,其中,该编码方法包括:获取待编码的多路视频流;对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流;对所述复合视频流进行编码,以生成一路视频码流。本申请将多路视频流进行叠加处理后再进行编码,并以单路视频码流结构输出,提升复合视频流的压缩率。

Description

一种多路视频流的编码方法及装置 技术领域
本申请涉及通信技术领域,尤其涉及一种多路视频流的编码方法及装置。
背景技术
随着媒体通信技术的发展,经常出现将多路视频同时传输并显示的情况。例如,发送方用户将本地的文档和视频一起分享给接收方,并使文档和视频同时显示在接收方的屏幕上。在这种情况下,为了降低媒体载荷以及更好地适应网络传输,需要把文档信号和视频信号分别进行编码产生两路码流,接收方接收到两路码流后,再分别进行解码,并根据预定的布局方式作显示屏的展现处理。
现有技术的实现方案基于多路已经编码的码流进行复合,由于基于工业界传统的差分脉冲编码调制(DPCM)的各种视频压缩标准,包含了不同类型载荷头单元的编码语义结构,更多路的编码码流意味着更多的载荷头开销。
因此,需要提出一种能够减低载荷开销,提升多路视频流总体压缩效率的多路视频流编码的方案。
发明内容
本申请的一个目的是提供一种多路视频流的编码方法及装置,提升对多路视频流编码时的压缩率。
根据本申请的一方面,提供了一种多路视频流的编码方法,该编码方法包括:
获取待编码的多路视频流;
对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流;
对所述复合视频流进行编码,以生成一路视频码流。
根据本申请的另一方面,还提供了一种多路视频流的编码装置,该编码装置包括:
获取单元,用于获取待编码的多路视频流;
合成单元,用于对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流;
编码单元,用于对所述复合视频流进行编码,以生成一路视频码流。
与现有技术相比,本申请的实施例具有以下优点:
本申请将多路视频流进行叠加处理后再进行编码,并以单路视频码流结构输出,消除了多路视频流中由于包含不同类型的载荷头单元而造成的语义编码冗余,提升复合码流的压缩率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请一个实施例提供的方法的流程图;
图2为根据本申请一个实施例的对所述多路视频流代表的视频进行合成的步骤的流程图;
图3为根据本申请一个实施例的画中画格式的多路视频合成的示意图;
图4为根据本申请一个实施例的平铺格式的多路视频合成的示意图;
图5为根据本申请一个实施例的对所述复合视频流进行编码,以输出一路视频码流的步骤的流程图;
图6为本申请一个实施例提供的装置示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。 此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在上下文中所称“计算机设备”,也称为“电脑”,是指可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子设备,其可以包括处理器与存储器,由处理器执行在存储器中预存的存续指令来执行预定处理过程,或是由ASIC、FPGA、DSP等硬件执行预定处理过程,或是由上述二者组合来实现。计算机设备包括但不限于服务器、个人电脑、笔记本电脑、平板电脑、智能手机等。
所述计算机设备包括用户设备与网络设备。其中,所述用户设备包括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本申请,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本申请。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本申请,也应包含在本申请保护范围以内,并以引用方式包含于此。
后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本申请的示例性实施例的目的。但是本申请可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等 来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
下面结合附图对本申请作进一步详细描述。
本申请的方法可以应用于服务器端或客户端中。例如,应用于具有多媒体传输功能的应用的服务器端或客户端中。
图1为本申请一个实施例的多路视频流的编码方法。
参考图1,在步骤110中,获取待编码的多路视频流。
具体而言,该待编码的多路视频流不仅限于传统意义的视频还可以包括文档、图片、照片等。例如用户在所使用的客户端本地选取文档、视频传输给其他用户。
参考图1,在步骤120中,对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流。
具体地,对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流的步骤具体可以包括步骤1201和步骤1202。
参考图2,在步骤1201中,根据所述多路视频流的解析度和预定的布局格式,确定所述多路视频流代表的视频的合成点位置。
具体地,该多路视频流中可以包含未经编码的视频信号(原始视频信号)和/或经过编码产生的视频码流。对于未经编码的视频信号,记录视频的解析度。对于经过编码而产生的视频码流,可以对该视频码流进行语义解析,从语义解析得到的信息中获取该视频码流的解析度。
所述预定的布局格式为预先设置的将所述多路视频流代表的视频进行合成的格式。并且,将该多路视频流编码输出后,在解码播放时该多路视频流代表的视频也以该预定布局格式显示。
在一种具体实施方式中,所述预定的布局格式可以为画中画格式。
所述画中画格式是指在播放的外视频的画面内部区域同时播放至少一路内视频。因此,对于画中画布局格式需要从多路视频流中选取一路视频流代表的视频作为画中画的外视频,其余视频流代表的视频作为画中画的内视频。
如果预定的布局格式为画中画格式,则步骤1201的一种具体的实施方式为:
将所述多路视频流中解析度最大的视频流代表的视频作为画中画的外视频,将所述多路视频流中其余视频流代表的视频作为画中画的内视频。
具体而言,如果将解析度较小的视频流代表的视频作为画中画的外视频,可能需要对其画面进行拉伸,导致画面质量变差,影响最终视频播放的效果。因此,为提高编码后输出的视频码流的最终的播放效果,可以将多路视频流中解析度最大的视频流代表的视频作为画中画的外视频,将其余视频流代表的视频作为画中画的内视频,这样即使将该解析度最大的视频作为画中画的外视频时对其画面进行拉伸,其拉伸的比例也会比解析度较小的视频作为画中画的外视频时的拉伸比例小,因此能够取得画中画格式的较好效果。
在预定的布局格式下,可以预先设置不同的视频数量对应的不同的内视频与外视频的合成点位置和叠加区域的大小(宽度和高度),画中画格式下,内视频与外视频的叠加区域就是指内视频与外视频叠加在一起的区域,该叠加区域的大小就是画中画的内视频在播放时的画面(或窗口)大小。所述多路视频的合成点位置可以是每个内视频的左上角顶点相对于所述外视频的左上角顶点的相对坐标。
图3为根据本申请实施例的画中画格式的多路视频合成的示意图。
参考图3,301为画中画的外视频,302为画中画的内视频,当只有两路视频进行复合时,画中画中外视频301的内部区域只有一路内视频302,内视频302可以位于外视频301的左下角处。其中,以外视频301画面的左上角顶点为坐标原点(0,0),内视频302的画面的左上角顶点相对于外视频301的画面的左上角顶点的相对坐标为(dx,dy),即内视频302与外视频301的合成点位置为(dx,dy)。
为保证经过编码的视频码流的信息可用性,所述合成点位置相对于画中画的外视频的顶点或背景的顶点的坐标是基本编码单元的正整数倍。具体而言,该合成点坐标的水平分量和垂直分量为基本编码单元对应分量的正整数倍,其中,合成点坐标的水平分量和垂直分量以及基本编码单元对应分量均以像素个数表示。不同压缩标准的基本编码单元不同,例如,ITU H.263压缩标准是以8×8的像素块为基本编码单元,采用该压缩标准时,合成点坐标的水平分量对应的像素个数和垂直分量对应的像素个数均为8的整数倍。ISO MPEG4-part10/ITU H.264压缩标准是以16×16的像素块为基本编码单元,采用该压缩标准时,合成点坐标的水平分量对应的像素个数和垂直分量对应的像素个数均为16的整数倍。
可选地,所述预定的布局格式可以为平铺格式。其中,平铺格式是指将多路视频的画面在屏幕上无重叠地并列显示。平铺格式可以看做外视频为一路空白信号或背景信号的画中画格式。因此,对于平铺格式可以先产生一路信号作为外视频,将待编码的多路视频流代表的视频作为内视频。
图4为根据本申请实施例的布局格式为平铺格式的多路视频合成的示意图。其中,外视频401为产生的一路作为背景的信号,该信号可以是空白信号或者预设的背景信号(例如,预设的蓝色背景信号)。与画中画格式类似,在平铺格式下,多路视频的合成点位置可以是每个内视频的左上角顶点相对于所述外视频的左上角顶点的相对坐标。图4中,以外视频401的画面的左上角顶点为坐标原点(0,0),内视频402和内视频403的画面的左上角顶点相对于外视频401左上角顶点的坐标(dx0,dy)、(dx1,dy)分别为内视频402和内视频403与外视频401的合成点位置。与前述实施方式类似,为保证经过编码的视频码流的信息可用性,所述合成点位置相对于外视频的 顶点或背景的顶点的坐标是基本编码单元的正整数倍。
在步骤1202中,根据确定的合成点位置对所述多路视频流代表的视频进行合成处理,以生成所述一路复合视频流。
画中画格式下,可以先根据确定的合成点位置确定画中画的每一路内视频与外视频的叠加区域的位置,再根据确定的叠加区域的位置,将每一路内视频的数据复制到外视频上相应的叠加区域中,以生成所述一路复合视频流。
具体地,叠加区域的位置可以根据确定的内视频与外视频的合成点位置以及确定的内视频与外视频叠加区域的宽度和高度确定。其中,确定的内视频与外视频的叠加区域的宽度和高度是根据预定布局格式确定的。在不同的布局格式下,可以分别预先设置不同视频数量的情况下对应的内视频与外视频的叠加区域宽度和高度。内视频与外视频的合成点为叠加区域的左上角顶点,因此,根据内视频与外视频的合成点坐标和确定的叠加区域的宽度和高度,确定每个内视频与外视频叠加区域的右下角顶点,从而确定在外视频上每个内视频与外视频的叠加区域位置。
例如,图3中内视频302与外视频301的合成点的坐标为(dx,dy),确定的叠加区域的宽度和高度分别为w和h(其中,宽度和高度为像素尺寸,也就是像素个数),则内视频302与外视频301的叠加区域的右下顶点的坐标为(dx+w,dy+h),左上顶点(dx,dy)至右下顶点(dx+w,dy+h)形成的矩形区域就是内视频302与外视频301的叠加区域。
可选地,步骤1202还可以包括以下步骤:
记录每个内视频与所述外视频的叠加区域在所述外视频上的区域坐标以及对应的编码宏块索引表,以在所述一路复合视频流中传输。
具体地,叠加区域的坐标可以以该区域的左上角顶点的坐标和右下角顶点的坐标来表示。例如,图3中以外视频301的左上角顶点为坐标原点,内视频302与外视频301的叠加区域的左上角顶点的坐标为(dx,dy),右下角顶点的坐标为(dx+w,dy+h),则叠加区域的坐标可以表示为(dx,dy)-(dx+w,dy+h)。通过在该一路复合视频流中传输叠加区域在所述外视频上的区域坐标以及对应的宏块索引表,以便于在对该复合流进行编码时,能够快速确定叠加区域的视频流的宏块。
在步骤130中,对所述复合视频流进行编码,以生成一路视频码流。
具体而言,待编码的多路视频流中可以包括未经编码的视频信号和/或经过编码产生的视频码流。对所述复合视频流进行编码,就是对复合而成的复合视频流中未经编码的视频信号数据和/或经过编码产生的视频码流数据进行编码,并将编码产生的视频码流按照图像(帧)顺序以一路视频码流的结构输出。
当该多路视频流中包含未经编码的视频信号时,步骤130的一种具体实施方式为:
对于所述复合视频流中未经编码的视频信号进行预测,得到对所述视频信号进行编码的预测信息;
基于得到的预测信息,对所述未经编码的视频信号进行编码处理。
具体地,可以采用帧间预测和/或帧内预测的预测编码方式对未经编码的视频信号进行预测,以去除冗余信息并得到帧间和/或帧内预测信息。其中,对该未经编码的视频信号进行帧间和/或帧内预测时以宏块为单位。根据得到的帧间和/或帧内预测信息对所述未经编码的视频信号执行预定的编码处理流程(例如,基于得到的预测信息进行变换、量化、熵编码处理)以生成视频码流,作为输出的一路视频码流的一部分。其中,输出的一路视频码流中还可以包含解码所需的信息,例如,运动矢量。
如果进行帧内预测,则预测信息包括:预测模式以及残差数据。
帧内预测过程可以包括:
以宏块为单位,利用当前帧内已编码并解码的重建的相邻像素信息来生成预测宏块,并且将预测宏块与当前宏块(当前要编码的宏块)进行比较得到残差数据。例如,将预测宏块从当前宏块中减去,得到一个残差宏块(残差数据)。在后面的步骤中,基于得到的残差数据进行编码处理生成视频码流。
如果进行帧间预测,则预测信息包括:参考帧索引、宏块划分方式、运动矢量以及残差数据。
帧间预测过程可以包括:
以宏块为单位,通过运动估计在参考帧中指定的运动搜索范围内搜索与 当前宏块最相似的宏块,即,匹配宏块,将当前宏块与匹配宏块两者间的位置进行相减得到运动矢量,根据运动矢量指定的位置,对当前宏块和最佳匹配宏块进行运动补偿得到残差数据。在后面的步骤中,基于得到的残差数据进行编码处理。
上述步骤对于所述复合视频流中未经编码的视频信号进行预测时,对外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧内预测的预测来源在所述叠加区域内。也就是说,帧内预测的预测宏块的来源不超出内视频与外视频的叠加区域的范围内的宏块。
上述步骤对于所述复合视频流中未经编码的视频信号进行预测时,对外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧间预测的运动搜索范围小于等于所述叠加区域。
具体地,对内视频与外视频的叠加区域进行帧间预测的运动搜索时,运动搜索的正整数搜索窗口迭代为±σ像素,叠加区域中某个宏块对应运动搜索范围具体可以为:
Figure PCTCN2016086872-appb-000001
基于上述,针对叠加区域进行编码时,需要另外开辟内存空间供使用,其中,每个参考帧的亮度分量缓存大小不小于(w+2σ)×(h+2σ)字节,以满足对内视频作帧间预测的运动搜索的需要。
当该多路视频流中包含经过编码产生的视频码流时,步骤130可以进一步包括步骤1301、步骤1302和步骤1303。
参考图5,在步骤1301中,对于所述复合视频流中经过编码产生的视频码流进行语义解析,以获取所述经过编码产生的视频码流所经过的编码中的预测信息。
具体而言,该复合视频流中经过编码产生的视频码流可以是对原始视频信号或视频码流进行编码产生的,因此,对该经过编码产生的视频码流进行语义解析,可以获取所经过的编码中的预测信息。其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据(残差宏块、运动矢量偏差)。
参考图5,在步骤1302中,根据所述所经过的编码中的预测信息,获取对所述经过编码产生的视频码流进行编码时的预测信息。
步骤1302的一种具体实施方式为:
判断所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准是否相同;如果相同,则将所述所经过的编码中的预测信息确定为对所述经过编码产生的视频码流进行编码时的预测信息。
具体地,如果该经过编码产生的视频码流所经过的编码所采用的视频编码标准与对合成后的一路复合视频流进行编码时的视频编码标准相同,例如,该经过编码产生的视频码流所经过的编码采用ISO MPEG4-part10/ITU H.264视频压缩标准,而预先设置的对合成后的该一路复合视频流进行编码的视频编码标准也是MPEG4-part10/ITU H.264视频编码标准,则不需要对该经过编码产生的视频码流重新进行帧间预测和/或帧内预测,可以直接将所述经过编码产生的视频码流所经过的编码中的预测信息确定为对所述经过编码产生的视频码流进行编码时的预测信息。
基于上述实施方式,如果所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准不同,则步骤1302的一种具体实施方式为:
根据所经过的编码中对所述视频码流进行帧内预测时确定的预测模式,确定对所述经过编码产生的视频码流进行编码时的预测模式;根据确定的预测模式对所述经过编码产生的视频码流进行帧内预测,以确定对所述复合视频流进行编码时的预测信息。
帧内预测时需要进行帧内预测模式的选择,例如,计算各个帧内预测模式下的R-D代价函数,将代价最小的预测模式确定为最优预测模式。对于经过编码产生的视频码流可以根据所经过的编码中确定的最优预测模式,确定对该经过编码产生的视频码流进行编码时的预测模式,以减小预测模式选择的计算复杂度。
以及/或者,步骤1302的另一种具体实施方式为:
根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差;
根据确定的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的预测信息。
其中,根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差的步骤包括:
根据所经过的编码中对所述视频码流进行帧间预测时产生的运动矢量偏差以及对所述复合视频流进行编码时视频编码标准对应的运动补偿的分数像素精度,计算对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
其中,运动矢量偏差表示运动矢量的预测残差,当前宏块的运动矢量可以根据当前宏块周围可得到的邻块的运动矢量进行预测,得到预测运动矢量。运动矢量偏差为当前宏块的实际运动矢量与预测运动矢量的差值,也就是该视频码流所经过的编码中,宏块的实际运动矢量与预测运动矢量的差值。
具体地,可以通过以下的转换公式(2)计算对所述经过编码产生的视频码流进行编码的运动矢量偏差(MVDx',MVDy'):
Figure PCTCN2016086872-appb-000002
在公式(2)中,MVDx和MVDy分别为该经过编码产生的视频码流所经过的编码中,帧间预测时得到的运动矢量偏差所对应的水平分量和垂直分量;fpp(Fraction Pixel Precision)代表对所述复合视频流进行编码时的视频编码标准对应的运动补偿的分数像素精度,例如,H.263视频编码标准的fpp为1/2,H.264视频编码标准的fpp为1/4。
进一步地,上述步骤还可以包括:
将计算得到的对所述经过编码产生的视频码流进行编码时的运动矢量偏差作为运动搜索的基准点,对所述经过编码产生的视频码流重新进行运动搜索,以获取对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
也就是说,将计算得到的该运动矢量偏差作为对该经过编码产生的视频码流进行运动搜索的搜索起点,对该视频码流重新进行帧间预测的运动搜索,以获取对经过编码产生的视频码流进行编码时的最终的运动矢量偏差。其中,可以基于该经过编码产生的视频流所经过的编码的参考帧进行运动搜索。通 过重新进行的帧间运动搜索得到的预测信息与当前编码的宏块更为匹配,可以提高视频质量。
上述步骤对于所述复合视频流中经过编码产生的视频码流进行预测时,类似于对未经编码的视频信号进行的预测,对外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧内预测的预测来源在所述叠加区域内。也就是说,帧内预测的预测宏块的来源不超出内视频与外视频的叠加区域的范围内的宏块。
上述步骤对于所述复合视频流中经过编码产生的视频码流进行预测时,类似于对未经编码的视频信号进行的预测,对外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧间预测的运动搜索范围小于等于所述叠加区域。其中,对经过编码产生的视频码流进行帧间预测的运动搜索的范围可参考对未经编码的视频信号进行的帧间预测的实施方式的描述,此处不加赘述。
参考图5,在步骤1303中,基于获取的对所述经过编码产生的视频码流进行编码时的预测信息,对所述经过编码产生的视频码流进行编码处理。
具体地,根据获取的对所述经过编码产生的视频码流进行编码时的预测信息,对所述经过编码产生的视频码流执行预定的编码处理流程(例如,基于得到的预测信息进行变换、量化、熵编码处理),以生成视频码流,作为输出的一路视频码流的一部分。
更具体地,在帧内/帧间预测中,对得到的残差宏块D(残差数据)进行变换、量化,产生一组量化后的变换系数X,对变换系数X重新排序后进行熵编码,生成视频码流,作为输出的一路视频码流的全部或部分。
本申请技术方案相对于现有技术方案,预计节省的码流载荷量Diffbit可参考公式(3):
Figure PCTCN2016086872-appb-000003
其中,共有n(n为大于1的正整数)路输入视频流,画中画布局格式中,Stream0为代表外视频的视频流;Stream1~Streamn-1为其余(n-1)路代表内视频的视频流,若为未经编码的原始视频,相应的Streami(0<i<n)表示现有技术中编码系统所需要消耗的载荷。
本申请节省的载荷量Diffbit,包括(n-1)路代表内视频的视频流的载荷总和
Figure PCTCN2016086872-appb-000004
以及各个内视频与外视频叠加区域的原先的编码载荷OverlapLi(外视频在叠加区域的原来的编码载荷)与内视频的编码载荷OverlapSi之差的总和
Figure PCTCN2016086872-appb-000005
因此,根据本申请技术方案,码率节省是巨大和可观的,可以更好的适应网络传输。
本申请的技术方案,将多路视频流进行合成处理生成复合视频流后,再进行统一编码输出一路视频码流,消除了多路视频码流中包含的不同类型载荷头单元的语义编码冗余,提升复合码流的压缩率。
并且,本申请的技术方案将多路视频流的布局方式固定在编码输出的单路视频码流中,接收方无需考虑视频显示时的布局,只需对接收到的单路视频码流进行解码,即可实现多路视频的同时播放。
同时,本申请的技术方案对于输入为经过编码的视频码流,基于视频码流已有的预测数据进行二次编码,能够提升复合视频流的压缩处理的计算性能,并进一步提高压缩效率。
基于与方法同样的发明构思,本申请还提供一种多路视频流的编码装置,图6所示为多路视频流的编码装置6示意图。该编码装置6包括:
获取单元610,用于获取待编码的多路视频流;
合成单元620,用于对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流;
编码单元630,用于对所述复合视频流进行编码,以生成一路视频码流。
可选地,所述合成单元620包括:
合成点位置确定单元,用于根据所述多路视频流的解析度和预定的布局格式,确定所述多路视频流代表的视频的合成点位置;
合成处理单元,用于根据确定的合成点位置对所述多路视频流代表的视频进行合成处理,以生成所述一路复合视频流。
可选地,所述预定的布局格式为画中画格式,所述合成点位置确定单元被配置为:
将所述多路视频流中解析度最大的视频流代表的视频作为画中画的外视 频,将所述多路视频流中其余视频流代表的视频作为画中画的内视频。
可选地,所述合成点位置相对于画中画的外视频的顶点或背景的顶点的坐标是基本编码单元的正整数倍。
可选地,所述合成处理单元被配置为:
记录每个内视频与所述外视频的叠加区域在所述外视频上的区域坐标以及对应的编码宏块索引表,以在所述一路复合视频流中传输。
可选地,所述编码单元630被配置为:
对于所述一路复合视频流代表的视频中外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧间预测的运动搜索范围小于等于所述叠加区域、预测编码中采用的帧内预测的预测来源在所述叠加区域内。
可选地,所述多路视频流中包含未经编码的视频信号。
其中,所述编码单元630包括:
预测单元,用于对于所述复合视频流中未经编码的视频信号进行预测,得到对所述未经编码的视频信号进行编码的预测信息;
编码处理单元,用于基于得到的预测信息,对所述未经编码的视频信号进行编码处理;
其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据。
可选地,所述多路视频流中包含经过编码产生的视频码流。
其中,所述编码单元630包括:
语义解析单元,用于对于所述复合视频流中经过编码产生的视频码流进行语义解析,以获取所述经过编码产生的视频码流所经过的编码中的预测信息;
预测信息获取单元,用于根据所述所经过的编码中的预测信息,获取对所述经过编码产生的视频码流进行编码时的预测信息;
编码处理单元,用于基于获取的对所述经过编码产生的视频码流进行编码时的预测信息,对所述经过编码产生的视频码流进行编码处理;
其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据。
可选地,所述预测信息获取单元包括:
判断子单元,用于判断所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准是否相同;
确定子单元,用于如果相同,则将所述所经过的编码中的预测信息确定为对所述经过编码产生的视频码流进行编码时的预测信息。
可选地,所述确定子单元被配置为:
如果所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准不同,则:
根据所经过的编码中对所述视频码流进行帧内预测时确定的预测模式,确定对所述经过编码产生的视频码流进行编码时的预测模式;根据确定的预测模式对所述经过编码产生的视频码流进行帧内预测,以确定对所述经过编码产生的视频码流进行编码时的预测信息;
或者,
根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差;根据确定的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的预测信息。
可选地,所述确定子单元进一步被配置为:
根据所经过的编码中对所述视频码流进行帧间预测时产生的运动矢量偏差以及对所述复合视频流进行编码时视频编码标准对应的运动补偿的分数像素精度,计算对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
可选地,所述确定子单元进一步被配置为:
将计算得到的对所述经过编码产生的视频码流进行编码时的运动矢量偏差作为运动搜索的基准点,对所述经过编码产生的视频码流重新进行运动搜索,以获取对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,本申请的各个装置可采用专用集成电路(ASIC)或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数 据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
虽然前面特别示出并且描述了示例性实施例,但是本领域技术人员将会理解的是,在不背离权利要求书的精神和范围的情况下,在其形式和细节方面可以有所变化。

Claims (28)

  1. 一种多路视频流的编码方法,其特征在于,该编码方法包括以下步骤:
    获取待编码的多路视频流;
    对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流;
    对所述复合视频流进行编码,以生成一路视频码流。
  2. 根据权利要求1所述的编码方法,其中,对所述多路视频流代表的视频进行合成的步骤包括:
    根据所述多路视频流的解析度和预定的布局格式,确定所述多路视频流代表的视频的合成点位置;
    根据确定的合成点位置对所述多路视频流代表的视频进行合成处理,以生成所述一路复合视频流。
  3. 根据权利要求2所述的编码方法,其中,所述预定的布局格式为画中画格式,
    所述根据所述多路视频流的解析度和预定的布局格式,确定所述多路视频流代表的视频的合成点位置的步骤包括:
    将所述多路视频流中解析度最大的视频流代表的视频作为画中画的外视频,将所述多路视频流中其余视频流代表的视频作为画中画的内视频。
  4. 根据权利要求3所述的编码方法,其中,所述合成点位置相对于画中画的外视频的顶点或背景的顶点的坐标是基本编码单元的正整数倍。
  5. 根据权利要求3所述的编码方法,其中所述根据确定的合成点位置对所述多路视频流代表的视频进行合成处理,以生成所述一路复合视频流的步骤还包括:
    记录每个内视频与所述外视频的叠加区域在所述外视频上的区域坐标以及对应的编码宏块索引表,以在所述一路复合视频流中传输。
  6. 根据权利要求3所述的编码方法,其中,所述对所述复合视频流进行编码的步骤包括:
    对于所述一路复合视频流代表的视频中外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧间预测的运动搜索范围小于等于所述 叠加区域、预测编码中采用的帧内预测的预测来源在所述叠加区域内。
  7. 根据权利要求1所述的编码方法,其中,所述多路视频流中包含未经编码的视频信号。
  8. 根据权利要求7所述的编码方法,其中,所述对所述复合视频流进行编码,以生成一路视频码流的步骤包括:
    对于所述复合视频流中未经编码的视频信号进行预测,得到对所述未经编码的视频信号进行编码的预测信息;
    基于得到的预测信息,对所述未经编码的视频信号进行编码处理;
    其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据。
  9. 根据权利要求1所述的编码方法,其中,所述多路视频流中包含经过编码产生的视频码流。
  10. 根据权利要求9所述的编码方法,其中,所述对所述复合视频流进行编码,以生成一路视频码流的步骤包括:
    对于所述复合视频流中经过编码产生的视频码流进行语义解析,以获取所述经过编码产生的视频码流所经过的编码中的预测信息;
    根据所述所经过的编码中的预测信息,获取对所述经过编码产生的视频码流进行编码时的预测信息;
    基于获取的对所述经过编码产生的视频码流进行编码时的预测信息,对所述经过编码产生的视频码流进行编码处理;
    其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据。
  11. 根据权利要求10所述的编码方法,其中,所述根据所述所经过的编码中的预测信息,获取对所述复合视频流进行编码时的预测信息的步骤包括:
    判断所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准是否相同;
    如果相同,则将所述所经过的编码中的预测信息确定为对所述经过编码产生的视频码流进行编码时的预测信息。
  12. 根据权利要求11所述的编码方法,如果所述所经过的编码所采用的 视频编码标准与对所述复合视频流进行编码时的视频编码标准不同,则:
    根据所经过的编码中对所述视频码流进行帧内预测时确定的预测模式,确定对所述经过编码产生的视频码流进行编码时的预测模式;根据确定的预测模式对所述经过编码产生的视频码流进行帧内预测,以确定对所述经过编码产生的视频码流进行编码时的预测信息;
    或者
    根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差;根据确定的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的预测信息。
  13. 根据权利要求12所述的编码方法,其中,根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差的步骤包括:
    根据所经过的编码中对所述视频码流进行帧间预测时产生的运动矢量偏差以及对所述复合视频流进行编码时视频编码标准对应的运动补偿的分数像素精度,计算对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
  14. 根据权利要求13所述的编码方法,其中,根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差的步骤进一步包括:
    将计算得到的对所述经过编码产生的视频码流进行编码时的运动矢量偏差作为运动搜索的基准点,对所述经过编码产生的视频码流重新进行运动搜索,以获取对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
  15. 一种多路视频流的编码装置,其中,该编码装置包括:
    获取单元,用于获取待编码的多路视频流;
    合成单元,用于对所述多路视频流代表的视频进行合成,以生成代表合成后的视频的一路复合视频流;
    编码单元,用于对所述复合视频流进行编码,以生成一路视频码流。
  16. 根据权利要求15所述的编码装置,其中,所述合成单元包括:
    合成点位置确定单元,用于根据所述多路视频流的解析度和预定的布局 格式,确定所述多路视频流代表的视频的合成点位置;
    合成处理单元,用于根据确定的合成点位置对所述多路视频流代表的视频进行合成处理,以生成所述一路复合视频流。
  17. 根据权利要求16所述的编码装置,其中,所述预定的布局格式为画中画格式,所述合成点位置确定单元被配置为:
    将所述多路视频流中解析度最大的视频流代表的视频作为画中画的外视频,将所述多路视频流中其余视频流代表的视频作为画中画的内视频。
  18. 根据权利要求17所述的编码装置,其中,所述合成点位置相对于画中画的外视频的顶点或背景的顶点的坐标是基本编码单元的正整数倍。
  19. 根据权利要求17所述的编码装置,其中,所述合成处理单元被配置为:
    记录每个内视频与所述外视频的叠加区域在所述外视频上的区域坐标以及对应的编码宏块索引表,以在所述一路复合视频流中传输。
  20. 根据权利要求17所述的编码装置,其中,所述编码单元被配置为:
    对于所述一路复合视频流代表的视频中外视频与内视频的叠加区域的视频流的预测编码,预测编码中采用的帧间预测的运动搜索范围小于等于所述叠加区域、预测编码中采用的帧内预测的预测来源在所述叠加区域内。
  21. 根据权利要求15所述的编码装置,其中,所述多路视频流中包含未经编码的视频信号。
  22. 根据权利要求21所述的编码装置,其中,所述编码单元包括:
    预测单元,用于对于所述复合视频流中未经编码的视频信号进行预测,得到对所述未经编码的视频信号进行编码的预测信息;
    编码处理单元,用于基于得到的预测信息,对所述未经编码的视频信号进行编码处理;
    其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据。
  23. 根据权利要求15所述的编码装置,其中,所述多路视频流中包含经过编码产生的视频码流。
  24. 根据权利要求23所述的编码装置,其中,所述编码单元包括:
    语义解析单元,用于对于所述复合视频流中经过编码产生的视频码流进行语义解析,以获取所述经过编码产生的视频码流所经过的编码中的预测信息;
    预测信息获取单元,用于根据所述所经过的编码中的预测信息,获取对所述经过编码产生的视频码流进行编码时的预测信息;
    编码处理单元,用于基于获取的对所述经过编码产生的视频码流进行编码时的预测信息,对所述经过编码产生的视频码流进行编码处理;
    其中,所述预测信息包括:帧内预测得到的预测模式以及残差数据和/或帧间预测得到的参考帧索引、宏块划分方式、运动矢量、以及残差数据。
  25. 根据权利要求24所述的编码装置,其中,所述预测信息获取单元包括:
    判断子单元,用于判断所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准是否相同;
    确定子单元,用于如果相同,则将所述所经过的编码中的预测信息确定为对所述经过编码产生的视频码流进行编码时的预测信息。
  26. 根据权利要求25所述的编码装置,所述确定子单元被配置为:
    如果所述所经过的编码所采用的视频编码标准与对所述复合视频流进行编码时的视频编码标准不同,则:
    根据所经过的编码中对所述视频码流进行帧内预测时确定的预测模式,确定对所述经过编码产生的视频码流进行编码时的预测模式;根据确定的预测模式对所述经过编码产生的视频码流进行帧内预测,以确定对所述经过编码产生的视频码流进行编码时的预测信息;
    或者,
    根据所经过的编码中对所述视频码流进行帧间预测时得到的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的运动矢量偏差;根据确定的运动矢量偏差,确定对所述经过编码产生的视频码流进行编码时的预测信息。
  27. 根据权利要求26所述的编码装置,其中,所述确定子单元进一步被配置为:
    根据所经过的编码中对所述视频码流进行帧间预测时产生的运动矢量偏差以及对所述复合视频流进行编码时视频编码标准对应的运动补偿的分数像素精度,计算对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
  28. 根据权利要求27所述的编码装置,其中,所述确定子单元进一步被配置为:
    将计算得到的对所述经过编码产生的视频码流进行编码时的运动矢量偏差作为运动搜索的基准点,对所述经过编码产生的视频码流重新进行运动搜索,以获取对所述经过编码产生的视频码流进行编码时的运动矢量偏差。
PCT/CN2016/086872 2015-07-06 2016-06-23 一种多路视频流的编码方法及装置 WO2017005096A2 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510390923.7A CN106341622B (zh) 2015-07-06 2015-07-06 一种多路视频流的编码方法及装置
CN201510390923.7 2015-07-06

Publications (2)

Publication Number Publication Date
WO2017005096A2 true WO2017005096A2 (zh) 2017-01-12
WO2017005096A3 WO2017005096A3 (zh) 2017-02-23

Family

ID=57684679

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/086872 WO2017005096A2 (zh) 2015-07-06 2016-06-23 一种多路视频流的编码方法及装置

Country Status (2)

Country Link
CN (1) CN106341622B (zh)
WO (1) WO2017005096A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500871A (zh) * 2021-12-15 2022-05-13 山东信通电子股份有限公司 一种多路视频分析方法、设备及介质

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110392285B (zh) * 2018-04-23 2022-04-19 阿里巴巴集团控股有限公司 媒体流处理方法及装置
CN110012336B (zh) * 2019-03-12 2022-04-26 广州虎牙信息科技有限公司 直播界面的图片配置方法、终端及装置
CN110401820A (zh) * 2019-08-15 2019-11-01 北京迈格威科技有限公司 多路视频处理方法、装置、介质及电子设备
CN110691260A (zh) * 2019-10-21 2020-01-14 北京东方广视科技股份有限公司 Iptv多分屏编码播放控制方法及装置
CN111901572B (zh) * 2020-08-14 2022-03-18 广州盈可视电子科技有限公司 一种多路视频流合成方法、装置、设备及存储介质
CN115988258B (zh) * 2023-03-17 2023-06-23 广州佰锐网络科技有限公司 一种基于IoT设备的视频通信方法、存储介质及系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003212464A1 (en) * 2002-04-25 2003-11-10 Thomson Licensing S.A. Video resolution control for a web browser and video display
EP1383340A1 (en) * 2002-07-18 2004-01-21 Thomson Licensing S.A. Video apparatus
EP1667448A1 (en) * 2004-12-02 2006-06-07 Deutsche Thomson-Brandt Gmbh Method and apparatus for encoding and for decoding a main video signal and one or more auxiliary video signals
CA2647723A1 (en) * 2006-03-29 2007-10-11 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
CN100496129C (zh) * 2007-06-05 2009-06-03 南京大学 基于h.264多路视频转码复用的方法
CN102055949B (zh) * 2009-11-02 2013-10-02 华为终端有限公司 多媒体会议的录播方法、装置及系统、回播方法及装置
CN101778199B (zh) * 2010-02-09 2014-02-19 深圳市唯奥视讯技术有限公司 一种合成多路高清视频图像画面的实现方法
CN101820524A (zh) * 2010-03-22 2010-09-01 中兴通讯股份有限公司 用于电视会议的视频播放方法
CN101977305A (zh) * 2010-10-27 2011-02-16 北京中星微电子有限公司 一种视频处理方法及装置和系统
US9232218B2 (en) * 2012-03-01 2016-01-05 Connesta System and method for data insertion in video stream
CN104160694B (zh) * 2012-03-13 2018-08-28 瑞典爱立信有限公司 已编码视频流的混合
CN102724433A (zh) * 2012-06-18 2012-10-10 深圳锐取信息技术股份有限公司 一种实现多种视频信号画面合成的方法与装置
US9118807B2 (en) * 2013-03-15 2015-08-25 Cisco Technology, Inc. Split frame multistream encode
CN104243999B (zh) * 2013-06-09 2018-02-23 中国移动通信集团公司 一种视频编码方法和平台侧服务器
CN111800641B (zh) * 2013-06-13 2023-08-25 上海天荷电子信息有限公司 同模式采用不同种类重构像素的图像编码解码方法和装置
KR101459557B1 (ko) * 2013-07-15 2014-11-17 주식회사 케이티 실시간 시청률에 기반한 모자이크 채널 가이드를 제공하는 서버 및 방법
CN103686047A (zh) * 2013-12-18 2014-03-26 电子科技大学 一种多路视频数据传输方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500871A (zh) * 2021-12-15 2022-05-13 山东信通电子股份有限公司 一种多路视频分析方法、设备及介质
CN114500871B (zh) * 2021-12-15 2023-11-14 山东信通电子股份有限公司 一种多路视频分析方法、设备及介质

Also Published As

Publication number Publication date
WO2017005096A3 (zh) 2017-02-23
CN106341622B (zh) 2020-01-24
CN106341622A (zh) 2017-01-18

Similar Documents

Publication Publication Date Title
WO2017005096A2 (zh) 一种多路视频流的编码方法及装置
US20060013308A1 (en) Method and apparatus for scalably encoding and decoding color video
WO2020083403A1 (zh) 图像预测方法及装置
US20240098298A1 (en) Segmentation-based parameterized motion models
JP7332703B2 (ja) クロマサブブロックのアフィンベースのインター予測のための方法及び装置
CN112789851B (zh) 视频解码方法、装置、电子设备及可读存储介质
WO2017129023A1 (zh) 解码方法、编码方法、解码设备和编码设备
KR20060105407A (ko) 영상 신호의 스케일러블 인코딩 및 디코딩 방법
JP2021517392A (ja) ビデオ符号化のための方法及び装置
KR20080093386A (ko) 컬러 동영상 신축 부호화와 복호화 방법 및 그 장치
CN113796071A (zh) 编码器、解码器及用于ibc融合列表的相应方法
JP2022522571A (ja) 任意のctuサイズのためのibc検索範囲最適化を用いるエンコーダ、デコーダおよび対応する方法
WO2020103800A1 (zh) 视频解码方法和视频解码器
CN113545063A (zh) 使用线性模型进行帧内预测的方法及装置
JP2018517317A (ja) ビデオコーディングシステムにおける残差変換及び逆変換方法
WO2020038378A1 (zh) 色度块预测方法及装置
WO2015091360A1 (en) Method for coding a sequence of pictures and method for decoding a bitstream and corresponding devices
JP2023126795A (ja) ビデオコーディングにおけるクロマイントラ予測のための方法及び装置
CN113597769A (zh) 基于光流的视频帧间预测
US9781447B1 (en) Correlation based inter-plane prediction encoding and decoding
JP6457248B2 (ja) 画像復号装置、画像符号化装置および画像復号方法
US10225573B1 (en) Video coding using parameterized motion models
JP7436526B2 (ja) 非線形適応ループフィルタのためのクリッピングレベル
CN113557727B (zh) 一种视频解码方法和相关装置
JP7279084B2 (ja) イントラ予測のための方法及び装置

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

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16820747

Country of ref document: EP

Kind code of ref document: A2