hashbrown

Is it possible to use DXVA2.0 inside a media source so that one can send uncompressed yuv data straight to the EVR without a dummy transform in between

Re: Media Foundation Development DXVA 2.0 and Media Source

Becky Weiss - MSFT

Unfortunately, no. Media Foundation doesn't support any official way of getting the D3D manager to the Media Source, so you'll need to have that dummy transform in between to make the copying happen.




Re: Media Foundation Development DXVA 2.0 and Media Source

hashbrown

Hi Becky,

Using DXVA2.0 Service on a IMFMediaSample in the Media Source (say in RequestSample()) isn't possible I am trying to just use DX9 surfaces from the media source so that EVR can recognize them (as i know EVR accepts DX surfaces).





Re: Media Foundation Development DXVA 2.0 and Media Source

Becky Weiss - MSFT

Well, Media Sources are responsible for providing their own samples. This is different from MFTs, most of which are able to accept buffers allocated by someone else (which can be DX surfaces) and write their data into them.

Now if you have a custom mechanism for knowing that the EVR is directly downstream from your Media Source and allocating DX surfaces in your Media Source, then I think you'd probably be able to get it to work. Just be careful... I worry that doing something like that might cause backwards compatibility problems when and if Media Foundation ever does start officially supporting DX-friendly Media Sources... like whatever your Media Source is doing might conflict with whatever MF tries to do.

And if you were to do this, also be aware that if you're playing back protected content, you'll need to take extra steps to make sure your Media Source gets instantiated in the mfpmp.exe process, which isn't the default.

Enough caveats to scare you off