Publication Date:
2014-09-20
Description:
H.264 video codec provides a wide range of compression options and is popularly implemented overvarious video recording standards. The compression complexity increases when low-bit-rate video isrequired. Hence, the encoding time is often a major issue when processing a large number of videofiles. One of the methods to decrease the encoding time is to employ a parallel algorithm on amulticore system. In order to exploit the capability of a multicore processor, a scalable algorithm isproposed in this paper. Most of the parallelization methods proposed earlier suffer from thedrawbacks of limited scalability, memory, and data dependency issues. In this paper, we present theresults obtained using data-level parallelism at the macroblock (MB) level for encoder. The key ideaof using MB-level parallelism is due to its less memory requirement. This design allows the encoderto schedule the sequences into the available logical cores for parallel processing. A load balancingmechanism is added to allow the encoding with respect to macroblock index and, hence, eliminatingthe need of a coordinator thread. In our implementation, a dynamic macroblock schedulingtechnique is used to improve the speedup. Also, we modify some of the pointers with advanced datastructures to optimize the memory. The results show that with the proposed MB-level parallelism,higher speedup values can be achieved.
Topics:
Electrical Engineering, Measurement and Control Technology
Permalink