Both AMD and NVIDIA have fully accelerated H.264 decode on their GPUs and chipsets with integrated graphics, something Intel just recently added with G45. Apple has historically done a terrible job of taking advantage of GPU accelerated video decode features in its OS, which is partly why it took us so long to get somewhat acceptable deinterlacing in Apple's DVD app, despite solid deinterlacing support by the GPU vendors.
Part of the problem is that unlike on the PC platforms, companies like ATI and NVIDIA don't write the entire driver for Mac OS X. The GPU vendors provide the hardware interface portion of the driver but Apple handles much of the rest. It's up to Apple to take advantage of the various features supported by the GPU, and most of them aren't high on Apple's priority list.
With Apple heavily pushing H.264 as the codec of choice and offering high bitrate HD H.264 movie trailers at www.apple.com, the move to NVIDIA's GeForce 9400M appeared to be the perfect time to take advantage of GPU accelerated H.264 decode. For the first time ever, Quicktime will use the GPU for the majority of the decode pipeline when playing back H.264 content.
To test the impact of the GPU offload I measured CPU utilization while playing back the 160MB 1080p trailer of The Spirit from Apple's movie trailers website:
| New MacBook Pro 15" | Old MacBook Pro 15" | |
| CPU Utilization | 10% | 30 - 50% |
The old MacBook Pro saw 30 - 50% of its dual core Core 2 Duo 2.5GHz CPU used up to decode the trailer, while the new MacBook Pro only needed 10% as the rest was done on the GPU. The GPU is also a more efficient place to perform H.264 decoding so you'll actually see an increase in battery life when playing back hardware accelerated content.
As OS X still lacks any official Blu-ray support, the H.264 decode acceleration isn't very useful beyond playing these sorts of files, but it's a definite start. It's also unclear how easy it will be for 3rd party developers to tie into the GPU acceleration hooks or if Quicktime will be your only hope for that.
|
||||
November 20, 2009
November 19, 2009