Programming with Intel Wireless MMX Technology: A Developer's Guide to Mobile Multimedia Applications

Chapter 15: H.264 and MPEG-4 Video Compression

Standards are always out of date. That is what makes them standards.
Alan Bennett

The video encoder is one of the more demanding application domains targeting both the desktop and mobile platforms of today. Over the years, a number of advancements have created options for software developers to improve both quality and compression efficiency. Users' perceived quality parameters are advancing at least as fast as the technology. This chapter covers the basic algorithms used in MPEG-4/H.264 video compression and explains how these algorithms can best be implemented using Intel Wireless MMX technology. After some explanation of the critical algorithms that display parallelism, those algorithms are developed as case studies to show you a methodology for writing optimized code for video processing that uses the techniques introduced in previous chapters.

Video Fundamentals

The representation of video images in digital form generates data. A single frame of image data at a VGA resolution in 24-bit RGB color requires 900 kilobytes of data, and with many of these frames required per second, the effort of resource management grows quickly. Consider that with full motion video around 30 of these VGA frames must be displayed every second. Therefore, 26 megabytes is required for a single second, and a two-hour movie would require 92,000 megabytes!

A video sequence is composed of multiple still images that are usually captured in rapid succession. At some point in the process, a camera generates the still images and they are converted to a standard color...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Digital Video Recorders
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.