Compartir a través de


Método IMFMediaType::IsEqual (mfobjects.h)

Compara dos tipos de medios y determina si son idénticos. Si no son idénticos, el método indica cómo difieren los dos formatos.

Sintaxis

HRESULT IsEqual(
  [in]  IMFMediaType *pIMediaType,
  [out] DWORD        *pdwFlags
);

Parámetros

[in] pIMediaType

Puntero a la interfaz IMFMediaType del tipo de medio que se va a comparar.

[out] pdwFlags

Recibe un OR bit a bit de cero o más marcas, lo que indica el grado de similitud entre los dos tipos multimedia. Se definen las marcas siguientes.

Valor Significado
MF_MEDIATYPE_EQUAL_MAJOR_TYPES
0x00000001
Los tipos principales son los mismos. El atributo MF_MT_MAJOR_TYPE especifica el tipo principal.
MF_MEDIATYPE_EQUAL_FORMAT_TYPES
0x00000002
Los subtipos son los mismos o ningún tipo de medio tiene un subtipo. El atributo MF_MT_SUBTYPE especifica el subtipo.
MF_MEDIATYPE_EQUAL_FORMAT_DATA
0x00000004
Los atributos de uno de los tipos multimedia son un subconjunto de los atributos del otro y los valores de estos atributos coinciden, excepto el valor de los atributos MF_MT_USER_DATA, MF_MT_FRAME_RATE_RANGE_MIN y MF_MT_FRAME_RATE_RANGE_MAX atributos.

En concreto, el método toma el tipo de medio con el menor número de atributos y comprueba si cada atributo de ese tipo está presente en el otro tipo de medio y tiene el mismo valor (sin incluir MF_MT_USER_DATA, MF_MT_FRAME_RATE_RANGE_MIN y MF_MT_FRAME_RATE_RANGE_MAX).

Para realizar otras comparaciones, use el método IMFAttributes::Compare . Por ejemplo, el método Compare puede probar atributos idénticos o probar la intersección de los dos conjuntos de atributos. Para obtener más información, consulte MF_ATTRIBUTES_MATCH_TYPE.

MF_MEDIATYPE_EQUAL_FORMAT_USER_DATA
0x00000008
Los datos de usuario son idénticos o ninguno de los tipos multimedia contiene datos de usuario. El atributo MF_MT_USER_DATA especifica los datos de usuario.

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.

Código devuelto Descripción
S_FALSE
Los tipos no son iguales. Examine el parámetro pdwFlags para determinar cómo difieren los tipos.
S_OK
Los tipos son iguales.
E_INVALIDARG
Uno o ambos tipos de medios no son válidos.

Comentarios

Ambos tipos de medios deben tener un tipo principal o el método devuelve E_INVALIDARG.

Si el método se realiza correctamente y todas las marcas de comparación se establecen en pdwFlags, el valor devuelto es S_OK. Si el método se realiza correctamente, pero no se establecen una o varias marcas de comparación, el método devuelve S_FALSE.

Esta interfaz está disponible en las siguientes plataformas si se instalan los componentes redistribuibles del SDK de Windows Media Format 11:

  • Windows XP con Service Pack 2 (SP2) y versiones posteriores.
  • Windows XP Media Center Edition 2005 con KB900325 (Windows XP Media Center Edition 2005) y KB925766 (paquete acumulativo de actualizaciones de octubre de 2006 para Windows XP Media Center Edition) instalado.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado mfobjects.h (include Mfidl.h)
Library Mfuuid.lib

Consulte también

IMFAttributes::Compare

IMFMediaType