+

CN100562114C - Video decoding method and decoding device - Google Patents

Video 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
module
buffer
parameter
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 Jiao Tong University
Original Assignee
Shanghai Jiao Tong 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 Jiao Tong University filed Critical Shanghai Jiao Tong 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

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种多媒体数字信号处理技术领域的视频解码方法和解码装置,本发明的方法将视频解码过程分为解析与熵解码、参数解码和像素解码三个步骤完成;本发明的视频解码装置,包括:解析与熵解码模块、参数解码模块和主解码模块分别用来完成解析与熵解码、参数解码和像素解码三个步骤,以及第一缓冲器、第二缓冲器和第三缓冲器用来缓存语法元素、参数信息、视频图像信息。本发明在每个步骤内的处理内容具有相似的运算粒度和数据局部特性,从而有利于合理地分配资源,简化视频解码的内部接口,提高视频解码的效率。

Figure 200710045454

A video decoding method and decoding device in the technical field of multimedia digital signal processing, the method of the present invention divides the video decoding process into three steps of analysis and entropy decoding, parameter decoding and pixel decoding; the video decoding device of the present invention includes: The parsing and entropy decoding module, the parameter decoding module and the main decoding module are used to complete the three steps of parsing and entropy decoding, parameter decoding and pixel decoding respectively, and the first buffer, the second buffer and the third buffer are used to cache syntax elements , parameter information, video image information. The processing content in each step of the present invention has similar computing granularity and local data characteristics, which is conducive to rationally allocating resources, simplifying the internal interface of video decoding, and improving the efficiency of video decoding.

