GUID de sous-type de vidéo
Les GUID de sous-type vidéo suivants sont définis dans le fichier d’en-tête mfapi.h. Pour spécifier le sous-type, définissez l’attribut MF_MT_SUBTYPE sur le type de média.
Lorsque ces sous-types sont utilisés, définissez l’attribut MF_MT_MAJOR_TYPE sur MFMediaType_Video.
- Formats RVB non compressés
- Formats YUV : 8 bits et palettized
- Formats YUV : 10 bits et 16 bits
- Formats de luminance et de profondeur
- Types vidéo encodés
- Création de GUID de sous-type à partir de valeurs FOURCC et D3DFORMAT
- Rubriques connexes
Formats RVB non compressés
GUID | Description |
---|---|
MFVideoFormat_RGB8 | RVB, 8 bits par pixel (bpp). (Même disposition de mémoire que D3DFMT_P8.) |
MFVideoFormat_RGB555 | RVB 555, 16 bpp. (Même disposition de mémoire que D3DFMT_X1R5G5B5.) |
MFVideoFormat_RGB565 | RVB 565, 16 bpp. (Même disposition de mémoire que D3DFMT_R5G6B5.) |
MFVideoFormat_RGB24 | RVB, 24 bpp. |
MFVideoFormat_RGB32 | RVB, 32 bpp. |
MFVideoFormat_ARGB32 | RVB, 32 bpp avec canal alpha. |
MFVideoFormat_A2R10G10B10 | RVB, 10 bpp pour chaque couleur et 2 bpp pour alpha. (Même disposition de mémoire que D3DFMT_A2B10G10R10) |
MFVideoFormat_A16B16G16R16F | RVB, 16 bpp avec canal alpha. (Même disposition de mémoire que D3DFMT_A16B16G16R16F) |
Notes
Ces sous-types ne correspondent pas aux GUID de sous-type RVB utilisés dans les sdk précédents, tels que DirectShow.
Formats YUV : 8 bits et palettized
GUID | Format | échantillonnage | Emballé ou planaire | Bits par canal |
---|---|---|---|---|
MFVideoFormat_AI44 | AI44 | 4:4:4 | Emballé | Palettisé |
MFVideoFormat_AYUV | AYUV | 4:4:4 | Emballé | 8 |
MFVideoFormat_I420 | I420 | 4:2:0 | Planar | 8 |
MFVideoFormat_IYUV | IYUV | 4:2:0 | Planar | 8 |
MFVideoFormat_NV11 | NV11 | 4:1:1 | Planar | 8 |
MFVideoFormat_NV12 | NV12 | 4:2:0 | Planar | 8 |
MFVideoFormat_NV21 | NV21 | 4:2:0 | Planar | 8 |
MFVideoFormat_UYVY | UYVY | 4:2:2 | Emballé | 8 |
MFVideoFormat_Y41P | Y41P | 4:1:1 | Emballé | 8 |
MFVideoFormat_Y41T | Y41T | 4:1:1 | Emballé | 8 |
MFVideoFormat_Y42T | Y42T | 4:2:2 | Emballé | 8 |
MFVideoFormat_YUY2 | YUY2 | 4:2:2 | Emballé | 8 |
MFVideoFormat_YVU9 | YVU9 | 8:4:4 | Planar | 9 |
MFVideoFormat_YV12 | YV12 | 4:2:0 | Planar | 8 |
MFVideoFormat_YVYU | YVYU | 4:2:2 | Emballé | 8 |
Les formats YUV recommandés sont décrits en détail dans la rubrique Formats YUV 8 bits recommandés pour le rendu vidéo.
Notes
I420 et IYUV ont la même disposition en mémoire, mais se voient attribuer des GUID de sous-type distincts. Les GUID de sous-type correspondent aux codes FOURCC « I420 » et « IYUV » ; Pour plus d’informations, consultez Vidéo FOURCCs .
Formats YUV : 10 bits et 16 bits
GUID | Format | échantillonnage | Emballé ou planaire | Bits par canal |
---|---|---|---|---|
MFVideoFormat_P010 | P010 | 4:2:0 | Planar | 10 |
MFVideoFormat_P016 | P016 | 4:2:0 | Planar | 16 |
MFVideoFormat_P210 | P210 | 4:2:2 | Planar | 10 |
MFVideoFormat_P216 | P216 | 4:2:2 | Planar | 16 |
MFVideoFormat_v210 | V210 | 4:2:2 | Emballé | 10 |
MFVideoFormat_v216 | v216 | 4:2:2 | Emballé | 16 |
MFVideoFormat_v410 | v40 | 4:4:4 | Emballé | 10 |
MFVideoFormat_Y210 | Y210 | 4:2:2 | Emballé | 10 |
MFVideoFormat_Y216 | Y216 | 4:2:2 | Emballé | 16 |
MFVideoFormat_Y410 | Y40 | 4:4:4 | Emballé | 10 |
MFVideoFormat_Y416 | Y416 | 4:4:4 | Emballé | 16 |
Pour plus d’informations sur ces formats, consultez Formats vidéo YUV 10 bits et 16 bits.
Formats de luminance et de profondeur
GUID | Description |
---|---|
MFVideoFormat_L8 | Luminance 8 bits uniquement. (bpp). (Même disposition de mémoire que D3DFMT_L8.) |
MFVideoFormat_L16 | Luminance 16 bits uniquement. (Même disposition de mémoire que D3DFMT_L16.) |
MFVideoFormat_D16 | Profondeur de la mémoire tampon z 16 bits. (Même disposition de mémoire que D3DFMT_D16.) |
Types vidéo encodés
GUID | FOURCC | Description |
---|---|---|
MFVideoFormat_DV25 | 'dv25' | DVCPRO 25 (525-60 ou 625-50). |
MFVideoFormat_DV50 | 'dv50' | DVCPRO 50 (525-60 ou 625-50). |
MFVideoFormat_DVC | 'dvc ' | Vidéo DVC/DV. |
MFVideoFormat_DVH1 | 'dvh1' | DVCPRO 100 (1080/60i, 1080/50i ou 720/60P). |
MFVideoFormat_DVHD | 'dvhd' | HD-DVCR (1125-60 ou 1250-50). |
MFVideoFormat_DVSD | 'dvsd' | SDL-DVCR (525-60 ou 625-50). |
MFVideoFormat_DVSL | 'dvsl' | SD-DVCR (525-60 ou 625-50). |
MFVideoFormat_H263 | 'H263' | Vidéo H.263. |
MFVideoFormat_H264 | 'H264' | Vidéo H.264. Les exemples multimédias contiennent des données de flux de bits H.264 avec des codes de démarrage et ont entrelacé SPS/PPS. Chaque exemple contient une image complète, soit un champ, soit un cadre. |
MFVideoFormat_H265 | 'H265' | Vidéo H.265. |
MFVideoFormat_H264_ES | Non applicable | Flux élémentaire H.264. Ce type de média est identique à MFVideoFormat_H264, sauf que les exemples multimédias contiennent un flux de bits H.264 fragmenté. Chaque exemple peut contenir une image partielle ; plusieurs images complètes; ou une ou plusieurs images complètes plus une image partielle. |
MFVideoFormat_HEVC | 'HEVC' | Profil principal HEVC et profil Image fixe principale. Chaque exemple contient une image complète. Pris en charge dans Windows 8.1 et versions ultérieures. Flux élémentaire du profil principal HEVC et du profil Main Still Picture. |
MFVideoFormat_HEVC_ES | 'HEVS' | Ce type de média est identique à MFVideoFormat_HEVC, sauf que les exemples multimédias contiennent un flux de bits HEVC fragmenté. Chaque exemple peut contenir une image partielle ; plusieurs images complètes; ou une ou plusieurs images complètes plus une image partielle. Pris en charge dans Windows 8.1 et versions ultérieures. |
MFVideoFormat_M4S2 | 'M4S2' | Vidéo MPEG-4 partie 2. |
MFVideoFormat_MJPG | 'MJPG' | Mouvement JPEG. |
MFVideoFormat_MP43 | 'MP43' | Codec Microsoft MPEG 4 version 3. Ce codec n’est plus pris en charge. |
MFVideoFormat_MP4S | 'MP4S' | Codec ISO MPEG 4 version 1. |
MFVideoFormat_MP4V | 'MP4V' | Vidéo MPEG-4 partie 2. |
MFVideoFormat_MPEG2 | Non applicable | Vidéo MPEG-2. (Équivalent à MEDIASUBTYPE_MPEG2_VIDEO dans DirectShow.) |
MFVideoFormat_VP80 | 'MPG1' | Vidéo VP8. |
MFVideoFormat_VP90 | 'MPG1' | Vidéo VP9. |
MFVideoFormat_MPG1 | 'MPG1' | Vidéo MPEG-1. |
MFVideoFormat_MSS1 | 'MSS1' | Codec d’écran Windows Media version 1. |
MFVideoFormat_MSS2 | 'MSS2' | Codec d’écran Windows Media Video 9. |
MFVideoFormat_WMV1 | 'WMV1' | Codec Vidéo Windows Media version 7. |
MFVideoFormat_WMV2 | 'WMV2' | Codec Windows Media Video 8. |
MFVideoFormat_WMV3 | 'WMV3' | Codec Windows Media Video 9. |
MFVideoFormat_WVC1 | 'WVC1' | SMPTE 421M (« VC-1 »). |
MFVideoFormat_420O | '420O' | Vidéo YUV 4:2:0 planaire 8 bits par canal. |
MFVideoFormat_AV1 | 'AV01' | Vidéo AV1. |
Création de GUID de sous-type à partir de valeurs FOURCC et D3DFORMAT
Les formats vidéo sont souvent représentés par des valeurs FOURCCs ou D3DFORMAT . Une plage de GUID est réservée pour représenter ces valeurs en tant que sous-types. Ces GUID ont la forme XXXXXXXX-0000-0010-8000-00AA00389B71
, où XXXXXXXX
est le code FOURCC de 4 octets ou la valeur D3DFORMAT .
Si un format vidéo a une valeur FOURCC ou D3DFORMAT associée, vous pouvez créer le GUID de sous-type correspondant comme suit : Commencez par la constante MFVideoFormat_Base et remplacez le premier DWORD du GUID par la valeur vidéo FOURCC ou D3DFORMAT . Vous pouvez utiliser la macro DEFINE_MEDIATYPE_GUID à cet effet.
Notes
DirectShow utilise également ce système pour la plupart des sous-types vidéo, mais pas pour les formats RVB non compressés. Par conséquent, les sous-types RVB dans DirectShow ne correspondent pas aux sous-types RVB dans Media Foundation.
L’énumération D3DFORMAT est définie dans le fichier d’en-tête d3d9types.h. Le tableau suivant montre les formats RVB non compressés les plus courants et la valeur D3DFORMAT correspondante.
Format RVB | Valeur D3DFORMAT |
---|---|
RVB 32 bits | D3DFMT_X8R8G8B8 |
RVB 32 bits avec canal alpha | D3DFMT_A8R8G8B8 |
RVB 24 bits | D3DFMT_R8G8B8 |
RVB 555 (RVB 16 bits) | D3DFMT_X1R5G5B5 |
RVB 555 avec canal alpha | D3DFMT_A1R5G5B5 |
RVB 565 (RVB 16 bits) | D3DFMT_R5G6B5 |
RVB palettisé 8 bits | D3DFMT_P8 |
A2 R10 G10 B10 (RVB 32 bits avec canal alpha ; 10 bits par canal RVB) | D3DFMT_A2R10G10B10 |
A2 B10 G10 R10 (RVB 32 bits avec canal alpha ; 10 bits par canal RVB) | D3DFMT_A2B10G10R10 |
Luminance 8 bits uniquement. | D3DFMT_L8 |
Luminance 16 bits uniquement. | D3DFMT_L16 |
Profondeur de la mémoire tampon z 16 bits | D3DFMT_D16 |
Pour plus d’informations sur FOURCCs, consultez Vidéo FOURCCs.
Rubriques connexes