Método CBasePin.TryMediaTypes

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

Dado una lista de tipos de medios, el TryMediaTypes método intenta completar una conexión mediante uno de esos tipos.

Sintaxis

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

Parámetros

pReceivePin

Puntero a la interfaz IPin del pin receptor.

Pmt

Puntero a un objeto CMediaType que limita los posibles tipos de medios o NULL.

pEnum

Puntero a una interfaz IEnumMediaTypes , que se usa para enumerar la lista de tipos multimedia.

Valor devuelto

Devuelve un valor HRESULT . Entre los valores posibles se incluyen los de la tabla siguiente.

Código devuelto Descripción
S_OK
Correcto.
VFW_E_NO_ACCEPTABLE_TYPES
No encontró un tipo de medio aceptable.

Observaciones

Para cada tipo de medio devuelto por la interfaz IEnumMediaTypes , este método intenta una conexión llamando al método CBasePin::AttemptConnection .

Si el parámetro pmt no es NULL, el pin omite los tipos multimedia que no coinciden con este tipo. El parámetro pmt puede especificar un tipo de medio parcial. Un tipo de medio parcial tiene un valor de GUID_NULL para el tipo principal, el subtipo o el formato. El valor de GUID_NULL coincide con cualquier tipo, similar a un valor "comodín".

Requisitos

Requisito Value
Encabezado
Amfilter.h (include Streams.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Consulte también

CBasePin (clase)