Video applications are becoming an essential component for mobile devices. H.264, the latest video-coding standard, shows significant potential in terms of bandwidth savings at the cost of substantially increased complexity compared to former standards. The computing power currently available on mobile devices is not sufficient to allow high quality real-time encoding using H.264. Our algorithm uses on average only 0.41% of the computational complexity of the full search method used by H.264, leading to a significant reduction in computational requirements and enabling realtime applications for mobile devices with the efficiency of H.264.
INTRODUCTIONVideo applications are becoming an essential component of mobile devices. The requirement, however, of low power consumption coupled with limited processing power are challenges that prevent us from achieving real-time high quality applications. H.264 is the latest and most advanced video coding standard to date [1]. It yields a 50% improvement in compression efficiency compared to previous video standards such as MPEG-2 and MPEG-4. A number of different applications such as broadcasting and HD-DVD have already adopted H.264 as their new video codec. Although H.264 shows significant potential in terms of coding efficiency and thus bandwidth savings, its computational complexity causes a considerable challenge for real-time encoding on mobile applications. Fig. 1 represents the run time analysis of a typical H.264 encoder [2]. The encoder spends up to 52% of the overall computational time on Motion Estimation (ME), clearly the most time consuming process of video compression. For this reason, a lot of research has been done in this area and a number of different methods have been proposed for improving the speed of the motion estimation search.The Full Search Method (FS) evaluates each displacement position within a limited search area (usually ±7 pixels) and chooses the point with the minimum distortion. Although this method will identify the match with the global minimum distortion (within the search area), it requires an unjustifiable amount of computational load.