WO2009014667A1 - Adaptation d'un signal vidéo codé pour coder une complexité - Google Patents
Adaptation d'un signal vidéo codé pour coder une complexité Download PDFInfo
- Publication number
- WO2009014667A1 WO2009014667A1 PCT/US2008/008837 US2008008837W WO2009014667A1 WO 2009014667 A1 WO2009014667 A1 WO 2009014667A1 US 2008008837 W US2008008837 W US 2008008837W WO 2009014667 A1 WO2009014667 A1 WO 2009014667A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- video signal
- encoded video
- encoded
- syntax bits
- bits
- Prior art date
Links
- 239000013598 vector Substances 0.000 claims description 17
- 230000007246 mechanism Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234318—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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 block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234381—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2381—Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2383—Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
Definitions
- Video encoding may be employed to reduce an amount of data in a video.
- video encoding may be used to transform a series of video frames of a video into an encoded video signal that carries substantially fewer bits than the original video frames while retaining much of the visual information contained in the original video frames .
- Video encoding may include decomposing each video frame of a video into a set of sub-blocks, known as macro-blocks, encoding each macro-block, and sending each encoded macro-block in an encoded video signal along with a set of mode bits for each encoded macro-block that specify a prediction mode for the corresponding encoded macro-block.
- Prediction modes may include INTER modes for prediction among adjacent frames, e.g. motion estimation, and INTRA modes for predicting video content within individual video frames.
- a video encoder may alter encoding complexity in response to a variety of encoding constraints. For example, a video encoder may alter encoding complexity by increasing or decreasing the number of prediction modes searched when encoding the macro- blocks of a video frame. When fewer modes are searched in the interest of complexity, the bit-rate typically increases for the same desired quality resulting in a loss, of efficiency. Unfortunately, prior video encoding systems do not provide such mechanisms for adapting a video encoding signal to changes in encoding complexity and addressing the loss of efficiency.
- Video communication includes adapting an encoded video signal to an encoding complexity used to derive a set of encoded data from a series of video frames.
- Figure 1 shows a video system that incorporates the present teachings
- FIG. 1 illustrates an encoded video signal according to the present teachings
- Figures 3a-3b shows a set of entropy coders in an encoder and a set of entropy decoders in a decoder.
- FIG. 1 shows a video system 100 that incorporates the present teachings .
- the video system 100 includes an encoder 10 that adapts an encoded video signal 12 to an encoding complexity used to derive a set of encoded data 90 from a series of video frames 14.
- the video system 100 includes a decoder 50 that evaluates the encoded video signal 12 in response to the encoding complexity specified in the encoded video signal 12.
- the encoded video signal 12 includes a set of syntax bits 16 for adapting the encoded video signal 12 to a desired encoding complexity based on restricted subset of a set of possible prediction modes .
- the restricted subset of the prediction modes may be based on complexity costs associated with implementing the prediction modes in the encoder 10.
- the decoder 50 reconstructs the video frames 14 from the encoded video signal 12 by evaluating the prediction modes identified in the encoded data 90 using the syntax bits 16.
- Figure 2 illustrates the encoded video signal 12 in one embodiment.
- the encoded data 90 in the encoded video signal 12 includes a series of encoded macro- blocks 30-32 and corresponding mode indicators 40-42.
- Each mode indicator 40-42 identifies a prediction mode for decoding the corresponding encoded macro- block 30-32.
- the mode indicator 40 identifies a prediction mode for the encoded macro- block 30 .
- the syntax bits 16 are carried in a higher level 22 of the encoded video signal 12, i.e. in a level above a level that carries the encoded macro-blocks 30-32 and corresponding mode indicators 40-42, so that the decoder 50 may readily apply the syntax bits 16 to all of the mode indicators 40-42.
- the higher level 22 may be a slice level, a frame level or group of pictures (GOP) level of the encoded video signal 12 according to a video encoding standard.
- the encoded video signal may include provisions for carrying the syntax bits 16 in multiple levels of the bit-stream, where information at the lower levels is used to supercede the information at the higher levels .
- the syntax bits 16 inform the decoder 50 of a subset of a set of possible prediction modes that were searched by the encoder 10 when it generated the encoded macro-blocks 30-32 so that the decoder 50 may properly evaluate the mode indicators 40-42.
- the encoder 10 uses the syntax bits 16 to signal to the decoder 50 the m prediction modes that were searched when the encoded macro-blocks 30-32 were generated.
- the encoder 10 generates the mode indicators 40-42 using an entropy coder that corresponds to the subset of prediction modes indicated in syntax bits 16.
- the decoder 50 evaluates the mode indicators 40-42 using the entropy decoder corresponding to the subset indicated in the syntax bits 16.
- each subset indicated in syntax bits 16 correspond to an entropy encoder and decoder pair that are used to encode and decode the mode indicators 40-42 in the encoder and decoder respectively.
- the information provided in the syntax bits 16 enable adaptation of the mode indicators 40-42 to the number of prediction modes m.
- each mode indicators 40-42 consumes 5 bits in the encoded video signal 12
- if m 8 then each mode indicator 40-42 only consumes 3 bits in the encoded video signal 12.
- This can yield substantial bit savings in the encoded video signal 12 because there are numerous of the mode indicators 40-42 in the encoded video signal 12.
- this applies to any entropy coder-decoder pair that is used for the mode indicators .
- the bit-map in the syntax bits 16 enable the decoder 50 to map the mode indicators 40-42 into the actual prediction modes of the n possible when decoding the encoded macro-blocks 30-32.
- a value of 1 for the mode indicator 40 informs the decoder 50 that the first prediction mode applies to the encoded macro-block 30 and a value of 3 for the model indicator 41 informs the decoder 50 that the 5 th prediction mode applies to the encoded macro-block 31.
- Figures 3a-3b shows a set of entropy coders 200- 210 in the encoder 10 and a set of entropy decoders 100-110 in the decoder 50. Each entropy coder 200-210 corresponds to a possible selection of m prediction modes from the n possible prediction modes.
- each entropy decoder 100-110 corresponds to a possible selection of m prediction modes from the n possible prediction modes so that the entropy decoder 100 corresponds to the entropy coder 200 and the entropy decoder 102 corresponds to the entropy coder 202, etc.
- the total number of entropy coders 200-210 is equal to the number of possible subset selections i.e. is equal to 2 n -l, where the trivial case of no modes selected has been dropped. Similarly, the total number of entropy decoders 100-110 is equal to 2 n -l.
- the encoder 10 decides the subset of prediction modes to use based on complexity considerations and indicates that in the syntax bits 16. It also uses one entropy coder from the set of entropy coders 200-210 corresponding to the chosen subset, to indicate the chosen modes for the encoded macroblocks 30-32 generating the mode indicators 40-42.
- the decoder 50 uses the information contained in the syntax bits 16 in the encoded video signal 12 to select one of the entropy decoders 100-110 for handling the encoded macro- blocks 30-32 and corresponding mode indicators 40-42. Each new set of syntax bits 16 in the encoded video signal 12 may be used to reselect the entropy decoders 100-110 as the encoded video signal 12 may adapt over time to encoding complexity.
- a constraint may be placed on the possible subsets of the n possible prediction modes.
- a constraint on the number of possible subsets may be used to reduce the number of entropy coders .
- only a set of t possible subsets of the n possible prediction modes is allowed, where t is less than or equal to 2 n -l.
- a coding mechanism may be implemented in the syntax bits 16 to specify which of the t possible subsets is in effect.
- the syntax bits 16 need only carry a number between 1 and n. Only n possible entropy- coders are required, i.e. one for each of the n subset selections. Another advantage of this restriction is that a single parametric entropy coder may be designed based on the number of modes selection. For example, a set of terminated infinite tree-codes (Exp-Golomb, etc.) codes can be used because the modes are typically ordered based on frequency of occurrence.
- n a smaller number 1 (l ⁇ n) may be allowed in the ordered list.
- the syntax bits 16 then carry a number between 1 and 1 to specify the exact subset. Only 1 entropy coders are required, i.e. one for each of the 1 selections.
- the encoded macro-blocks 30-32 that are encoded using an INTER prediction mode convey a set of motion vectors.
- a motion vector is an x,y data pair in which x and y have a resolution specified in a video encoding standard used in the video system 100.
- the H.264/AVC video encoding standard for example, specifies 1/4 -pixel resolution for motion vectors. In future video encoding standards, even higher resolution, for example 1/8-pixel or l/16-pixel may be supported.
- a video encoding standard that imposes a requirement of relatively high resolution, e.g. 1/4- pixel resolution, for motion vectors increases the complexity of video encoding performed by the encoder 10. For example, generating motion vectors having a relatively high resolution requires a relatively high complexity for both searching for the motion vectors and interpolation of the reference video frames.
- the encoder 10 may reduce the resolution of the motion vectors to yield a substantial complexity reduction. For example, the encoder 10 may reduce the resolution of the motion vector search to only 1/2 -pixel even if the video encoding standard in use specifies a 1/4- pixel or higher resolution.
- the encoder 10 signals the reduction in motion vector pixel resolution to the decoder 50 using a set of additional syntax bits that are carried in a higher level of the encoded video signal 12, e.g. the frame level or the GOP level.
- the additional syntax bits enable the decoder 50 to correctly use the motion vectors carried in the encoded macro-blocks 30-32.
- the lower resolution motion vectors carried in the encoded video signal 12 reduce the bit rate of the encoded video signal 12 in comparison to full resolution of the motion vectors specified in a video encoding standard.
- motion vector resolution modes there are p possible motion vector resolution modes that may be employed by the encoder 10.
- the additional syntax bits in the encoded video signal 12 that specify motion vector resolution specify a number between 1 and p that indicates which of the p resolution modes are applicable to the motion vectors in the encoded video signal 12.
- a video encoding standard may be used to specify which index between 1 and p maps to which resolution.
- Each possible resolution corresponds to an entropy coder for the motion vectors which results in p entropy coders.
- the entropy coders may be parameterized and derived from a single parent.
- the 4 entropy coders may be derived from a parent integer-pixel entropy coder and then adding fixed-length bits for increasing the resolution progressively to 1/2, 1/4 or 1/8 -pixel resolution.
- the encoded video signal may include provisions for carrying the additional syntax bits in multiple levels of the bit-stream, such as GOP, frame, slice or macroblock level in high to low level order, where information at the lower levels is generally used to supercede the information at the higher levels.
- levels of the bit-stream such as GOP, frame, slice or macroblock level in high to low level order, where information at the lower levels is generally used to supercede the information at the higher levels.
- information at the lower levels is generally used to supercede the information at the higher levels.
- the frame level as explained below.
- the additional syntax bits that apply at the frame or GOP level of the encoded video signal 12 determines the interpolation that needs to be conducted on reference video frames at both the encoder 10 and the decoder 50.
- the resolution may be reduced further from the resolution specified in the additional syntax bits at the frame or GOP level that is effective at the frame level. For example, if the frame level syntax bits specify 1/4 -pixel resolution, then within the frame at a slice level a set of slice level syntax bits may further reduce resolution to 1/2 -pixel resolution. The resolution cannot be increased beyond that effective at the frame level of the encoded video signal 12.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
L'invention porte sur des techniques pour adapter un signal vidéo codé 12 à une complexité de codage vidéo, lesquelles techniques peuvent être utilisées pour réduire un débit binaire d'un signal vidéo codé 12 lorsque la complexité est réduite. Une communication vidéo selon les présentes techniques comprend l'adaptation d'un signal vidéo codé 12 à une complexité de codage utilisée pour déduire un ensemble de données codées 90 à partir d'une série de trames vidéo 14.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US96159407P | 2007-07-22 | 2007-07-22 | |
US60/961,594 | 2007-07-22 | ||
US11/888,135 US8208550B2 (en) | 2007-07-31 | 2007-07-31 | Adapting an encoded video signal to encoding complexity |
US11/888,135 | 2007-07-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009014667A1 true WO2009014667A1 (fr) | 2009-01-29 |
Family
ID=40281658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2008/008837 WO2009014667A1 (fr) | 2007-07-22 | 2008-07-18 | Adaptation d'un signal vidéo codé pour coder une complexité |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2009014667A1 (fr) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752601A (zh) * | 2012-07-30 | 2012-10-24 | 宁波大学 | 一种m-jpeg图像的传输方法及接收端数据丢包修复方法 |
CN103430563A (zh) * | 2010-12-23 | 2013-12-04 | 雅虎公司 | 信号驱动的交互式电视 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167087A (en) * | 1996-12-03 | 2000-12-26 | Sony Corporation | Picture signal encoding method and apparatus and signal recording medium |
US6493386B1 (en) * | 2000-02-02 | 2002-12-10 | Mitsubishi Electric Research Laboratories, Inc. | Object based bitstream transcoder |
US20030219160A1 (en) * | 2002-05-22 | 2003-11-27 | Samsung Electronics Co., Ltd. | Method of adaptively encoding and decoding motion image and apparatus therefor |
US20070009047A1 (en) * | 2005-07-08 | 2007-01-11 | Samsung Electronics Co., Ltd. | Method and apparatus for hybrid entropy encoding and decoding |
-
2008
- 2008-07-18 WO PCT/US2008/008837 patent/WO2009014667A1/fr active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167087A (en) * | 1996-12-03 | 2000-12-26 | Sony Corporation | Picture signal encoding method and apparatus and signal recording medium |
US6493386B1 (en) * | 2000-02-02 | 2002-12-10 | Mitsubishi Electric Research Laboratories, Inc. | Object based bitstream transcoder |
US20030219160A1 (en) * | 2002-05-22 | 2003-11-27 | Samsung Electronics Co., Ltd. | Method of adaptively encoding and decoding motion image and apparatus therefor |
US20070009047A1 (en) * | 2005-07-08 | 2007-01-11 | Samsung Electronics Co., Ltd. | Method and apparatus for hybrid entropy encoding and decoding |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103430563A (zh) * | 2010-12-23 | 2013-12-04 | 雅虎公司 | 信号驱动的交互式电视 |
CN102752601A (zh) * | 2012-07-30 | 2012-10-24 | 宁波大学 | 一种m-jpeg图像的传输方法及接收端数据丢包修复方法 |
CN102752601B (zh) * | 2012-07-30 | 2014-10-08 | 宁波大学 | 一种m-jpeg图像的传输方法及接收端数据丢包修复方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8208550B2 (en) | Adapting an encoded video signal to encoding complexity | |
JP6739770B2 (ja) | 強化されたcabac復号を用いた画像復号装置 | |
US10687058B2 (en) | Method and apparatus for coding of intra prediction mode | |
US20230276074A1 (en) | Methods and apparatus for improved entropy encoding and decoding | |
CN102150428B (zh) | 用于使用自适应分段的视频编码的系统和方法 | |
CN106131576B (zh) | 使用四叉树结构的视频解码方法、编码设备和解码设备 | |
CN101669370B (zh) | 具有下采样参考图片的视角间预测 | |
US20130114686A1 (en) | Video decoder with enhanced cabac motion vector decoding | |
TWI796553B (zh) | 用於混成視訊寫碼工具之使用案例驅動脈絡模型選擇技術 | |
CN104380750A (zh) | 用于确定图像的参考画面集的方法和设备 | |
WO2009014667A1 (fr) | Adaptation d'un signal vidéo codé pour coder une complexité | |
AU2012203688A1 (en) | Video encoding and decoding using reference pictures | |
Habermann et al. | A bin-based bitstream partitioning approach for parallel CABAC decoding in next generation video coding | |
CN105122800A (zh) | 视频信号处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08794602 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: 08794602 Country of ref document: EP Kind code of ref document: A1 |