Идентификаторы GUID для подтипов видео
Следующие идентификаторы GUID подтипа видео определены в файле заголовка mfapi.h. Чтобы указать подтип, задайте атрибут MF_MT_SUBTYPE для типа носителя.
При использовании этих подтипов задайте для атрибута MF_MT_MAJOR_TYPEзначение MFMediaType_Video.
- Несжатые форматы RGB
- Форматы YUV: 8-разрядные и палеттизированные
- Форматы YUV: 10- и 16-разрядные
- Форматы яркости и глубины
- Закодированные типы видео
- Создание идентификаторов GUID подтипов из значений FOURCCs и D3DFORMAT
- Связанные темы
Несжатые форматы 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 б/с. |
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 | версия 40 | 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 и профиль основного рисунка. Каждый пример содержит одну полную картину. Поддерживается в Windows 8.1 и более поздних версиях. Базовый поток профиля HEVC Main и Main Still Picture profile. |
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 версии 3. Этот кодек больше не поддерживается. |
MFVideoFormat_MP4S | 'MP4S' | Кодек ISO MPEG 4 версии 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 Screen версии 1. |
MFVideoFormat_MSS2 | MSS2 | Экранный кодек Windows Media Video 9. |
MFVideoFormat_WMV1 | WMV1 | Кодек Windows Media Video версии 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 на video 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 |
Глубина z-буфера 16 бит | D3DFMT_D16 |
Дополнительные сведения о FOURCC см. в разделе Video FOURCCs.
Связанные темы