CN1622628A - A writing method for macro block data of reference frame in video encoding-decoding process - Google Patents
A writing method for macro block data of reference frame in video encoding-decoding process Download PDFInfo
- Publication number
- CN1622628A CN1622628A CN 200410101466 CN200410101466A CN1622628A CN 1622628 A CN1622628 A CN 1622628A CN 200410101466 CN200410101466 CN 200410101466 CN 200410101466 A CN200410101466 A CN 200410101466A CN 1622628 A CN1622628 A CN 1622628A
- Authority
- CN
- China
- Prior art keywords
- data
- macro block
- write
- reference frame
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000003139 buffering effect Effects 0.000 claims abstract description 12
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 3
- 230000007812 deficiency Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The method of writing in macroblock datan of reference frame during video coding/decoding is to perform continuous write operation based on the macroblock datan order. Specifically, while writing some macroblock, the datan are written into the memory space of reference frame in continuous address according to the row and line order. On one hand, this results in the direct write operation of macroblock in the order without need of calculating practical storing address to ensure the effectiveness of the available buffering memory addresses. On the other hand, when the macroblock is read as the reference frame of the next frame, the datan in the system buffering arean are effective macroblock data, resulting in saving in data reading time and no buffering miss. Compared with available technology, the present invention has raised reference frame read/write efficiency and speed.
Description
Technical field
The present invention relates to the method in a kind of video algorithm encoding and decoding processing procedure, the method that especially a kind of macro block data of reference frame writes.
Technical background
Often incoming frame is divided into several macro blocks in the video coding algorithm based on estimation, the process of its encoding and decoding then is that the unit carries out with the macro block.As be to utilize reference frame and motion vector to obtain predictive frame when decoding, add the epigraph residual error data that are restored.Specifically be: at first from code stream (bit stream) data, isolate motion vector and image residual error, carry out entropy coding (Entropy encode) respectively; (motion estimation ME), adds the image residual error at last, and the macro block data that recovers is preserved reference frame as next frame then the macro block of motion vector and reference frame correspondence to be carried out estimation.
Because being frame by frame ranks sequence address when storing in internal memory, deposit frame data, and for each macro block, its inner data address is discontinuous, therefore, when the macro block data that will recover is preserved the reference frame that is used as next frame, when promptly writing macro block data, the memory address of reading in advance is invalid often.And when carrying out the estimation of next frame decoding moving, operating system also is to be the unit with the macro block to reading of internal memory, and system cushions with the sequence address of storing, and will cause the address failure of data read.Therefore operating system read-write to macro block when handling reference frame all can cause extra buffering miss (cache miss).
Summary of the invention
The objective of the invention is: at the deficiencies in the prior art, provide a kind of advantages of simple, can reduce the buffering miss, improve the method that the macro block data of separating reference frame in the video coding process of read-write efficiency writes.
In order to solve the problems of the technologies described above, the technical solution used in the present invention is: the method that the macro block data of reference frame writes in a kind of video encoding-decoding process is when macro block is carried out write operation, carries out the continuous write operation in address according to the order of macro block data.
Its step can for:
Step 1, macro block data encoding and decoding of wait are finished dealing with;
The data of step 2, this macro block after encoding and decoding are finished dealing with are written in the reference frame storing district with continuous address successively according to the order of place ranks;
Described step 2 is specifically as follows:
The first address of macro block data to be written makes write address=first address in the memory block of step 20, acquisition reference frame;
To carry out the first data of the macro block data of write operation in step 21, the acquisition buffering area, make write data=first data;
Are step 23, write data last data of this macro block data? be then to jump to step 29, otherwise execution in step 24;
Are step 24, write data last data in the interior row of living in of this macro block data? be execution in step 25 then, otherwise jump procedure 26;
Step 26 obtains adjacent data of write data the right in the macro block data, and as new write data;
Step 27, make write address=write address+1;
Step 28 is complied with the memory block that described write address is written to reference frame with described new write data;
Step 29, the write operation of this macro block data is finished.
In technique scheme, the present invention is the ranks order according to the interior macroblocks data because when writing reference frame, write memory successively, and the memory address that makes each interior macroblocks data is continuous.Like this, on the one hand, because deposit continuously the address of interior macroblocks, when macro block is carried out write operation, do not need to recomputate the actual storage address, order writes and only need directly, thereby the memory address of buffering is effective before guaranteeing.On the other hand, Cun Chu macro block is as the reference frame of next frame the time like this, because the memory address of interior macroblocks data has been continuous, when then reading this macro block, the data of packing in the system buffer will be effective macro block data, thereby saved the time of data read, also avoided the buffering miss simultaneously.Therefore, relative prior art, the present invention has can effectively avoid cushioning miss, characteristics such as the read-write efficiency of reference frame and speed in the raising video encoding-decoding process.
Description of drawings
The workflow diagram of the method preferred embodiment that accompanying drawing 1 writes for the macro block data of reference frame in a kind of video decoding process of the present invention;
Accompanying drawing 2 is the detailed operation flow chart of step 2 among Fig. 1;
Accompanying drawing 3 is the schematic diagram of macro block data write operation of the present invention;
Accompanying drawing 4 is the schematic diagram of prior art macro block data write operation.
Embodiment
Below in conjunction with Figure of description and specific embodiment the present invention is described in further detail.
The method that the macro block data of reference frame writes in a kind of video encoding-decoding process provided by the present invention is when macro block is carried out write operation, carries out the continuous write operation in address according to the order of macro block data.
With reference to the accompanying drawings 1, the concrete steps of a preferred embodiment of the present invention are:
Step 1, macro block data encoding and decoding of wait are finished dealing with;
The data of step 2, this macro block after encoding and decoding are finished dealing with are written in the reference frame storing district with continuous address successively according to the order of place ranks;
With reference to figure 2, wherein, described step 2 is specially:
The first address of macro block data to be written makes write address=first address in the memory block of step 20, acquisition reference frame;
To carry out the first data of the macro block data of write operation in step 21, the acquisition buffering area, make write data=first data;
Are step 23, write data last data of this macro block data? be then to jump to step 29, otherwise execution in step 24;
Are step 24, write data last data in the interior row of living in of this macro block data? be execution in step 25 then, otherwise jump procedure 26;
Step 26 obtains adjacent data of write data the right in the macro block data, and as new write data;
Step 27, make write address=write address+1;
Step 28 is complied with the memory block that described write address is written to reference frame with described new write data;
Step 29, the write operation of this macro block data is finished.
In above-mentioned steps, present embodiment has then been finished the write operation process that macro block data is write successively the memory block of reference frame by the ranks order of its position.As shown in Figure 3, suppose to have the macro block of 25 16 * 16 pixels,
Order during write operation of the present invention can be as arrow direction among Fig. 3, be in proper order to each data write operation in each macro block, thereby make each macro block write behind the memory block of reference frame first address as shown, be respectively 0x00,0x100,0x200,0x300,0x400 ...So just guaranteed that the macro block data in the reference frame is a sequential storage.
Then in the prior art, its write operation is by the ranks sequential storage of whole frame data, is arrow direction among Fig. 4.Then make each line data address of whole frame continuous, as first row address among the figure from 0x00~0x4f.But for single interior macroblocks, as macro block 1, then its first row address is 0x00~0x0f, and second row address is 0x50~0x5f,
By Fig. 3,4 contrasts as seen, when macro block was stored in internal memory, its data were the ranks sequential storage according to frame, and then for a macro block, data address is discontinuous.And when the macro block encoding and decoding are handled, call in the ranks sequential storage of the macro block data of buffering area by macro block, then data address is continuous.When writing reference frame, a macro block is carried out write operation so, then no longer recomputate the actual storage address of macro block, but directly with the order of the macro block data in buffering area write memory, as the reference frame, because its address is continuous, therefore the problem of miss can not appear cushioning.
Claims (3)
1, the method that the macro block data of reference frame writes in a kind of video encoding-decoding process is characterized in that: when macro block is carried out write operation, carry out the continuous write operation in address according to the order of macro block data.
2, the method that the macro block data of reference frame writes in the video encoding-decoding process according to claim 1 is characterized in that: the steps include:
Step 1, macro block data encoding and decoding of wait are finished dealing with;
The data of step 2, this macro block after encoding and decoding are finished dealing with are written in the reference frame storing district with continuous address successively according to the order of place ranks;
Step 3, wait for that this macro block data write operation finishes;
Step 4, judged whether to finish the write operation of all macro blocks, if do not have, then jumped to step 1, all macro blocks of circular treatment reference frame finish behind the macro block data to writing in all reference frames.
3, the method that writes as the macro block data of reference frame in the video encoding-decoding process as described in the claim 2, it is characterized in that: described step 2 is specially:
The first address of macro block data to be written makes write address=first address in the memory block of step 20, acquisition reference frame;
To carry out the first data of the macro block data of write operation in step 21, the acquisition buffering area, make write data=first data;
Step 22, write data are written to the memory block of reference frame according to described write address;
Are step 23, write data last data of this macro block data? be then to jump to step 29, otherwise execution in step 24;
Are step 24, write data last data in the interior row of living in of this macro block data? be execution in step 25 then, otherwise jump procedure 26;
Step 25 obtains first data of the next line of write data, and as new write data, jumps to step 27;
Step 26 obtains adjacent data of write data the right in the macro block data, and as new write data;
Step 27, make write address=write address+1;
Step 28 is complied with the memory block that described write address is written to reference frame with described new write data;
Step 29, the write operation of this macro block data is finished.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410101466 CN1622628A (en) | 2004-12-21 | 2004-12-21 | A writing method for macro block data of reference frame in video encoding-decoding process |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410101466 CN1622628A (en) | 2004-12-21 | 2004-12-21 | A writing method for macro block data of reference frame in video encoding-decoding process |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1622628A true CN1622628A (en) | 2005-06-01 |
Family
ID=34766773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410101466 Pending CN1622628A (en) | 2004-12-21 | 2004-12-21 | A writing method for macro block data of reference frame in video encoding-decoding process |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1622628A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011026353A1 (en) * | 2009-09-02 | 2011-03-10 | 中兴通讯股份有限公司 | Route switching device and data cashing method thereof |
CN101399978B (en) * | 2007-09-28 | 2012-05-30 | 昆山杰得微电子有限公司 | Reference frame data reading method in hardware decoder and apparatus thereof |
CN102890429A (en) * | 2012-09-18 | 2013-01-23 | 天津芯硕精密机械有限公司 | Method for increasing data transmission speed in photoetching system through skew scanning display |
CN104853213A (en) * | 2015-05-05 | 2015-08-19 | 福州瑞芯微电子有限公司 | Method and system for improving cache processing efficiency of video decoder |
CN114845156A (en) * | 2022-05-07 | 2022-08-02 | 珠海全志科技股份有限公司 | Video processing method, device and system based on shared cache |
-
2004
- 2004-12-21 CN CN 200410101466 patent/CN1622628A/en active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399978B (en) * | 2007-09-28 | 2012-05-30 | 昆山杰得微电子有限公司 | Reference frame data reading method in hardware decoder and apparatus thereof |
WO2011026353A1 (en) * | 2009-09-02 | 2011-03-10 | 中兴通讯股份有限公司 | Route switching device and data cashing method thereof |
US9025608B2 (en) | 2009-09-02 | 2015-05-05 | Zte Corporation | Route switching device and data cashing method thereof |
CN102890429A (en) * | 2012-09-18 | 2013-01-23 | 天津芯硕精密机械有限公司 | Method for increasing data transmission speed in photoetching system through skew scanning display |
CN102890429B (en) * | 2012-09-18 | 2015-02-11 | 天津芯硕精密机械有限公司 | Method for increasing data transmission speed in photoetching system through skew scanning display |
CN104853213A (en) * | 2015-05-05 | 2015-08-19 | 福州瑞芯微电子有限公司 | Method and system for improving cache processing efficiency of video decoder |
CN104853213B (en) * | 2015-05-05 | 2018-05-18 | 福州瑞芯微电子股份有限公司 | A kind of method and its system for improving Video Decoder cache treatment effeciencies |
CN114845156A (en) * | 2022-05-07 | 2022-08-02 | 珠海全志科技股份有限公司 | Video processing method, device and system based on shared cache |
CN114845156B (en) * | 2022-05-07 | 2024-03-19 | 珠海全志科技股份有限公司 | Video processing method, device and system based on shared cache |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103188495B (en) | The method of coded video data | |
CN1812576A (en) | Deblocking filters for performing horizontal and vertical filtering of video data simultaneously and methods of operating the same | |
CN1708123A (en) | Decoding apparatus with multi-buffer zone | |
CN1622628A (en) | A writing method for macro block data of reference frame in video encoding-decoding process | |
CN1306826C (en) | Loop filter based on multistage parallel pipeline mode | |
CN101030951A (en) | Drop-out compensating method and compensator | |
CN1543210A (en) | Image data processing system and image data reading and writing method | |
CN1801941A (en) | Motion vector prediction multiplex design method in multi-mode standard decoder | |
CN1154367C (en) | Method and apparatus for conversion of access of prediction macroblock data for motion picture | |
CN1889689A (en) | Runs decoding, anti-scanning, anti-quantization and anti-inverting method and apparatus | |
US8045021B2 (en) | Memory organizational scheme and controller architecture for image and video processing | |
CN1874512A (en) | High performance pipeline system in use for AVS video decoder | |
CN1925616A (en) | Macro block pair class frame field adaptive coding/decoding method | |
CN1878307A (en) | Method for improving SDRAM bus efficiency in video decoder | |
CN102111615B (en) | Method and system for implementing video filtering in DMA removal | |
CN1306825C (en) | Reference storage device and method based on line buffer in video decoding chip | |
CN1169304C (en) | Variable-length encoder | |
CN1750660A (en) | Method for calculating moving vector | |
CN1269034C (en) | Compression of executable document in embedded type system and its loading method | |
CN1825960A (en) | Multi-pipeline phase information sharing method based on data buffer storage | |
CN1271864C (en) | Control device and method for video frequency decoding buffer zone | |
CN1154048C (en) | Address processing method | |
CN1622626A (en) | A macro block prefetching method in video encoding-decoding process | |
CN1186939C (en) | Real time 1/4 interpolation method based on multistage pipeline architecture | |
CN1856102A (en) | Method and system for inversely scanning frequency efficiency |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |