Posts Tagged ‘audio coding’

Software, optimization, and flexibility

Roar Hagen
Posted by Roar Hagen
on May 5th, 2009 in Technology

Tsahi Levent-Levi wrote a very interesting piece about optimization of video (and audio) codecs in his blog . This is an interesting issue which I have seen evolve over time.

I do agree with Tsahi, but just wanted to point out the additional issue of flexibility (which is the driver for Java and Atwood’s Law). Flexibility drives more and more to be software based on standard hardware replacing dedicated hardware solutions (e.g. video conferencing).  Software implementations shorten the launch cycle and are easily upgraded.

At GIPS, we have seen general software implementations become more and more prevalent. Audio codec implementations have gone from being highly optimized DSP implementations to less optimized code running on e.g. RISC type processors like an ARM.  The code is less optimized to the specific processor, but more portable and flexible. At the desktop with processors like the Pentium, the processors are so powerful that it easier to just keep one implementation across platforms like Windows, Mac OS, and Linux.

Video coding with e.g. H.264, as Tsahi notes, is much more complex and requires optimization today even for Pentium to achieve high quality. I do expect that video coding will see the same development as for audio where less optimization is needed with increasingly powerful processors.

Or, video codec developers will keep increasing the complexity to better performance. I guess we will see what H.265 will bring …