Font Size: a A A

Parallel Algorithm Design And Optimization For H.264 Video Encoding

Posted on:2009-09-19Degree:MasterType:Thesis
Country:ChinaCandidate:X C JiangFull Text:PDF
GTID:2178360242476877Subject:Signal and Information Processing
Abstract/Summary:PDF Full Text Request
In 2001, the Moving Picture Experts Group (MPEG) of ISO and the Video Coding Experts Group (VCEG) of JVT developed the H.26L standard together. The latest video coding standard significantly improves in both the coding efficiency and network adaption. In order to achieve the best coding efficiency, the H.264 encoder introduces a lot of complexity. Analyzing the structure of H.264 encoder, it is clear that the complexity is derived from two aspects, one is the inter prediction technology, including the multiple reference frames, the other one is the intra prediction technology. How to encode the H.264 stream more quickly is one of the most important things for now.In order to avoid the worse power consumption, almost all CPU architectures are on their ways toward Multi-Core technology, compared with the single core CPUs, Multi-Core CPUs can provide more powerful computing ablilty and real parallel processing. There are mainly two parallel methods to optimize the H.264 encoder, one of which is Instruction Level Parallelism(ILP), we can see it on many DSP platforms, the other one is Thread Level Parallelism(TLP), this method must cooperate with the Multi-Core technology. This thesis optimizes the H.264 encoder using both methods, and got much speedup improvement under Linux Fedora Core 5 operating system on Intel Dual-Core platform.X264 encoder uses"Fork-Join"model for its parallel algorithm, but this model is costly especially in low resolution encoding. In order to avoid this penalty, this thesis introduces a new model—"Adaptive Threading Pool"model.For the non-real-time applications, we choose the GOP level parallel algorithm, the tests results show that the speedup can achieve up to about 2 on the Intel dual-core architecture.For the real-time applications, we choose the combination of the frame level parallel and the slice level parallel algorithms. It is quicker than the frame level parallelism and the quality is much better than slice level parallelism.
Keywords/Search Tags:H.264/AVC, Instruction Level Parallelism, Thread Level Parallelism, Multi-Core, Adaptive Threading-Pool Model
PDF Full Text Request
Related items