locked
Is the IMFMediaEngine support load customer source from Windows::Media::MediaExtensionManager RegisterSchemeHandler?

    Question

  • Currently, I want to use a customer media source for IMFMediaEngine, I use Windows::Media::MediaExtensionManager::RegisterSchemeHandler to register a scheme. but after IMFMediaEngine::SetSource then invoke IMFMediaEngine::Load, the IMFMediaEngine can't load the customer source I have registerd in Windows::Media::MediaExtensionManager::RegisterSchemeHandler.  

    ]I found there has a IMFMediaEngineExtension interface which can load customer source, but this interface need inhert by my customer source and before create IMFMediaEngine, the pointer of this interface should pass to MF_MEDIA_ENGINE_EXTESION attribute. 

    Is there any way can get the customer source in Windows::Media::MediaExtensionManager, or the Windows::Media::MediaExtensionManager only for MediaElement.

    Thanks.

    Tuesday, December 17, 2013 3:59 AM

All replies

  • It's not clear exactly what you mean by a custom source, but I suspect you will need to implement IMFMediaEngineExtension. See the Media extensions sample for an example.

    --Rob

    Tuesday, December 17, 2013 6:48 AM
    Moderator
  • Thanks Rob,

    The custom source is a IMFMediaSource interface impelment by myself.

    The Media extension sample work fine with Windows::UI::Xaml::Controls::MediaElement, But the source register in Windows::Media::MediaExtensionManager can't be found by IMFMediaEngine(I modfiy the sample base on Media engine native C++ video playback sample ). So I suspect that source register in Windows::Media::MediaExtensionManager only can be found by Windows::UI::Xaml::Controls::MediaElement. The IMFMediaEngine only can use IMFMediaEngineExtension to find a custom source.

    Thanks.

    URL of Media engine native C++ video playback sample

    http://code.msdn.microsoft.com/windowsapps/Media-Engine-Playback-ce1c82f0

    Tuesday, December 17, 2013 9:15 AM