Embedded Media Processing

If you've made it this far in the book (without cheating and skipping ahead), you now have an appreciation for the workings of the interrelated structural components of an embedded media processing system. Throughout the book, we've tried to inject examples involving pieces of real systems, in an attempt to solidify the somewhat abstract knowledge that's being conveyed. In this chapter, we have a chance to delve a little further into some sample systems, in more detail than we could afford elsewhere. It is our hope that this chapter adds value by viewing things more at a practical application level, and by relating the inner workings of a processor to tangible functionality in the system.
We'll first look at an automotive driver assistance application, seeing how a video-based lane departure warning system can utilize a media framework identical to one we discussed in Chapter 7. Then, we'll turn our attention to implementation of a JPEG algorithm, which contains a lot of the key elements of more complex image and video codecs. Next, we'll extend this discussion to the MPEG realm, outlining how an MPEG-2 video encoder algorithm can be partitioned efficiently across a dual-core processor. Finally, we'll switch gears and talk about the porting of open-source C code to the Blackfin processor environment. In doing so, we'll undergo an enlightening analysis of the code optimization process which optimization steps give you the most "bang for your buck."
So let's get started
With the dozens of processors...