CN100562114C - Video encoding/decoding method and decoding device - Google Patents

Video encoding/decoding method and decoding device Download PDF

Info

Publication number
CN100562114C
CN100562114C CN 200710045454 CN200710045454A CN100562114C CN 100562114 C CN100562114 C CN 100562114C CN 200710045454 CN200710045454 CN 200710045454 CN 200710045454 A CN200710045454 A CN 200710045454A CN 100562114 C CN100562114 C CN 100562114C
Authority
CN
China
Prior art keywords
decoding
submodule
parameter
buffer
information
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
CN 200710045454
Other languages
Chinese (zh)
Other versions
CN101115201A (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.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN 200710045454 priority Critical patent/CN100562114C/en
Publication of CN101115201A publication Critical patent/CN101115201A/en
Application granted granted Critical
Publication of CN100562114C publication Critical patent/CN100562114C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

A kind of video encoding/decoding method of multimedia digital signal processing technology field and decoding device, method of the present invention are divided into video decoding process to resolve with entropy decoding, parameter decoding and three steps of pixel decoding to be finished; Video decoder of the present invention, comprise: resolve to be used for respectively finishing and resolve and entropy decoding, parameter decoding and three steps of pixel decoding, and first buffer, second buffer and the 3rd buffer are used for buffer memory syntactic element, parameter information, video image information with entropy decoder module, parameter decoder module and main decoder module.The contents processing of the present invention in each step has similar computing granularity and data local characteristics, thereby helps reasonably Resources allocation, simplifies the internal interface of video decode, improves the efficient of video decode.

Description

Video encoding/decoding method and decoding device
Technical field
The present invention relates to the method and apparatus in a kind of telecommunication technology field, specifically is a kind of video encoding/decoding method and decoding device.
Background technology
The video coding and decoding technology of present main flow, for example MPEG-x series, H.26x series and Chinese AVS standard etc., all be based on conversion/prediction hybrid encoding frame, its core codec flow process is: at first the video code flow of input is done and resolved and the entropy decoding, divide two-way then: the one tunnel through obtaining the image residual error data after re-quantization and the inverse transformation; Another road obtains the image prediction data after by time domain prediction or spatial domain prediction.After the two paths of data addition through loop filtering output, and as the reference of next frame time domain prediction.When the design Video Decoder, at first to carry out Module Division to the structure of decoder.
Literature search through prior art is found, Chinese patent (application) number is CN200410070208.7, name is called " a kind of Video Decoder based on software-hardware synergism control ", has adopted the division methods based on function, and computing approaching on the function is categorized in the same module.For example, the calculating section of the time domain prediction parameter (motion vector etc.) in the Video Decoder and time domain fractional samples interpolation partly are divided into the time domain prediction module; The calculating section of spatial domain prediction parameter (intra prediction mode etc.) and the calculating section of spatial domain sample are divided into the spatial domain prediction module; The calculating section and the loop filtering sample calculation of loop filtering parameter (boundary filtering strength etc.) partly are divided into loop filtering module or the like.The limitation of this method is, can not effectively utilize the data dependence between the various parameter computings.For example, the calculating of boundary intensity directly depends on motion vector, all needs to use the differentiation algorithm of contiguous block in the multiple CALCULATION OF PARAMETERS.If various parameter computings are divided into different modules, then data dependence not only can not be used effectively, and can cause the complicated of intermodule interface on the contrary.
Method and device that summary of the invention is realized based on the infra-frame prediction of correlation between future position
The present invention is directed to above-mentioned the deficiencies in the prior art, a kind of video encoding/decoding method and decoding device are provided, it is finished video decoding process through resolving with entropy decoding, parameter decoding and three steps of pixel decoding, processing in each step has similar character and data local characteristics, and provide corresponding decoding device in conjunction with three steps, thereby help reasonably Resources allocation, improve the efficient of video decode.
The present invention is achieved through the following technical solutions:
The video encoding/decoding method that the present invention relates to comprises the steps:
Step 1, the video bit stream that input has been compressed according to the video compression standard that this bit stream is followed, is resolved and the entropy decoding it, obtains syntax element information at different levels;
Described syntax element information, be meant corresponding with the code word in the bit stream, can be by variable length decoding and the information that obtains based on entropy decoding methods such as context decodings.
Step 2, carry out the video parameter decoding according to resulting syntax element information in the step 1, obtain new parameter information, from circulation for the second time, then use resulting syntax element information in the step 1 and the preceding parameter information that once circulates and obtained during execution in step two, carry out the video parameter decoding, obtain new parameter information;
Described parameter information is meant directly and describes image with parametric form, but the code word information corresponding in not direct and the bit stream, they are obtained by syntax element information and existing parameter information computing.
Step 3 is carried out the pixel decoding according to resulting parameter information in resulting syntax element information, the step 2 in the step 1, video image information after obtaining reducing and output; From circulation for the second time, the video image information that is obtained when then using resulting parameter information and a preceding execution in step three in the syntax element information that obtains in the step 1, the step 2 carries out the pixel decoding, new video image information after obtaining reducing and output;
Step 4, the above step 1 that circulates is finished all incoming bit streams to step 3 up to decoding.
The video decoder that the present invention relates to comprises: resolve and entropy decoder module, parameter decoder module, main decoder module, first buffer, second buffer and the 3rd buffer.
Described parsing and entropy decoder module are resolved and the entropy decoding the bit stream of input, obtain syntax element information at different levels, and deposit first buffer in.
Described parsing and entropy decoder module, comprise embedded type CPU (central processing unit) and entropy decoding accelerator, described embedded type CPU is responsible for controlling the operation of entropy decoding accelerator, parameter decoder module and main decoder module, after the initialization of each sheet is finished, send enabling signal to entropy decoding accelerator, parameter decoder module and main decoder module, after the decoding of a sheet was finished, embedded type CPU was accepted the end signal of entropy decoding accelerator, parameter decoder module and main decoder module; Described entropy decoding accelerator is responsible for other syntactic element parsing/entropy decoding work of the following level of macro block rank and macro block.
Described embedded type CPU also is responsible for the parsing/entropy decoding work of the above rank syntactic element of macro block, embedded type CPU uses index Columbus coding/decoding method and the fixed length coding/decoding method based on software, the video bit stream of input is decoded into sequence head information, the header of picture header information and sheet, resulting sequence head information, picture header information, the header of sheet outputs to first buffer on the sheet, the work period of embedded type CPU is unit with the sheet, after finishing decoding to the above rank syntactic element of the macro block of a sheet at every turn, start the entropy decoding accelerator, also finish processing up to the entropy decoding accelerator, begin the work of next sheet then this sheet.
Described entropy decoding accelerator, be responsible for other syntactic element parsing/entropy decoding work of the following level of macro block rank and macro block, the entropy decoding accelerator is after the enabling signal that obtains from embedded type CPU, from first buffer, read the header of decoding sequence of corresponding this film respectively, the picture header information syntactic element also stores in first buffer, first buffer has had the header syntactic element of interior decoded of sheet, the entropy decoding accelerator is according to all syntactic elements of having decoded in first buffer, use hardware based index Columbus and context-adaptive variable length decoding method that incoming bit stream is resolved/the entropy decoding, and store into decoded result in first buffer in order successively, and be maintained as the form of syntactic element fifo queue, finish the decoding of a sheet when the entropy decoding accelerator after, issue end signal of embedded type CPU, and enter wait state, till embedded type CPU sends enabling signal next time.
Described parameter decoder module obtains to be calculated the parameter information that makes new advances, and deposited in second buffer by the syntax element information of resolving and the entropy decoder module deposits in from first buffer.
Described parameter decoder module, be responsible for decoded syntactic element is converted to parameter information, as long as have data to use in the syntactic element, the parameter decoder module is promptly started working, the work period of parameter decoder module is unit with the sheet, when each sheet begins, the parameter decoder module reads the above rank syntactic element of the macro block corresponding with this film from first buffer, and store second buffer into, the parameter decoder module is according to the macro block higher level syntactic element that is stored in second buffer, macro block rank and the following rank syntactic element of macro block are carried out the parameter decoding, its result comprises: motion vector, intra prediction mode, boundary filtering strength and quantization parameter, the parameter decoded results is deposited into second buffer, distance of swimming amplitude information and reference key need not parameter decoding and can directly be used as parameter in the syntactic element, and this class syntactic element directly is transferred in second buffer.
Described main decoder module, from first buffer, obtain by the syntax element information of resolving and the entropy decoder module deposits in, the parameter information that acquisition is deposited in by the parameter decoder module from second buffer calculates the video image information that makes new advances, and deposits the 3rd buffer and output in.
Described main decoder module comprises following submodule: re-quantization submodule, inverse transformation submodule, infra-frame prediction submodule, reference pixel obtain submodule, fractional samples interpolation submodule, compensation reconstruct submodule and loop filtering submodule.
Described re-quantization submodule reads macro block (mb) type, quantization parameter and distance of swimming amplitude information etc. from second buffer, foundation is inverse scan, Hadamard transform and the inverse quantization method of prescribed by standard H.264, with the 4x4 piece is unit, obtain transform coefficient matrix, and this matrix is sent to the inverse transformation submodule.
Thereby described inverse transformation submodule is responsible for that the transform coefficient matrix that obtains is carried out the inverse transformation of 4x4 integer and is obtained the residual sample matrix, and this matrix is sent to compensation reconstruct submodule.
Described infra-frame prediction submodule reads macro block (mb) type and intra prediction mode etc. from second buffer, according to the reference sample without loop filtering from compensation reconstructed module feedback, carry out infra-frame prediction and will predict the outcome being sent to the compensation reconstructed module.
Described reference pixel obtains submodule according to macro block (mb) type, reference key and the motion vector etc. that read from second buffer, from the 3rd buffer, read the video image information that carries out the required reference of corresponding fractional samples interpolation, and result and the required parameter information of fractional samples interpolation are sent to fractional samples interpolation submodule.The video image information of the required reference of described fractional samples interpolation is meant before this decoded video image information in the main decoder module running.
Described fractional samples interpolation submodule carries out the filtering interpolation according to the parameter information and the reference pixel that are obtained, and the result is sent to compensation reconstruct submodule.
Described compensation reconstruct submodule is the work period with macro block (MB), when each macro block begins, at first reads macro block (mb) type from second buffer.If current macro is I_PCM (type pulse code modulation in a frame) type, then from second buffer, read PCM (pulse code modulation) value successively, directly output to the loop filtering submodule, and feed back to the infra-frame prediction submodule; If current macro is I (in the frame) type of mb except I_PCM (type pulse code modulation in the frame), then obtain the residual sample matrix from the inverse transformation submodule, obtain the infra-frame prediction result from the infra-frame prediction submodule, output to the loop filtering submodule after then both being compensated, and feed back to the infra-frame prediction submodule; If current macro is P (single directional prediction) type or B (bi-directional predicted) type of mb, then obtain the difference sample matrix from the inverse transformation submodule, obtain interpolation result from fractional samples interpolation submodule, output to the loop filtering submodule after then both being compensated, and feed back to the infra-frame prediction submodule.
Described loop filtering submodule reads the information of decoded picture in anter from the 3rd buffer, from compensating the image pattern after the reconstruct submodule reads the current macro compensation, according to parameters such as macro block (mb) type that from second buffer, reads and boundary filtering strengths, carry out block-eliminating effect filtering, and the filtering result write the 3rd buffer as video image information, and output image information.
Compared with prior art, the present invention has following beneficial effect: the inventive method is according to the relation between the various piece in the video decoding process, comprise sequencing, operand, data dependency and data local characteristics, video decoding process is finished through resolving with entropy decoding, parameter decoding and three steps of pixel decoding.The present invention also provides a kind of video decoder, comprise: parsing and entropy decoder, parameter decoder, main decoder module, be used for respectively finishing and resolve and entropy decoding, parameter decoding and three steps of pixel decoding, and first buffer, second buffer and the 3rd buffer are used for storing intermediate data.Contents processing in each step has similar computing granularity and data local characteristics, thereby helps reasonably Resources allocation, simplifies the internal interface of video decode.
Description of drawings
Fig. 1 is a method flow schematic diagram proposed by the invention;
Fig. 2 is an apparatus structure schematic block diagram proposed by the invention;
Fig. 3 is the overall schematic block diagram of device embodiment provided by the present invention;
Fig. 4 is the schematic block diagram of main decoder module among the embodiment provided by the present invention.
Embodiment
Below in conjunction with accompanying drawing embodiments of the invention are elaborated: present embodiment is being to implement under the prerequisite with the technical solution of the present invention, provided detailed execution mode and concrete operating process, but protection scope of the present invention is not limited to following embodiment.
Present embodiment is based on standard basis specification (BASELINE PROFILE) H.264.
Present embodiment is achieved by the following technical solution.
As shown in Figure 2, the decoding device that present embodiment provided comprises: resolve and entropy decoder module, parameter decoder module, main decoder module, first buffer, second buffer and the 3rd buffer.
Described parsing and entropy decoder module are resolved and the entropy decoding the bit stream of input, obtain syntax element information at different levels, and deposit first buffer in.
Described parameter decoder module obtains to be calculated the parameter information that makes new advances, and deposited in second buffer by the syntax element information of resolving and the entropy decoder module deposits in from first buffer.
Described main decoder module, from first buffer, obtain by the syntax element information of resolving and the entropy decoder module deposits in, the parameter information that acquisition is deposited in by the parameter decoder module from second buffer calculates the video image information that makes new advances, and deposits the 3rd buffer and output in.
Described first buffer is responsible for storage by resolving the syntax element information that deposits in the entropy decoder module.
Described second buffer is responsible for the parameter information that storage is deposited in by the parameter decoder module.
Described the 3rd buffer is responsible for the video image information that storage main decoder module calculates.
As shown in Figure 3, be the The general frame of present embodiment device, wherein solid line bar arrow is a data transfer direction, the dashed bars arrow is the control transmission direction.
Described parsing and entropy decoder module, comprise embedded type CPU (central processing unit) and entropy decoding accelerator, described embedded type CPU is responsible for controlling the operation of entropy decoding accelerator, parameter decoder module and main decoder module, after the initialization of each sheet is finished, send enabling signal to entropy decoding accelerator, parameter decoder module and main decoder module, after the decoding of a sheet was finished, embedded type CPU was accepted the end signal of entropy decoding accelerator, parameter decoder module and main decoder module; Described entropy decoding accelerator is responsible for other syntactic element parsing/entropy decoding work of the following level of macro block rank and macro block.
Described first buffer comprises being used to resolve the part of decoding with entropy in first memory and the synchronous DRAM (SDRAM).
Described second buffer comprises the part that is used for the parameter decoding on the sheet in the second memory and synchronous DRAM.
Described the 3rd buffer comprises the part that is used to store output image data and reference image data in the synchronous DRAM.
Described first memory is responsible for the header syntactic element of storage through the sheet of embedded type CPU decoding; Described first memory, also be responsible for resolving at the entropy decoding accelerator/the entropy decode procedure in interim the storage header of decoding sequence, the picture header information syntactic element that from synchronous DRAM, read.
Described second memory is responsible for the above rank syntactic element of macro block that interim storage is read in parameter decoding module parameter decode procedure from synchronous DRAM; Described second memory also is responsible for the parameter information that stored parameter is decoded.
Described synchronous DRAM is responsible for storage and is outputed to synchronous DRAM through the sequence head information and the picture header information of embedded type CPU decoding; Described synchronous DRAM also is responsible for macro block rank and other syntactic element of level below the macro block that storage obtains through the decoding of entropy decoding accelerator; Described synchronous DRAM also is responsible for the video image information that storage is obtained by the decoding of main decoder module.
The image of present embodiment outputs to display device by display interface.
Described embedded type CPU also is responsible for the parsing/entropy decoding work of the above rank syntactic element of macro block, embedded type CPU uses index Columbus coding/decoding method and the fixed length coding/decoding method based on software, the video bit stream of input is decoded into sequence head information, the header of picture header information and sheet, resulting sequence head information and picture header information output to synchronous DRAM, resulting header outputs to first memory on the sheet, the work period of embedded type CPU is unit with the sheet, after finishing decoding to the above rank syntactic element of the macro block of a sheet at every turn, start the entropy decoding accelerator, parameter decoder module and main decoder module, up to the entropy decoding accelerator, parameter decoder module and main decoder module are also finished the processing to this sheet, begin the work of next sheet then.
Described entropy decoding accelerator, be responsible for other syntactic element parsing/entropy decoding work of the following level of macro block rank and macro block, the entropy decoding accelerator is after the enabling signal that obtains from embedded type CPU, from synchronous DRAM, read the header of decoding sequence of corresponding this film respectively, the picture header information syntactic element also stores in the first memory, first memory has had the header syntactic element of interior decoded of sheet, the entropy decoding accelerator is according to all syntactic elements of having decoded in the first memory, use hardware based index Columbus and context-adaptive variable length decoding method that incoming bit stream is resolved/the entropy decoding, and store in the synchronous DRAM successively decoded result in order, and be maintained as the form of syntactic element fifo queue, finish the decoding of a sheet when the entropy decoding accelerator after, issue end signal of embedded type CPU, and enter wait state, till embedded type CPU sends enabling signal next time.
Described embedded type CPU and entropy decoding accelerator have been finished the step 1 of coding/decoding method in the present embodiment, as shown in Figure 1, that is: the video bit stream that compressed of input, according to the video compression standard that this bit stream is followed, it is resolved and the entropy decoding, obtain syntax element information at different levels;
Described syntax element information, be meant corresponding with the code word in the bit stream, can be by variable length decoding and the information that obtains based on entropy decoding methods such as context decodings.In the present embodiment, syntactic element comprises macro block (mb) type (MB TYPE), distance of swimming amplitude information (RUN-LEVEL), motion vector residual error (MVD) and reference key macro block rank and the following rank syntactic elements of macro block such as (REF INDEX), also comprises the header above rank syntactic elements of macro block such as (SLICE HEADER) of sequence head information (SEQUENCE HEADER), picture header information (PICTURE HEADER) and sheet.
Described parameter decoder module, be responsible for decoded syntactic element is converted to parameter information, as long as have data to use in the syntactic element fifo queue, the parameter decoder module is promptly started working, the work period of parameter decoder module is unit with the sheet, when each sheet begins, the parameter decoder module reads the above rank syntactic element of the macro block corresponding with this film from synchronous DRAM, and store second memory into, the parameter decoder module is according to the macro block higher level syntactic element that is stored in the second memory, macro block rank and the following rank syntactic element of macro block that obtains successively carried out the parameter decoding, its parameter information comprises: motion vector (MV), intra prediction mode (INTRAMODE), boundary filtering strength (BS) and quantization parameter (QP), the parameter information of parameter decoding is deposited into second memory.Distance of swimming amplitude information and reference key need not parameter decoding and can directly be used as parameter in the syntactic element, and directly are transferred in the second memory.
Described parameter decoder module has been finished the step 2 of the coding/decoding method that present embodiment provided, and as shown in Figure 1, that is: carries out the video parameter decoding according to resulting syntax element information in the step 1, obtains new parameter information.From circulation for the second time, then use resulting syntax element information in the step 1 and the preceding parameter information that once circulates and obtained during execution in step two, carry out video parameter and decode, obtain new parameter information.
Described parameter information is meant directly and describes image with parametric form, but the code word information corresponding in not direct and the bit stream, they are obtained by syntax element information and existing parameter information computing.In the present embodiment, parameter information comprises motion vector, boundary filtering strength, quantization parameter and intra prediction mode.
As shown in Figure 4, described main decoder module comprises following submodule: re-quantization submodule, inverse transformation submodule, infra-frame prediction submodule, reference pixel obtain submodule, fractional samples interpolation submodule, compensation reconstruct submodule and loop filtering submodule.Among the figure, solid line bar arrow is the parameter information transmission direction, and hollow lines arrow is the data information transfer direction.
Described re-quantization submodule reads macro block (mb) type, quantization parameter and distance of swimming amplitude information from second memory, foundation is inverse scan, Hadamard transform and the inverse quantization method of prescribed by standard H.264, with the 4x4 piece is unit, obtain transform coefficient matrix, and this matrix is sent to the inverse transformation submodule.
Thereby described inverse transformation submodule is responsible for that the transform coefficient matrix that obtains is carried out the inverse transformation of 4x4 integer and is obtained the residual sample matrix, and this matrix is sent to compensation reconstruct submodule.
Described infra-frame prediction submodule reads macro block (mb) type and intra prediction mode etc. from second memory, according to the reference sample without loop filtering from compensation reconstructed module feedback, carry out infra-frame prediction and will predict the outcome being sent to the compensation reconstructed module.
Described reference pixel obtains submodule according to macro block (mb) type, reference key and the motion vector etc. that read from second memory, from synchronous DRAM, read the video image information that carries out the required reference of corresponding fractional samples interpolation, and result and the required parameter information of fractional samples interpolation are sent to fractional samples interpolation submodule.The video image information of the required reference of described fractional samples interpolation is meant decoded video image information in the main decoder module running before anter.
Described fractional samples interpolation submodule carries out the filtering interpolation according to the parameter information and the reference pixel that are obtained, and the result is sent to compensation reconstruct submodule.
Described compensation reconstruct submodule is the work period with macro block (MB), when each macro block begins, at first reads macro block (mb) type from second memory.If current macro is I_PCM (type pulse code modulation in a frame) type, then from second memory, read PCM (pulse code modulation) value successively, directly output to the loop filtering submodule, and feed back to the infra-frame prediction submodule; If current macro is I (in the frame) type of mb except I_PCM (type pulse code modulation in the frame), then obtain the residual sample matrix from the inverse transformation submodule, obtain the infra-frame prediction result from the infra-frame prediction submodule, output to the loop filtering submodule after then both being compensated, and feed back to the infra-frame prediction submodule; If current macro is P (single directional prediction) type or B (bi-directional predicted) type of mb, then obtain the difference sample matrix from the inverse transformation submodule, obtain interpolation result from fractional samples interpolation submodule, output to the loop filtering submodule after then both being compensated, and feed back to the infra-frame prediction submodule.
Described loop filtering submodule is reading decoded video image information in anter from synchronous DRAM, from compensating the image pattern after the reconstruct submodule reads the current macro compensation, according to macro block (mb) type that from second memory, reads and boundary filtering strength parameter, carry out block-eliminating effect filtering, and the filtering result write synchronous DRAM as video image information, and output image information.
Described main decoder module, finished the step 3 of method that present embodiment provides, as shown in Figure 1, that is: according to resulting parameter information in resulting syntax element information, the step 2 in the step 1, carry out the pixel decoding, video image information after obtaining reducing and output; From circulation for the second time, the video image information that then uses resulting parameter information in the syntax element information that obtains in the step 1 and the step 2 to decode and obtained during a preceding execution in step three, carry out the pixel decoding, new video image information after obtaining reducing and output.
The step 4 of method that present embodiment provides is that circulation step one is finished all incoming bit streams to step 3 up to decoding.
The overall work process of present embodiment device is as follows: the video bit stream of input at first carries out the parsing/entropy decoding work of the above rank syntactic element of macro block in embedded type CPU, resulting sequence head information and picture header information output to synchronous DRAM, resulting header outputs to first memory on the sheet, the work period of embedded type CPU is unit with the sheet, after finishing decoding, start entropy decoding accelerator, parameter decoder module and main decoder module to the above rank syntactic element of the macro block of a sheet at every turn.The entropy decoding accelerator is after the enabling signal that obtains from embedded type CPU, carry out other syntactic element parsing/entropy decoding work of the following level of macro block rank and macro block, and store in the synchronous DRAM successively decoded result in order, and be maintained as the form of syntactic element fifo queue, finish the decoding of a sheet when the entropy decoding accelerator after, issue end signal of embedded type CPU; Described parameter decoder module, obtain from the enabling signal of CPU and detect in the syntactic element fifo queue data available is arranged after, just decode by parameter, syntactic element in the formation is converted to parameter information, and deposit in the second memory, finish the decoding of a sheet when the parameter decoder module after, issue end signal of embedded type CPU; Described main decoder module, obtain from the enabling signal of CPU and detect in the second memory data available is arranged after, just decode by pixel, calculate image information when anter, finish the decoding of a sheet when the main decoder module after, issue end signal of embedded type CPU, the image information of main decoder module decoding gained deposits synchronous dynamic random access memory in and shows for display interface output.
Present embodiment is gone up at FPGA (field programmable gate array) and is realized, concrete chip model is XILINXVIRTEX-4; Embedded type CPU has adopted PowerPC 405 processors of IBM (International Business Machines Corporation); Synchronous dynamic random access memory (SDRAM) has adopted two generation Double Data Rate (DDR-2) chips.The operating frequency of embedded type CPU is 200 megahertzes (MHZ), and the operating frequency of FPGA and SDRAM is 50 megahertzes.
The contents processing of present embodiment in each step has similar computing granularity and data local characteristics, thereby help reasonably Resources allocation, simplify the internal interface of video decode, decode by the present embodiment device and to meet H.264HIGH SD size (720x576 pixel) video of PROFILE (high-end standard), frame per second is per second 30 frames.

Claims (10)

1. a video encoding/decoding method is characterized in that, may further comprise the steps:
Step 1, the video bit stream that input has been compressed according to the video compression standard that this bit stream is followed, is resolved and the entropy decoding it, obtains syntax element information at different levels;
Step 2, carry out the video parameter decoding according to resulting syntax element information in the step 1, obtain new parameter information, from circulation for the second time, then use resulting syntax element information in the step 1 and the preceding parameter information that is obtained during execution in step two that once circulates to carry out the video parameter decoding, obtain new parameter information;
Step 3, according to resulting parameter information in resulting syntax element information, the step 2 in the step 1, carry out the pixel decoding, video image information after obtaining reducing and output, from circulation for the second time, the video image information that is obtained when then using resulting parameter information and a preceding execution in step three in the syntax element information that obtains in the step 1, the step 2 carries out the pixel decoding, new video image information after obtaining reducing and output;
Step 4, the above step 1 that circulates is finished all incoming bit streams to step 3 up to decoding.
2. video encoding/decoding method according to claim 1 is characterized in that, in the step 1, described syntax element information, be meant corresponding with the code word in the bit stream, can be by variable length decoding and the information that obtains based on context decoding entropy decoding method.
3. video encoding/decoding method according to claim 1 is characterized in that, in the step 2, described parameter information, be meant directly and describe image with parametric form, but the code word information corresponding in not direct and the bit stream, they are obtained by syntax element information and existing parameter information computing.
4. the decoding device of video encoding/decoding method according to claim 1 is characterized in that, comprising: resolve and entropy decoder module, parameter decoder module, main decoder module, first buffer, second buffer and the 3rd buffer,
Described parsing and entropy decoder module according to the video compression standard that the bit stream of input is followed, are resolved and the entropy decoding this bit stream, obtain syntax element information at different levels, and deposit first buffer in;
Described parameter decoder module obtains to be calculated the parameter information that makes new advances, and deposited in second buffer by the syntax element information of resolving and the entropy decoder module deposits in from first buffer;
Described main decoder module, from first buffer, obtain by the syntax element information of resolving and the entropy decoder module deposits in, the parameter information that acquisition is deposited in by the parameter decoder module from second buffer calculates the video image information that makes new advances, and deposits the 3rd buffer and output in.
5. the decoding device of video encoding/decoding method according to claim 4, it is characterized in that, described parsing and entropy decoder module, comprise embedded type CPU and entropy decoding accelerator, described embedded type CPU is responsible for controlling the operation of entropy decoding accelerator, parameter decoder module and main decoder module, after the initialization of each sheet is finished, send enabling signal to entropy decoding accelerator, parameter decoder module and main decoder module, after the decoding of a sheet was finished, embedded type CPU was accepted the end signal of entropy decoding accelerator, parameter decoder module and main decoder module; Described entropy decoding accelerator is responsible for other syntactic element parsing/entropy decoding work of the following level of macro block rank and macro block.
6. the decoding device of video encoding/decoding method according to claim 5, it is characterized in that, described embedded type CPU also is responsible for the parsing/entropy decoding work of the above rank syntactic element of macro block, embedded type CPU uses index Columbus coding/decoding method and the fixed length coding/decoding method based on software, the video bit stream of input is decoded into sequence head information, the header of picture header information and sheet, resulting sequence head information, picture header information, the header of sheet outputs to first buffer on the sheet, the work period of embedded type CPU is unit with the sheet, after finishing decoding to the above rank syntactic element of the macro block of a sheet at every turn, start the entropy decoding accelerator, also finish processing up to the entropy decoding accelerator, begin the work of next sheet then this sheet.
7. the decoding device of video encoding/decoding method according to claim 5, it is characterized in that, described entropy decoding accelerator, after the enabling signal that obtains from embedded type CPU, from first buffer, read the decoded sequence head information and the decoded picture header information syntactic element of corresponding this film respectively and store in first buffer, first buffer has had the header syntactic element of interior decoded of sheet, the entropy decoding accelerator is according to all syntactic elements of having decoded in first buffer, use hardware based index Columbus and context-adaptive variable length decoding method that incoming bit stream is resolved/the entropy decoding, and store into decoded result in first buffer in order successively, and be maintained as the form of syntactic element fifo queue, finish the decoding of a sheet when the entropy decoding accelerator after, issue end signal of embedded type CPU, and enter wait state, till embedded type CPU sends enabling signal next time.
8. according to the decoding device of claim 4 or 5 described video encoding/decoding methods, it is characterized in that, described parameter decoder module, be responsible for decoded syntactic element is converted to parameter information, as long as have data to use in the syntactic element, the parameter decoder module is promptly started working, the work period of parameter decoder module is unit with the sheet, when each sheet begins, the parameter decoder module reads the above rank syntactic element of the macro block corresponding with this film from first buffer, and store second buffer into, the parameter decoder module is according to the macro block higher level syntactic element that is stored in second buffer, macro block rank and the following rank syntactic element of macro block are carried out the parameter decoding, its result comprises: motion vector, intra prediction mode, boundary filtering strength and quantization parameter, the parameter decoded results is deposited into second buffer, and distance of swimming amplitude information and reference key need not parameter decoding and can directly be used as parameter in the syntactic element, and this class syntactic element directly is transferred in second buffer.
9. according to the decoding device of claim 4 or 5 described video encoding/decoding methods, it is characterized in that, described main decoder module comprises following submodule: re-quantization submodule, inverse transformation submodule, infra-frame prediction submodule, reference pixel obtain submodule, fractional samples interpolation submodule, compensation reconstruct submodule and loop filtering submodule
Described re-quantization submodule reads macro block (mb) type, quantization parameter and distance of swimming amplitude information from second buffer, according to inverse scan, Hadamard transform and inverse quantization method, with the 4x4 piece is unit, obtains transform coefficient matrix, and this matrix is sent to the inverse transformation submodule;
Thereby described inverse transformation submodule is responsible for that the transform coefficient matrix that obtains is carried out the inverse transformation of 4x4 integer and is obtained the residual sample matrix, and this matrix is sent to compensation reconstruct submodule;
Described infra-frame prediction submodule reads macro block (mb) type and intra prediction mode from second buffer, according to the reference sample without loop filtering from compensation reconstruct submodule feedback, carry out infra-frame prediction and will predict the outcome being sent to compensation reconstruct submodule;
Described reference pixel obtains submodule according to the macro block (mb) type, reference key and the motion vector that read from second buffer, from the 3rd buffer, read the video image information that carries out the required reference of corresponding fractional samples interpolation, and result and the required parameter information of fractional samples interpolation be sent to fractional samples interpolation submodule, the video image information of the required reference of described fractional samples interpolation is meant before this decoded video image information in the main decoder module running;
Described fractional samples interpolation submodule carries out the filtering interpolation according to the parameter information and the reference pixel that are obtained, and the result is sent to compensation reconstruct submodule;
Described compensation reconstruct submodule is the work period with the macro block, when each macro block begins, at first reads macro block (mb) type from second buffer, according to macro block (mb) type, carries out different operations, and operating result is fed back to the infra-frame prediction submodule;
Described loop filtering submodule reads the information of decoded picture in anter from the 3rd buffer, from compensating the image pattern after the reconstruct submodule reads the current macro compensation, according to macro block (mb) type that from second buffer, reads and boundary filtering strength parameter, carry out block-eliminating effect filtering, and the filtering result write the 3rd buffer as video image information, and output image information.
10, the decoding device of video encoding/decoding method according to claim 9, it is characterized in that, described compensation reconstruct submodule, if current macro is a type pulse code modulation type in the frame, then from second buffer, read the pulse code modulation value successively, directly output to the loop filtering submodule, and feed back to the infra-frame prediction submodule; If current macro is a type of mb in the frame the type pulse code modulation in frame, then obtain the residual sample matrix from the inverse transformation submodule, obtain the infra-frame prediction result from the infra-frame prediction submodule, output to the loop filtering submodule after then both being compensated, and feed back to the infra-frame prediction submodule; If current macro is single directional prediction type or bi-directional predicted type of mb, then obtain the residual sample matrix from the inverse transformation submodule, obtain interpolation result from fractional samples interpolation submodule, output to the loop filtering submodule after then both being compensated, and feed back to the infra-frame prediction submodule.
CN 200710045454 2007-08-30 2007-08-30 Video encoding/decoding method and decoding device Expired - Fee Related CN100562114C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200710045454 CN100562114C (en) 2007-08-30 2007-08-30 Video encoding/decoding method and decoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200710045454 CN100562114C (en) 2007-08-30 2007-08-30 Video encoding/decoding method and decoding device

Publications (2)

Publication Number Publication Date
CN101115201A CN101115201A (en) 2008-01-30
CN100562114C true CN100562114C (en) 2009-11-18

Family

ID=39023253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710045454 Expired - Fee Related CN100562114C (en) 2007-08-30 2007-08-30 Video encoding/decoding method and decoding device

Country Status (1)

Country Link
CN (1) CN100562114C (en)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5597968B2 (en) 2009-07-01 2014-10-01 ソニー株式会社 Image processing apparatus and method, program, and recording medium
KR20110123651A (en) 2010-05-07 2011-11-15 한국전자통신연구원 Apparatus and method for image coding and decoding using skip coding
US9497472B2 (en) * 2010-11-16 2016-11-15 Qualcomm Incorporated Parallel context calculation in video coding
US9462280B2 (en) * 2010-12-21 2016-10-04 Intel Corporation Content adaptive quality restoration filtering for high efficiency video coding
GB201103174D0 (en) * 2011-02-24 2011-04-06 Skype Ltd Transmitting a video signal
CN107249131B (en) 2011-03-30 2020-04-24 Lg 电子株式会社 Video decoding device and video encoding device
KR101383775B1 (en) * 2011-05-20 2014-04-14 주식회사 케이티 Method And Apparatus For Intra Prediction
CN103563380B (en) 2011-05-27 2017-07-21 寰发股份有限公司 Reduce the method and device of the row buffering for Video processing
ES2953082T3 (en) * 2011-06-24 2023-11-08 Ntt Docomo Inc Methods for prediction with motion compensation
SG11201400670XA (en) * 2012-01-17 2014-04-28 Genip Pte Ltd Method of applying edge offset
DK2805419T3 (en) 2012-01-20 2017-09-04 Ge Video Compression Llc Transformation coefficient coding and decoding
US9591331B2 (en) * 2012-03-28 2017-03-07 Qualcomm Incorporated Merge signaling and loop filter on/off signaling
MX340383B (en) * 2012-04-15 2016-07-07 Samsung Electronics Co Ltd Method and apparatus for determining reference images for inter prediction.
GB2512829B (en) * 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme
US10827186B2 (en) * 2016-08-25 2020-11-03 Intel Corporation Method and system of video coding with context decoding and reconstruction bypass
US10771163B2 (en) * 2017-10-24 2020-09-08 Mediatek Inc. Apparatus and method for decoding ROI regions in image
CN109062507A (en) * 2018-07-18 2018-12-21 武汉中旗生物医疗电子有限公司 The processing storage method and device of electrocardiogram (ECG) data
KR20200132753A (en) * 2019-05-15 2020-11-25 현대자동차주식회사 Method and Apparatus for Encoding and Decoding Video
CN114501036A (en) * 2020-11-13 2022-05-13 联发科技股份有限公司 Entropy decoding device and related entropy decoding method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AVS解码器基于System C 的实现. 王争等.中国有线电视,第1期. 2006
AVS解码器基于System C 的实现. 王争等.中国有线电视,第1期. 2006 *

Also Published As

Publication number Publication date
CN101115201A (en) 2008-01-30

Similar Documents

Publication Publication Date Title
CN100562114C (en) Video encoding/decoding method and decoding device
TWI669953B (en) Pattern-based motion vector derivation for video coding
US8213518B1 (en) Multi-threaded streaming data decoding
US8472527B2 (en) Hierarchical motion estimation using original frame for sub-sampled reference
CN102835111B (en) The motion vector of previous block is used as the motion vector of current block, image to be carried out to the method and apparatus of coding/decoding
KR100624426B1 (en) Pipeline decoding apparatus and method, and computer-readable recording media for storing computer program for controlling the apparatus
KR100939917B1 (en) Encoding system using motion estimation and encoding method using motion estimation
US9380314B2 (en) Pixel retrieval for frame reconstruction
JP2009544225A (en) Parallel processing unit for video compression
CN102769753B (en) H264 encoder and coding method
CN105025298A (en) A method and device of encoding/decoding an image
US20130064298A1 (en) Concurrent access shared buffer in a video encoder
CN1848960B (en) Residual coding in compliance with a video standard using non-standardized vector quantization coder
CN106063268A (en) Method and device for transcoding video data from H.264 to H.265
CN101472174A (en) Method and device for recuperating original image data in video decoder
CN103327340A (en) Method and device for searching integer
Llopis et al. HW-SW co-design and verification of a multi-standard video and image codec
KR100708183B1 (en) Image storing device for motion prediction, and method for storing data of the same
Habermann et al. Efficient Wavefront Parallel Processing for HEVC CABAC Decoding
CN100576917C (en) The method and system of inversely scanning frequency efficiency
US11750800B1 (en) Encoder and associated signal processing method
US8284836B2 (en) Motion compensation method and apparatus to perform parallel processing on macroblocks in a video decoding system
US20230269368A1 (en) Supporting multiple partition sizes using a unified pixel input data interface for fetching reference pixels in video encoders
CN113542763B (en) Efficient video decoding method and decoder
Su et al. Waiting cycle analysis on H. 246 decoder run in PAC Duo platform

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

Granted publication date: 20091118

Termination date: 20170830

CF01 Termination of patent right due to non-payment of annual fee