Microsoft DirectShow 9.0


The EnumMediaTypes method enumerates the pin's preferred media types. This method implements the IPin::EnumMediaTypes method.


  HRESULT EnumMediaTypes(
    IEnumMediaTypes **ppEnum



Address of a variable that receives a pointer to the IEnumMediaTypes interface.

Return Value

Returns an HRESULT value. Possible values include those in the following table.

Value Description
S_OK Success.
E_OUTOFMEMORY Insufficient memory.
E_POINTER NULL pointer argument.


Input pins are not required to enumerate any preferred types. Output pins must enumerate at least one preferred type. Otherwise, both pins could lack a preferred type, making a connection impossible.

The IEnumMediaTypes interface works like a standard COM enumerator. For more information, see Enumerating Objects in a Filter Graph. If the method succeeds, the IEnumMediaTypes interface has an outstanding reference count. Be sure to release it when you are done.

The CEnumMediaTypes base class implements IEnumMediaTypes. It calls the pin's CBasePin::GetMediaType method to enumerate the media types.


**  Header:** Declared in Amfilter.h; include Streams.h.

**  Library:** Use Strmbase.lib (retail builds) or Strmbasd.lib (debug builds).

See Also