CN103124345A - Parallel encoding method - Google Patents
Parallel encoding method Download PDFInfo
- Publication number
- CN103124345A CN103124345A CN201110367607XA CN201110367607A CN103124345A CN 103124345 A CN103124345 A CN 103124345A CN 201110367607X A CN201110367607X A CN 201110367607XA CN 201110367607 A CN201110367607 A CN 201110367607A CN 103124345 A CN103124345 A CN 103124345A
- Authority
- CN
- China
- Prior art keywords
- macro
- coding
- frame
- block line
- field picture
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
The invention discloses a parallel encoding method which comprises the steps of storing multi-frame images into a frame cache region; encoding a plurality of macroblocks of I frame images in the frame cache region in parallel; and when reference frame images of non-I frame images in the frame cache region are in encoding, subjecting the non-I frame images to interframe macroblock-level parallel encoding. Therefore, interframe and intra-frame macroblock-level parallel encoding is achieved, and multi-granularity parallelization is achieved. According to experimental results, the algorithm can increase the speedup ratio of encoding under the conditions that video sequences can be effectively encoded and the peak signal to noise ratio changes little, thereby improving the instantaneity of video coding.
Description
[technical field]
The present invention relates to image processing field, relate in particular to the parallel encoding method.
[background technology]
People's entertainment life was more rich and varied in recent years, and the requirement of multimedia technology, Web TV and video conference etc. is improved constantly, and simultaneously the quality of coding and decoding video speed and broadcast had also been proposed very high requirement.Video encoding standard is H.264 in order to access higher compression efficiency, a lot of new coding techniquess have been proposed, but because these coding techniquess have also increased the complexity of its algorithm greatly, so only the angle from uniprocessor is difficult to satisfied requirement to real-time coding and picture quality, therefore to H.264 parallel research, to seek the strategy that can walk abreast be focus and the difficult point of current international research, also making H.264 encryption algorithm to high computation complexity carry out parallel optimization becomes people and studies best selection.People have also proposed parallel etc. the parallel algorithm of picture task flowing water, Thread-Level Parallelism and varigrained data level based on different platforms.
The implementation of prior art: H.264 have the parallel of different levels in the coding and decoding video algorithm, therefore realizing that from data level parallel algorithm is a large problem of the parallel research of current Video coding.For GOP (Group of Pictures) level parallel encoding, the researcher of Univ Valencia Politecnica (Techni University of Valencia) is studied it by the MPI developing instrument; The people such as the Y.K.Chen of Intel Company develop Thread-Level Parallelism take chip level and frame level as granularity having in the 4Intel Xeon processor system of Hyper-Threading, realize the encryption algorithm of multithreading by the division to data field, its experimental result shows can obtain higher speed-up ratio; Chen et al. has proposed to use the strategy of the several B frames of multithreading parallel processing in decode procedure, parallel on can the achieve frame level; The parallel processing of the brainstrust of Seoul National University macro block on the Cell platform is analyzed, by the time consumption analysis to the macro block part, the analysis part of finding macroblock coding accounts for 84% of whole coding, so propose and partly carry out parallel processing to macroblock analysis, result can be found out by this kind method and obtained higher speed-up ratio by experiment, but is badly in need of H.264 coding is carried out Parallel Implementation.
The shortcoming that prior art exists: (1) GOP level walks abreast and applies to realize non real-time Video coding more, therefore can not satisfy to a great extent current requirement to real-time video transmission, in addition, the parallel speed that mainly improves coding by the number that increases parallel processor of GOP level can not well embody according to existing characteristic in coded program and come the parallel processing Video coding to reach the raising of coding efficiency.(2) in frame level parallel method, because no more than 2 or 3 B frames are generally arranged, therefore limited the multithreading number between the P frame, therefore also limited the raising of speed-up ratio.(3) can be found out by the present situation of domestic and international research, in research to parallel encoding method H.264, people are maximum to GOP level, frame level, chip level and macro-block level achievement in research, but remain further ripely at the parallel encoding strategy aspect the fusion of many granularities, the parallel encoding method of many granularities will become the emphasis of the parallel research of coding and decoding video.
Therefore, be necessary to develop and a kind ofly can improved multi-threaded parallel coding method overcome the problems referred to above.
[summary of the invention]
One of the technical problem to be solved in the present invention is to provide a kind of parallel encoding method, and it has improved the speed-up ratio of coding, thereby has strengthened the real-time of Video coding.
In order to address the above problem, according to an aspect of the present invention, the invention provides a kind of parallel encoding method, it comprises: with the multiple image buffer memory to the frame buffer district; A plurality of macro-block line to the I two field picture in the frame buffer district are carried out parallel encoding; When the reference frame image of the non-I two field picture in the frame buffer district is also being encoded, parallel this non-I two field picture is carried out inter macroblocks level coding.
Further, a plurality of macro-block line of the parallel encoding of same I two field picture are adjacent, and the upper macro-block line in adjacent two macro-block line in these macro-block line descends macro-block line early to begin coding.
Further, after the upper macro-block line in adjacent two macro-block line in these macro-block line was completed the coding of at least two macro blocks, lower macro-block line just drove the row coding into.
Further, non-I two field picture is carried out after reconstruction macro block in the needed reference frame image of inter macroblocks level coding can use, begin and walk abreast this non-I two field picture is carried out the inter macroblocks level to encode.
Further, after a two field picture coding is completed, this two field picture is shifted out from described frame buffer district, the image buffer storage that a frame is new is to described frame buffer district simultaneously.
Compared with prior art, in the present invention when non-I two field picture being carried out between concurrent frame the macro-block level coding, a plurality of macro-block line to the I two field picture in the frame buffer district are carried out parallel encoding, have realized interframe and intra-frame macro block level parallel encoding, have reached the parallel effect of many granularities.Experimental result shows, this algorithm has improved the speed-up ratio of coding, thereby strengthened the real-time of Video coding in the situation that video sequence can efficient coding and to keep Y-PSNR to change little.
About other purposes of the present invention, feature and advantage are described in detail in embodiment below in conjunction with accompanying drawing.
[description of drawings]
In conjunction with reference to accompanying drawing and ensuing detailed description, the present invention will be more readily understood, structure member corresponding to same Reference numeral wherein, wherein:
Fig. 1 is the parallel encoding method schematic diagram in one embodiment in the present invention;
Fig. 2 shows the position relationship of some adjacent macro blocks; With
Fig. 3 shows the schematic diagram of inter macroblocks level parallel encoding.
[embodiment]
For above-mentioned purpose of the present invention, feature and advantage can be become apparent more, the present invention is further detailed explanation below in conjunction with the drawings and specific embodiments.
Detailed description of the present invention mainly presents by program, step, logical block, process or other symbolistic descriptions, the running of the technical scheme in its direct or indirect simulation the present invention.Affiliated those of skill in the art use herein these descriptions and statement effectively to introduce their work essence to the others skilled in the art in affiliated field.
Alleged " embodiment " or " embodiment " refer to that special characteristic, structure or the characteristic relevant to described embodiment can be contained at least one implementation of the present invention at least herein.Different local in this manual " in one embodiment " that occur also nonessentially all refer to same embodiment, must not be yet with other embodiment mutually exclusive separately or select embodiment.In addition, the sequence of modules in method, flow chart or the functional block diagram of the one or more embodiment of expression also revocablely refers to any particular order, also is not construed as limiting the invention.
Fig. 1 is parallel encoding method 100 schematic diagram in one embodiment of the video image in the present invention.Described parallel encoding method comprises the steps.
Video is comprised of a series of continuous two field pictures, and these images will be buffered in described frame buffer district successively.After a two field picture coding is completed, this two field picture is shifted out from described frame buffer district, the image buffer storage that a frame is new is to described frame buffer district simultaneously.
In the Image Coding standard, such as MPEG-4 or H.264 wait, image sequence is generally divided into I frame and non-I frame.The I frame adopts intraframe coding, has namely only utilized the spatial coherence in single-frame images, and has not utilized temporal correlation.I frame (Intra Frame) uses compression in frame, does not use motion compensation, because the I frame does not rely on other frame, so be random-accessly to enter a little, is the reference frame of decoding simultaneously.Non-I frame generally adopts interframe encode, has namely utilized simultaneously the correlation on the room and time.Non-I frame generally comprises P frame and B frame, and the P two field picture only adopts the forward direction time prediction, can improve compression efficiency and picture quality, and the B-frame adopts bi-directional estimation, can greatly improve compression multiple.Non-I frame all need to just can be completed by reference frame when encoding, and described reference frame can be encoded I frame, can be also encoded P frame.
data dependence relation between macro block when the below can illustrate the intra-frame macro block coding with reference to figure 2, as shown in Figure 2, it shows the part of three macro-block line, suppose that B2 is the current macro block (abbreviation current macro) that needs coding, coding to current macro B2 generally need to utilize adjacent macroblocks A1, A2, A3 and B1 go prediction, also just need adjacent macroblocks A1, A2, the encoded structure of laying equal stress on of A3 and B1 is completed, wherein A1 is the upper left side adjacent macroblocks of current macro, A2 is the top adjacent macroblocks of current macro, A3 is the upper right side adjacent macroblocks of current macro, B2 is the left adjacent macroblocks of current macro.
According to intra-frame macro block coded data dependence as can be known, it is adjacent needing a plurality of macro-block line of the parallel encoding of same I two field picture, and the upper macro-block line in two macro-block line of the arbitrary neighborhood in the macro-block line of these parallel encodings (such as the macro-block line at macro block A1, A2 place) descend macro-block line (such as the macro-block line at B1, B2 place) early to begin coding and early finish to encode.Concrete, the coding progress that the coding progress of the upper macro-block line in adjacent two macro-block line in the macro-block line of these parallel encodings is descended macro-block line is at least two macro blocks soon, for instance, if macro-block line A, B, C walk abreast and encode, when macro-block line A was encoding to A4, the macro-block line B B2 that encodes was when macro-block line A is encoding to A6, macro-block line B is encoding to B4, and macro-block line is encoding to C2.Certainly, the gap of the coding progress of adjacent macroblocks row also can be larger, such as the gap that is three macro blocks or more macro blocks, in addition also can the macro-block line of parallel processing more than three, such as 4 or more than.
The reference frame of non-I two field picture can be to have begun the I frame of encoding, can be also to have begun the P frame of encoding, due to the interframe data correlation, it is the correlation on time-domain, for the coding of the macro block of non-I two field picture, only having when the reconstruction macro block in they required reference frames is available and could be processed by coding simultaneously.Therefore, after the reconstruction macro block in non-I two field picture being carried out the needed reference frame image of inter macroblocks level coding can be used, can begin and walk abreast this non-I two field picture is carried out inter macroblocks level coding.
Fig. 3 shows the example of non-I two field picture and its reference frame image parallel encoding, wherein Img1 is non-I two field picture, Img0 is the reference frame image of Img1, after reference frame image Img1 has encoded some macro blocks, first macro block of reconstruction macroblock coding according in the reference frame of its needs of just beginning to encode of non-I two field picture, Img0 and Img1 encode simultaneously afterwards, i.e. parallel encoding.
Analyzed the data dependence relation between intra-frame macro block, the present invention is on the basis of inter macroblocks level parallel encoding, follow the spatial coherence between macro block, a plurality of row macro blocks in the I frame are carried out parallel encoding, realize interframe and intra-frame macro block level parallel encoding, reached the parallel effect of many granularities.Experimental result shows, this algorithm has improved the speed-up ratio of coding, thereby strengthened the real-time of Video coding in the situation that video sequence can efficient coding and to keep Y-PSNR to change little.
In one embodiment, by creating a thread for each parallel encoding.Specifically, for the macro-block line of each parallel encoding of I frame creates an independent thread, for the parallel encoding of non-I frame creates an independent thread, be limited to predetermined value on the sum of the thread of parallel encoding.After the thread of a coding finishes, discharge this thread, just the sum at the thread of parallel encoding subtracts one.
" a plurality of " herein and " some " are two or more.
Above the present invention has been carried out enough detailed description with certain particularity.Under those of ordinary skill in the field should be appreciated that, the description in embodiment is only exemplary, make under the prerequisite that does not depart from true spirit of the present invention and scope change and all should belong to protection scope of the present invention.The present invention's scope required for protection is limited by described claims, rather than limited by the foregoing description in embodiment.
Claims (5)
1. a parallel encoding method, is characterized in that, it comprises:
With the multiple image buffer memory to the frame buffer district;
A plurality of macro-block line to the I two field picture in the frame buffer district are carried out parallel encoding;
When the reference frame image of the non-I two field picture in the frame buffer district is also being encoded, parallel this non-I two field picture is carried out inter macroblocks level coding.
2. parallel encoding method according to claim 1, is characterized in that, a plurality of macro-block line of the parallel encoding of same I two field picture are adjacent, and the upper macro-block line in adjacent two macro-block line in these macro-block line descends macro-block line early to begin coding.
3. parallel encoding method according to claim 2, is characterized in that, after the upper macro-block line in adjacent two macro-block line in these macro-block line was completed the coding of at least two macro blocks, lower macro-block line just drove the row coding into.
4. parallel encoding method according to claim 1, is characterized in that, non-I two field picture is carried out after reconstruction macro block in the needed reference frame image of inter macroblocks level coding can use, and begin and walk abreast this non-I two field picture is carried out the inter macroblocks level to encode.
5. according to claim 1-4 arbitrary described parallel encoding methods, is characterized in that, after a two field picture coding is completed, this two field picture shifted out from described frame buffer district, and the image buffer storage that a frame is new is to described frame buffer district simultaneously.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110367607XA CN103124345A (en) | 2011-11-18 | 2011-11-18 | Parallel encoding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110367607XA CN103124345A (en) | 2011-11-18 | 2011-11-18 | Parallel encoding method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103124345A true CN103124345A (en) | 2013-05-29 |
Family
ID=48455181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110367607XA Pending CN103124345A (en) | 2011-11-18 | 2011-11-18 | Parallel encoding method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103124345A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014205690A1 (en) * | 2013-06-26 | 2014-12-31 | 北京大学深圳研究生院 | Video compression encoding method and encoder |
CN105681342A (en) * | 2016-03-08 | 2016-06-15 | 随锐科技股份有限公司 | Anti-error code method and system of multi-channel video conference system based on H264 |
CN107392838A (en) * | 2017-07-27 | 2017-11-24 | 郑州云海信息技术有限公司 | WebP compression parallel acceleration methods and device based on OpenCL |
CN108391131A (en) * | 2018-04-16 | 2018-08-10 | 西安万像电子科技有限公司 | Image frame coding method and device |
CN111447451A (en) * | 2020-03-23 | 2020-07-24 | 西安万像电子科技有限公司 | Image coding and decoding method and device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101150719A (en) * | 2006-09-20 | 2008-03-26 | 华为技术有限公司 | Parallel video coding method and device |
US20110222604A1 (en) * | 2008-11-13 | 2011-09-15 | Thomson Licensing | Multiple thread video encoding using gop merging and bit allocation |
-
2011
- 2011-11-18 CN CN201110367607XA patent/CN103124345A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101150719A (en) * | 2006-09-20 | 2008-03-26 | 华为技术有限公司 | Parallel video coding method and device |
US20110222604A1 (en) * | 2008-11-13 | 2011-09-15 | Thomson Licensing | Multiple thread video encoding using gop merging and bit allocation |
Non-Patent Citations (2)
Title |
---|
魏妃妃: "视频编解码算法的并行研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 July 2011 (2011-07-15), pages 31 - 33 * |
魏妃妃等: "一种基于帧间和帧内宏块级的X264并行编码算法", 《计算机工程与科学》, vol. 33, no. 7, 31 July 2011 (2011-07-31), pages 107 - 109 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014205690A1 (en) * | 2013-06-26 | 2014-12-31 | 北京大学深圳研究生院 | Video compression encoding method and encoder |
CN104396246A (en) * | 2013-06-26 | 2015-03-04 | 北京大学深圳研究生院 | Video compression encoding method and encoder |
CN104396246B (en) * | 2013-06-26 | 2018-07-06 | 北京大学深圳研究生院 | Video compressing and encoding method and encoder |
CN105681342A (en) * | 2016-03-08 | 2016-06-15 | 随锐科技股份有限公司 | Anti-error code method and system of multi-channel video conference system based on H264 |
CN105681342B (en) * | 2016-03-08 | 2019-12-17 | 随锐科技集团股份有限公司 | H264-based error code resisting method and system for multi-channel video conference system |
CN107392838A (en) * | 2017-07-27 | 2017-11-24 | 郑州云海信息技术有限公司 | WebP compression parallel acceleration methods and device based on OpenCL |
CN107392838B (en) * | 2017-07-27 | 2020-11-27 | 苏州浪潮智能科技有限公司 | WebP compression parallel acceleration method and device based on OpenCL |
CN108391131A (en) * | 2018-04-16 | 2018-08-10 | 西安万像电子科技有限公司 | Image frame coding method and device |
CN108391131B (en) * | 2018-04-16 | 2019-09-10 | 西安万像电子科技有限公司 | Image frame coding method and device |
CN111447451A (en) * | 2020-03-23 | 2020-07-24 | 西安万像电子科技有限公司 | Image coding and decoding method and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110087087B (en) | VVC inter-frame coding unit prediction mode early decision and block division early termination method | |
CN105992008B (en) | A kind of multi-level multi-task parallel coding/decoding method in multi-core processor platform | |
CN102025995B (en) | Spatial enhancement layer rapid mode selection method of scalable video coding | |
CN103796023B (en) | H.265/HEVC transcoding method and transcoder based on H.264/AVC macro block structure and texture | |
CN103124345A (en) | Parallel encoding method | |
CN103188496B (en) | Based on the method for coding quick movement estimation video of motion vector distribution prediction | |
CN105898330A (en) | Method and apparatus of using constrained intra block copy mode for coding video | |
CN103517069A (en) | HEVC intra-frame prediction quick mode selection method based on texture analysis | |
CN102186086B (en) | Audio-video-coding-standard (AVS)-based intra-frame prediction method | |
CN106507116B (en) | A kind of 3D-HEVC coding method predicted based on 3D conspicuousness information and View Synthesis | |
CN100574447C (en) | Fast intraframe predicting mode selecting method based on the AVS video coding | |
CN106210721B (en) | A kind of quick code check code-transferring methods of HEVC | |
CN103338370B (en) | A kind of multi-view depth video fast encoding method | |
CN102196256A (en) | Video encoding method and device | |
WO2018120797A1 (en) | Intra-frame prediction method for inter-frame prediction frame | |
CN101304529A (en) | Method and device for selecting macro block pattern | |
CN101389023B (en) | Adaptive movement estimation method | |
CN1568015A (en) | Multiple visual-angle video coding-decoding prediction compensation method and apparatus | |
CN101568038B (en) | Multi-viewpoint error resilient coding scheme based on disparity/movement joint estimation | |
CN101867818B (en) | Selection method and device of macroblock mode | |
CN102158702A (en) | Self-adaption H.264 code rate control method | |
CN102984524B (en) | A kind of video coding-decoding method based on block layer decomposition | |
CN1268136C (en) | Frame field adaptive coding method based on image slice structure | |
CN102595137B (en) | Fast mode judging device and method based on image pixel block row/column pipelining | |
US20130128954A1 (en) | Encoding method and apparatus |
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 |
Application publication date: 20130529 |