CN100452877C - Visual information decoding apparatus and method - Google Patents

Visual information decoding apparatus and method Download PDF

Info

Publication number
CN100452877C
CN100452877C CNB2004100903777A CN200410090377A CN100452877C CN 100452877 C CN100452877 C CN 100452877C CN B2004100903777 A CNB2004100903777 A CN B2004100903777A CN 200410090377 A CN200410090377 A CN 200410090377A CN 100452877 C CN100452877 C CN 100452877C
Authority
CN
China
Prior art keywords
frame
mentioned
buffer
video signal
signal data
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.)
Expired - Fee Related
Application number
CNB2004100903777A
Other languages
Chinese (zh)
Other versions
CN1774069A (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.)
Institute for Information Industry
Original Assignee
Institute for Information Industry
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 Institute for Information Industry filed Critical Institute for Information Industry
Priority to CNB2004100903777A priority Critical patent/CN100452877C/en
Publication of CN1774069A publication Critical patent/CN1774069A/en
Application granted granted Critical
Publication of CN100452877C publication Critical patent/CN100452877C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The present invention relates to a video decoding method. Firstly, a first picture frame in a video datum is obtained, the first picture frame is simultaneously appointed to a backward reference picture frame and a forward reference picture frame, and a picture frame buffer is emptied; then, the next picture frame in the video datum is obtained, the class of the picture frame is judged, corresponding decoding operation is performed according to the judging result, and the picture frame is temporarily stored in the picture frame buffer when the picture frame is a bidirectional forecasting picture frame.

Description

