If you go to Terminal and type the following commands, there's something really interesting:
cd /System/Library/PrivateFrameworks/CoreKE.framework/Versions/A
strings CoreKE | less
Hit the space bar a few times and you'll see that encryption certificates for Intel, Nvidia, and AMD video decoding are referenced. Somehow, I think the CoreKE framework is used by iTunes to decode videos which have DRM.
Another private framework, /System/Library/AppleGVA.framework is what I believe coordinates the actual hardware accelerated video decoding. If you play around with the Info.plist in that framework, there is a key in a System Support entry dictionary called ke1 which you can toggle true or false. If you toggle it true, then you get the green screen or pink/garbled video. If you toggle it false, you simply get a black screen. In both cases, the audio plays and the progress bar works.
Just wild speculation here, but I'm guessing ke1 is a reference to a decryption key that should be used and can somehow be passed straight into the GPU for use in hardware decoding of streams which have DRM.
A few thoughts come to mind:
1. If the problem has to do with a key, why does this key not work for Hackintoshes? Is it stored in the firmware of genuine Macs? Is it available via a driver that isn't being loaded?
2. As a workaround, would we be able to play videos with DRM if we simply turn off support for Video Decode Acceleration, so that the CPU handles everything? If so, how can we accomplish this?