DirectX Media Objects
From Wikipedia, the free encyclopedia
DirectX Media Objects (DMOs) are COM-based multimedia and data-streaming components. In some respects, DMOs are similar to DirectShow filters. Like DirectShow filters, DMOs take input data and use it to produce output data, essentially making them multimedia framework components. The APIs for DMOs are much simpler than the corresponding APIs for DirectShow. As a result, DMOs are easier to create, test, and use. For encoders & decoders (DMO-based compressor and decompressor codecs), and for DMO-based audio capture, audio processing and video processing effects, Microsoft encourages you to write a DMO instead of a DirectShow filter. DMOs can be used in many scenarios:
- Applications based on DirectShow can use DMOs through a DirectShow filter called the DMO Wrapper filter. The distinction between filters and DMOs is transparent to the application. The application does not directly call the DMO APIs.
- Applications based on DirectSound can use audio effect DMOs. Again, the application is shielded from the low-level DMO APIs by the higher-level DirectSound APIs.
- Applications can also use DMOs directly, such as DMOs for video effects, audio capture effects etc.
- Windows Media and ASF framework support DMO-based codecs. The codecs shipping as part of Windows Media Player/Encoder are actually DMO codecs. Through the DMO wrapper filter, they can also be used in DirectShow.
The Windows Media based encoding tools from Microsoft use these DMO-based codecs through 'encoder profiles'. Windows Movie Maker can also use these encoder profiles when saving movies locally.
Windows Media Encoder 9 Series and Windows Media Encoder Studio Edition are probably the only DMO-based encoders. 3rd party codecs for DMOs unlike VfW codecs or ACM codecs are very rare or almost non-existent. The Leadtools , for example, install DMO-based versions of their H.264 codecs. Using the Windows Media Profile Editor, a profile which uses such 3rd party video codecs instead of the Windows Media codecs can be created. Thus, Windows Media Encoder and Windows Movie Maker would be able to create WMV/ASF files with 3rd party codecs.
[edit] Future of DMOs
DMOs are a part of Microsoft's DirectShow and DirectShow is going to be replaced gradually by Media Foundation. Media Foundation Transforms (MFTs) will be replacing DMOs as developers transition from DirectX to Media Foundation.