Visual information decoding apparatus and method
Technical field
The present invention is relevant for a kind of video signal processing method, and is particularly to a kind of video decoding method, the video signal data that its decodable code goes out to utilize the different coding method to compress.
Background technology
MPEG-4 is by International Standards Organization " moving normal structure (Motion Picture Expert Group, MPEG) " audio-visual compression standard of finishing of formulating.MPEG-4 adopts the compress technique different with MPEG-1/2, it is in frame (frame-based) mode, the video signal face is cut into grand zone (macroblocks), preferable again Motion Vector forecast model is predicted grand zone, exchange the redundant information (redundancy) of less data volume for, so MPEG-4 has the compression ratio of height.
Its handling process below is described.
The video signal data of mpeg format mainly is made up of three kinds of different frames, be respectively independent frame (Intra-Frame, I-frame), predictive frame (Predicted-Frame, P-frame) and bi-directional predicted frames (Bidirectional-Frame, B-frame).The frozen frozen mass of I frame for not compressing with reference to historical data in the past, it does not have relevance at compression process other frame that neutralizes.The P frame is to compress and get with reference to previous frame (I or P frame).The similar P frame of the compression process of B frame, but it is to compress and get with reference to a previous and back frame (I or P frame).
As from the foregoing, the I frame does not need can independently decipher with reference to other face, the P frame must be thought after previous frame solves according to deciphering, the B frame then must could be deciphered after last frame and a back frame are all separated out according to this, thus constitute video signal data bit streams data (bitstream) deposit order and the actual play order will be different.Be noted that B frame itself can't be brought as the plane of reference by other frame.For instance, if coder-decoder (Coder/Decoder, CODEC) order of the bit streams data of end input is:
I(0)P(3)B(1)B(2)P(6)B(4)B(5)I(9)B(7)B(8)P(12)B(10)B(11),
The order of then deciphering the bit streams data of gained should be:
I(0)B(1)B(2)P(3)B(4)B(5)P(6)B(7)B(8)I(9)B(10)B(11)P(12),
Its playing sequence and original input sequence are inequality.
Except I, P, B frame, have again in addition PB (or IB) frame and empty P frame (Empty P frame, Pe-frame).With reference to figure 1, a PB (IB) frame 100 has comprised P (or I) frame and a B frame, come if disassemble, P (or I) frame in PB (IB) frame and a B frame are consistent with the compression operation principles of P (or I) frame and B frame independently, only PB (or IB) frame can be considered as same frame in input at the same time in system layer.The Pe frame is meant the frame that does not comprise image data.
Input and the output order of the bit streams data of the classification of the frame that constitutes video signal data and video signal data above have been described.Video signal data is because archives are very big, so when video signal data is made the video files that can play, need video signal data is carried out boil down to such as File Formats such as MPEG-1/2/4, AVI.Yet, MPEG-4 video signal standard still has part to adjust the space in system layer, each tame manufacturer causes via the video signal data after wherein a kind of coder-decoder compresses and can't correctly be separated out by the coder-decoder of other family in order to develop the coder-decoder device that to meet own demand in response to different demands.For instance, in the middle of the existing software that can carry out the video signal compression, DivX and Divio are two kinds of comparatively well-known coder-decoders wherein, it is the compression standard that utilizes MPEG-4, image is compressed with high compression ratio, the matter performance is near the MPEG-2 File Format, but archives but have only the size of MPEG-1 File Format.
Though above-mentioned two kinds of coder-decoders all declare to meet the MPEG-4 standard, yet its sampling (sample) synchronization mechanism in system layer (system layer) but has different with output order (as mentioned before), cause the bit streams data can't be compatible each other, only support that promptly wherein a kind of coder-decoder of coded format can't be deciphered out with the video signal data of another kind of compressed format smoothly via both compressions video signal data later.Part supports simultaneously the coder-decoder of two types bit streams data to take to be simultaneously that a video signal data is real makes two parts of decoding modes, again according to comprised in its bit streams data copyright declaration information judge that the bit streams data of this video signal data are compressed by Divio or DivX.But such mode not only expends system resource, in case and the copyright in the bit streams data of this video signal data declaration altered or in decode procedure, lost, the method is promptly counted out, suitable inconvenience.
Therefore, one of needs can be to being carried out the video decoding method of correct decoding by the video signal data that any coder-decoder compressed.
Summary of the invention
In view of this, purpose of the present invention is providing a kind of video decoding method, smoothly all types of MPEG-4 archives are deciphered.
Based on above-mentioned purpose, the embodiment of the invention provides a kind of video decoding method, comprises the following steps: to define reference frame, a forward reference frame and a frame buffer backward; Obtain the frame in the video signal data; Judge the classification of above-mentioned frame; If above-mentioned frame is a two-way predictive frame, and if above-mentioned frame buffer has a previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding, and deposits above-mentioned bi-directional predicted frames in above-mentioned frame buffer; And if above-mentioned frame is above-mentioned bi-directional predicted frames, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then above-mentioned bi-directional predicted frames is exported in decoding.
Detailed step is: at first, read out first frame from the video signal data that compressed, this frame is assigned to simultaneously " reference frame backward " and " forward reference frame " (frame that is about to read is stored into " reference buffer backward " and " forward reference buffer " respectively), and empties frame buffer.Then read out next frame, check the classification of this frame then, and carry out corresponding operation according to its frame category.
When the frame that reads is I or P frame, then " reference frame backward " decoding is exported, then " reference frame backward " is assigned to " forward reference frame ", I that will read at present or P frame are assigned to " reference frame backward " simultaneously, and empty frame buffer.
When the frame that reads is the B frame,, then decipher the B frame in the output frame buffer, and the B frame that will read at present deposits frame buffer in if having previous B frame in the frame buffer.If do not store any B frame in the frame buffer, then directly to the B frame decoding that reads at present and with its output.
When the frame that reads is PB (or IB) frame (promptly comprising two frames simultaneously), then " reference frame backward " decoding is exported, then " reference frame backward " is assigned to " forward reference frame ", first frame in the frame that will read at present (I or P frame) is assigned to " reference frame backward " simultaneously, and second frame (B frame) in the frame that will read at present deposits frame buffer in.
When the frame that reads is the Pe frame,, then decipher the B frame in the output frame buffer, and empty frame buffer if having previous B frame in the frame buffer.If do not store any B frame in the frame buffer, then directly will " reference frame backward " decoding output.
The embodiment of the invention also provides a kind of visual information decoding apparatus, and it comprises in order to a video signal data is carried out decoded operation: a reference buffer backward, in order to store a frame; One forward reference buffer is in order to store a frame; One frame buffer is in order to store a frame; One temporary controller will be in order to will be assigned to above-mentioned reference buffer backward, above-mentioned forward reference buffer and above-mentioned frame buffer from the frame that above-mentioned video signal data is obtained; An and decoding unit, be coupled to above-mentioned temporary controller, in order to judge the classification of the frame of obtaining from above-mentioned video signal data, make above-mentioned temporary controller carry out corresponding decoded operation according to above-mentioned judged result, and the frame that the above-mentioned video signal data after the output decoding is obtained, wherein, when the frame of obtaining when above-mentioned video signal data was a two-way predictive frame, then the frame that above-mentioned video signal data is obtained was temporary in the above-mentioned frame buffer.
Description of drawings
Fig. 1 is the schematic diagram that shows PB (or IB) frame.
Fig. 2 is the flow chart of steps that shows the video decoding method of Divio video signal compressed software.
Fig. 3 is the flow chart of steps that shows the video decoding method of DivX video signal compressed software.
Fig. 4 is the flow chart of steps that shows the video decoding method of the embodiment of the invention.
Fig. 5 is the configuration diagram that shows the visual information decoding apparatus of the embodiment of the invention.
Fig. 6 A and 6B figure are the schematic diagrames that demonstration utilizes the video decoding method of the embodiment of the invention that video signal data is deciphered.
Symbol description:
100~PB frame; 505~input bit streams data;
510~decoding unit; 515~carry-out bit stream data;
520~temporary controller; 530~backward reference buffer;
540~forward reference buffer; 550~frame buffer;
P, B~frame.
Embodiment
For above and other objects of the present invention, feature and advantage can be become apparent, cited below particularlyly go out preferred embodiment, and cooperate appended graphicly, be described in detail below.
The embodiment of the invention is to disclose a kind of visual information decoding apparatus and method.At first, define the parameter of desiring to use in the present embodiment.See it with programming angle, " Current " expression is at present by the frame index that reads in the bit streams data, " Next " expression " reference frame index backward " (backward referenceframe pointer) index, " Previous " expression " forward reference frame index " (forward referenceframe pointer), " Buffer " represents buffer pointer (buffer pointer)." GetNextSample () " expression is by the sub-letter formula that reads next frame in the bit streams data, the sub-letter formula of frame to a display unit after " Dump () " expression output decoding, the sub-letter formula of " GetFirstFrame () " expression acquisition first frame in the frame that reads, the sub-letter formula of " GetSecondFrame () " expression second frame in the frame that read.In addition, according to MPEG video signal compression standard, it provides one " reference buffer backward " (backward reference buffer) and " forward reference buffer " (a forwardreference buffer), point to the frame that is read (frame that is about to read is assigned to " backward or forward reference frame ") when " backward or forward reference frame index ", then this frame can be deposited in " backward or forward reference buffer ", below repeats no more.
With reference to traditional video coding decoder (as Divio, DivX), its employed decoding rule and decodable frame category have nothing in common with each other, and the video signal data that causes compressing via a kind of coder-decoder can't be deciphered out by other coder-decoder.For instance, with regard to decodable frame category, the decodable frame category of Divio comprise I, P, B, with the Pe frame, and the decodable frame category of DivX many PB frame.Next the decoding rule of above-mentioned two kinds of coder-decoders is described.
With Divio,, when reading first frame (Current=GetNextSample ()) (step S21), judge whether to be first frame (step S22) with reference to figure 2.If then this frame is assigned to simultaneously " reference frame backward " and " forward reference frame " (Next=Current﹠amp; Previous=Next) (step S23).Then, when obtaining next frame, carry out different operating (step S24) according to the classification of obtained frame.If I or P frame, then " reference frame backward " (Dump (Next)) exported in decoding, then " reference frame backward " is assigned to " forward reference frame " (Previous=Next), and the I that will read at present or P frame are assigned to " reference frame backward " (Next=Current) (step S251).If the B frame, then the B frame (Dump (Current)) (step S252) that reads is at present exported in decoding.If Pe frame, then decoding output " reference frame backward " (Dump (Next)) (step S253).Behind all frames of output, the frame in will " reference buffer backward " is exported (Dump (Next)) (step S26 and S27).
With DivX,, when reading first frame (GetNextSample ()) (step S31), judge whether to be first frame (step S32) with reference to figure 3.If this frame is assigned to simultaneously " reference frame backward " and " forward reference frame " (Next=Current﹠amp; Previous=Next), the frame (Dump (Current)) that reads at present of decoding output then, and will export flag and be set at " puppet " (DumpFlag=False) (step S33).Then, when obtaining next frame, carry out different operating (step S34) according to the classification of obtained frame.If I or P frame, then the frame (Dump (Current)) that reads is at present exported in decoding, then " reference frame backward " is assigned to " forward reference frame " (Previous=Next), the I or the P frame that read at present are assigned to " reference frame backward " (Next=Current), and will export flag and be set at " puppet " (DumpFlag=False) (step S351).If the B frame, then the B frame (Dump (Current)) (step S352) that reads is at present exported in decoding.If PB (or IB) frame, then second the frame decoding output (Dump (GetSecondFrame (Current))) in PB that will read at present or the IB frame, " reference frame backward " is assigned to " forward reference frame " (Previous=Next), PB or first frame in the IB frame of reading at present are assigned to " reference frame backward " (Next=GetFirstFrame (Current)), and will export flag and be set at " very " (DumpFlag=True) (step S353).If the Pe frame, decoding output " reference frame backward " (Dump (Next)) then, and will export flag and be set at " puppet " (DumpFlag=False) (step S354).Behind all frames of output, if the output flag is set at " very " (If (DumpFlag)), then " reference buffer backward " (Dump (Next)) (step S36 and S37) exported in decoding.
As mentioned above, traditional coder-decoder is owing to using the decoding rule of design separately, so the video signal data that compressed can't be deciphered out by other coder-decoder.Therefore, use the disclosed decoding rule of the embodiment of the invention to address the above problem.In addition, the embodiment of the invention and provide a frame buffer (frame buffer) for temporary B frame.
Fig. 4 is the flow chart of steps that shows the video decoding method of the embodiment of the invention.At first, read out a frame (Current=GetNextSample ()) (step S41) from the video signal data that compressed in regular turn, judge then whether this frame is first frame (step S42), that is previously described bit string flow valuve is 0 frame.If this frame is first frame, execution in step S43 then, otherwise execution in step S44.In general, the frame that reads for the first time is all the I frame, this frame is assigned to simultaneously " reference frame backward " and " forward reference frame " (Next=Current﹠amp; Previous=Next) (frame that is about to read is stored into " reference buffer backward " and " forward reference buffer " respectively), and empty frame buffer (Buffer=NULL) (step S43).Get back to step S41 and read out next frame, check the classification (step S44) of this frame then, and carry out corresponding operation according to its frame category.
When the frame that reads is I or P frame, then (Dump (Next)) exported in " reference frame backward " decoding, then " reference frame backward " is assigned to " forward reference frame " (Previous=Next), I that will read at present or P frame are assigned to " reference frame backward " (Next=Current) simultaneously, and empty frame buffer (Buffer=NULL) (step S451).
When the frame that reads is the B frame,, then decipher the B frame (Dump (Buffer)) in the output frame buffer, and the B frame that will read at present deposits frame buffer (Buffer=Current) in if having previous B frame (If (Buffer)) in the frame buffer.If do not store any B frame in the frame buffer, then directly to the B frame decoding that reads at present and with its output (Dump (Current)) (step S452).
When the frame that reads is PB (or IB) frame (promptly comprising two frames simultaneously), then (Dump (Next)) exported in " reference frame backward " decoding, then " reference frame backward " is assigned to " forward reference frame " (Previous=Next), first frame in the frame that will read at present (I or P frame) is assigned to " reference frame backward " (Next=GetFirstFrame (Current)) simultaneously, and second frame (B frame) in the frame that will read at present deposits frame buffer (Buffer=GetSecondFrame (Current)) (step S453) in.
When the frame that reads is the Pe frame,, then decipher the B frame (Dump (Buffer)) in the output frame buffer, and empty frame buffer (Buffer=NULL) if having previous B frame (If (Buffer)) in the frame buffer.If do not store any B frame in the frame buffer, then directly will " reference frame backward " decoding output (Dump (Next)) (step S454).
Next, judge whether the frame that reads at present is last frame (step S46) of this video signal data.If this frame is last frame, then execution in step S47 continues to read next frame otherwise get back to step S41.After all bit streams data are deciphered fully in the video signal data, check in the frame buffer whether still have B frame (If (Buffer)).If wherein also there is the B frame,, and empty frame buffer (Buffer=NULL) then with this B frame decoding output (Dump (Buffer)).If do not store any B frame in the frame buffer, then will " reference frame backward " decoding output (Dump (Next)).Finish above-mentioned decoding flow process then.
Fig. 5 is the configuration diagram that shows the visual information decoding apparatus of the embodiment of the invention.The framework of this exposure comprises a decoding unit 510, one temporary controller 520, " reference buffer backward " 530, " forward reference buffer " 540 and one frame buffer 550, and wherein frame buffer 550 is in order to temporary B frame.
According to operational flowchart shown in Figure 4, decoding unit 510 at first reads first frame (I frame) from the bit streams data 505 of input, and simultaneously this frame is assigned to " reference frame backward " and " forward reference frame " (promptly the frame that reads being stored into " reference buffer backward " 530 and " forward reference buffer " 540 respectively by temporary controller 520).Then, decoding unit 510 reads next frame from the bit streams data 505 of input, if this frame is I or P frame, then " reference frame backward " decoding is output as bit streams data 515, by temporary controller 520 " reference frame backward " is assigned to " forward reference frame " then, I that will read at present or P frame are assigned to " reference frame backward " simultaneously, and empty frame buffer 550.If this frame is the B frame, and if having previous B frame in the frame buffer 550, the B frame in the decoding unit 510 decoding output frame buffers 550 then, and the B frame that will read at present by temporary controller 520 deposits frame buffer 550 in.If do not store any B frame in the frame buffer 550, then decoding unit 510 is directly to the B frame decoding that reads at present and with its output.
If this frame is PB (or IB) frame (promptly comprising two frames simultaneously), then decoding unit 510 is exported " reference frame backward " decoding, by temporary controller 520 " reference frame backward " is assigned to " forward reference frame " then, first frame in the frame that will read at present (I or P frame) is assigned to " reference frame backward " simultaneously, and second frame (B frame) in the frame that will read at present deposits frame buffer in.If this frame is the Pe frame, and if having previous B frame in the frame buffer 550, the B frame in the decoding unit 510 decoding output frame buffers 550 then, and empty frame buffer 550.If do not store any B frame in the frame buffer 550, then decoding unit 510 directly will " reference frame backward " decoding output.
Fig. 6 A is first example schematic that demonstration utilizes the video decoding method of the embodiment of the invention that video signal data is deciphered.With reference to figure 6A, input bit streams data are I (0) P (1) B (2) P (3) B (4) Pe (5) B (6) I (7) B (8) in regular turn.According to previously described decoding rule, when obtaining I (0) frame (first frame), it is assigned to simultaneously " reference frame backward " and " forward reference frame " (frame that is about to read is stored into " reference buffer backward " and " forward reference buffer " respectively), do not carry out any processing, so any frame (shown in x) is not exported in decoding, and empties frame buffer.Then read P (1) frame, decoding output this moment " reference frame backward " (I (0) frame) is assigned to " forward reference frame " with " reference frame backward " (I (0) frame) then, simultaneously P (1) frame is assigned to " reference frame backward ".Then read B (2) frame, do not store any B frame in the frame buffer this moment, then direct decoding output B (2) frame.Then read P (3) frame, " reference frame backward " (P (1) frame) decoding is exported, then " reference frame backward " (P (1) frame) is assigned to " forward reference frame ", simultaneously P (3) frame is assigned to " reference frame backward ".Then read B (4) frame, do not store any B frame in the frame buffer this moment, then direct decoding output B (4) frame.Then read Pe (5) frame, do not store any B frame in the frame buffer this moment, then decoding output " reference frame backward " (P (3) frame).Then read B (6) frame, do not store any B frame in the frame buffer this moment, then direct decoding output B (6) frame.Then read I (7) frame, " reference frame backward " (P (3) frame) decoding is exported, then " reference frame backward " (P (3) frame) is assigned to " forward reference frame ", simultaneously I (7) frame is assigned to " reference frame backward ".Then read B (8) frame, do not store any B frame in the frame buffer this moment, then direct decoding output B (8) frame.B (8) frame is last frame in the bit streams data, and do not store any B frame this moment in the frame buffer, then " reference frame backward " (I (7) frame) decoding is exported, and finishes above-mentioned decoding flow process.Therefore, can get the carry-out bit stream data at last is I (0) B (2) P (1) B (4) P (3) B (6) P (3) B (8) I (7).
Fig. 6 B is second example schematic that demonstration utilizes the video decoding method of the embodiment of the invention that video signal data is deciphered.With reference to figure 6B, input bit streams data are I (0) in regular turn PB(1) B (2) Pe (3) PB(4) B (5) Pe (6) I (7) PB(8) B (9) Pe (10).When obtaining I frame (first frame), it is assigned to simultaneously " reference frame backward " and " forward reference frame ", do not carry out any processing, so any frame (shown in x) is not exported in decoding.Then read PB (1) frame, " reference frame backward " (I (0) frame) decoding is exported, then " reference frame backward " (I (0) frame) is assigned to " forward reference frame ", simultaneously first frame in PB (1) frame (P (1) frame) is assigned to " reference frame backward ", and second frame in the frame that will read at present (B (1) frame) deposits frame buffer in.Then read B (2) frame, store B (1) frame in the frame buffer this moment, B (1) frame decoding exported, and B (2) frame is deposited in the frame buffer.Then read Pe (3) frame, store B (2) frame in the frame buffer this moment, with the output of B (2) frame decoding, and empties frame buffer.Then read PB (4) frame, " reference frame backward " (P (1) frame) decoding is exported, then " reference frame backward " (P (1) frame) is assigned to " forward reference frame ", simultaneously first frame in PB (1) frame (P (4) frame) is assigned to " reference frame backward ", and second frame in the frame that will read at present (B (4) frame) deposits frame buffer in.Then read B (5) frame, store B (4) frame in the frame buffer this moment, B (4) frame decoding exported, and B (5) frame is deposited in the frame buffer.Then read Pe (6) frame, store B (5) frame in the frame buffer this moment, with the output of B (5) frame decoding, and empties frame buffer.Then read I (7) frame, " reference frame backward " (P (4) frame) decoding is exported, then " reference frame backward " (P (4) frame) is assigned to " forward reference frame ", simultaneously I (7) frame is assigned to " reference frame backward ".Then read PB (8) frame, " reference frame backward " (I (7) frame) decoding is exported, then " reference frame backward " (I (7) frame) is assigned to " forward reference frame ", simultaneously first frame in PB (8) frame (P (8) frame) is assigned to " reference frame backward ", and second frame in the frame that will read at present (B (8) frame) deposits frame buffer in.Then read B (9) frame, store B (8) frame in the frame buffer this moment, B (8) frame decoding exported, and B (9) frame is deposited in the frame buffer.Then read Pe (10) frame, store B (9) frame in the frame buffer this moment, with the output of B (9) frame decoding, and empties frame buffer.Pe (10) frame is last frame in the bit streams data, and do not store any B frame this moment in the frame buffer, then " reference frame backward " (P (8) frame) decoding is exported, and finishes above-mentioned decoding flow process.Therefore, can get the carry-out bit stream data at last is I (0) B (1) B (2) P (1) B (4) B (5) P (4) I (7) B (8) B (9) P (8).
The decoding rule that the video decoding method utilization that the present invention discloses defines is voluntarily deciphered the video signal data that compressed, and it can come out the video signal data correct decoding that arbitrary coder-decoder compressed.The present invention discloses and more utilizes a buffer to store the B frame that reads in addition, output management and control correction and buffer management mechanism in proper order by the bit streams data, can be under the situation of the classification of unknown video signal data and copyright, smoothly all types of MPEG-4 archives are deciphered, and the cost of the stability that increases system effectively when reducing that hardware is real to be done.
Though the present invention discloses as above with preferred embodiment; right its is not in order to limit the present invention; anyly have the knack of this skill person; without departing from the spirit and scope of the present invention; when can doing a little change and retouching, so protection scope of the present invention is as the criterion when looking appended the claim scope person of defining.

