Share via


CBasePin::TryMediaTypes (Compact 2013)

3/26/2014

Determines a media type for a pin connection.

Syntax

virtual HRESULT TryMediaTypes(
  IPin* pReceivePin,
  const CMediaType* pmt,
  IEnumMediaTypes* pEnum
);

Parameters

  • pReceivePin
    Pointer to the IPin interface of the receiving pin.
  • pmt
    Pointer to a returned media type.

Return Value

Returns an HRESULT value, which can include the following.

Value

Description

FAILED

Resetting of the enumerator failed.

NOERROR

Media type found.

VFW_E_NO_ACCEPTABLE_TYPES

No acceptable media types were found.

Remarks

Given an enumerator, this member function cycles through all media types proposed by the enumerator.

Each type is suggested to the derived pin class and, if acceptable, is tried with the connected pin in a call to the IPin::ReceiveConnection method.

This means that if the owning pin proposes a media type, it is still checked to determine whether it is supported. This is deliberate so that, in simple cases, the enumerator can hold all media types, even if some are not currently available.

This member function is protected.

Requirements

Header

dshow.h,
Streams.h

Library

ole32.lib,
Ole32auth.lib,
Strmbase.lib,
Strmiids.lib,
uuid.lib

See Also

Reference

CBasePin Class