Метод IMFMediaType::IsEqual (mfobjects.h)
Сравнивает два типа мультимедиа и определяет, идентичны ли они. Если они не идентичны, метод указывает, чем отличаются два формата.
Синтаксис
HRESULT IsEqual(
[in] IMFMediaType *pIMediaType,
[out] DWORD *pdwFlags
);
Параметры
[in] pIMediaType
Указатель на интерфейс IMFMediaType для сравниваемого типа носителя.
[out] pdwFlags
Получает побитовое значение ИЛИ , равное нулю или большему значению флагов, указывающее степень сходства между двумя типами мультимедиа. Определены следующие флаги.
Значение | Значение |
---|---|
|
Основные типы одинаковы. Основной тип задается атрибутом MF_MT_MAJOR_TYPE . |
|
Подтипы совпадают, либо ни один из типов мультимедиа не имеет подтипа. Подтип задается атрибутом MF_MT_SUBTYPE . |
|
Атрибуты в одном из типов мультимедиа являются подмножеством атрибутов в другом, и значения этих атрибутов совпадают, за исключением значений атрибутов MF_MT_USER_DATA, MF_MT_FRAME_RATE_RANGE_MIN и MF_MT_FRAME_RATE_RANGE_MAX .
В частности, метод принимает тип носителя с меньшим количеством атрибутов и проверяет, присутствует ли каждый атрибут этого типа в другом типе мультимедиа и имеет ли то же значение (не включая MF_MT_USER_DATA, MF_MT_FRAME_RATE_RANGE_MIN и MF_MT_FRAME_RATE_RANGE_MAX). Для выполнения других сравнений используйте метод IMFAttributes::Compare . Например, метод Compare может проверить наличие идентичных атрибутов или проверить пересечение двух наборов атрибутов. Дополнительные сведения см. в разделе MF_ATTRIBUTES_MATCH_TYPE. |
|
Пользовательские данные идентичны или ни одно из типов мультимедиа не содержит пользовательские данные. Данные пользователя задаются атрибутом MF_MT_USER_DATA . |
Возвращаемое значение
Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Типы не равны. Изучите параметр pdwFlags , чтобы определить, чем отличаются типы. |
|
Типы равны. |
|
Один или оба типа мультимедиа недопустимы. |
Комментарии
Оба типа мультимедиа должны иметь основной тип, иначе метод возвращает E_INVALIDARG.
Если метод выполнен успешно и все флаги сравнения заданы в pdwFlags, возвращаемое значение будет S_OK. Если метод выполняется успешно, но один или несколько флагов сравнения не заданы, метод возвращает S_FALSE.
Этот интерфейс доступен на следующих платформах, если установлены распространяемые компоненты пакета SDK формата 11 для Windows Media:
- Windows XP с пакетом обновления 2 (SP2) и более поздних версий.
- Windows XP Media Center Edition 2005 с установленным KB900325 (Windows XP Media Center Edition 2005) и KB925766 (накопительный пакет обновления для Windows XP Media Center Edition за октябрь 2006 г.).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | mfobjects.h (включая Mfidl.h) |
Библиотека | Mfuuid.lib |