Format Negotiation (deprecated)
This page documents a feature that may be unavailable in future versions of Windows Media Player and the Windows Media Player SDK.
Since the format being used by a rendering plug-in is proprietary, format negotiation is very simple. Windows Media Player doesn't need to work with the arbitrary data except to deliver it unchanged to the plug-in. When the Player opens a Windows Media file that contains an arbitrary data stream, it retrieves the GUID of the stream and checks the registry to locate a rendering plug-in registered with the matching GUID. When it finds one, it loads the plug-in and calls IMediaObject::SetInputType, passing as an argument a DMO_MEDIA_TYPE structure. The plug-in can use the members of this structure to validate that it supports rendering the arbitrary data. At a minimum, the plug-in should verify that the majortype member matches the GUID of the media type the plug-in is designed to process.