Поделиться через


Идентификаторы GUID подтипа видео

В файле заголовка mfapi.h определены следующие идентификаторы guid подтипа видео. Чтобы указать подтип, задайте атрибут MF_MT_SUBTYPE для типа носителя.

При использовании этих подтипов задайте для атрибута MF_MT_MAJOR_TYPE значение MFMediaType_Video.

Несжатые форматы RGB

GUID Описание
MFVideoFormat_RGB8 RGB, 8 бит на пиксель (bpp). (Тот же макет памяти, что и D3DFMT_P8.)
MFVideoFormat_RGB555 RGB 555, 16 bpp. (Тот же макет памяти, что и D3DFMT_X1R5G5B5.)
MFVideoFormat_RGB565 RGB 565, 16 bpp. (Тот же макет памяти, что и D3DFMT_R5G6B5.)
MFVideoFormat_RGB24 RGB, 24 bpp.
MFVideoFormat_RGB32 RGB, 32 bpp.
MFVideoFormat_ARGB32 RGB, 32 bpp с альфа-каналом.
MFVideoFormat_A2R10G10B10 RGB, 10 bpp для каждого цвета и 2 bpp для альфа-канала. (Тот же макет памяти, что и D3DFMT_A2B10G10R10)
MFVideoFormat_A16B16G16R16F RGB, 16 bpp с альфа-каналом. (Тот же макет памяти, что и D3DFMT_A16B16G16R16F)

 

Заметка

Эти подтипы не соответствуют идентификаторам GUID подтипа RGB, используемым в предыдущих пакетах SDK, например DirectShow.

 

Форматы YUV: 8-разрядные и палеттизированные

GUID Формат Выборка Упакован или планар Биты на канал
MFVideoFormat_AI44 AI44 4:4:4 Упакованный Палеттизированный
MFVideoFormat_AYUV AYUV 4:4:4 Упакованный 8
MFVideoFormat_I420 I420 4:2:0 Плоскостной 8
MFVideoFormat_IYUV IYUV 4:2:0 Плоскостной 8
MFVideoFormat_NV11 NV11 4:1:1 Плоскостной 8
MFVideoFormat_NV12 NV12 4:2:0 Плоскостной 8
MFVideoFormat_NV21 NV21 4:2:0 Плоскостной 8
MFVideoFormat_UYVY UYVY 4:2:2 Упакованный 8
MFVideoFormat_Y41P Y41P 4:1:1 Упакованный 8
MFVideoFormat_Y41T Y41T 4:1:1 Упакованный 8
MFVideoFormat_Y42T Y42T 4:2:2 Упакованный 8
MFVideoFormat_YUY2 YUY2 4:2:2 Упакованный 8
MFVideoFormat_YVU9 YVU9 8:4:4 Плоскостной 9
MFVideoFormat_YV12 YV12 4:2:0 Плоскостной 8
MFVideoFormat_YVYU YVYU 4:2:2 Упакованный 8

 

Рекомендуемые форматы YUV подробно описаны в разделе рекомендуемые 8-разрядные форматы YUV дляотрисовки видео.

Заметка

I420 и IYUV имеют одинаковый макет в памяти, но назначаются отдельные идентификаторы guid подтипа. Идентификаторы GUID подтипа соответствуют кодам FOURCC I420 и IYUV; Дополнительные сведения см. в разделе Video FOURCCs.

 

Форматы YUV: 10-разрядная и 16-разрядная

GUID Формат Выборка Упакован или планар Биты на канал
MFVideoFormat_P010 P010 4:2:0 Плоскостной 10
MFVideoFormat_P016 P016 4:2:0 Плоскостной 16
MFVideoFormat_P210 P210 4:2:2 Плоскостной 10
MFVideoFormat_P216 P216 4:2:2 Плоскостной 16
MFVideoFormat_v210 версия 210 4:2:2 Упакованный 10
MFVideoFormat_v216 версия 216 4:2:2 Упакованный 16
MFVideoFormat_v410 v40 4:4:4 Упакованный 10
MFVideoFormat_Y210 Y210 4:2:2 Упакованный 10
MFVideoFormat_Y216 Y216 4:2:2 Упакованный 16
MFVideoFormat_Y410 Y40 4:4:4 Упакованный 10
MFVideoFormat_Y416 Y416 4:4:4 Упакованный 16

 

Дополнительные сведения об этих форматах см. в 10-разрядных и 16-разрядных форматах видео yuV.

Форматы светимости и глубины

GUID Описание
MFVideoFormat_L8 Только 8-разрядная светимость. (bpp). (Тот же макет памяти, что и D3DFMT_L8.)
MFVideoFormat_L16 Только 16-разрядная светимость. (Тот же макет памяти, что и D3DFMT_L16.)
MFVideoFormat_D16 16-разрядная глубина z-буфера. (Тот же макет памяти, что и D3DFMT_D16.)

 

Типы видео в кодировке

