For example, if the Direct3D device is already created and locked within the process (say in a renderer black box), then it cannot be passed nor shared with the Media SDK for its DXVA context creation.
Also, if a decoding/transcoding application is run as a Service under Vista/7, it cannot access Direct3D due to ring0 isolation.
Ideally we would have a separate driver API that matches the Media SDK functionality and can share graphic resources with the Direct3D runtime. Is that possible with your architecture? I suppose it would involve splitting the Intel DXVA driver in a back-end & front-end so a second Intel-specific front-end can be added.
Your post was discussed amongst the team today, thanks for the good feedback. Our current implementation is based on DXVA and we dont have any plans to change that. Ill keep your suggestion for next time we go into planning sessions for future revisions of the SDK.