Hi @Ngo Duc ,
Thanks for sharing your details!
Are there any tutorial or example about developing Video Extension for Windows?
Right now, Microsoft does not provide a complete tutorial that walks you through creating and publishing your own video codec extension in the Microsoft Store the same way the AV1 Video Extension works.
Microsoft does describe pieces of the system for example, how codecs work with Media Foundation and manifest elements like uap4:MediaCodec and inProcessMediaExtension but you won’t find an end-to-end “here’s how to do it” guide that shows all the steps from building a codec to publishing it in the Store.
Guide for developing a Video Decoder Extension to support decoding new formats in a Media Player application.
On Windows, support for video codecs and decoders is provided by Microsoft Media Foundation. Media Foundation is the multimedia framework Windows uses for playback, encoding, and decoding.
For custom video decoding you normally:
- Write a custom Media Foundation Transform (MFT) that implements the
IMFTransforminterface. This is the standard way in Windows to build a codec; your code takes compressed video frames and outputs decoded frames. - Microsoft’s docs include “Writing a Custom MFT” and “Implementing a Codec MFT”, which explain the checklist and guidelines for building your decoder component. You can use sample code (e.g., a mock decoder) as a reference.
- You then register your MFT so that applications that use Media Foundation can discover and use it.
Those documents make up the technical guidance for building a decoder. They do not show a polished publish-to-Store tutorial; the focus is on how Media Foundation expects codec components to be written and registered.
Here are some useful documents you can check out:
- Writing a Custom Media Foundation Transform (MFT): https://learn.microsoft.com/windows/win32/medfound/writing-a-custom-mft
- Implementing a Codec MFT: https://learn.microsoft.com/windows/win32/medfound/implementing-a-codec-mft
- uap4:MediaCodec (manifest element used for codec extensions): https://learn.microsoft.com/uwp/schemas/appxpackage/uapmanifestschema/element-uap4-mediacodec
If you find my answer useful, please kindly consider marking it as the final answer by following this instruction.