Claims (19)

1. a video decoding method comprises the following steps:
Definition one is reference frame, a forward reference frame and a frame buffer backward;
Obtain the frame in the video signal data;
Judge the classification of above-mentioned frame;
If above-mentioned frame is a two-way predictive frame, and if above-mentioned frame buffer has a previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding, and deposits above-mentioned bi-directional predicted frames in above-mentioned frame buffer; And
If above-mentioned frame is above-mentioned bi-directional predicted frames, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then above-mentioned bi-directional predicted frames is exported in decoding.
2. video decoding method according to claim 1, wherein, the step that obtains above-mentioned frame more comprises the following steps:
Judge whether above-mentioned frame is first frame of above-mentioned video signal data; And
If above-mentioned frame is above-mentioned first frame, then above-mentioned frame is assigned to simultaneously above-mentioned reference frame backward and above-mentioned forward reference frame.
3. video decoding method according to claim 2, it more comprises the following steps:
If above-mentioned frame is an independent frame or predictive frame, then above-mentioned reference frame is backward exported in decoding.
4. video decoding method according to claim 3, it more comprises the following steps:
If above-mentioned frame is one to comprise the combined frames of a predictive frame and a two-way predictive frame or an independent frame and a two-way predictive frame, then deciphers and export above-mentioned reference frame backward, and deposit the above-mentioned bi-directional predicted frames in the combinations thereof frame in above-mentioned frame buffer.
5. video decoding method according to claim 4, it more comprises the following steps:
If above-mentioned frame is one not comprise the predictive frame of video signal data, and if above-mentioned frame buffer has a previous bi-directional predicted frames, the above-mentioned previous bi-directional predicted frames of decoding output then; And
If above-mentioned frame is the above-mentioned predictive frame that does not comprise video signal data, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then above-mentioned reference frame is backward exported in decoding.
6. video decoding method according to claim 5, it more comprises the following steps:
Judge whether above-mentioned frame is last frame of above-mentioned video signal data;
If above-mentioned frame is last frame of above-mentioned video signal data, and if above-mentioned frame buffer has a previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding; And
If above-mentioned frame is last frame of above-mentioned video signal data, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then above-mentioned reference frame is backward exported in decoding.
7. a video decoding method comprises the following steps:
Obtain first frame in the video signal data;
Above-mentioned first frame is assigned to a reference frame and a forward reference frame backward simultaneously, and empties a frame buffer;
Obtain the next frame in the above-mentioned video signal data;
Judge the classification of the next frame in the above-mentioned video signal data; And
Carry out corresponding decoded operation according to above-mentioned judged result, and when the next frame in the above-mentioned video signal data is a two-way predictive frame, then the next frame in the above-mentioned video signal data is temporary in the above-mentioned frame buffer.
8. video decoding method according to claim 7, wherein, the step of carrying out above-mentioned decoded operation more comprises the following steps:
If the next frame in the above-mentioned video signal data is an independent frame or predictive frame, then the next frame in the above-mentioned video signal data is exported in decoding;
Above-mentioned reference frame backward is assigned to above-mentioned forward reference frame;
Next frame in the above-mentioned video signal data is assigned to above-mentioned reference frame backward; And
Empty above-mentioned frame buffer.
9. video decoding method according to claim 8, wherein, the step of carrying out above-mentioned decoded operation more comprises the following steps:
If the next frame in the above-mentioned video signal data is above-mentioned bi-directional predicted frames, judge whether above-mentioned frame buffer has a previous bi-directional predicted frames;
If above-mentioned frame buffer has above-mentioned previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding;
Next frame in the above-mentioned video signal data is stored in above-mentioned frame buffer; And
If above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then the next frame in the above-mentioned video signal data is exported in decoding.
10. video decoding method according to claim 9, wherein, the step of carrying out above-mentioned decoded operation more comprises the following steps:
If the next frame in the above-mentioned video signal data is one to comprise the combined frames of a predictive frame and a two-way predictive frame or an independent frame and a two-way predictive frame, then deciphers and export above-mentioned reference frame backward;
Above-mentioned reference frame backward is assigned to above-mentioned forward reference frame;
One of them frame in the combinations thereof frame is assigned to above-mentioned reference frame backward; And
Another frame in the combinations thereof frame is deposited in the above-mentioned frame buffer.
11. video decoding method according to claim 10, wherein, the step of carrying out above-mentioned decoded operation more comprises the following steps:
If the next frame in the above-mentioned video signal data is one not comprise the predictive frame of video signal data, judge whether above-mentioned frame buffer has a previous bi-directional predicted frames;
If above-mentioned frame buffer has above-mentioned previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding;
Empty above-mentioned frame buffer; And
If above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then above-mentioned reference frame is backward exported in decoding.
12. video decoding method according to claim 11, it more comprises the following steps:
Judge whether the next frame in the above-mentioned video signal data is last frame of above-mentioned video signal data;
If the next frame in the above-mentioned video signal data is last frame of above-mentioned video signal data, judge whether above-mentioned frame buffer has a previous bi-directional predicted frames;
If above-mentioned frame buffer has above-mentioned previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding, and empties above-mentioned frame buffer; And
If above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, then above-mentioned reference frame is backward exported in decoding.
13. a visual information decoding apparatus, it comprises in order to a video signal data is carried out decoded operation:
One reference buffer backward is in order to store a frame;
One forward reference buffer is in order to store a frame;
One frame buffer is in order to store a frame;
One temporary controller will be in order to will be assigned to above-mentioned reference buffer backward, above-mentioned forward reference buffer and above-mentioned frame buffer from the frame that above-mentioned video signal data is obtained; And
One decoding unit, be coupled to above-mentioned temporary controller, in order to judge the classification of the frame of obtaining from above-mentioned video signal data, make above-mentioned temporary controller carry out corresponding decoded operation according to above-mentioned judged result, and the frame that the above-mentioned video signal data after the output decoding is obtained, wherein, when the frame of obtaining when above-mentioned video signal data was a two-way predictive frame, then the frame that above-mentioned video signal data is obtained was temporary in the above-mentioned frame buffer.
14. visual information decoding apparatus according to claim 13, wherein, if the frame that above-mentioned video signal data is obtained is first frame of above-mentioned video signal data, the frame that then above-mentioned decoding unit is obtained above-mentioned video signal data is stored into above-mentioned reference buffer backward and above-mentioned forward reference buffer simultaneously.
15. visual information decoding apparatus according to claim 14, wherein, if the frame that above-mentioned video signal data is obtained is an independent frame or predictive frame, the frame that the above-mentioned video signal data of then above-mentioned decoding unit decoding output is obtained, and above-mentioned temporary controller is stored into above-mentioned forward reference buffer with the frame in the above-mentioned reference buffer backward, the frame that above-mentioned video signal data is obtained is stored into above-mentioned reference buffer backward, and empties above-mentioned frame buffer.
16. visual information decoding apparatus according to claim 15, wherein, if the frame that above-mentioned video signal data is obtained is above-mentioned bi-directional predicted frames, above-mentioned temporary controller judges whether there is a previous bi-directional predicted frames in the above-mentioned frame buffer, if have above-mentioned previous bi-directional predicted frames in the above-mentioned frame buffer, then above-mentioned previous bi-directional predicted frames is exported in decoding, above-mentioned temporary controller is stored in above-mentioned frame buffer with above-mentioned frame, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, the frame that the above-mentioned video signal data of then above-mentioned decoding unit decoding output is obtained.
17. visual information decoding apparatus according to claim 16, wherein, if the frame obtained of above-mentioned video signal data is one to comprise the combined frames of a predictive frame and a two-way predictive frame or an independent frame and a two-way predictive frame, frame in the above-mentioned reference buffer backward of then above-mentioned decoding unit decoding output, and above-mentioned temporary controller is stored into above-mentioned forward reference buffer with the frame in the above-mentioned reference buffer backward, one of them frame in the combinations thereof frame is stored into above-mentioned reference buffer backward, and another frame in the combinations thereof frame is deposited in the above-mentioned frame buffer.
18. visual information decoding apparatus according to claim 17, wherein, if the frame obtained of above-mentioned video signal data is one not comprise the predictive frame of video signal data, above-mentioned decoding unit judges whether above-mentioned frame buffer has a previous bi-directional predicted frames, if above-mentioned frame buffer has above-mentioned previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding, above-mentioned temporary controller empties above-mentioned frame buffer, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, the frame in the above-mentioned reference buffer backward of then above-mentioned decoding unit decoding output.
19. visual information decoding apparatus according to claim 18, wherein, above-mentioned decoding unit judges whether the frame that above-mentioned video signal data is obtained is last frame of above-mentioned video signal data, if above-mentioned frame is last frame of above-mentioned video signal data, judge whether above-mentioned frame buffer has a previous bi-directional predicted frames, if above-mentioned frame buffer has above-mentioned previous bi-directional predicted frames, then above-mentioned previous bi-directional predicted frames is exported in decoding, above-mentioned then temporary controller empties above-mentioned frame buffer, and if above-mentioned frame buffer does not have above-mentioned previous bi-directional predicted frames, the frame in the above-mentioned reference buffer backward of then above-mentioned decoding unit decoding output.
CNB2004100903777A 2004-11-12 2004-11-12 Visual information decoding apparatus and method Expired - Fee Related CN100452877C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100903777A CN100452877C (en) 2004-11-12 2004-11-12 Visual information decoding apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100903777A CN100452877C (en) 2004-11-12 2004-11-12 Visual information decoding apparatus and method

