Re: Lou
It doesn't supporting DXVA and blu-ray doesn't mean you support Flash Player because flash player needs low level access not provided and not used by the DirectShow or Media Foundation framework DXVA is designed to work against. And talking to the drivers APIs aren't talking directly to the hardware, it isn't bad practice even at Windows. Cuda is implemented in driver + library on both Windows and OS X without either vendors involvement. There's no real difference to provide an API to the nVidia VP3 interface.
You can play media files in Quicktime with Quciktime demuxers and decoders, and you can play media files in WMP/MF/DShow with MF/DShow demuxers and decoders in Core Video/Quartz/CA (OS X) overlay and VMR (XP)/EVR (Vista/7 D3D accelerated) overlay. You can write your own quicktime decoders or your own DirectShow Filters/MF transform for files that there aren't a suitable decoder and demuxer for on OS X you can accelerate those third party QT components with VDADecoder headerfile/API on nVidia hardware, on Windows (7/Vista) you can use DXVA together with the EVR renderer only. But Adobe does neither here. So providing stuff they don't use wont help them. The hardware and software just isn't meant to be used as Adobe does it, rendering it out into the software compositor and blending RGB-overlays in the CPU. The frameworks are meant to use the native API and hardware feature for that, within the framework itself, which just doesn't fit Adobe Flash's work flow. If they would just have went with properly encoded H.264/AVC videos in MP4 on HTTP streaming (which also works with Flash), then even the files would play with the native QT decoders on the Mac with hardware acceleration even on ATi hardware. Microsoft didn't supply them with this low-level access needed, Apple kinda did by exposing nVidias VP3 stuff. It wasn't designed to work that way, so the drivers manufacturers is fully responsible to work with Adobe to implement the flash support. Not all DXVA/H.264 capable hardware is therefor capable of accelerating the H.264 flash videos. It just wasn't apart of in supporting the standard API and because of the way it operates also needs more performance between the GPU and the CPU/memory then playing back blu-rays with 10 times higher bitrate.
So Adobe is just using a small part of the video framework and API on Windows, and none of Apples own framworks on OS X. Expect for Core Animation/OpenGL/Quartz/Quickdraw. Which QT also has to deal with and any other video player plugin too.
That's also why ION-NG doesn't work properly with Flash player but handles blu-rays just fine, there's not enough bandwidth between the GPU and CPU to supply it because of it's none standard approach. It isn't just a Mac problem, and nVidia and ATI/AMD Mac driver teams and Apple can do nothing if Adobe doesn't even communicate what they need. They can't design stuff for none-standards. For none-specified use.
Apples own QT decoders does utilize the hardware vendors internal API's directly, just because they haven't formulated a standard API for them to support to abstract all that. But said abstraction wouldn't really been made to supply a none QT work flow any way just as DXVA isn't meant to be used without DirectShow decoders/Media Foundation transforms and VMR/EVR renderer, as you just doesn't render video overlay in software. It needs to be hardware accelerated, and is within the native APIs. Third party media acceleration isn't really supplied for either platform, not for normal video cards at least, the Broadcom Crystal HD accelerator has it's own API. You aren't meant to output video that way. As Adobe does it, on neither of the platforms. This is http://i.msdn.microsoft.com/dynimg/IC15450.gif how Microsoft intended it to be used and it isn't used in a fashion even close to that. It's more like software > hardware > software > custom surface on GPU/hardware, while DXVA, EVR, D3D is all in hardware when you do it properly as a video player should. That's not Apples or Microsofts fault, however that's no excuse for Apple, they should be able to do this and meet their requirements more eloquently even if Microsoft didn't need too. As they still doesn't have a good system for third party decoders they should implement that even if VDADecoder was enough to shut up Adobe. But Adobe will complain as soon as they have created that even if they can't use it. But the standard accelerated interface on Windows didn't work with Adobes flash player, Microsoft wasn't blamed for it or any claim of no API was launched against it. Adobe can't get custom stuff if they don't ask for it. Sorry for long post.