structure KS_H264VIDEOINFO (ksmedia.h)
Le KS_H264VIDEOINFO décrit les fonctionnalités d’appareil qui s’appliquent au type de média actuel.
Syntaxe
typedef struct tagKS_H264VIDEOINFO {
WORD wWidth;
WORD wHeight;
WORD wSARwidth;
WORD wSARheight;
WORD wProfile;
BYTE bLevelIDC;
WORD wConstrainedToolset;
DWORD bmSupportedUsages;
WORD bmCapabilities;
DWORD bmSVCCapabilities;
DWORD bmMVCCapabilities;
DWORD dwFrameInterval;
BYTE bMaxCodecConfigDelay;
BYTE bmSupportedSliceModes;
BYTE bmSupportedSyncFrameTypes;
BYTE bResolutionScaling;
BYTE bSimulcastSupport;
BYTE bmSupportedRateControlModes;
WORD wMaxMBperSecOneResolutionNoScalability;
WORD wMaxMBperSecTwoResolutionsNoScalability;
WORD wMaxMBperSecThreeResolutionsNoScalability;
WORD wMaxMBperSecFourResolutionsNoScalability;
WORD wMaxMBperSecOneResolutionTemporalScalability;
WORD wMaxMBperSecTwoResolutionsTemporalScalablility;
WORD wMaxMBperSecThreeResolutionsTemporalScalability;
WORD wMaxMBperSecFourResolutionsTemporalScalability;
WORD wMaxMBperSecOneResolutionTemporalQualityScalability;
WORD wMaxMBperSecTwoResolutionsTemporalQualityScalability;
WORD wMaxMBperSecThreeResolutionsTemporalQualityScalablity;
WORD wMaxMBperSecFourResolutionsTemporalQualityScalability;
WORD wMaxMBperSecOneResolutionTemporalSpatialScalability;
WORD wMaxMBperSecTwoResolutionsTemporalSpatialScalability;
WORD wMaxMBperSecThreeResolutionsTemporalSpatialScalablity;
WORD wMaxMBperSecFourResolutionsTemporalSpatialScalability;
WORD wMaxMBperSecOneResolutionFullScalability;
WORD wMaxMBperSecTwoResolutionsFullScalability;
WORD wMaxMBperSecThreeResolutionsFullScalability;
WORD wMaxMBperSecFourResolutionsFullScalability;
} KS_H264VIDEOINFO, *PKS_H264VIDEOINFO;
Membres
wWidth
Spécifie la largeur en pixels de la sortie des images du processus de décodage.
La valeur de ce membre doit être un multiple de 2, mais elle ne doit pas être un multiple entier de 16. Il peut être spécifié à l’aide d’un rectangle de rognage de trame dans l’ensemble de paramètres de séquence (SPS) actif.
wHeight
Spécifie la hauteur en pixels de la sortie des images du processus de décodage.
La valeur de ce membre doit être un multiple de 2. Lorsque le codage de champ ou le codage adaptatif frame/champ est utilisé, il doit s’agir d’un multiple de 4. Il n’est pas nécessaire qu’il s’agit d’un multiple entier de 16. Il peut être spécifié à l’aide d’un rectangle de rognage de trame dans le SPS actif.
wSARwidth
Spécifie la largeur des proportions de l’échantillon, comme défini dans l’annexe E H.264.
Il doit être relativement premier par rapport à wSARheight.
wSARheight
Spécifie la hauteur des proportions de l’échantillon, telle que définie dans l’annexe E H.264.
Il doit être relativement premier par rapport à bSARwidth.
wProfile
Spécifie les deux premiers octets du jeu de paramètres de séquence, comme décrit par profile_idc et indicateurs de contrainte dans la spécification H.264.
Ce membre indique le profil et les contraintes applicables à utiliser.
Voici des exemples de valeurs autorisées :
Valeur | Description |
---|---|
0x4240 | Profil de base de référence contraint. |
0x4200 | Profil de référence. |
0x4D00 | Profil principal. |
0x6400 | Profil élevé. |
0x5300 | Profil de base de référence scalable. |
0x5600 | Profil élevé scalable. |
0x7600 | Multiview High Profile. |
0x8000 | Stereo High Profile. |
bLevelIDC
Spécifie le niveau décrit par l’indicateur level_idc.
Ce membre indique le niveau minimal qui prend en charge la résolution et la vitesse de transmission maximale pour ce descripteur d’images.
Voici des exemples de valeurs autorisées :
Valeur | Description |
---|---|
0x1F | Niveau 3.1. |
0x28 | Niveau 4.0. |
wConstrainedToolset
Limite les fonctionnalités autorisées par wProfile.
Valeur | Description |
---|---|
0 | Aucune contrainte. Tous les outils définis par l’ensemble wProfile et bmSetting sélectionnés sont autorisés. |
1 | Ensemble d’outils haute contrainte de communication unifiée (UC). |
2 | UC Scalable Constrained High1. |
3 | Uc Scalable Contrainte Baseline1. |
4 à 65535 | Réservé. |
bmSupportedUsages
Définit la bitmap qui spécifie les utilisations prises en charge.
Bits | Description |
---|---|
D0 | Mode temps réel/UCConfig (Unified Communication Configuration) 0. |
D1 | Mode temps réel/UCConfig 1. |
D2 | Mode temps réel/UCConfig 2Q. |
D3 | Mode temps réel/UCConfig 2S. |
D4 | Mode temps réel/UCConfig 3. |
D7-D5 | Réservés au; défini sur 0. |
D15-D8 | Modes de diffusion. |
D16 | Mode de stockage de fichiers avec des tranches I et P (par exemple, IPPP). |
D17 | Mode de stockage de fichiers avec des tranches I, P et B (par exemple, IB... IP). |
D18 | Stockage de fichiers en mode I-frame. |
D23-D19 | Réservés au; défini sur 0. |
D24 | Mode haut stéréo MVC. |
D25 | Mode Multiview MVC. |
D31-D26 | Réservés au; défini sur 0. |
bmCapabilities
Définit la bitmap qui spécifie les fonctionnalités de ce descripteur de frame.
Bits | Description |
---|---|
D0 | Codage CAVLC (Adaptive Variable Length Coding) basé sur le contexte uniquement. |
D1 | Codage arithmétique binaire adaptatif (CABAC) basé sur le contexte uniquement. |
D2 | Fréquence d’images constante. |
D3 | QP séparé pour luma/chroma. |
D4 | QP distinct pour Cb/Cr. |
D5 | Aucune réorganisation d’image. |
D15-D6 | Réservés au; défini sur 0. |
bmSVCCapabilities
Définit la bitmap qui spécifie les fonctionnalités SVC (Scalable Video Coding).
Bits | Description |
---|---|
D2-D0 | Nombre maximal de couches temporelles moins 1. |
D3 | Réécrire la prise en charge. |
D6-D4 | Nombre maximal de couches d’extensibilité à grain grossier (CGS) moins 1. |
D9-D7 | Nombre maximal de sous-couches MGS (Medium Grained Scalability). |
D10 | Prise en charge supplémentaire de l’extensibilité SNR dans les couches d’amélioration spatiale. |
D13-D11 | Nombre maximal de couches spatiales moins 1. |
D31-D14 | Réservé. |
bmMVCCapabilities
Définit la bitmap qui spécifie les fonctionnalités MVC (Multicast Video Coding).
Bits | Description |
---|---|
D2-D0 | Nombre maximal de couches temporelles moins 1. |
D11-D3 | Nombre maximal de composants d’affichage moins 1. |
D31-D11 | Réservé. |
dwFrameInterval
Spécifie l’intervalle de trame pris en charge.
Il s’agit de l’intervalle d’images le plus court pris en charge, à la fréquence d’images la plus élevée, en unités de 100 nanosecondes.
bMaxCodecConfigDelay
Spécifie le nombre maximal d’images que l’encodeur prend pour répondre à une commande.
bmSupportedSliceModes
Définit la bitmap qui spécifie les modes de tranche.
Bits | Description |
---|---|
D0 | Mode tranche 0. |
D1 | Mode tranche 1. |
D7-D2 | Réservé. |
bmSupportedSyncFrameTypes
Définit le membre BYTEbmSupportedSyncFrameTypes.
bResolutionScaling
Définit la bitmap qui spécifie les types de trames de synchronisation.
Bits | Description |
---|---|
D0 | Trame d’actualisation instantanée de décodage (IDR) avec des en-têtes SPS (Sequence Parameter Set) et PPS (Picture Parameter Set). |
D1 | Trame IDR (avec en-têtes SPS et PPS) qui est une trame de référence à long terme. |
D2 | Frame I à accès aléatoire (avec des en-têtes SPS et PPS), qui peut ou non être un frame IDR. |
D3 | Cadre P qui est une trame de référence à long terme. |
D7-D4 | Réservés au; défini sur 0. |
bSimulcastSupport
Spécifie le nombre de points de terminaison de streaming vidéo H.264 et le nombre de flux pris en charge par ce point de terminaison.
Valeur | Description |
---|---|
0 | Un point de terminaison et un flux. |
1 | Un point de terminaison et plusieurs flux. |
bmSupportedRateControlModes
Définit la bitmap qui spécifie les modes de contrôle de débit.
Bits | Description |
---|---|
D0 | Débit binaire variable (VBR) avec sous-débit autorisé (H.264 low_delay_hrd_flag = 1). |
D1 | Débit binaire constant (CBR) (H.264 low_delay_hrd_flag = 0). |
D2 | QP constant. |
D3 | VBR global avec sous-flux autorisé (H.264 low_delay_hrd_flag = 1). |
D4 | VBR sans flux inférieur (H.264 low_delay_hrd_flag = 0). |
D5 | VBR global sans sous-flux (H.264 low_delay_hrd_flag = 0). |
D7-D6 | Réservé, défini sur 0. |
wMaxMBperSecOneResolutionNoScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux AVC (Advanced Video Coding) non évolutifs, en se résumant sur toutes les couches lorsque toutes les couches ont la même résolution.
wMaxMBperSecTwoResolutionsNoScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux AVC non évolutifs, qui se résume à toutes les couches lorsque toutes les couches se composent de deux résolutions différentes.
wMaxMBperSecThreeResolutionsNoScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux AVC non évolutifs, qui se résume à toutes les couches lorsque toutes les couches se composent de trois résolutions différentes.
wMaxMBperSecFourResolutionsNoScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux AVC non évolutifs, qui se résume à toutes les couches lorsque toutes les couches se composent de quatre résolutions différentes.
wMaxMBperSecOneResolutionTemporalScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux évolutifs temporels, qui se résume à toutes les couches lorsque toutes les couches ont la même résolution.
wMaxMBperSecTwoResolutionsTemporalScalablility
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux évolutifs temporels, en se résumant sur toutes les couches lorsque toutes les couches se composent de deux résolutions différentes.
wMaxMBperSecThreeResolutionsTemporalScalability
Spécifie la vitesse de traitement maximale de macrobloc autorisée pour les flux évolutifs temporels, qui se résume à toutes les couches lorsque toutes les couches se composent de trois résolutions différentes.
wMaxMBperSecFourResolutionsTemporalScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux entièrement scalables, qui se résume à toutes les couches lorsque toutes les couches se composent de quatre résolutions différentes.
wMaxMBperSecOneResolutionTemporalQualityScalability
Spécifie le taux de traitement maximal des macroblocs autorisés pour les flux SVC évolutifs temporels et de qualité, additionnant toutes les couches lorsque toutes les couches ont la même résolution.
wMaxMBperSecTwoResolutionsTemporalQualityScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux SVC évolutifs temporels et de qualité, se récapitulant sur toutes les couches lorsque toutes les couches se composent de deux résolutions différentes.
wMaxMBperSecThreeResolutionsTemporalQualityScalablity
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux SVC évolutifs temporels et de qualité, en se résumant sur toutes les couches lorsque toutes les couches se composent de trois résolutions différentes.
wMaxMBperSecFourResolutionsTemporalQualityScalability
Spécifie le taux de traitement maximal de macrobloc autorisé pour les flux SVC évolutifs temporels et de qualité, additionnant toutes les couches lorsque toutes les couches se composent de quatre résolutions différentes.
wMaxMBperSecOneResolutionTemporalSpatialScalability
Définit le membre WORDwMaxMBperSecOneResolutionTemporalSpatialScalability.
wMaxMBperSecTwoResolutionsTemporalSpatialScalability
Définit le membre WORDwMaxMBperSecTwoResolutionsTemporalSpatialScalability.
wMaxMBperSecThreeResolutionsTemporalSpatialScalablity
Définit le membre WORDwMaxMBperSecThreeResolutionsTemporalSpatialScalablity.
wMaxMBperSecFourResolutionsTemporalSpatialScalability
Définit le membre WORDwMaxMBperSecFourResolutionsTemporalSpatialScalability.
wMaxMBperSecOneResolutionFullScalability
Spécifie le taux de traitement maximal de macroblock autorisé pour les flux entièrement évolutifs, en récapitulant toutes les couches lorsque toutes les couches ont la même résolution.
wMaxMBperSecTwoResolutionsFullScalability
Spécifie le taux de traitement maximal de macroblock autorisé pour les flux entièrement évolutifs, en récapitulant toutes les couches lorsque toutes les couches se composent de deux résolutions différentes.
wMaxMBperSecThreeResolutionsFullScalability
Spécifie le taux de traitement maximal de macroblock autorisé pour les flux entièrement évolutifs, en récapitulant toutes les couches lorsque toutes les couches se composent de trois résolutions différentes.
wMaxMBperSecFourResolutionsFullScalability
Spécifie le taux de traitement maximal de macroblock autorisé pour les flux entièrement évolutifs, en récapitulant toutes les couches lorsque toutes les couches se composent de quatre résolutions différentes.
Remarques
La structure KS_H264VIDEOINFO contient les informations relatives au cadre et au descripteur de format.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 |
Serveur minimal pris en charge | Windows Server 2012 |
En-tête | ksmedia.h (inclure Ksmedia.h) |