Question

I'm in the early stages of creating a MFT to decode a "new" container format video. I'm using the MPEG1Source sample from the Media Foundation SDK, and I have a mpeg1 sample. I changed the extensions in both to ".test" and registered the dll.

Windows Media Player can open the file (my breakpoints are hit and the video plays), but Windows Media Center doesn't- opening from the command line works when the file is .mpg, but not as .test. My breakpoints aren't hit; it doesn't look like it even tries to load the dll (Visual Studio doesn't report my dll being loaded in the output window).

This is 64-bit Windows 7; the dll is native 64-bit.

Is there some additional registration that needs to happen before Media Center will understand a new file type?

Was it helpful?

Solution

I tried using MFTrace to trace the Media Foundation calls- nothing

I tried using Event Viewer to trace Media Foundation- nothing

Finally, I tried Process Monitor- great success! Media Center does a registry scan of HKCU\Software\Classes\.test, HKCR\.test, etc, and looks for a key called "PerceivedType"- if it's "video", then it will play.

So I added the registry key HKEY_CLASSES_ROOT\.test\PerceivedType = video and it works!

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top