Figure 200710045454

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.一种视频解码方法,其特征在于,包括以下步骤:1. A video decoding method, characterized in that, comprising the following steps: 步骤一,输入已压缩的视频比特流,根据该比特流遵循的视频压缩标准,对其进行解析与熵解码,得到各级语法元素信息;Step 1, input the compressed video bit stream, analyze and entropy decode it according to the video compression standard followed by the bit stream, and obtain syntax element information at all levels; 步骤二,根据步骤一中所得到的语法元素信息进行视频参数解码,得到新的参数信息,从第二次循环开始,则使用步骤一中所得到的语法元素信息和前一次循环执行步骤二时所获得的参数信息进行视频参数解码,得到新的参数信息;Step 2: Perform video parameter decoding according to the syntax element information obtained in step 1 to obtain new parameter information. From the second cycle, use the syntax element information obtained in step 1 and the previous cycle to execute step 2 The obtained parameter information is decoded by video parameters to obtain new parameter information; 步骤三,根据步骤一中所得到的语法元素信息、步骤二中所得到的参数信息,进行像素解码,得到还原后的视频图像信息并输出,从第二次循环开始,则使用步骤一中得到的语法元素信息、步骤二中所得到的参数信息和前一次执行步骤三时所获得的视频图像信息进行像素解码,得到还原后的新的视频图像信息并输出;Step 3: Perform pixel decoding according to the syntax element information obtained in step 1 and the parameter information obtained in step 2 to obtain and output the restored video image information. From the second cycle, use the obtained grammatical element information, the parameter information obtained in step 2, and the video image information obtained during the previous execution of step 3 are pixel-decoded, and the restored new video image information is obtained and output; 步骤四,循环以上步骤一到步骤三,直到解码完成所有的输入比特流。Step 4, repeat the above steps 1 to 3 until the decoding of all input bit streams is completed. 2.根据权利要求1所述的视频解码方法,其特征是,步骤一中,所述的语法元素信息,是指与比特流中的码字对应的,能够通过变长解码和基于上下文解码熵解码方法得到的信息。2. The video decoding method according to claim 1, wherein in step 1, the syntax element information refers to the codeword corresponding to the bit stream, which can be decoded by variable length decoding and context-based decoding entropy The information obtained by the decoding method. 3.根据权利要求1所述的视频解码方法,其特征是,步骤二中,所述的参数信息,是指直接以参数形式描述图像,但并不直接与比特流中的码字相对应的信息,它们由语法元素信息和已有的参数信息运算得到。3. The video decoding method according to claim 1, characterized in that, in step 2, the parameter information refers to directly describing the image in the form of parameters, but not directly corresponding to the codeword in the bit stream Information, they are obtained by operation of syntax element information and existing parameter information. 4.根据权利要求1所述的视频解码方法的解码装置,其特征在于,包括:解析与熵解码模块、参数解码模块、主解码模块、第一缓冲器、第二缓冲器和第三缓冲器,4. The decoding device of the video decoding method according to claim 1, characterized in that, comprising: analysis and entropy decoding module, parameter decoding module, main decoding module, first buffer, second buffer and third buffer , 所述解析与熵解码模块,根据输入的比特流遵循的视频压缩标准,对该比特流进行解析与熵解码,得到各级语法元素信息,并存入第一缓冲器;The parsing and entropy decoding module analyzes and entropy decodes the bit stream according to the video compression standard followed by the input bit stream, obtains syntax element information at all levels, and stores it in the first buffer; 所述参数解码模块,从第一缓冲器中获得由解析与熵解码模块存入的语法元素信息,计算出新的参数信息,并存入第二缓冲器;The parameter decoding module obtains the syntax element information stored by the parsing and entropy decoding module from the first buffer, calculates new parameter information, and stores it in the second buffer; 所述主解码模块,从第一缓冲器中获得由解析与熵解码模块存入的语法元素信息,从第二缓冲器中获得由参数解码模块存入的参数信息,计算出新的视频图像信息,存入第三缓冲器并输出。The main decoding module obtains the syntax element information stored by the analysis and entropy decoding module from the first buffer, obtains the parameter information stored by the parameter decoding module from the second buffer, and calculates new video image information , stored in the third buffer and output. 5.根据权利要求4所述的视频解码方法的解码装置,其特征是,所述解析与熵解码模块,包括嵌入式CPU和熵解码加速器,所述嵌入式CPU负责控制熵解码加速器、参数解码模块和主解码模块的运行,在每一个片的初始化完成后,向熵解码加速器、参数解码模块和主解码模块发出启动信号,在一个片的解码完成后,嵌入式CPU接受熵解码加速器、参数解码模块和主解码模块的结束信号;所述的熵解码加速器,负责宏块级别以及宏块以下级别的语法元素解析/熵解码工作。5. The decoding device of the video decoding method according to claim 4, wherein the analysis and entropy decoding module includes an embedded CPU and an entropy decoding accelerator, and the embedded CPU is responsible for controlling the entropy decoding accelerator, parameter decoding The operation of the module and the main decoding module sends a start signal to the entropy decoding accelerator, parameter decoding module and main decoding module after the initialization of each slice is completed. After the decoding of a slice is completed, the embedded CPU accepts the entropy decoding accelerator, parameter The end signal of the decoding module and the main decoding module; the entropy decoding accelerator is responsible for parsing/entropy decoding of syntax elements at the macroblock level and below the macroblock level. 6.根据权利要求5所述的视频解码方法的解码装置,其特征是,所述的嵌入式CPU还负责宏块以上级别语法元素的解析/熵解码工作,嵌入式CPU使用基于软件的指数哥伦布解码方法和定长解码方法,将输入的视频比特流解码成序列头信息、图像头信息以及片的头信息,所得到的序列头信息、图像头信息、片的头信息输出到片上第一缓冲器,嵌入式CPU的工作周期以片为单位,每次完成对一个片的宏块以上级别语法元素的解码后,启动熵解码加速器,直到熵解码加速器也完成对该片的处理,然后开始下一个片的工作。6. The decoding device of the video decoding method according to claim 5, wherein the embedded CPU is also responsible for the parsing/entropy decoding work of syntax elements above the level of the macro block, and the embedded CPU uses a software-based index Columbus Decoding method and fixed-length decoding method, the input video bit stream is decoded into sequence header information, image header information and slice header information, and the obtained sequence header information, image header information, and slice header information are output to the first buffer on the slice The working cycle of the embedded CPU is based on slices. After decoding the syntax elements above the macroblock level of a slice each time, the entropy decoding accelerator is started until the entropy decoding accelerator also completes the processing of the slice, and then starts downloading. A piece of work. 7.根据权利要求5所述的视频解码方法的解码装置,其特征是,所述熵解码加速器,在得到来自嵌入式CPU的启动信号后,分别从第一缓冲器中读取对应本片的已解码的序列头信息和已解码的图像头信息语法元素并存储到第一缓冲器中,第一缓冲器已经有片内已解码的片的头信息语法元素,熵解码加速器根据第一缓冲器中的所有已解码语法元素,使用基于硬件的指数哥伦布和上下文自适应变长解码方法对输入比特流进行解析/熵解码,并将解码结果按顺序依次存储到第一缓冲器中,并维护成语法元素先进先出队列的形式,当熵解码加速器完成一个片的解码后,发给嵌入式CPU一个结束信号,并进入等待状态,直到嵌入式CPU下一次发送启动信号为止。7. the decoding device of video decoding method according to claim 5, it is characterized in that, described entropy decoding accelerator, after obtaining the starting signal from embedded CPU, reads corresponding this film respectively from the first buffer. The decoded sequence header information and the decoded image header information syntax elements are stored in the first buffer. The first buffer already has the header information syntax elements of the decoded slices in the slice. The entropy decoding accelerator according to the first buffer All the decoded syntax elements in , use the hardware-based exponential Golomb and context adaptive variable length decoding method to parse/entropy decode the input bit stream, and store the decoding results in the first buffer in sequence, and maintain it as Syntax elements are in the form of a first-in-first-out queue. When the entropy decoding accelerator completes the decoding of a slice, it sends an end signal to the embedded CPU and enters a waiting state until the embedded CPU sends a start signal next time. 8.根据权利要求4或5所述的视频解码方法的解码装置,其特征是,所述的参数解码模块,负责将已解码的语法元素转换为参数信息,只要语法元素中有数据可用,参数解码模块即开始工作,参数解码模块的工作周期以片为单位,在每一个片开始时,参数解码模块从第一缓冲器中读取与本片对应的宏块以上级别语法元素,并存储到第二缓冲器,参数解码模块根据存储在第二缓冲器中的宏块以上级语法元素,对宏块级别以及宏块以下级别语法元素进行参数解码,其结果包括:运动矢量、帧内预测模式、边界滤波强度和量化系数,参数解码的结果被存入到第二缓冲器,语法元素中游程幅值信息和参考索引无需参数解码能直接被用作参数,这类语法元素被直接传输到第二缓冲器中。8. The decoding device of the video decoding method according to claim 4 or 5, wherein the parameter decoding module is responsible for converting the decoded syntax elements into parameter information, as long as there is data available in the syntax elements, the parameters The decoding module starts to work, and the working cycle of the parameter decoding module is in units of slices. When each slice starts, the parameter decoding module reads the syntax elements above the macroblock level corresponding to the slice from the first buffer, and stores them in In the second buffer, the parameter decoding module performs parameter decoding on the syntax elements at the macroblock level and below the macroblock level according to the syntax elements above the macroblock stored in the second buffer, and the results include: motion vector, intra prediction mode , boundary filter strength and quantization coefficient, the result of parameter decoding is stored in the second buffer, the run length information and reference index in the syntax element can be used as parameters directly without parameter decoding, and this type of syntax element is directly transmitted to the second buffer in the second buffer. 9.根据权利要求4或5所述的视频解码方法的解码装置,其特征是,所述主解码模块包括以下子模块:逆量化子模块、逆变换子模块、帧内预测子模块、参考像素获取子模块、分数样本插值子模块、补偿重构子模块和环路滤波子模块,9. The decoding device of the video decoding method according to claim 4 or 5, wherein the main decoding module includes the following submodules: an inverse quantization submodule, an inverse transformation submodule, an intra prediction submodule, and a reference pixel acquisition sub-module, fractional sample interpolation sub-module, compensation reconstruction sub-module and loop filtering sub-module, 所述逆量化子模块从第二缓冲器中读取宏块类型、量化系数和游程幅值信息,依据逆扫描、哈达马变换和逆量化方法,以4x4块为单位,得到变换系数矩阵,并将该矩阵传送到逆变换子模块;The inverse quantization sub-module reads the macroblock type, quantization coefficient and run length information from the second buffer, obtains the transformation coefficient matrix in units of 4x4 blocks according to inverse scanning, Hadamard transform and inverse quantization methods, and passing the matrix to the inverse transform sub-module; 所述逆变换子模块负责对得到的变换系数矩阵进行4x4整数逆变换从而得到残差样本矩阵,并将该矩阵传送到补偿重构子模块;The inverse transform submodule is responsible for performing 4x4 integer inverse transform on the obtained transformation coefficient matrix to obtain a residual sample matrix, and transmits the matrix to the compensation reconstruction submodule; 所述帧内预测子模块从第二缓冲器中读取宏块类型和帧内预测模式,依据从补偿重构子模块反馈的未经环路滤波的参考样本,进行帧内预测并将预测结果传送到补偿重构子模块;The intra-frame prediction sub-module reads the macroblock type and the intra-frame prediction mode from the second buffer, performs intra-frame prediction according to the reference samples fed back from the compensation and reconstruction sub-module without loop filtering, and outputs the prediction result sent to the compensation reconstruction sub-module; 所述参考像素获取子模块根据从第二缓冲器中读取的宏块类型、参考索引和运动矢量,从第三缓冲器中读取进行相应的分数样本插值所需要参考的视频图像信息,并将结果和分数样本插值所需的参数信息传送至分数样本插值子模块,所述分数样本插值所需要参考的视频图像信息,是指此前主解码模块运行过程中已解码的视频图像信息;The reference pixel acquisition submodule reads from the third buffer the video image information required for corresponding fractional sample interpolation according to the macroblock type, reference index and motion vector read from the second buffer, and The result and the parameter information required for the fractional sample interpolation are sent to the fractional sample interpolation sub-module, and the video image information required for the fractional sample interpolation refers to the video image information that has been decoded during the operation of the main decoding module; 所述分数样本插值子模块依据所获得的参数信息和参考像素进行滤波插值,并将结果传送至补偿重构子模块;The fractional sample interpolation sub-module performs filter interpolation according to the obtained parameter information and reference pixels, and transmits the result to the compensation reconstruction sub-module; 所述补偿重构子模块,以宏块为工作周期,在每个宏块开始时,首先从第二缓冲器中读取宏块类型,根据宏块类型,执行不同的操作,并将操作结果反馈给帧内预测子模块;The compensation and reconstruction sub-module takes the macroblock as the work cycle, and at the beginning of each macroblock, first reads the macroblock type from the second buffer, performs different operations according to the macroblock type, and stores the operation result Feedback to the intra prediction sub-module; 所述环路滤波子模块从第三缓冲器中读取当前片中的已解码图像信息,从补偿重构子模块读取当前宏块补偿后的图像样本,根据从第二缓冲器中读取的宏块类型和边界滤波强度参数,进行去块效应滤波,并将滤波结果写入第三缓冲器作为视频图像信息,并输出图像信息。The loop filtering sub-module reads the decoded image information in the current slice from the third buffer, reads the compensated image samples of the current macroblock from the compensation and reconstruction sub-module, and reads from the second buffer according to The macroblock type and boundary filter intensity parameters are used to perform deblocking filtering, and the filtering result is written into the third buffer as video image information, and the image information is output. 10、根据权利要求9所述的视频解码方法的解码装置,其特征是,所述补偿重构子模块,如果当前宏块是帧内型脉冲编码调制类型,则从第二缓冲器中依次读取脉冲编码调制值,直接输出到环路滤波子模块,并反馈给帧内预测子模块;如果当前宏块是除了帧内型脉冲编码调制以外的帧内类型宏块,则从逆变换子模块获取残差样本矩阵,从帧内预测子模块获取帧内预测结果,然后将两者进行补偿后输出到环路滤波子模块,并反馈给帧内预测子模块;如果当前宏块是单向预测类型或双向预测类型宏块,则从逆变换子模块获取残差样本矩阵,从分数样本插值子模块获取插值结果,然后将两者进行补偿后输出到环路滤波子模块,并反馈给帧内预测子模块。10. The decoding device of the video decoding method according to claim 9, wherein the compensation and reconstruction sub-module reads sequentially from the second buffer if the current macroblock is of the intra-frame pulse code modulation type. Take the pulse code modulation value, directly output to the loop filter sub-module, and feed back to the intra-frame prediction sub-module; if the current macroblock is an intra-type macroblock other than intra-type pulse code modulation, then from the inverse transform sub-module Obtain the residual sample matrix, obtain the intra prediction result from the intra prediction sub-module, and then output the two to the loop filter sub-module after compensation, and feed back to the intra prediction sub-module; if the current macroblock is unidirectional prediction type or bidirectional prediction type macroblocks, obtain the residual sample matrix from the inverse transform sub-module, obtain the interpolation result from the fractional sample interpolation sub-module, and then output the two to the loop filter sub-module after compensation, and feed back to the intra-frame Forecast submodule.
CN 200710045454 2007-08-30 2007-08-30 Video 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 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 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 decoding method and decoding device

