IMediaObject interface (mediaobj.h)
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
The IMediaObject
interface provides methods for manipulating a Microsoft DirectX Media Object (DMO).
Inheritance
The IMediaObject interface inherits from the IUnknown interface. IMediaObject also has these types of members:
Methods
The IMediaObject interface has these methods.
IMediaObject::AllocateStreamingResources The AllocateStreamingResources method allocates any resources needed by the DMO. Calling this method is always optional. |
IMediaObject::Discontinuity The Discontinuity method signals a discontinuity on the specified input stream. |
IMediaObject::Flush The Flush method flushes all internally buffered data. |
IMediaObject::FreeStreamingResources The FreeStreamingResources method frees resources allocated by the DMO. Calling this method is always optional. |
IMediaObject::GetInputCurrentType The GetInputCurrentType method retrieves the media type that was set for an input stream, if any. |
IMediaObject::GetInputMaxLatency The GetInputMaxLatency method retrieves the maximum latency on a specified input stream. |
IMediaObject::GetInputSizeInfo The GetInputSizeInfo method retrieves the buffer requirements for a specified input stream. |
IMediaObject::GetInputStatus The GetInputStatus method queries whether an input stream can accept more input data. |
IMediaObject::GetInputStreamInfo The GetInputStreamInfo method retrieves information about an input stream, such as any restrictions on the number of samples per buffer, and whether the stream performs lookahead on the input data. This information never changes. |
IMediaObject::GetInputType The GetInputType method retrieves a preferred media type for a specified input stream. |
IMediaObject::GetOutputCurrentType The GetOutputCurrentType method retrieves the media type that was set for an output stream, if any. |
IMediaObject::GetOutputSizeInfo The GetOutputSizeInfo method retrieves the buffer requirements for a specified output stream. |
IMediaObject::GetOutputStreamInfo The GetOutputStreamInfo method retrieves information about an output stream; for example, whether the stream is discardable, and whether it uses a fixed sample size. This information never changes. |
IMediaObject::GetOutputType The GetOutputType method retrieves a preferred media type for a specified output stream. |
IMediaObject::GetStreamCount The GetStreamCount method retrieves the number of input and output streams. |
IMediaObject::Lock The Lock method acquires or releases a lock on the DMO. Call this method to keep the DMO serialized when performing multiple operations. |
IMediaObject::ProcessInput The ProcessInput method delivers a buffer to the specified input stream. |
IMediaObject::ProcessOutput The ProcessOutput method generates output from the current input data. |
IMediaObject::SetInputMaxLatency The SetInputMaxLatency method sets the maximum latency on a specified input stream. For the definition of maximum latency, see IMediaObject::GetInputMaxLatency. |
IMediaObject::SetInputType The SetInputType method sets the media type on an input stream, or tests whether a media type is acceptable. |
IMediaObject::SetOutputType The SetOutputType method sets the media type on an output stream, or tests whether a media type is acceptable. |
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | mediaobj.h (include Dmo.h) |