locked
IMFMediaSourceEx and SetD3DManager guidance

    Question

  • In the MediaExtensions sample, there is a IMFMediaSourceEx example (GeometricSource).  It implements IMFMediaSourceEx.

    With IMFMediaSourceEx::SetD3DManager, are we guaranteed to always get the D3D manager set when used with IMFMediaEngine/Xaml MediaElement/<Video> tag?  Or do we need to make sure to have a fallback?  

    Also can we use our own DXGIDevice? or do we use the one supplied in the IMFDXGIDeviceManager?

    Thanks!

    -Jer


    • Edited by jmorrill Wednesday, May 2, 2012 11:47 PM
    Wednesday, May 2, 2012 11:47 PM

Answers

  • Hello Imorrill,

    AFAIK if you implement the IMFMediaSourceEx and have the "D3D11_AWARE" attribute set appropriately you should get reference to a D3D Manager in your source in most scenarios. Using the MediaElement from XAML and using the <video> tag in HTML5 I expect that you will always get a D3D manager. However, you many not get this interface if your source is participating in a transcode topology or a capture topology that does not render to a D3D aware device. You should not use your own DXGIDevice although it is possible to do so if you architect your application to control a custom swap chain. However, this is not usually necessary and is not recommended.

    I hope this helps,

    James


    Windows Media SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Monday, May 7, 2012 10:36 PM
    Moderator

All replies

  • Hello,
     
    Thanks for your feedback, I will involve more experts to investigate it.
     
    Best regards,
    Jesse

    Jesse Jiang [MSFT]
    MSDN Community Support | Feedback to us

    Friday, May 4, 2012 9:07 AM
  • Hello Imorrill,

    AFAIK if you implement the IMFMediaSourceEx and have the "D3D11_AWARE" attribute set appropriately you should get reference to a D3D Manager in your source in most scenarios. Using the MediaElement from XAML and using the <video> tag in HTML5 I expect that you will always get a D3D manager. However, you many not get this interface if your source is participating in a transcode topology or a capture topology that does not render to a D3D aware device. You should not use your own DXGIDevice although it is possible to do so if you architect your application to control a custom swap chain. However, this is not usually necessary and is not recommended.

    I hope this helps,

    James


    Windows Media SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Monday, May 7, 2012 10:36 PM
    Moderator
  • Thanks for the answer!

    Monday, May 7, 2012 10:59 PM