I keep hearing this battery life thing but how much battery life does H264 hardware acceleration really save? I dare to wager that the majority of the power is used by the screen, not the CPU.
I wrote some Android video software comparing performance of hardware and software decoders for H.264 and AAC. The Nexus One's H.264 hardware decoder used 2x more battery than a software decoder (for much less than 2x frame rate improvement). Further testing suggested that the power usage of moving video data to and from the hardware decoder outweighed any savings from overloading the CPU.
And the Nexus One's AAC hardware decoder was slower than a software decoder.
storage/network -> CPU -> GPU -> Screen
It sounds like on the Nexus One, there's some copy back into the CPU before it gets to the screen. In the version of the OS is Android doing graphics compositing in it's CPU?
I'd love to see references for this.