CN103945221B - Video coding-decoding method, device and the video code flow of generation - Google Patents

Video coding-decoding method, device and the video code flow of generation Download PDF

Info

Publication number
CN103945221B
CN103945221B CN201410141736.0A CN201410141736A CN103945221B CN 103945221 B CN103945221 B CN 103945221B CN 201410141736 A CN201410141736 A CN 201410141736A CN 103945221 B CN103945221 B CN 103945221B
Authority
CN
China
Prior art keywords
sequence
frame
image
seqdelaynum
coding
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.)
Active
Application number
CN201410141736.0A
Other languages
Chinese (zh)
Other versions
CN103945221A (en
Inventor
何至初
虞露
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201410141736.0A priority Critical patent/CN103945221B/en
Publication of CN103945221A publication Critical patent/CN103945221A/en
Application granted granted Critical
Publication of CN103945221B publication Critical patent/CN103945221B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The invention discloses a kind of video coding-decoding method and device, the methods for transmitting video code flow, wherein method for video coding includes:It determines the frame number of i-th of sequence output delay of coding, and the image storage space that a size is not less than this frame is distributed for i-th of sequence of coding;According to the output of the image storage space image of the number of i-th of encoded sequence frame of coding and i-th of sequence of the frame number management coding of output delay;The frame number write-in of i-th of sequence output delay of coding is sent to the code stream of video decoding end.The present invention proposes this parameter of frame number using output delay to manage the output of image, on the one hand, it solves image in AVS2 WD5.0 to export slow and a large amount of non-output frame is caused to be deposited in the problems in decoding image buffering area, while solving the problems, such as that motion M3226 can not normally export image in frame-skipping.

Description

Video coding-decoding method, device and the video code flow of generation
Technical field
The invention belongs to video coding and decoding technology field, more particularly to a kind of video coding-decoding method, device and generation Video code flow.
Background technology
During video is decoded, the output of decoding image how is managed, is always an important problem, reasonably Image output method should make image be sequentially output from small to large according to the size of display order, while should also be when rational Between export, avoid causing a large amount of non-output frame to be deposited in decoding image buffering area because image exported slow, cause to solve The code image buffer efficiency of management is too low, and then influences the efficiency of inter-reference.
In HEVC standard, the output of image is by the pic_dpb_output_ in SEI picture timing () Pic_spt_dpb_output_ in delay, pic_dpb_output_du_delay and decoding_unit_info () Du_delay management.Three syntactic elements are all used to indicate that a decoding image to enter what decoding image buffering area exported later Delay.By the administrative mechanism, decoding image can be made according to display order, image be exported with most fast speed, but disadvantage exists It is required for one output delay of transmission in every frame, this will be a no small expense.
In the AVS2 standards WD5.0 formulated, the output of image is by decoding image buffering area size MAX_ What BUFFER_SIZE and image display order index POI was managed together, the method for management is, when in decoding image buffering area Image number reaches MAX_BUFFER_SIZE, then exports the frame figure for not exporting POI minimums in image in decoding image buffering area Picture.This output method there is a problem that one it is more serious, i.e., since full ability must be waited into decoding image buffering area A frame is exported, this can cause image to export slow and a large amount of non-output frame is caused to be deposited in decoding image buffering area, such as Decode the hierarchical B structure of GOP=8.The display order of preceding 9 frame, decoding order and by reference case later it is respectively:
Display order 1 2 3 4 5 6 7 8 9
Decoding order 1 5 4 6 3 8 7 9 2
It is referenced situation 1 0 0 0 1 0 1 0 1
1 be wherein referenced during situation one arranges indicate can by after referenced by frame, 0 indicate will not referenced by frame later, When MAX_BUFFER_SIZE=8, when being decoded to the 8th frame of display order i.e. 9 frame of decoding order, image is decoded Buffering area has been expired, and needs to export a frame, according to rule, output is the 1st frame.But since decoding image buffering area has been expired, show Show and need to be stored in decoding image buffering area after the 8th frame side of sequence is complete, it is necessary to remove a frame.Due to there was only the output of the 1st frame It crosses, so the 1st frame can only be removed.In this way, will cause the 1st frame can not be referenced by frame later.But first frame is I Frame, it is very big to the reference significance of frame later, therefore, using the reference frame management scheme in WD5.0, in such case Under, it will the frame reference after causing I frames that can not be shown the 8th frame of sequence greatly reduces decoding efficiency.And it is efficient rationally The way of output under, when being decoded to 8 frame of display order, display order can be outputed less than 8 frame.It wherein shows suitable The frame that sequence is 2,3,4,6 is will not can be removed after having exported referenced by frame later.But due to the 1st frame What is exported is excessively slow, causes the frames that will not be referenced such as 2,3,4,6 that can not export, and to remove, can only be forced to remove the 1st Frame.
For the problems in WD5.0, AVS motions M3226 is proposed, using image display delayed picture_display_ Delay is managed, picture_display_delay refer to a frame image from complete to be decoded to display needs to wait for when Between.Specifically method is:1. all there are one image output delays per frame image;2. after decoding present image, decoded picture buffer The display delay of image in area all subtracts 1;3. if prolonged there is display in image and present image in decoding image buffering area It is 0 image late, then exports the image, otherwise do not export any image.Although the scheme of M3226 can solve to a certain extent Image exported in WD5.0 causes a large amount of non-output frame to be deposited in the problems in decoding image buffering area slowly, still, for The scheme of M3226 also results in output problem when frame-skipping occurs.For example, still use the size of decoding image buffering area for 8, GOP=8 hierarchical B structure.Start to compile assuming that coding side skips preceding 20 frame, then in preceding 10 frame of encoding and decoding, display order Value is both greater than equal to 20, and encoding and decoding sequence both less than 10, the display delayed per frame is all greater than 10.It is decoded to decoding order When 9 frame, decoding image buffering area has been expired, and at that time according to the description in M3226, can be subtracted without the display delayed of a frame To 0, no frame can export, then just having no idea to remove any frame, the frame of encoding and decoding later will be unable to immigration decoding image and delay It rushes in area.
In the AVS2 standards WD6.0 formulated, there is also following two problems:
(1) the problem of image display order (POI) can not be transmitted correctly, calculating.
In WD6.0, the difference of POI and DOI are determined by PictureDisplayDelay-OutputReorderDelay Fixed, the maximum magnitude of the value is -32~64.And when frame-skipping occurs, when frame-skipping occurs, the difference of DOI and POI can not protect Card is between -32~64.
For example, the coding structure of IPPP, for every two frame compiles a frame, encodes the 66th frame, POI 132, and DOI is 66, two The difference of person has arrived at 66, can not correctly transmit.
(2) after random access occurring, the display order of image is after the sequence head of current video sequence presses decoding order First I frame after frame, can not be correctly decoded.
It is provided in WD6.0:
Image is marked as " should not be used as reference picture " when meeting the following conditions:
The display order of image is before the sequence head of current video sequence presses first I frame after decoding order
The image is not I frames
The value of the no_forward_reference_flag of the image is equal to ' 0 '
When a period of time image that image meets the following conditions is marked as " can be used as reference picture ":
The display order of image is pressed in the sequence head of current video sequence after first I frame after decoding order
The image is I frames
The value of the no_forward_reference_flag of the image is equal to ' 1 '
Random access is not supported in the description in some cases
As shown in figure 5, a kind of GOP=4 and HierB structures supported in WD6.0:
According to the description in WD6.0, when random access occurs at I8 in code stream, I1 is the image that can be referenced.
According to the configuration of referring-to relation in existing RD6.0, P12 can be referenced to I1, B9, B10, B11 all can directly or To P12. when random access occurs at I8, B8, B9, B10, P12 can not be correctly decoded indirect reference.
As shown in fig. 6, another GOP=4 and HierB structures supported in WD6.0:
If B4 is equal to ' 1 ' only with reference to P4, the value of its no_forward_reference_flag,
And when random access occurs, B2 should also be can not be referenced by P12, but does not forbid P12 in standard With reference to B2, therefore, if P12 is with reference to B2, when random access occurs at I8, B8, B9, B10, P12 can not be solved correctly Code.
Invention content
In view of the above-mentioned deficiencies in the prior art, it is an object of the present invention to provide a kind of video coding-decoding method and device, generation Method and device with parsing video code flow and corresponding video code flow.
The purpose of the present invention is achieved through the following technical solutions, a kind of coding method of video, including following step Suddenly:
(1) the i-th (i of coding is determined>=0) frame number SeqDelayNum [i] (SeqDelayNum of a sequence output delay [i]>=1), and for i-th of sequence of coding the image storage space that a size is not less than SeqDelayNum [i] frame is distributed;
(2) according to number SeqCodedNum [the i] (SeqCodedNum [i] of i-th of encoded sequence frame of coding>= 0) output of the image storage space image of i-th of the sequence encoded with frame number SeqDelayNum [i] management of output delay; Specifically management method is:Detection moment is exported in image, if the number of i-th of encoded sequence frame of coding SeqCodedNum [i] is more than or equal to the frame number SeqDelayNum [i] of output delay, then from the image of i-th of sequence of coding A frame image of display order minimum is exported in memory space;Otherwise, any image is not exported;
(3) frame number SeqDelayNum [i] write-ins of i-th of sequence of coding output delay are sent to video decoding end Code stream.
Further, the frame number SeqDelayNum [i] of i-th of sequence output delay described in the step 3 is in sequence head Code stream in be written or the write-in or after the sequence head in the code stream of the image head of first frame in the code stream of sequence header extension Write-in.
A kind of coding/decoding method of video, includes the following steps:
(1) decoded i-th (i is obtained from the code stream received from Video coding end>=0) frame of the output delay of a sequence Number SeqDelayNum [i] (SeqDelayNum [i]>=1), and a size is distributed for decoded i-th of sequence to be not less than The image storage space of SeqDelayNum [i] frame;
(2) according to number SeqDecodeNum [the i] (SeqDecodeNum [i] of decoded i-th of sequence decoded frame> =0) and the frame number SeqDelayNum [i] of output delay manages the output of decoded i-th of sequence image memory space image; Specifically management method is:Detection moment is exported in image, if the number of decoded i-th of sequence nucleotide sequence decoded frame SeqDecodeNum [i] is more than or equal to the frame number SeqDelayNum [i] of output delay, then from the image of decoded i-th of sequence A frame image of display order minimum is exported in memory space;Otherwise, any image is not exported.
Further, described to obtain decoded i-th (i in the step 1>=0) frame number of the output delay of a sequence, The method of acquisition includes:It obtains or is obtained in the code stream of sequence header extension or the after sequence head in the code stream of sequence head It is obtained in the code stream of the image head of one frame.
A kind of video coding apparatus, including coding processing unit and code stream writing unit, the coding processing unit are used for Determine the i-th (i of coding>=0) frame number SeqDelayNum [the i] (SeqDelayNum [i] of a sequence output delay>=1), and Image storage space of the size not less than SeqDelayNum [i] frame is distributed for i-th of sequence of coding;And according to volume Number SeqCodedNum [the i] (SeqCodedNum [i] of i-th of encoded sequence frame of code>=0) and output delay frame number The output of the image storage space image of i-th of sequence of SeqDelayNum [i] management codings;Specifically management method is:Scheming As output detection moment, if the number SeqCodedNum [i] of i-th of encoded sequence frame of coding is more than or equal to output and prolongs When frame number SeqDelayNum [i], then it is minimum that display order is exported from the image storage space of i-th of sequence of coding One frame image;Otherwise, any image is not exported.I-th of sequence output delay that the code stream writing unit is used to encode The code stream for being sent to video decoding end is written in frame number SeqDelayNum [i].
Further, frame number SeqDelayNum [i] write-ins of i-th of sequence output delay by coding are sent to The method of the code stream of video decoding end, write-in includes:It is written in the code stream of sequence head or is write in the code stream of sequence header extension Enter or is written in the code stream of the image head of first frame after the sequence head.
A kind of video decoder, including codec processing unit are delayed with the sequence output being set in code stream reading unit Frame number acquiring unit, the frame number acquiring unit of sequence output delay from the code stream received from Video coding end for obtaining Take decoded i-th (i>=0) frame number SeqDelayNum [the i] (SeqDelayNum [i] of the output delay of a sequence>=1);Institute It is the image storage sky that decoded i-th of sequence distributes a size not less than SeqDelayNum [i] frame to state codec processing unit Between;According to number SeqDecodeNum [the i] (SeqDecodeNum [i] of decoded i-th of sequence decoded frame>=0) and it is defeated The frame number SeqDelayNum [i] for going out delay manages the output of decoded i-th of sequence image memory space image.Specific management Method is:Detection moment is exported in image, if the number SeqDecodeNum of decoded i-th of sequence nucleotide sequence decoded frame [i] is more than or equal to the frame number SeqDelayNum [i] of output delay, then defeated from the image storage space of decoded i-th of sequence Go out a frame image of display order minimum;Otherwise, any image is not exported.
Further, the frame of the output delay of decoded i-th of sequence is obtained from the code stream received from Video coding end Number SeqDelayNum [i], the method for acquisition include:It obtains in the code stream of sequence head or is obtained in the code stream of sequence header extension It takes or is obtained in the code stream of the image head of first frame after the sequence head.
A kind of video code flow, specially:In the code stream of sequence head or in the code stream of sequence header extension or in sequence head The frame number SeqDelayNum [i] of i-th of sequence output delay of coding is written in the code stream of the image head of first frame later.
The beneficial effects of the invention are as follows:The present invention proposes this parameter of frame number using output delay to manage the defeated of image Go out, on the one hand, solve image in AVS2WD5.0 and exported slow and a large amount of non-output frame is caused to be deposited in decoded picture buffer The problems in area, while solving the problems, such as that motion M3226 can not normally export image in frame-skipping.For AVS2 standards After the problem of image display order (POI) can not be transmitted correctly in WD6.0 and generation random access, the display order of image is being worked as The sequence head of preceding video sequence is by the frame after first I frame after decoding order, the problem of can not being correctly decoded, the present invention Also corresponding solution has been carried out.
Description of the drawings
Fig. 1 is the flow diagram of method for video coding of the present invention;
Fig. 2 is the flow diagram of video encoding/decoding method of the present invention;
Fig. 3 is the composed structure schematic diagram of video coding apparatus of the present invention;
Fig. 4 is the composed structure schematic diagram of video decoder of the present invention;
Fig. 5 is a kind of GOP=4 and HierB structure charts supported in WD6.0;
Fig. 6 is another GOP=4 and HierB structure charts supported in WD6.0.
Specific implementation mode
To make the objectives, technical solutions, and advantages of the present invention more comprehensible, referring to the drawings and embodiment, to this Invention is described in further detail.
The main thought of the present invention is to provide a kind of output progress exporting delay frame number to decoding image based on sequence The mechanism of management.
Embodiment 1:
As shown in Figure 1, a kind of coding method of video of the present invention, includes the following steps:
Step 101:Determine the i-th (i of coding>=0) the frame number SeqDelayNum [i] of a sequence output delay (SeqDelayNum[i]>=1), and for i-th of sequence of coding a size is distributed not less than SeqDelayNum [i] frame Image storage space;
One sequence includes current sequence head later to encoded frame between next sequence head.
Encoded frame between one sequence can also end up including after current sequence head, arriving sequence.
Determine that the method that i-th of sequence of coding exports the frame number SeqDelayNum [i] of delay is:According to the volume of sequence Code structure judges that after complete SeqDelayNum [i] frame of sequential coding first frame can be exported.
Such as:Coding structure is the low delay coding structure of IPPPP.Output delay frame number be 1, that is, encoded 1 frame it Afterwards, which can export first frame.
Display order I1 P2 P3 P4 P5 P6
Coded sequence I1 P2 P3 P4 P5 P6
Output sequence I1 P2 P3 P4 P5 P6
For example, the coding structure of the IBBBPBBBPBBBP of coding GOP=4.The frame number of output delay is 3 frames, that is, has been encoded After 3 frames, first frame can be exported.
Display order I1 B2 B3 B4 P5 B6 B7 B8 P9
Coded sequence I1 P5 B3 B2 B4 P9 B7 B6 B8
Output sequence I1 B2 B3 B4 P5 B6 B7
For example, the coding structure of the BBBIBBBPBBBP of coding GOP=4.The frame number of output delay is 3 frames, that is, has encoded 3 After frame, first frame can be exported.
For example, the coding structure of the IBBBBBBBPBBBBBBBP of coding GOP=8.The frame number of output delay is 4 frames, that is, is compiled After complete 4 frame of code, first frame can be exported.
Display order I1 B2 B3 B4 B5 B6 B7 B8 P9
Coded sequence I1 P9 B5 B3 B2 B4 B7 B6 B8
Output sequence I1 B2 B3 B4 B5 B6
Step 102:According to number SeqCodedNum [i] (SeqCodedNum of i-th of encoded sequence frame of coding [i]>=0) and the image storage space image of i-th of sequence of frame number SeqDelayNum [i] the management coding of output delay Output;
Specifically, the step includes:
When i-th of sequence of coding starts, apllied image storage space in step 101 is labeled as " making With ", and the value of the encoded frame number SeqCodedNum [i] of current sequence is set to 0.
After the frame for often having encoded i-th of sequence, the value of SeqCodedNum [i] adds 1, and by the solution of current encoded frame Code reconstruction image moves into the image storage space of i-th of sequence, and is labeled as " not exporting image ".
Detection moment is exported in each image, such as after having encoded a frame, remembers that the sequence of present encoding is n-th of sequence Row check the image storage space of each sequence that is encoded or encoding, for the kth (k of each " being used "< =n) a image storage space, if the number SeqCodedNum [k] of encoded frame is more than or equal to the frame number of output delay SeqDelayNum [k], then from the image storage space of k-th of sequence export display order minimum a frame image, and by its Labeled as " having exported image ";Otherwise, any image is not exported.
It is exported in each image and completes the moment, check encoded each sequence j (j<N) image storage space, if The image storage space has not had " not exporting image ", then the image storage space is labeled as " unused ".
Step 103:Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to video solution The code stream at code end.
Specifically:
Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to the code of video decoding end The method of stream includes:It is transmitted in the code stream of sequence head.
Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to the code of video decoding end The method of stream further includes:It is transmitted in the code stream of sequence header extension.
Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to the code of video decoding end The method of stream further includes:It is transmitted in the code stream of the image head of first frame after the sequence head.
The mode of transmission includes the value of directly transmission SeqDelayNum [i].
The mode of transmission can also include the value of transmission SeqDelayNum [i] -1.
Embodiment 2:
As shown in Fig. 2, a kind of coding/decoding method of video of the present invention, this approach includes the following steps:
Step 201:Decoded i-th (i is obtained from the code stream received from Video coding end>=0) output of a sequence is prolonged When frame number SeqDelayNum [i] (SeqDelayNum [i]>=1), and for decoded i-th of sequence a size is distributed not Less than the image storage space of SeqDelayNum [i] frame;
Specifically:
One sequence includes current sequence head later to encoded frame between next sequence head.
Encoded frame between one sequence can also end up including after current sequence head, arriving sequence.
The frame number of the output delay of decoded i-th of sequence is obtained from the code stream received from Video coding end The method of SeqDelayNum [i] includes:It is obtained in the code stream of sequence head.
The frame number of the output delay of decoded i-th of sequence is obtained from the code stream received from Video coding end The method of SeqDelayNum [i] further includes:It is obtained in the code stream of sequence header extension.
The frame number of the output delay of decoded i-th of sequence is obtained from the code stream received from Video coding end The method of SeqDelayNum [i] further includes:It is obtained in the code stream of the image head of first frame after the sequence head.
The mode of acquisition includes directly acquiring the value of SeqDelayNum [i].
The mode of acquisition can also include the value for obtaining SeqDelayNum [i] -1, seek SeqDelayNum's [i] indirectly Value.
Step 202:According to number SeqDecodeNum [i] (SeqDecodeNum of decoded i-th of sequence decoded frame [i]>=0) and the frame number SeqDelayNum [i] of output delay manages the defeated of decoded i-th of sequence image memory space image Go out.
Specifically, the step includes:
When i-th of sequence of decoding starts, apllied image storage space in step 201 is labeled as " making With ", and the value of current sequence decoded frame number SeqDecodeNum [i] is set to 0.
After the frame for often having decoded current i-th of sequence, the value of SeqDecodeNum [i] adds 1, and by the solution of present frame Code reconstruction image moves into the image storage space of i-th of sequence, and is labeled as " not exporting image ".
Detection moment is exported in each image, such as after having decoded a frame, remembers that current decoded sequence is n-th of sequence Row, inspection has decoded or just in the image storage space of decoded each sequence, for each " be used " kth (k< =n) a image storage space, if the number SeqDecodeNum [k] of decoded frame is more than or equal to the frame number of output delay SeqDelayNum [k], then from the image storage space of k-th of sequence export display order minimum a frame image, and by its Labeled as " having exported image ";Otherwise, any image is not exported.
It is exported in each image and completes the moment, check decoded each sequence j (j<N) image storage space, if The image storage space has not had " not exporting image ", then the image storage space is labeled as " unused ".
Embodiment 3:
As shown in figure 3, a kind of video coding apparatus of the present invention, includes at least coding processing unit (device 301) and code stream Writing unit (device 302).
Device 301:I-th (i of the coding processing unit for determining coding>=0) frame number of a sequence output delay SeqDelayNum[i](SeqDelayNum[i]>=1), and a size is distributed for i-th of sequence of coding to be not less than The image storage space of SeqDelayNum [i] frame;According to the number SeqCodedNum of i-th of encoded sequence frame of coding [i](SeqCodedNum[i]>=0) and output delay frame number SeqDelayNum [i] management coding i-th of sequence figure The output of image storage space image.
Corresponding to the method in step 101 and 102 in embodiment 1.
Device 302:The frame number for i-th of sequence output delay that the code stream writing unit is used to encode The code stream for being sent to video decoding end is written in SeqDelayNum [i].
Corresponding to the method for step 103 in embodiment 1.
Embodiment 4:
As shown in figure 4, a kind of video decoder of the present invention, includes at least codec processing unit (device 402) and code stream The frame number acquiring unit (device 401) of sequence output delay in reading unit.
Device 401:The frame number acquiring unit of sequence output delay is used for from from the code stream received from Video coding end It is middle to obtain decoded i-th (i>=0) frame number SeqDelayNum [the i] (SeqDelayNum [i] of the output delay of a sequence>= 1);
Corresponding to the method for step 201 in embodiment 2.
Device 402:The codec processing unit is that one size of decoded i-th of sequence distribution is not less than The image storage space of SeqDelayNum [i] frame;And according to the number of decoded i-th of sequence decoded frame SeqDecodeNum[i](SeqDecodeNum[i]>=0) and frame number SeqDelayNum [i] management of output delay is decoded The output of i-th of sequence image memory space image.
Corresponding to the method for step 202 in embodiment 2.
Embodiment 5:
The present invention provides a kind of video code flow and the methods for transmitting video code flow.Wherein, the video code flow, transmits The frame number SeqDelayNum [i] of i-th of sequence output delay.
Wherein include by the method for the code stream that the frame number n write-ins of current sequence output delay are sent to video decoding end: Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to video by transmission in the code stream of sequence head The method of the code stream of decoding end includes:It is transmitted in the code stream of sequence head.
Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to the code of video decoding end The method of stream further includes:It is transmitted in the code stream of sequence header extension.
Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to the code of video decoding end The method of stream further includes:It is transmitted in the code stream of the image head of first frame after the sequence head.
The mode of transmission includes the value of directly transmission SeqDelayNum [i].
The mode of transmission can also include the value of transmission SeqDelayNum [i] -1.
Embodiment 6:
The present invention provides a kind of coding methods of display order, and the specific method is as follows:
Step 601:The display order of every frame and the difference (DELTA_POI_DOI) of decoding order are sought, which is equal to every The display order (POI) of one frame subtracts the decoding order (DOI) of present frame.
Step 602:Enable the difference of the DELTA_POI_DOI of adjacent encoding and decoding of the MAX_DELTA_POI_DOI equal to 2 times The maximum value of absolute value abs (DELTA_POI_DOI [N+1]-DELTA_POI_DOI [N]).
Step 603:Code stream is written into the DELTA_POI_DOI%MAX_DELTA_POI_DOI of every frame.
Such as the coding structure of IPPP:MAX_DELTA_POI_DOI=256
Constrain the abs (DELTA_POI_DOI [N+1]-DELTA_POI_DOI [N]) of adjacent encoding and decoding frame<128
The value of transmission DELTA_POI_DOI [N] %256 per frame, as shown in the table
POI 0 2 4 510 512 514
DOI 0 1 2 255 256 257
DELTA_POI_DOI 0 1 2 255 256 257
DELTA_POI_DOI [N] %256 0 1 2 255 0 1
Embodiment 7:
The present invention provides a kind of code stream writing unit of video encoder, which is used for transmission the display order of every frame. Specific transmission method is as follows:The display order of every frame and the difference (DELTA_POI_DOI) of decoding order are sought, which is equal to The display order (POI) of each frame subtracts the decoding order (DOI) of present frame;MAX_DELTA_POI_DOI is enabled to be equal to 2 times of phase The absolute value abs (DELTA_POI_DOI [N+1]-DELTA_POI_DOI [N]) of the difference of the DELTA_POI_DOI of adjacent encoding and decoding Maximum value;Code stream is written into the DELTA_POI_DOI%MAX_DELTA_POI_DOI of every frame.
Embodiment 8:
The present invention provides a kind of code stream of the every frame display order of transmission, and the generation method of the code stream is as follows:Seek every frame The difference (DELTA_POI_DOI) of display order and decoding order, the display order (POI) which is equal to each frame subtract currently The decoding order (DOI) of frame;Enable the difference of the DELTA_POI_DOI of adjacent encoding and decoding of the MAX_DELTA_POI_DOI equal to 2 times Absolute value abs (DELTA_POI_DOI [N+1]-DELTA_POI_DOI [N]) maximum value;By the DELTA_POI_ of every frame Code stream is written in DOI%MAX_DELTA_POI_DOI.
Embodiment 9:
The present invention provides a kind of coding/decoding methods of display order, include the following steps:
Step 901:Enable display order and decoding order of the MAX_DELTA_POI_DOI equal to 2 times of adjacent encoding and decoding The absolute value abs (DELTA_POI_DOI [N+1]-DELTA_POI_DOI [N]) of the difference of difference (DELTA_POI_DOI) is most Big value.
Step 902:From the code stream of every frame, the display order of present frame and the difference (DELTA_ of decoding order are obtained POI_DOI) the value (DELTA_POI_DOI%MAX_DELTA_POI_DOI) of mould MAX_DELTA_POI_DOI.
Step 903:Pass through previous encoding and decoding DELTA_POI_DOI [N] %MAX_DELTA_POI_DOI and DELTA_POI_ The value of DELTA_POI_DOI [N+1] %MAX_DELTA_POI_DOI of present frame is converted to DELTA_POI_DOI by DOI [N] [N+1]。
The pseudocode of the step is as follows:
Step 904:The display order (POI) of each frame is equal to the decoding order (DOI) of present frame plus the aobvious of present frame Show the difference (DELTA_POI_DOI) of sequence and decoding order.
Embodiment 10:
The present invention provides a kind of decoding apparatus of display order, which is divided into code stream reading device and display order solution Code device.
Code stream reading device:Enable MAX_DELTA_POI_DOI suitable equal to the display order of 2 times of adjacent encoding and decoding and decoding The absolute value abs (DELTA_POI_DOI [N+1]-DELTA_POI_DOI [N]) of the difference of the difference (DELTA_POI_DOI) of sequence Maximum value.From the code stream of every frame, the display order of present frame and difference (DELTA_POI_DOI) mould of decoding order are obtained The value (DELTA_POI_DOI%MAX_DELTA_POI_DOI) of MAX_DELTA_POI_DOI.
Display order decoding apparatus:By previous encoding and decoding DELTA_POI_DOI [N] %MAX_DELTA_POI_DOI and DELTA_POI_DOI [N] is converted to the value of DELTA_POI_DOI [N+1] %MAX_DELTA_POI_DOI of present frame DELTA_POI_DOI[N+1]。
The pseudocode of the step is as follows:
The display order (POI) for calculating each frame is suitable plus the display of present frame equal to the decoding order (DOI) of present frame The difference (DELTA_POI_DOI) of sequence and decoding order.
Embodiment 11:
The present invention provides a kind of coding method of video, and this method includes following steps:
Step 1101:If the display order of present image is pressed in the sequence head of current video sequence after coded sequence After first I frame, then following label is done to image in reference picture buffering area:
(1) coded sequence is before the sequence head of current video sequence presses first I frame after coded sequence, all Labeled as " non-reference picture ".
(2) coded sequence current video sequence sequence head by first I frame after coded sequence after, and Frame of the value of no_forward_reference_flag equal to 0 is collectively labeled as " non-reference picture ".
Step 1102:Labeled as " non-reference picture " image will not be encoded by present frame and later frame reference.
Embodiment 12:
The present invention provides a kind of coding/decoding method of video, and this method includes following steps:
Step 1201:If the display order of present image is pressed in the sequence head of current video sequence after decoding order After first I frame, then following label is done to image in reference picture buffering area:
(1) decoding order is before the sequence head of current video sequence presses first I frame after decoding order, all Labeled as " non-reference picture ".
(2) decoding order current video sequence sequence head by first I frame after decoding order after, and Frame of the value of no_forward_reference_flag equal to 0 is collectively labeled as " non-reference picture ".
Step 1202:Labeled as " non-reference picture " image will not by present frame and later decoded frame reference.
Embodiment 13:
The present invention provides a kind of code device of video, and for managing reference picture buffering area, which is compiling the device Following steps can be executed during code:
Step 1301:If the display order of present image is pressed in the sequence head of current video sequence after coded sequence After first I frame, then following label is done to image in reference picture buffering area:
(1) coded sequence is before the sequence head of current video sequence presses first I frame after coded sequence, all Labeled as " non-reference picture ";
(2) coded sequence current video sequence sequence head by first I frame after coded sequence after, and Frame of the value of no_forward_reference_flag equal to 0 is collectively labeled as " non-reference picture ".
Step 1302:Labeled as " non-reference picture " image will not be encoded by present frame and later frame reference.
Embodiment 14:
The present invention provides a kind of coding/decoding method of video, and for managing reference picture buffering area, which is solving the device Following steps can be executed during code:
Step 1401:If the display order of present image is pressed in the sequence head of current video sequence after decoding order After first I frame, then following label is done to image in reference picture buffering area:
(1) decoding order is before the sequence head of current video sequence presses first I frame after decoding order, all Labeled as " non-reference picture ";
(2) decoding order current video sequence sequence head by first I frame after decoding order after, and Frame of the value of no_forward_reference_flag equal to 0 is collectively labeled as " non-reference picture ".
Step 1402:Labeled as " non-reference picture " image will not by present frame and later decoded frame reference.

Claims (8)

1. a kind of coding method of video, which is characterized in that include the following steps:
(1)Determine the frame number SeqDelayNum [i], wherein i of i-th of sequence output delay of coding>=0, SeqDelayNum [i]>=1, and distribute the image storage space that a size is not less than SeqDelayNum [i] frame for i-th of sequence of coding;
(2)According to the frame number of the number SeqCodedNum [i] of i-th of encoded sequence frame of coding and output delay The output of the image storage space image of i-th of sequence of SeqDelayNum [i] management codings, wherein SeqCodedNum [i]> =0;Specifically management method is:After the frame for often having encoded i-th of sequence, the decoding and rebuilding image of current encoded frame is moved into The image storage space of i-th of sequence, and it is labeled as " not exporting image ";Detection moment is exported in image, if the i-th of coding The number SeqCodedNum [i] of a encoded sequence frame is more than or equal to the frame number SeqDelayNum [i] of output delay, then from volume A frame image of display order minimum is exported in the image storage space of i-th of sequence of code, and is marked as " having exported figure Picture ";Otherwise, any image is not exported;
(3)Frame number SeqDelayNum [i] write-ins of i-th of sequence output delay of coding are sent to the code of video decoding end Stream.
2. the coding method of video according to claim 1, which is characterized in that the step(3)Described in i-th of sequence it is defeated The frame number SeqDelayNum [i] for going out delay be written in the code stream of sequence head or in the code stream of sequence header extension write-in or It is written in the code stream of the image head of first frame after sequence head.
3. a kind of coding/decoding method of video, which is characterized in that include the following steps:
(1)The frame number of the output delay of decoded i-th of sequence is obtained from the code stream received from Video coding end SeqDelayNum [i], wherein i>=0, SeqDelayNum [i]>=1, and it is not small for one size of decoded i-th of sequence distribution In the image storage space of SeqDelayNum [i] frame;
(2)According to the frame number of the number SeqDecodeNum [i] of decoded i-th of sequence decoded frame and output delay SeqDelayNum [i] manages the output of decoded i-th of sequence image memory space image, wherein SeqDecodeNum [i]>= 0;Specifically management method is:After the frame for often having decoded i-th of sequence, the decoding and rebuilding image of current decoded frame is moved into The image storage space of i-th of sequence, and it is labeled as " not exporting image ";Detection moment is exported in image, if decoded i-th The number SeqDecodeNum [i] of a sequence nucleotide sequence decoded frame is more than or equal to the frame number SeqDelayNum [i] of output delay, A frame image of display order minimum is then exported from the image storage space of decoded i-th of sequence, and is marked as " Export image ";Otherwise, any image is not exported.
4. the coding/decoding method of video according to claim 3, which is characterized in that the step(1)In, the acquisition is decoded The frame number SeqDelayNum [i] of the output delay of i-th of sequence, the method for acquisition include:In the code stream of sequence head obtain or It obtains in the code stream of sequence header extension or is obtained in the code stream of the image head of first frame after the sequence head.
5. a kind of video coding apparatus, which is characterized in that including coding processing unit and code stream writing unit, the coded treatment The frame number SeqDelayNum [i], wherein i of i-th sequence output delay of the unit for determining coding>=0, SeqDelayNum [i]>=1, and distribute the image storage space that a size is not less than SeqDelayNum [i] frame for i-th of sequence of coding;And And according to the frame number SeqDelayNum of the number SeqCodedNum [i] of i-th of encoded sequence frame of coding and output delay The output of the image storage space image of i-th of sequence of [i] management coding, wherein SeqCodedNum [i]>=0;Specific management Method is:After the frame for often having encoded i-th of sequence, by decoding and rebuilding image i-th of sequence of immigration of current encoded frame Image storage space, and it is labeled as " not exporting image ";Detection moment is exported in image, if i-th of sequence of coding has been compiled The number SeqCodedNum [i] of code frame is more than or equal to the frame number SeqDelayNum [i] of output delay, then from i-th of coding A frame image of display order minimum is exported in the image storage space of sequence, and is marked as " having exported image ";Otherwise, Any image is not exported;
Frame number SeqDelayNum [i] write-ins for i-th of sequence output delay that the code stream writing unit is used to encode are sent To the code stream of video decoding end.
6. video coding apparatus according to claim 5, which is characterized in that i-th of sequence by coding exports delay Frame number SeqDelayNum [i] write-ins be sent to the code stream of video decoding end, the method for write-in includes:In the code stream of sequence head Middle write-in write-in or is written after the sequence head in the code stream of sequence header extension in the code stream of the image head of first frame.
7. a kind of video decoder, which is characterized in that including codec processing unit and the sequence being set in code stream reading unit The frame number acquiring unit of the frame number acquiring unit of row output delay, the sequence output delay is used for from received from Video coding end Code stream in obtain decoded i-th of sequence output delay frame number SeqDelayNum [i], wherein i>=0, SeqDelayNum[i]>=1;
The codec processing unit is the figure that decoded i-th of sequence distributes that a size is not less than SeqDelayNum [i] frame Image storage space;According to the frame number of the number SeqDecodeNum [i] of decoded i-th of sequence decoded frame and output delay SeqDelayNum [i] manages the output of decoded i-th of sequence image memory space image, wherein SeqDecodeNum [i]>= 0;Specifically management method is:After the frame for often having decoded i-th of sequence, the decoding and rebuilding image of current decoded frame is moved into The image storage space of i-th of sequence, and it is labeled as " not exporting image ";Detection moment is exported in image, if decoded i-th The number SeqDecodeNum [i] of a sequence nucleotide sequence decoded frame is more than or equal to the frame number SeqDelayNum [i] of output delay, A frame image of display order minimum is then exported from the image storage space of decoded i-th of sequence, and is marked as " Export image ";Otherwise, any image is not exported.
8. video decoder according to claim 7, which is characterized in that obtained from the code stream received from Video coding end The frame number SeqDelayNum [i] of the output delay of decoded i-th of sequence, the method for acquisition include:In the code stream of sequence head It obtains or obtains in the code stream of sequence header extension or obtained in the code stream of the image head of first frame after the sequence head.
CN201410141736.0A 2014-04-09 2014-04-09 Video coding-decoding method, device and the video code flow of generation Active CN103945221B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410141736.0A CN103945221B (en) 2014-04-09 2014-04-09 Video coding-decoding method, device and the video code flow of generation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410141736.0A CN103945221B (en) 2014-04-09 2014-04-09 Video coding-decoding method, device and the video code flow of generation

Publications (2)

Publication Number Publication Date
CN103945221A CN103945221A (en) 2014-07-23
CN103945221B true CN103945221B (en) 2018-08-07

Family

ID=51192667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410141736.0A Active CN103945221B (en) 2014-04-09 2014-04-09 Video coding-decoding method, device and the video code flow of generation

Country Status (1)

Country Link
CN (1) CN103945221B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104113778B (en) * 2014-08-01 2018-04-03 广州猎豹网络科技有限公司 A kind of method for decoding video stream and device
CN106713927B (en) * 2016-11-14 2019-08-13 珠海格力电器股份有限公司 Image output device, method and decoder
CN111836104B (en) * 2020-07-09 2022-01-28 海信视像科技股份有限公司 Display apparatus and display method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6043851A (en) * 1997-01-13 2000-03-28 Nec Corporation Image and sound synchronizing reproduction apparatus and method of the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7652994B2 (en) * 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
JP2009017014A (en) * 2007-07-02 2009-01-22 Sony Corp Device, method and program for decoding video and device for receiving broadcasting signal
JP5197238B2 (en) * 2008-08-29 2013-05-15 キヤノン株式会社 Video transmission apparatus, control method thereof, and program for executing control method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6043851A (en) * 1997-01-13 2000-03-28 Nec Corporation Image and sound synchronizing reproduction apparatus and method of the same

Also Published As

Publication number Publication date
CN103945221A (en) 2014-07-23

Similar Documents

Publication Publication Date Title
JP6233984B2 (en) Virtual reference decoder for multiview video coding
EP2991349B1 (en) Method of palette index signaling for image and video coding
CN112272298B (en) Method and device for coding and decoding conversion coefficient
CN100562114C (en) Video encoding/decoding method and decoding device
MY153200A (en) Picture information coding device and coding method
CN104106264B (en) Metadata assisted video decoding
US8238427B2 (en) Rate distortion optimized adaptive intra refresh for video coding
CN103260018B (en) Intra-frame image prediction decoding method and Video Codec
RU2013158832A (en) REDUCED DELAY IN VIDEO CODING AND DECODING
TWI374669B (en) Decoder architecture systems, apparatus and methods
GB2381403A (en) Video coding using multiple buffers
JP2014523693A5 (en)
JP2022507669A (en) How to identify random access points and picture types
CN108111865A (en) JCTVC-L0226:VPS and VPS_EXTENSION updates
CN103945221B (en) Video coding-decoding method, device and the video code flow of generation
CN103491379A (en) Method and device for improving intelligent analysis performance
US20110216827A1 (en) Method and apparatus for efficient encoding of multi-view coded video data
CN103167289A (en) Method and device for coding and decoding image
CN105874800B (en) Syntax resolver and syntax analytic method
CN103873872B (en) Reference pictures management method and device
US8503534B2 (en) Multi-bus architecture for a video codec
CN113574896B (en) Method, equipment and electronic equipment for acquiring intra-frame prediction mode
US8443413B2 (en) Low-latency multichannel video port aggregator
CN103780908A (en) Efficient H264 decoding method
CN108353180A (en) Video coding with delay reconstruction

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant