Font Size: a A A

Research On Implementation And Optimization Of Key Algorithms In H.264 Encoder

Posted on:2009-12-22Degree:MasterType:Thesis
Country:ChinaCandidate:K Z ZhangFull Text:PDF
GTID:2178360242492034Subject:Information and Communication Engineering
Abstract/Summary:PDF Full Text Request
H.264/AVC is a video coding standard developed by ITU-T and Moving Picture Experts Group (MPEG) together. Comparing with other existing coding standards, H.264 achieves better compression performance and has better network adaptability. However these advantages are obtained by increasing computational complexity which leads more requirements on storage and processing capability of hardware. Due to the reason above, how to design a high performance coder becomes an important problem in academic and industrial fieldMotion compensation is a key component of H.264 encoder through which redundancies of successive frame can be remove effectively. Due to the use of variable block partition modes and quarter-pixel accuracy motion estimation the computational complexity is highly increased and it consumes 60%(l reference frame) to 80% (5 reference frames) of the total encoding time of the whole encoding time of H.264 encoder. In order to reduce the computational complexity of fast motion estimation, and avoid the local minimum problem caused by small diamond search, a motion estimation algorithm based on adaptive search pattern was proposed. This algorithm chooses search pattern adaptively depending on SAD changing speed and the temporal relativity in video sequence. Experimental results demonstrated that by using this algorithm the encoded bit-rate increases only±0.6% and searching points is reduced to 72%-77% and 83-86% which are compared with diamond search and hexagon-based search respectively. In the situation of reducing searching points this algorithm avoids local minimum problem.The H.264 encoding process of every block contains quantization, transform inverse-quantization, inverse-transform and evaluation of SAD. Lots of the processes in those algorithms can treat in parallel. This paper uses 64-bit and 128-bit SIMD instructions to optimize those algorithms and bring a parallel algorithm which process the transform of two 4x4 blocks at once. This paper also introduces an algorithm for deblocking , which is good for parallel processing . These algorithms speed up the speed of those processes 3-8 times, thus highly improve the speed of encoding process.We study the optimization of H.264 encoder memory organization. In the encoder software there is lots of data access, memory organization directly affects the data accessing speed, so memory organization becomes an important part of encoding design. Good memory organization will speed up data accessing and make the transplant on different platforms easy. In this paper we consider the size of on-clip memory in MD64 and the DMA which bring the possibility of parallelizing the data accessing between on-clip and off-clip memory and the data computation. At last we bring a simplified on-clip memory organizing method and we also use the DMA of MD64 to achieve complete parallelism between data access and the data computation.
Keywords/Search Tags:H.264, motion compensation, MD64, SIMD instruction, memory organization optimization
PDF Full Text Request
Related items