Country Status (1)

Country Link
CN (1) CN100562114C (en)

Families Citing this family (21)

* 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 한국전자통신연구원 Image coding and decoding apparatus using skip coding and method thereof
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
CN107172424B (en) 2011-03-30 2020-04-14 Lg 电子株式会社 Loop filtering method and apparatus thereof
KR101383775B1 (en) * 2011-05-20 2014-04-14 주식회사 케이티 Method And Apparatus For Intra Prediction
WO2012163199A1 (en) 2011-05-27 2012-12-06 Mediatek Inc. Method and apparatus for line buffer reduction for video processing
ES2963964T3 (en) * 2011-06-24 2024-04-03 Ntt Docomo Inc Method for prediction with motion compensation
MY166250A (en) * 2012-01-17 2018-06-22 Infobridge Pte Ltd Method of applying edge offset
KR102210228B1 (en) 2012-01-20 2021-02-01 지이 비디오 컴프레션, 엘엘씨 Coding concept allowing parallel processing, transport demultiplexer and video bitstream
IL308621A (en) 2012-01-20 2024-01-01 Ge Video Compression Llc Transform coefficient coding
US9591331B2 (en) * 2012-03-28 2017-03-07 Qualcomm Incorporated Merge signaling and loop filter on/off signaling
AU2013250105B2 (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
CN118714300A (en) * 2019-05-15 2024-09-27 现代自动车株式会社 Image decoding method
JP7479492B2 (en) * 2020-03-03 2024-05-08 バイトダンス インコーポレイテッド Low-frequency non-separable transform signaling in video coding - Patents.com
CN114501036A (en) * 2020-11-13 2022-05-13 联发科技股份有限公司 Entropy decoding device and related entropy decoding method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
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 decoding method and decoding device
JP7098805B2 (en) Codec using neural network
US8213518B1 (en) Multi-threaded streaming data decoding
TWI415446B (en) Parallel processing apparatus for video compression
CN105992008B (en) A multi-level multi-task parallel decoding method on a multi-core processor platform
US8472527B2 (en) Hierarchical motion estimation using original frame for sub-sampled reference
KR100624426B1 (en) Pipeline-type decoding device and method, and computer-readable recording medium storing computer program controlling the device
CN101394560A (en) A Hybrid Pipeline Apparatus for Video Coding
CN101518089A (en) Coding/decoding methods, coders/decoders, and method and device for finding optimally matched modules
CN101960858A (en) Moving picture encoding device, imaging device, and moving picture encoding method
CN109391816B (en) Parallel processing method of entropy coding in HEVC based on CPU+GPU heterogeneous platform
CN111757109A (en) High-real-time parallel video coding and decoding method, system and storage medium
CN102769753B (en) H264 encoder and coding method
CN103546754B (en) From H.264/AVC to code-transferring method and the system of SVC gradable spatial
CN100417227C (en) Efficient Pipeline System for AVS Video Decoder
CN101841722A (en) Detection device of filtering boundary strength and detection method thereof
CN109672889A (en) The method and device of the sequence data head of constraint
CN101170692B (en) Multi-view image encoding and decoding method and encoder and decoder
CN102065288B (en) Video processing system and method realized by combining software with hardware and device thereof
CN102055970A (en) Multi-standard video decoding system
CN103379318B (en) Video code stream coding method and device
CN100469146C (en) Video image motion compensator
Jiang et al. GPU-based intra decompression for 8K real-time AVS3 decoder
CN101472174A (en) Method and device for recuperating original image data in video decoder
CN104780377A (en) Parallel high efficiency video coding (HEVC) system and method based on distributed computer system

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: 20091118

Termination date: 20170830

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载