GUID FOURCC Описание
MFVideoFormat_DV25 'dv25' DVCPRO 25 (525-60 или 625-50).
MFVideoFormat_DV50 'dv50' DVCPRO 50 (525-60 или 625-50).
MFVideoFormat_DVC 'dvc' Видео DVC/DV.
MFVideoFormat_DVH1 'dvh1' DVCPRO 100 (1080/60i, 1080/50i или 720/60P).
MFVideoFormat_DVHD 'dvhd' HD-DVCR (1125-60 или 1250-50).
MFVideoFormat_DVSD 'dvsd' SDL-DVCR (525-60 или 625-50).
MFVideoFormat_DVSL 'dvsl' SD-DVCR (525-60 или 625-50).
MFVideoFormat_H263 "H263" Видео H.263.
MFVideoFormat_H264 "H264" Видео H.264.
Примеры мультимедиа содержат данные потока H.264 с кодами начала и перемешивает SPS/PPS. Каждый пример содержит один полный рисунок, одно поле или один кадр.
MFVideoFormat_H265 "H265" Видео H.265.
MFVideoFormat_H264_ES Неприменимо Начальный поток H.264.
Этот тип носителя совпадает с MFVideoFormat_H264, за исключением примеров носителей, содержащих фрагментированную битовую передачу H.264. Каждый пример может содержать частичное изображение; несколько полных рисунков; или один или несколько полных рисунков, а также частичное изображение.
MFVideoFormat_HEVC HEVC Основной профиль HEVC и профиль main Still Picture.
Каждый пример содержит один полный рисунок.
Поддерживается в Windows 8.1 и более поздних версиях. Основной профиль HEVC и основной профиль "По-прежнему рисунок".
MFVideoFormat_HEVC_ES "HEVS" Этот тип носителя совпадает с MFVideoFormat_HEVC, кроме примеров носителей, содержащих фрагментированные битовые потоки HEVC. Каждый пример может содержать частичное изображение; несколько полных рисунков; или один или несколько полных рисунков, а также частичное изображение.
Поддерживается в Windows 8.1 и более поздних версиях.
MFVideoFormat_M4S2 "M4S2" MPEG-4 часть 2 видео.
MFVideoFormat_MJPG "MJPG" Перемещение JPEG.
MFVideoFormat_MP43 MP43 Microsoft MPEG 4 codec версии 3. Этот кодек больше не поддерживается.
MFVideoFormat_MP4S MP4S ISO MPEG 4 codec версии 1.
MFVideoFormat_MP4V MP4V MPEG-4 часть 2 видео.
MFVideoFormat_MPEG2 Неприменимо ВИДЕО MPEG-2. (Эквивалентно MEDIASUBTYPE_MPEG2_VIDEO в DirectShow.)
MFVideoFormat_VP80 MPG1 Видео VP8.
MFVideoFormat_VP90 MPG1 Видео VP9.
MFVideoFormat_MPG1 MPG1 ВИДЕО MPEG-1.
MFVideoFormat_MSS1 MSS1 Кодек экрана Windows Media версии 1.
MFVideoFormat_MSS2 "MSS2" Кодек экрана Windows Media Video 9.
MFVideoFormat_WMV1 WMV1 Видеокодек Windows Media версии 7.
MFVideoFormat_WMV2 WMV2 Кодек Windows Media Video 8.
MFVideoFormat_WMV3 WMV3 Кодек Windows Media Video 9.
MFVideoFormat_WVC1 WVC1 SMPTE 421M ("VC-1").
MFVideoFormat_420O '420O' 8-разрядное видео на планарный канал YUV 4:2:0 видео.
MFVideoFormat_AV1 Av01 Видео AV1.

 

Создание идентификаторов GUID подтипа из FOURCCs и значений D3DFORMAT

Форматы видео часто представлены значениями FOURCCs или D3DFORMAT. Диапазон идентификаторов GUID зарезервирован для представления этих значений в виде подтипов. Эти идентификаторы GUID имеют форму XXXXXXXX-0000-0010-8000-00AA00389B71, где XXXXXXXX является кодом 4-байтов FOURCC или значением D3DFORMAT.

Если в формате видео имеется связанное значение FOURCC или D3DFORMAT, можно создать соответствующий GUID подтипа следующим образом: начните с константы MFVideoFormat_Base и замените первую DWORD GUID видео FOURCC или значение D3DFORMAT. Для этого можно использовать макрос DEFINE_MEDIATYPE_GUID.

Заметка

DirectShow также использует эту систему для большинства подтипов видео, но не для несжатых форматов RGB. Поэтому подтипы RGB в DirectShow не соответствуют подтипам RGB в Media Foundation.

 

Перечисление D3DFORMAT определяется в файле заголовка d3d9types.h. В следующей таблице показаны наиболее распространенные несжатые форматы RGB и соответствующее D3DFORMAT значение.

Формат RGB значение D3DFORMAT
32-разрядная RGB D3DFMT_X8R8G8B8
32-разрядная RGB с альфа-каналом D3DFMT_A8R8G8B8
24-разрядная RGB D3DFMT_R8G8B8
RGB 555 (16-разрядная RGB) D3DFMT_X1R5G5B5
RGB 555 с альфа-каналом D3DFMT_A1R5G5B5
RGB 565 (16-разрядная RGB) D3DFMT_R5G6B5
8-разрядный палеттизированный RGB D3DFMT_P8
A2 R10 G10 B10 (32-разрядная RGB с альфа-каналом; 10 бит на канал RGB) D3DFMT_A2R10G10B10
A2 B10 G10 R10 (32-разрядная RGB с альфа-каналом; 10 бит на канал RGB) D3DFMT_A2B10G10R10
Только 8-разрядная светимость. D3DFMT_L8
Только 16-разрядная светимость. D3DFMT_L16
16-разрядная глубина z-буфера D3DFMT_D16

 

Дополнительные сведения о FOURCCs см. в разделе Video FOURCCs.

МВФMediaType

идентификаторы guid типа мультимедиа

MF_MT_SUBTYPE

Типы носителей

Типы мультимедиа видео