CN110446047A - The coding/decoding method and device of video code flow - Google Patents
The coding/decoding method and device of video code flow Download PDFInfo
- Publication number
- CN110446047A CN110446047A CN201910757405.2A CN201910757405A CN110446047A CN 110446047 A CN110446047 A CN 110446047A CN 201910757405 A CN201910757405 A CN 201910757405A CN 110446047 A CN110446047 A CN 110446047A
- Authority
- CN
- China
- Prior art keywords
- type
- band
- nal unit
- decoded
- macro block
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000033001 locomotion Effects 0.000 claims description 21
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims description 4
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 4
- 235000008434 ginseng Nutrition 0.000 claims description 4
- 240000002853 Nelumbo nucifera Species 0.000 claims 1
- 235000006508 Nelumbo nucifera Nutrition 0.000 claims 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 claims 1
- 244000131316 Panax pseudoginseng Species 0.000 claims 1
- 230000006870 function Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 239000003550 marker Substances 0.000 description 4
- 241000208340 Araliaceae Species 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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
- 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/184—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 bits, e.g. of the compressed video stream
-
- 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/186—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 a colour or a chrominance component
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- 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/234327—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 layers, e.g. base layer and one or more enhancement layers
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440227—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The present invention provides the coding/decoding method and device of a kind of video code flow, this method comprises: the data of the current NAL unit in parsing video code flow, obtain the type of the current NAL unit;If the type of the current NAL unit is parameter set, the parameter information for interpreting sequence parameter set or image parameter concentration is obtained;If the type of the current NAL unit is not parameter set, the raw byte sequence payload RBSP in the data of the current NAL unit is obtained, and realizes the decoding of video code flow using the RBSP.Based on coding/decoding method provided by the invention, the decoding of video code flow can be carried out using means corresponding with type for the difference of the type of the current NAL unit in video code flow;Also, video decoding standards of new generation H.264/AVC in, NAL unit is the basic unit of video code flow, and therefore, the coding/decoding method of video code flow provided in an embodiment of the present invention meets the video decoding requirements of video decoding standards of new generation H.264/AVC.
Description
Technical field
This application involves decoding technique field more particularly to the coding/decoding methods and device of a kind of video code flow.
Background technique
With the continuous progress of science and technology, the importance of information is self-evident for us.According to statistics, people pass through vision
The information content of acquisition accounts for about the 70% of gross information content, and as the carrier of information, video image has significant compared to voice and text
Ground advantage.Intuitive, certainty, high efficiency, popularity, the spies such as high bandwidth of vision signal determine video than other
Information carrier has wider application, generates more deep effect to people's production and life mode.
With the application of 5g technology of Internet of things, the continuous development of AI technology, the video image information content to be carried is more next
It is bigger, it is totally unfavorable for the storage of information and transmission in this way, it also has become and restricts the widely applied bottleneck of video image communication
Problem, the requirement to Video coding is higher and higher, has become a key technology of field of video applications.
As coding and decoding video algorithm is more and more mature, more and more efficiently, video encoding and decoding standard is also continued to introduce new,
H.264/AVC, video decoding standards of new generation come into being.H.264/AVC for video decoding standards of new generation, one kind is needed
Meet the coding/decoding method of the video image of its standard decoding request.
Summary of the invention
Based on above-mentioned the deficiencies in the prior art, the application proposes the coding/decoding method and device of a kind of video code flow, to meet
The video decoding requirements of video decoding standards of new generation H.264/AVC.
To solve the above problems, the scheme now proposed is as follows:
First aspect of the embodiment of the present invention provides a kind of coding/decoding method of video code flow, comprising:
The data for parsing the current NAL unit in video code flow, obtain the type of the current NAL unit;
If the type of the current NAL unit is parameter set, obtains and interpret sequence parameter set or image parameter concentration
Parameter information;
If the type of the current NAL unit is not parameter set, the original word in the data of the current NAL unit is obtained
Sequence payload RBSP is saved, and realizes the decoding of video code flow using the RBSP.
Optionally, the data of the current NAL unit in the parsing video code flow, obtain the class of the current NAL unit
Type, comprising:
Identify the type bit of the current NAL unit;Wherein, the type bit is located at the head letter of the current NAL unit
Breath;
According to the recognition result of the type bit of the current NAL unit, the type of the current NAL unit is obtained.
Optionally, the decoding that video code flow is realized using the raw byte sequence payload RBSP, comprising:
Identify the type of each of RBSP band;
According to the type of each band, using the decoding algorithm corresponding with the type of the band to the item
The strip data of band is decoded.
Optionally, the type according to each band utilizes the decoding corresponding with the type of the band
Algorithm is decoded the strip data of the band, comprising:
The type for identifying the band is not the band of predefined type, then judges whether entropy coding is CAVLC;Wherein,
The band of the predefined type includes the band of intraframe coding and the band of switching intraframe coding;
If judging, the entropy coding is CAVLC, obtains from the RBSP and is solved using brother's Boulogne encryption algorithm
The numerical value for the image skipped blocks that code obtains;
Using the numerical value of described image skipped blocks, the macro block to be decoded in the band is determined;
The macro block to be decoded is decoded.
It is optionally, described that the macro block to be decoded is decoded, comprising:
Obtain the macro block (mb) type of the macro block to be decoded;
According to the macro block (mb) type of the macro block to be decoded, judgement is jumped into sub-macroblock type state machine or macroblock prediction mould
Bulk state machine;
Under the macroblock prediction module status machine, the macro block (mb) type of the macro block to be decoded, identification prediction mode are utilized;
If identifying, the prediction mode is intra prediction mode, and the intra prediction mould of 4*4 luminance block is obtained from code stream
The value of formula label;Wherein, if the intra prediction mode of the 4*4 luminance block is labeled as 0, the value of true predictive mode is obtained;
If identifying, the prediction mode is inter-frame forecast mode, passes through the function identification prediction mode of macro block (mb) type;
If identifying the prediction mode not is to export the residual error of the serial number and motion vector L0 with reference to queue L0 with reference to queue L1 mode
Value;If identifying the prediction mode not and being the serial number and motion vector L1 exported with reference to queue L0 mode with reference to queue L1
Residual values;
Under the sub-macroblock type state machine, the sub-macroblock class of each sub-macroblock in the macro block to be decoded is utilized
Type identifies the prediction mode of each sub-macroblock;
If the prediction mode of the sub-macroblock is not to export the serial number and movement with reference to queue L0 with reference to queue L1 mode
The residual values of vector L0.
Second aspect of the embodiment of the present invention provides a kind of decoding apparatus of video code flow, comprising:
It is mono- to obtain the current NAL for parsing the data of the current NAL unit in video code flow for NALU parsing module
The type of member;
The parsing module of parameter set obtains if the type for the current NAL unit is parameter set and interprets sequence ginseng
The parameter information that manifold or image parameter are concentrated;
The parsing module of slice header obtains described current if the type for the current NAL unit is not parameter set
Raw byte sequence payload RBSP in the data of NAL unit;
The parsing module of strip data, for realizing the decoding of video code flow using the RBSP.
Optionally, the data of the current NAL unit in the NALU parsing module parsing video code flow, obtain described current
When the type of NAL unit, it is used for:
Identify the type bit of the current NAL unit;Wherein, the type bit is located at the head letter of the current NAL unit
Breath;According to the recognition result of the type bit of the current NAL unit, the type of the current NAL unit is obtained.
Optionally, it when the parsing module of the strip data realizes the decoding of video code flow using the RBSP, is used for:
Identify the type of each of RBSP band;According to the type of each band, described and institute is utilized
The corresponding decoding algorithm of type for stating band is decoded the strip data of the band.
Optionally, the parsing module of the strip data utilizes the described and item according to the type of each band
When the corresponding decoding algorithm of the type of band is decoded the strip data of the band, it is used for:
The type for identifying the band is not the band of predefined type, then judges whether entropy coding is CAVLC;Wherein,
The band of the predefined type includes the band of intraframe coding and the band of switching intraframe coding;
If judging, the entropy coding is CAVLC, obtains from the RBSP and is solved using brother's Boulogne encryption algorithm
The numerical value for the image skipped blocks that code obtains;
Using the numerical value of described image skipped blocks, the macro block to be decoded in the band is determined;
The macro block to be decoded is decoded.
Optionally, it when the parsing module of the strip data is decoded the macro block to be decoded, is used for:
Obtain the macro block (mb) type of the macro block to be decoded;
According to the macro block (mb) type of the macro block to be decoded, judgement is jumped into sub-macroblock type state machine or macroblock prediction mould
Bulk state machine;
Under the macroblock prediction module status machine, the macro block (mb) type of the macro block to be decoded, identification prediction mode are utilized;
If identifying, the prediction mode is intra prediction mode, and the intra prediction mould of 4*4 luminance block is obtained from code stream
The value of formula label;Wherein, if the intra prediction mode of the 4*4 luminance block is labeled as 0, the value of true predictive mode is obtained;
If identifying, the prediction mode is inter-frame forecast mode, passes through the function identification prediction mode of macro block (mb) type;
If identifying the prediction mode not is to export the residual error of the serial number and motion vector L0 with reference to queue L0 with reference to queue L1 mode
Value;If identifying the prediction mode not and being the serial number and motion vector L1 exported with reference to queue L0 mode with reference to queue L1
Residual values;
Under the sub-macroblock type state machine, the sub-macroblock class of each sub-macroblock in the macro block to be decoded is utilized
Type identifies the prediction mode of each sub-macroblock;
If the prediction mode of the sub-macroblock is not to export the serial number and movement with reference to queue L0 with reference to queue L1 mode
The residual values of vector L0.
It can be seen from the above technical proposal that in the coding/decoding method and device of video code flow provided by the present application, parsing view
The data of current NAL unit in frequency code stream obtain the type of current NAL unit;It is parameter set in the type of current NAL unit
In the case where, obtain the parameter information for interpreting sequence parameter set or image parameter concentration;It is not in the type of current NAL unit
In the case where parameter set, the raw byte sequence payload RBSP in the data of current NAL unit is obtained, and realize view using RBSP
The decoding of frequency code stream, it can thus be seen that the difference of the type for the current NAL unit in video code flow, use and type
Corresponding means carry out the decoding of video code flow, also, video decoding standards of new generation H.264/AVC in, NAL unit is view
The basic unit of frequency code stream, it is thereby achieved that meeting the video decoding requirements of video decoding standards of new generation H.264/AVC.
Detailed description of the invention
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below
There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this
The embodiment of invention for those of ordinary skill in the art without creative efforts, can also basis
The attached drawing of offer obtains other attached drawings.
Fig. 1 is the structural schematic diagram of video code flow H.264;
Fig. 2 is a kind of flow chart of the coding/decoding method of video code flow provided in an embodiment of the present invention;
Fig. 3 is a kind of flow chart of embodiment of step S201 provided in an embodiment of the present invention;
Fig. 4 is a kind of flow chart of embodiment of step S203 provided by the embodiments of the present application;
Fig. 5 is a kind of flow chart of embodiment of step S402 provided by the embodiments of the present application;
Fig. 6 is a kind of flow chart of embodiment of step S504 provided by the embodiments of the present application;
Fig. 7 is a kind of structural schematic diagram of the decoding apparatus of video code flow provided in an embodiment of the present invention.
Specific embodiment
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other
Embodiment shall fall within the protection scope of the present invention.
In H.264/AVC video encoding standard, whole system frame has been divided into two levels: Video coding level
(VCL) and network abstraction level (NAL).Wherein, the former is responsible for effectively indicating the content of video data, and the latter is then responsible for format
Change data and simultaneously provide information, to guarantee transmission that data are suitble on various channels and storage medium.
Referring to Fig. 1, in video code flow H.264, NAL unit (also referred to as NALU) is the basic syntax structure of NAL,
Head information comprising byte and a series of byte streams for being known as raw byte sequence payload (RBSP) from VCL.Also,
When video code flow is previously stored on medium, add initial code before each NALU: 0x00000001 or 0x000001 is used to refer to
The starting of one NALU and final position.
The head information of NALU, grammer are as follows:
+---------------+
|0|1|2|3|4|5|6|7|
+-+-+-+-+-+-+-+-+
|F|NRI|Type|
+---------------+
Wherein, F:1 bit, forbidden_zero_bit.This position is defined in the h .264 specifications is necessary for 0.
NRI:2 bit, nal_ref_idc take 00~11.
Type:5 bit, nal_unit_type refer to the type of NALU unit.
The type for the NALU unit that nal_unit_type is referred to is as follows:
0 does not define
The encoding strip thereof (bp frame) of 1 one non-IDR images
slice_layer_without_partitioning_rbsp()
2 encoding strip thereof data divide block A
slice_data_partition_a_layer_rbsp()
3 encoding strip thereof data divide block B
slice_data_partition_b_layer_rbsp()
4 encoding strip thereof data divide block C
slice_data_partition_c_layer_rbsp()
The encoding strip thereof (i frame) of 5 IDR images
slice_layer_without_partitioning_rbsp()
6 Supplemental Enhancement Informations (SEI)
sei_rbsp()
7 sequence parameter sets (sps frame)
seq_parameter_set_rbsp()
8 picture parameter sets
Pic_parameter_set_rbsp (pps frame)
9 access unit delimiters
access_unit_delimiter_rbsp()
The ending of 10 sequences
end_of_seq_rbsp()
11 stream endings
end_of_stream_rbsp()
12 filling data
filler_data_rbsp()
13 sequence parameter set extensions
seq_parameter_set_extension_rbsp()
14...18 retain
The encoding strip thereof of 19 undivided auxiliaring coding images
slice_layer_without_partitioning_rbsp()
20...23 retain
The combination packet of 24 STAP-A single time
The combination packet of 25 STAP-B single time
The combination packet of 26 MTAP16 more a times
The combination packet of 27 MTAP24 more a times
The unit of 28 FU-A fragments
The unit of 29 FU-B fragments
30-31 is not defined
It should also be noted that, one video image can be encoded into one or more bands (Slice) see also Fig. 1,
Each band includes integer macro block (MB), i.e., each at least one MB of band, each band includes whole image when most
Macro block.Video image is encoded the information of the band formed, can form the RBSP in NAL unit.Each Slice is all in all
All consist of two parts, a part is used as Slice header, for saving the overall information of Slice, another part Slice
Data, usually one group of continuous macroblock structure (Macroblock layer) or macroblock skip information.
Specifically, the information of some overall situations of slice is mainly saved in Slice header, the macro block in slice data
These information need to be relied on when being decoded.Wherein, relatively common some syntactic elements have:
First_mb_in_slice: position of first macro block for including in current slice in whole frame.
Slice_type: the type of current slice.
Pic_parameter_set_id: the id for the pps that current slice is relied on.
Colour_plane_id: when marker separate_colour_plane_flag is true, colour_
Plane_id indicates current color component, and 0,1,2 respectively indicate Y, U, V component.
Frame_num: a kind of metering method of current frame number is indicated.
Field_pic_flag: field code identification position.Indicate that current slice is compiled according to field when the marker is 1
Code;The marker indicates that current slice is encoded according to frame when being 0.
Bottom_field_flag: bottom marker.The flag bit is the bottom that the 1 current slice of expression is a certain frame;
It is the top of a certain frame for the 0 current slice of expression.
Idr_pic_id: the serial number of every IDR frame is indicated.All slice, idr_pic_id belonging to some every IDR frame are answered
It is consistent.The value range of the value is [0,65535].
Pic_order_cnt_lsb: another metering method of current frame number is indicated.
Delta_pic_order_cnt_bottom: the calculation method of top field and bottom POC difference is indicated, there is no then write from memory
Think 0;
Slice_qp_delta: for calculating used initial qp value in current slice.
It should be pointed out that H.264 defining 5 kinds of Slice types in standard altogether, 5 kinds of Slice types can be by grammer member
Plain slice_type is illustrated.5 kinds of Slice types are respectively as follows:
I slice: the band of intraframe coding.
P slice: the band of unidirectional interframe encode.
B slice: the band of two-way interframe encode.
SI slice: switching I band is used for extending bitstreams switching in class.
SP slice: switching P band is used for extending bitstreams switching in class.
Slice data is mainly macroblock structure Macroblock layer composition one by one, in a macroblock structure
In, the syntactic element most started is mb_type, for illustrating the type of macro block.Slice data additionally, there may be some auxiliary
Information, the syntactic element in macroblock structure in Slice_data is mainly only following:
Cabac_alignment_one_bit: indicating if code stream enables CABAC algorithm, and code stream herein must
Several bits 1 must be used to realize byte-aligned.
Mb_skip_run and mb_skip_flag: the two syntactic elements are all used to indicate whether macroblock structure can be by
It skips.The macro block of " skipping " refers in the slice of inter-prediction, and it is macro to skip this when image-region is flat, in code stream
All data of block are only marked by the two syntactic elements without transmission.In decoding end, the macro block skipped passes through
Around reconstructed macro block restored.When mb_skip_run uses CAVLC for entropy coding, with a syntactic element
Indicate the number for the macro block continuously skipped;When mb_skip_flag uses CABAC for entropy coding, whether each macro block is indicated
It is skipped.
For the requirement for meeting above-mentioned H.264/AVC video encoding standard, the embodiment of the present application discloses a kind of video code flow
Coding/decoding method and device.
Specifically, the coding/decoding method of video code flow disclosed in one embodiment of the application, as described in Figure 2, comprising:
S201, parsing video code flow in current NAL unit data, determine the type of the current NAL unit.
Wherein, video code flow can be understood as being made of multiple NAL units, for the dress being decoded to video code flow
For setting, after receiving video code flow, each NAL unit that can include to video code flow is parsed, and therefore, each is worked as
The NAL unit of preceding parsing is then used as current NAL unit.
Also, in video code flow, initial position and the final position of each NAL unit are illustrated by initial code.Cause
This, distinguishes each of video code flow NAL unit by identifying the initial code.
Optionally, in another embodiment of the application, a kind of embodiment of this step can refer to Fig. 3, comprising:
The type bit of S301, the identification current NAL unit;Wherein, the type bit is located at the current NAL unit
Head information.
S302, the recognition result according to the type bit of the current NAL unit, obtain the type of the current NAL unit.
As shown in the above: the head information of NAL unit includes Type, i.e. type bit, and the type position is for illustrating
The type of NALU unit.Therefore, the data of the type position, the type of available NALU unit are identified.
If the type of S202, the current NAL unit are parameter sets, obtain and interpret sequence parameter set or image parameter
The parameter information of concentration.
Wherein, the type for identifying current NAL unit is parameter set, i.e. type in the head information of identification current NAL unit
Position, the type position statistics indicate that the type of the NAL unit is parameter set.Specifically, the NAL unit of Parameter Set Type includes
SPS type or PPS type.Therefore, the type bit in the head information by identifying current NAL unit, if for SPS type
Data or data for PPS type, to determine whether the type of current NAL unit is parameter set.
It is the number of the data either PPS type of SPS type if identifying the type bit in the head information of current NAL unit
According to, it is determined that the type of current NAL unit is parameter set.
It is parameter set in the type for identifying current NAL unit, then obtains and interpret sequence parameter set or picture parameter set
In parameter information.Specifically, obtaining if the type of current NAL unit is SPS type and interpreting the parameter that sequential parameter is concentrated
Information;If the type of current NAL unit is PPS type, the parameter information of image parameter concentration is obtained.
If the type of S203, the current NAL unit are not parameter sets, in the data for obtaining the current NAL unit
Raw byte sequence payload RBSP, and utilize the decoding of RBSP realization video code flow.
Wherein, if the type of current NAL unit is not parameter set, the data in current NAL unit can be solved
Code.Specifically, obtaining the raw byte sequence payload RBSP in the data of current NAL unit, and view is realized using the RBSP
The decoding of frequency code stream.
It should be noted that NAL unit can also be other types, see in above content in addition to being Parameter Set Type
To the description of the type of the nal_unit_type NALU unit referred to.Certainly, if the type of current NAL unit is not ginseng
Manifold then executes the raw byte sequence payload RBSP in the data for obtaining the current NAL unit, reference, current NAL
The type of unit is the life type in addition to Parameter Set Type, just executes subsequent operation.
In the coding/decoding method of video code flow provided by the present application, the data of the current NAL unit in video code flow are parsed, are obtained
To the type of current NAL unit;In the case where the type of current NAL unit is parameter set, obtain interpret sequence parameter set or
The parameter information that person's image parameter is concentrated;In the case where the type of current NAL unit is not parameter set, it is mono- to obtain current NAL
Raw byte sequence payload RBSP in the data of member, and using the decoding of RBSP realization video code flow, it can thus be seen that needle
To the difference of the type of the current NAL unit in video code flow, the decoding of video code flow is carried out using means corresponding with type,
Also, video decoding standards of new generation H.264/AVC in, NAL unit is the basic unit of video code flow, therefore, Ke Yishi
Now meet the video decoding requirements of video decoding standards of new generation H.264/AVC.
Optionally, it in another embodiment of the application, in the step S203 in above-described embodiment, is realized using the RBSP
A kind of decoded embodiment of video code flow, can refer to Fig. 4, comprising:
The type of each of S401, identification RBSP band.
S402, according to the type of each band, utilize the decoding algorithm pair corresponding with the type of the band
The strip data of the band is decoded.
Wherein, each NALU unit may include one or more band, each band includes slice header
(Slice header) and strip data (Slice data).Include slice_type, the i.e. type of band in slice header, is somebody's turn to do
Syntactic element is used to illustrate the type of current band.Therefore, it for each of RBSP band is stated, identifies in slice header
The content of slice_type determines the type of band.
After determining the type of each band, using the corresponding decoding algorithm of the type, to the strip data of band
It is decoded.
Optionally, in another embodiment of the application, a kind of embodiment of step S402, as shown in Figure 5, comprising:
S501, the type for identifying the band are not the bands of predefined type, then judge whether entropy coding is based on upper
Hereafter adaptive Variable Length Code CAVLC;Wherein, the band of the predefined type includes the band and switch frame of intraframe coding
The band of interior coding.
Wherein, the slice_type in the slice header of each band is parsed, judges whether the slice_type reflects
Band be intraframe coding band (also referred to as I slice) and switch intraframe coding band (also referred to as SI slice),
If it is determined that slice_type does not reflect that band is I slice, and does not reflect that band is SI slice yet, then by
Idle state transition is to Mb_skip_run state machine, under Mb_skip_run state machine, judges whether entropy coding is CAVLC.
Specifically, may determine that in strip data, whether entropy_coding_mode_flag=0 is true, to judge
Whether entropy coding is CAVLC.
If S502, judge the entropy coding be CAVLC, from the RBSP obtain using brother's Boulogne encryption algorithm into
The numerical value (also referred to as mb_skip_run numerical value) of the number for the image skipped blocks that row decoding obtains.
Wherein, mb_skip_run numerical value is as a syntactic element in strip data, for whether indicating macroblock structure
It can be skipped.The macroblock structure of " skipping " refers in the slice of inter-prediction, when image-region is flat, in code stream
All data for skipping this macro block, without transmission.Therefore, in decoding end, the macro block skipped is reconstructed by surrounding
Macro block is restored.When mb_skip_run uses CAVLC for entropy coding, indicate continuously to skip with a syntactic element
The number of macro block.
Specifically, obtaining mb_skip_ using brother's Boulogne encryption algorithm (also referred to as ue (v) decoding) decoded slices data
Run numerical value.
S503, using the mb_skip_run numerical value, determine the macro block to be decoded in the band.
Since mb_skip_run numerical value is for illustrating in the slice of inter-prediction, when image-region is flat, code stream
In skip all data of this macro block, without transmission.Therefore, in the decoding process of video code flow, the mb_ is utilized
Skip_run numerical value determines the macro block around the macro block being skipped, for restoring to the macro block being skipped.This is skipped
Macro block around macro block i.e. be used as macro block to be decoded.
S504, the macro block to be decoded is decoded.
It is decoded after completion, whether also to need to judge in the RBSP it should be noted that treating decoded macroblock
More data then need to jump back to idle state after having handled current decoded macroblock if any more data.
Optionally, in another embodiment of the application, a kind of specific embodiment of step S504, as shown in Figure 6, comprising:
S601, the macro block (mb) type for obtaining the macro block to be decoded.
Wherein, the syntactic element mb_type in macro block is used to illustrate the macro block (mb) type of macro block to be decoded, therefore, obtain to
The macro block (mb) type of decoded macroblock obtains the syntactic element mb_type of macro block to be decoded.
S602, according to the macro block (mb) type of the macro block to be decoded, judgement is jumped into sub-macroblock type state machine or macro block
Prediction mode (mb_pred) state machine.
Wherein, the syntactic element mb_type in macro block is parsed, and then to judge to need to jump into sub-macroblock type
(sub_mb_pred) state machine or macro-block skip mode (mb_pred) state machine.
S603, under macro-block skip mode state machine, utilize the macro block (mb) type of the macro block to be decoded, identification prediction mould
Formula.
It is pre- out of frame that obtain 4*4 luminance block in code stream if S604, identifying that the prediction mode is intra prediction mode
Survey the value of mode flag;Wherein, if the intra prediction mode of the 4*4 luminance block is labeled as 0, true predictive mode is obtained
It is worth the value of (rem_intra4x4_pred_mode).
Wherein, under mb_pred state machine, prediction mode is judged with syntactic element mb_type.If prediction mode (mb_
Type, 0) it is Intra_4x4 or Intra_16x16, then illustrate that prediction mode is intra prediction mode.In this mode, from
The intra prediction mode label of 4*4 luminance block, i.e. acquisition prev_intra4x4_pred_mode_flag are obtained in video code flow
Value obtain the value of true predictive mode, i.e. rem_intra4x4_ if prev_intra4x4_pred_mode_flag=0
The value of pred_mode.
If S605, identifying that the prediction mode is inter-frame forecast mode, pass through macro block (mb) type (also referred to as mb_
Type function identification prediction mode);If identifying the prediction mode not is to export with reference to queue L1 mode with reference to queue L0
Serial number and motion vector L0 residual values;If identifying the prediction mode not is to export with reference to queue L0 mode with reference to team
Arrange the serial number of L1 and the residual values of motion vector L1.
Equally, under macro-block skip mode mb_pred state machine, judge that prediction mode is with syntactic element mb_type
Inter-frame forecast mode passes through the function identification prediction mode of mb_type.Further, if not identifying the prediction mode ginseng
Queue L1 mode (Pred_L1) is examined, then exports serial number ref_idx_l0 [mbPartIdx] and motion vector L0 with reference to queue L0
Residual values mvd_l0 [mbPartIdx] [0] [compIdx].
If identifying the prediction mode not is to export the serial number with reference to queue L1 with reference to queue L0 mode (Pred_L0)
The residual values mvd_l1 [mbPartIdx] [0] [compIdx] of ref_idx_l1 [mbPartIdx] and motion vector L1.
S606, under sub-macroblock type (also referred to as sub_mb_pred) state machine, utilize the macro block to be decoded
In each sub-macroblock sub-macroblock type, identify the prediction mode of each sub-macroblock.
Wherein, under the sub-macroblock type sub_mb_pred state machine, each sub-macroblock in macro block to be decoded is utilized
Sub_mb_type judge the prediction mode of each sub-macroblock.
If the prediction mode of S607, the sub-macroblock is not to export the serial number with reference to queue L0 with reference to queue L1 mode
With the residual values of motion vector L0.
In the sub_mb_type using each sub-macroblock, judge whether the prediction mode of sub-macroblock is with reference to queue L1 mould
Formula (Pred_L1);If so, output ref_idx_l0 [mbPartIdx] and mvd_l0 [mbPartIdx] [subMbPartIdx]
[compIdx], the i.e. residual values with reference to the serial number of queue L0 and motion vector L0.
Utilize SubMbPredMode (sub_mb_type [mbPartIdx], the judgement in identification sub-macroblock data
(SubMbPredMode(sub_mb_type[mbPartIdx])!Whether=Pred_L1 is true.
If (SubMbPredMode (sub_mb_type [mbPartIdx])!=Pred_L1, then export ref_idx_l0
[mbPartIdx] and mvd_l0 [mbPartIdx] [subMbPartIdx] [compIdx].
The embodiment of the present application also provides a kind of decoding apparatus of video code flow, as shown in fig. 7, comprises:
NALU parsing module 701 obtains the current NAL for parsing the data of the current NAL unit in video code flow
The type of unit.
The parsing module 702 of parameter set obtains interpretation sequence if the type for the current NAL unit is parameter set
The parameter information that column parameter set or image parameter are concentrated.
The parsing module 703 of slice header is worked as described in acquisition if the type for the current NAL unit is not parameter set
Raw byte sequence payload RBSP in the data of preceding NAL unit.
The parsing module 704 of strip data, for realizing the decoding of video code flow using the RBSP.
In the present embodiment, NALU parsing module 701, the parsing module 702 of parameter set, slice header 703 and of parsing module
The specific implementation procedure of the parsing module 704 of strip data, reference can be made to the embodiment of the method content of corresponding diagram 2, no longer superfluous herein
It states.
In the decoding apparatus of video code flow provided by the present application, NALU parsing module 701 parses current in video code flow
The data of NAL unit obtain the type of current NAL unit;In the case where the type of current NAL unit is parameter set, parameter
The parsing module 702 of collection obtains the parameter information for interpreting sequence parameter set or image parameter concentration;In the class of current NAL unit
In the case that type is not parameter set, the parsing module 703 of slice header obtains the raw byte sequence in the data of current NAL unit
Load RBSP, and by the parsing module of strip data 704 using the decoding of RBSP realization video code flow, it can thus be seen that needle
To the difference of the type of the current NAL unit in video code flow, the decoding of video code flow is carried out using means corresponding with type,
Also, video decoding standards of new generation H.264/AVC in, NAL unit is the basic unit of video code flow, therefore, Ke Yishi
Now meet the video decoding requirements of video decoding standards of new generation H.264/AVC.
Optionally, in another embodiment of the application, NALU parsing module 701 parses the current NAL unit in video code flow
Data be used for when obtaining the type of the current NAL unit: identify the type bit of the current NAL unit;Wherein, described
Type bit is located at the head information of the current NAL unit;According to the recognition result of the type bit of the current NAL unit, obtain
The type of the current NAL unit.
Wherein, in the present embodiment, the specific work process of NALU parsing module 701, reference can be made to corresponding embodiment of the method
Content, details are not described herein again.
Optionally, in another embodiment of the application, the parsing module 703 of slice header realizes video code flow using the RBSP
Decoding when, be used for: identifying the type of each of RBSP band;According to the type of each band, institute is utilized
Decoding algorithm corresponding with the type of the band is stated to be decoded the strip data of the band.
Wherein, in the present embodiment, the specific work process of the parsing module 703 of slice header, reference can be made to corresponding method is real
The content of example is applied, details are not described herein again.
Optionally, in another embodiment of the application, the parsing module 704 of strip data is according to the class of each band
Type is used for when being decoded using the decoding algorithm corresponding with the type of the band to the strip data of the band:
The type for identifying the band is not the band of predefined type, then judges whether entropy coding is CAVLC;Wherein,
The band of the predefined type includes the band of intraframe coding and the band of switching intraframe coding;If judging, the entropy coding is
CAVLC then obtains the mb_skip_run numerical value being decoded using brother's Boulogne encryption algorithm from the RBSP;It utilizes
The mb_skip_run numerical value determines the macro block to be decoded in the band;The macro block to be decoded is decoded.
Wherein, in the present embodiment, the specific work process of the parsing module 704 of strip data, reference can be made to corresponding method
The content of embodiment, details are not described herein again.
Optionally, in another embodiment of the application, the parsing module 704 of strip data solves the macro block to be decoded
When code, the parsing module 704 of strip data is used for:
Obtain the macro block (mb) type of the macro block to be decoded.
According to the macro block (mb) type of the macro block to be decoded, judgement is jumped into sub-macroblock type state machine or macroblock prediction mould
Formula state machine.
Under macro-block skip mode state machine, the macro block (mb) type of the macro block to be decoded, identification prediction mode are utilized;
If identifying, the prediction mode is intra prediction mode, and the intra prediction mould of 4*4 luminance block is obtained from code stream
The value of formula label;Wherein, if the intra prediction mode of the 4*4 luminance block is labeled as 0, the value of true predictive mode is obtained.
If identifying, the prediction mode is inter-frame forecast mode, passes through the function identification prediction mode of macro block (mb) type;
If identifying the prediction mode not is to export the residual error of the serial number and motion vector L0 with reference to queue L0 with reference to queue L1 mode
Value;If identifying the prediction mode not and being the serial number and motion vector L1 exported with reference to queue L0 mode with reference to queue L1
Residual values.
Under sub-macroblock type state machine, using the sub-macroblock type of each sub-macroblock in the macro block to be decoded, know
The prediction mode of not each sub-macroblock.
If the prediction mode of the sub-macroblock is not to export the serial number and movement with reference to queue L0 with reference to queue L1 mode
The residual values of vector L0.
Wherein, in the present embodiment, the specific work process of the parsing module 704 of strip data, reference can be made to corresponding method
The content of embodiment, details are not described herein again.
All the embodiments in this specification are described in a progressive manner, same and similar portion between each embodiment
Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for system or
For system embodiment, since it is substantially similar to the method embodiment, so describing fairly simple, related place is referring to method
The part of embodiment illustrates.System and system embodiment described above is only schematical, wherein the conduct
The unit of separate part description may or may not be physically separated, component shown as a unit can be or
Person may not be physical unit, it can and it is in one place, or may be distributed over multiple network units.It can root
According to actual need that some or all of the modules therein is selected to achieve the purpose of the solution of this embodiment.Ordinary skill
Personnel can understand and implement without creative efforts.
Professional further appreciates that, unit described in conjunction with the examples disclosed in the embodiments of the present disclosure
And algorithm steps, can be realized with electronic hardware, computer software, or a combination of the two, in order to clearly demonstrate hardware and
The interchangeability of software generally describes each exemplary composition and step according to function in the above description.These
Function is implemented in hardware or software actually, the specific application and design constraint depending on technical solution.Profession
Technical staff can use different methods to achieve the described function each specific application, but this realization is not answered
Think beyond scope of the present application.
The foregoing description of the disclosed embodiments makes professional and technical personnel in the field can be realized or use the application.
Various modifications to these embodiments will be readily apparent to those skilled in the art, as defined herein
General Principle can be realized in other embodiments without departing from the spirit or scope of the application.Therefore, the application
It is not intended to be limited to the embodiments shown herein, and is to fit to and the principles and novel features disclosed herein phase one
The widest scope of cause.
Claims (10)
1. a kind of coding/decoding method of video code flow characterized by comprising
The data for parsing the current NAL unit in video code flow, obtain the type of the current NAL unit;
If the type of the current NAL unit is parameter set, the ginseng for interpreting sequence parameter set or image parameter concentration is obtained
Number information;
If the type of the current NAL unit is not parameter set, the raw bytes sequence in the data of the current NAL unit is obtained
List lotus RBSP, and the decoding of video code flow is realized using the RBSP.
2. coding/decoding method according to claim 1, which is characterized in that the current NAL unit in the parsing video code flow
Data, obtain the type of the current NAL unit, comprising:
Identify the type bit of the current NAL unit;Wherein, the type bit is located at the head information of the current NAL unit;
According to the recognition result of the type bit of the current NAL unit, the type of the current NAL unit is obtained.
3. coding/decoding method according to claim 1, which is characterized in that described to utilize the raw byte sequence payload RBSP
Realize the decoding of video code flow, comprising:
Identify the type of each of RBSP band;
According to the type of each band, using the decoding algorithm corresponding with the type of the band to the band
Strip data is decoded.
4. coding/decoding method according to claim 3, which is characterized in that the type according to each band utilizes
The decoding algorithm corresponding with the type of the band is decoded the strip data of the band, comprising:
The type for identifying the band is not the band of predefined type, then judges whether entropy coding is based on context-adaptive
Variable Length Code CAVLC;Wherein, the band of the predefined type includes the band of intraframe coding and the item of switching intraframe coding
Band;
If judging, the entropy coding is the CAVLC, obtains from the RBSP and is solved using brother's Boulogne encryption algorithm
The numerical value of the number for the image skipped blocks that code obtains;
Using the numerical value of the number of described image skipped blocks, the macro block to be decoded in the band is determined;
The macro block to be decoded is decoded.
5. coding/decoding method according to claim 4, which is characterized in that described to be decoded to the macro block to be decoded, packet
It includes:
Obtain the macro block (mb) type of the macro block to be decoded;
According to the macro block (mb) type of the macro block to be decoded, judgement is jumped into sub-macroblock type state machine or macroblock prediction module shape
State machine;
Under the macroblock prediction module status machine, the macro block (mb) type of the macro block to be decoded, identification prediction mode are utilized;
If identifying, the prediction mode is intra prediction mode, and the intra prediction mode mark of 4*4 luminance block is obtained from code stream
The value of note;Wherein, if the intra prediction mode of the 4*4 luminance block is labeled as 0, the value of true predictive mode is obtained;
If identifying, the prediction mode is inter-frame forecast mode, passes through the function identification prediction mode of macro block (mb) type;If knowing
The not described prediction mode is not then to export the residual values of the serial number and motion vector L0 with reference to queue L0 with reference to queue L1 mode;
If identifying the prediction mode not is to export the residual error of the serial number and motion vector L1 with reference to queue L1 with reference to queue L0 mode
Value;
Under the sub-macroblock type state machine, using the sub-macroblock type of each sub-macroblock in the macro block to be decoded, know
The prediction mode of not each sub-macroblock;
If the prediction mode of the sub-macroblock is not to export the serial number and motion vector with reference to queue L0 with reference to queue L1 mode
The residual values of L0.
6. a kind of decoding apparatus of video code flow characterized by comprising
NALU parsing module obtains the current NAL unit for parsing the data of the current NAL unit in video code flow
Type;
The parsing module of parameter set obtains interpretation sequence parameter set if the type for the current NAL unit is parameter set
Or the parameter information that image parameter is concentrated;
It is mono- to obtain the current NAL if the type for the current NAL unit is not parameter set for the parsing module of slice header
Raw byte sequence payload RBSP in the data of member;
The parsing module of strip data, for realizing the decoding of video code flow using the RBSP.
7. decoding apparatus according to claim 6, which is characterized in that in the NALU parsing module parsing video code flow
The data of current NAL unit are used for when obtaining the type of the current NAL unit:
Identify the type bit of the current NAL unit;Wherein, the type bit is located at the head information of the current NAL unit;Root
According to the recognition result of the type bit of the current NAL unit, the type of the current NAL unit is obtained.
8. decoding apparatus according to claim 6, which is characterized in that described in the parsing module of the strip data utilizes
When RBSP realizes the decoding of video code flow, it is used for:
Identify the type of each of RBSP band;According to the type of each band, the described and item is utilized
The corresponding decoding algorithm of the type of band is decoded the strip data of the band.
9. decoding apparatus according to claim 8, which is characterized in that the parsing module of the strip data is according to described every
The type of one band solves the strip data of the band using the decoding algorithm corresponding with the type of the band
When code, it is used for:
The type for identifying the band is not the band of predefined type, then judges whether entropy coding is based on context-adaptive
Variable Length Code CAVLC;Wherein, the band of the predefined type includes the band of intraframe coding and the item of switching intraframe coding
Band;
If judging, the entropy coding is the CAVLC, obtains from the RBSP and is solved using brother's Boulogne encryption algorithm
The numerical value of the number for the image skipped blocks that code obtains;
Using the numerical value of the number of described image skipped blocks, the macro block to be decoded in the band is determined;
The macro block to be decoded is decoded.
10. decoding apparatus according to claim 9, which is characterized in that the parsing module of the strip data to it is described to
When decoded macroblock is decoded, it is used for:
Obtain the macro block (mb) type of the macro block to be decoded;
According to the macro block (mb) type of the macro block to be decoded, judgement is jumped into sub-macroblock type state machine or macroblock prediction module shape
State machine;
Under the macroblock prediction module status machine, the macro block (mb) type of the macro block to be decoded, identification prediction mode are utilized;
If identifying, the prediction mode is intra prediction mode, and the intra prediction mode mark of 4*4 luminance block is obtained from code stream
The value of note;Wherein, if the intra prediction mode of the 4*4 luminance block is labeled as 0, the value of true predictive mode is obtained;
If identifying, the prediction mode is inter-frame forecast mode, passes through the function identification prediction mode of macro block (mb) type;If knowing
The not described prediction mode is not then to export the residual values of the serial number and motion vector L0 with reference to queue L0 with reference to queue L1 mode;
If identifying the prediction mode not is to export the residual error of the serial number and motion vector L1 with reference to queue L1 with reference to queue L0 mode
Value;
Under the sub-macroblock type state machine, using the sub-macroblock type of each sub-macroblock in the macro block to be decoded, know
The prediction mode of not each sub-macroblock;
If the prediction mode of the sub-macroblock is not to export the serial number and motion vector with reference to queue L0 with reference to queue L1 mode
The residual values of L0.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910757405.2A CN110446047A (en) | 2019-08-16 | 2019-08-16 | The coding/decoding method and device of video code flow |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910757405.2A CN110446047A (en) | 2019-08-16 | 2019-08-16 | The coding/decoding method and device of video code flow |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110446047A true CN110446047A (en) | 2019-11-12 |
Family
ID=68435987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910757405.2A Pending CN110446047A (en) | 2019-08-16 | 2019-08-16 | The coding/decoding method and device of video code flow |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110446047A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115802049A (en) * | 2023-02-09 | 2023-03-14 | 深流微智能科技(深圳)有限公司 | Video data coding and decoding method and device and video data transmission system |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101198051A (en) * | 2006-12-07 | 2008-06-11 | 深圳艾科创新微电子有限公司 | Method and device for implementing entropy decoder based on H.264 |
CN102348119A (en) * | 2010-07-30 | 2012-02-08 | 佳能株式会社 | Predictive coding apparatus and control method thereof |
CN102355578A (en) * | 2011-05-25 | 2012-02-15 | 深圳市融创天下科技股份有限公司 | Entropy decoding method and device |
US20120230428A1 (en) * | 2011-03-10 | 2012-09-13 | Christopher Andrew Segall | Video decoder for slices |
US20140003520A1 (en) * | 2012-07-02 | 2014-01-02 | Cisco Technology, Inc. | Differentiating Decodable and Non-Decodable Pictures After RAP Pictures |
CN104272745A (en) * | 2012-04-20 | 2015-01-07 | 高通股份有限公司 | Video coding with enhanced support for stream adaptation and splicing |
CN104813671A (en) * | 2012-09-24 | 2015-07-29 | 高通股份有限公司 | Bitstream properties in video coding |
US20150271498A1 (en) * | 2014-03-24 | 2015-09-24 | Qualcomm Incorporated | Generic use of hevc sei messages for multi-layer codecs |
US20160198171A1 (en) * | 2015-01-06 | 2016-07-07 | Microsoft Technology Licensing, Llc | Video Decoding |
CN107371029A (en) * | 2017-06-28 | 2017-11-21 | 上海大学 | Video packet priority distribution method based on content |
CN108769712A (en) * | 2012-04-16 | 2018-11-06 | 韩国电子通信研究院 | Video coding and coding/decoding method, the storage and method for generating bit stream |
-
2019
- 2019-08-16 CN CN201910757405.2A patent/CN110446047A/en active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101198051A (en) * | 2006-12-07 | 2008-06-11 | 深圳艾科创新微电子有限公司 | Method and device for implementing entropy decoder based on H.264 |
CN102348119A (en) * | 2010-07-30 | 2012-02-08 | 佳能株式会社 | Predictive coding apparatus and control method thereof |
US20120230428A1 (en) * | 2011-03-10 | 2012-09-13 | Christopher Andrew Segall | Video decoder for slices |
CN102355578A (en) * | 2011-05-25 | 2012-02-15 | 深圳市融创天下科技股份有限公司 | Entropy decoding method and device |
CN108769712A (en) * | 2012-04-16 | 2018-11-06 | 韩国电子通信研究院 | Video coding and coding/decoding method, the storage and method for generating bit stream |
CN104272745A (en) * | 2012-04-20 | 2015-01-07 | 高通股份有限公司 | Video coding with enhanced support for stream adaptation and splicing |
US20140003520A1 (en) * | 2012-07-02 | 2014-01-02 | Cisco Technology, Inc. | Differentiating Decodable and Non-Decodable Pictures After RAP Pictures |
CN104813671A (en) * | 2012-09-24 | 2015-07-29 | 高通股份有限公司 | Bitstream properties in video coding |
US20150271498A1 (en) * | 2014-03-24 | 2015-09-24 | Qualcomm Incorporated | Generic use of hevc sei messages for multi-layer codecs |
US20160198171A1 (en) * | 2015-01-06 | 2016-07-07 | Microsoft Technology Licensing, Llc | Video Decoding |
CN107371029A (en) * | 2017-06-28 | 2017-11-21 | 上海大学 | Video packet priority distribution method based on content |
Non-Patent Citations (1)
Title |
---|
毕厚杰主编: "《新一代视频压缩编码标准-H.264/AVC》", 31 May 2005, 人民邮电出版社 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115802049A (en) * | 2023-02-09 | 2023-03-14 | 深流微智能科技(深圳)有限公司 | Video data coding and decoding method and device and video data transmission system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11044487B2 (en) | Signaling change in output layer sets | |
CN104160706B (en) | The method and apparatus that encoded to image and decoded method and apparatus are carried out to video bits stream | |
CN104813671B (en) | For the method and apparatus processing video data | |
CN104919803B (en) | A kind of method for decoding video bit stream | |
CN104205819B (en) | Method for video encoding and device | |
FI115589B (en) | Encoding and decoding redundant images | |
CN105637879B (en) | The alignment schemes that figure sequence counts | |
CN105794212B (en) | A kind of method and device handling multi-layer video data | |
KR102252319B1 (en) | Method and apparatus for encoding video having temporal scalability, and Method and apparatus for decoding having temporal scalability | |
CN105025303B (en) | The decoding of video sequence image and coding | |
KR102094503B1 (en) | Method and apparatus for multi-layer video encoding, method and apparatus for multi-layer decoding | |
CN106664424A (en) | Parameter set coding | |
JP7125520B2 (en) | Picture decoding method and picture encoding method | |
CN109257623B (en) | Method for decoding picture and electronic device for decoding picture | |
CN105122815A (en) | Signaling DPB parameters in VPS extension and DPB operation | |
US20090279612A1 (en) | Methods and apparatus for multi-view video encoding and decoding | |
CN107431819A (en) | For scalable video and the inter-layer prediction of decoding | |
CN105723712B (en) | Image coding/decoding method and equipment based on multilayer | |
KR102477476B1 (en) | Method and apparatus for encoding/decoding images | |
CN105359525A (en) | Tile alignment signaling and conformance constraints | |
US20170026655A1 (en) | Parameter set signaling | |
CN105765978B (en) | Method for encoding/decoding image and the device using it | |
US8422805B2 (en) | Device and method for scalable encoding and decoding of image data flow and corresponding signal and computer program | |
CN115336277A (en) | Using video parameter sets in video coding and decoding | |
CN110446047A (en) | The coding/decoding method and device of video code flow |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191112 |
|
RJ01 | Rejection of invention patent application after publication |