Publications (2)

Publication Number Publication Date
CN1774069A CN1774069A (en) 2006-05-17
CN100452877C true CN100452877C (en) 2009-01-14

Family

ID=36760795

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100903777A Expired - Fee Related CN100452877C (en) 2004-11-12 2004-11-12 Visual information decoding apparatus and method

Country Status (1)

Country Link
CN (1) CN100452877C (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130243100A1 (en) * 2012-03-15 2013-09-19 Mediatek Inc. System and Method for Adaptive Frame Re-compression in Video Processing System

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1101478A (en) * 1993-03-15 1995-04-12 索尼公司 Transmission and decoding of picture signals
JP2000341696A (en) * 1999-05-28 2000-12-08 Nec Microcomputer Technology Ltd Device and method for decoding image
CN1374808A (en) * 1996-11-06 2002-10-16 松下电器产业株式会社 Image coding & decoding method and image coding & decoding apparatus
EP1469683A1 (en) * 2002-01-23 2004-10-20 Sony Corporation Image information coding device and method and image information decoding device and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1101478A (en) * 1993-03-15 1995-04-12 索尼公司 Transmission and decoding of picture signals
CN1374808A (en) * 1996-11-06 2002-10-16 松下电器产业株式会社 Image coding & decoding method and image coding & decoding apparatus
JP2000341696A (en) * 1999-05-28 2000-12-08 Nec Microcomputer Technology Ltd Device and method for decoding image
EP1469683A1 (en) * 2002-01-23 2004-10-20 Sony Corporation Image information coding device and method and image information decoding device and method

Also Published As

Publication number Publication date
CN1774069A (en) 2006-05-17

Similar Documents

Publication Publication Date Title
CN103621085B (en) Reduce method and the computing system of the delay in video decode
CN1941913B (en) Method and apparatus for skipping pictures
CN100508585C (en) Apparatus and method for controlling reverse-play for digital video bit stream
CN101459848B (en) Distributed multi-format digital video transcoding construction design method
TW527838B (en) Digital broadcasting receiving device
CN104768020B (en) Dynamic image predictive coding apparatus and method, dynamic image prediction decoding apparatus and method
CN100446572C (en) Method of decoding digital video and digital video decoder system thereof
CN101595475A (en) Scalable video (SVC) file layout
JPH10117353A (en) Data processor and receiver
CN100461845C (en) Recording apparatus, recording method, reproducing apparatus, reproducing method, and program
CN101616318A (en) Be used to play up or the method for decoding compressed multimedia data and the device of being correlated with
TWI245548B (en) Method and device for video decoding
CN107077873A (en) Sample metadata is coupled with media sample
CN101288314A (en) Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, dynamic image decoding method, dynamic image encoding program, and dynamic image decoding program
CN100452877C (en) Visual information decoding apparatus and method
CN100361152C (en) Method and device for detecting watermark
CN106454369B (en) Dynamic image prediction decoding method, dynamic image prediction decoding device
CN101146230B (en) Apparatus and method for encoding and/or decoding moving picture
JP2004221900A (en) Image information decoding device and its method
CN100474914C (en) Method and apparatus for controlling a bit rate of digital video data
JP3907996B2 (en) Image encoding apparatus, image decoding apparatus and method, image encoding program, and image decoding program
CN201131015Y (en) Television set with recording and time-shifting function
JPH08280009A (en) Image encoder, image decoder and optical disk
JP2012138840A (en) Video server and seamless playback method
JPH07170485A (en) Image reproducing device and image decoding device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090114