Structure AVISTREAMINFOW (vfw.h)
La structure AVISTREAMINFO contient des informations pour un seul flux.
Syntaxe
typedef struct _AVISTREAMINFOW {
DWORD fccType;
DWORD fccHandler;
DWORD dwFlags;
DWORD dwCaps;
WORD wPriority;
WORD wLanguage;
DWORD dwScale;
DWORD dwRate;
DWORD dwStart;
DWORD dwLength;
DWORD dwInitialFrames;
DWORD dwSuggestedBufferSize;
DWORD dwQuality;
DWORD dwSampleSize;
RECT rcFrame;
DWORD dwEditCount;
DWORD dwFormatChangeCount;
WCHAR szName[64];
} AVISTREAMINFOW, *LPAVISTREAMINFOW;
Membres
fccType
Code à quatre caractères indiquant le type de flux. Les constantes suivantes ont été définies pour les données couramment trouvées dans les flux AVI :
Constant | Description |
---|---|
|
Indique un flux audio. |
|
Indique un flux MIDI. |
|
Indique un flux de texte. |
|
Indique un flux vidéo. |
fccHandler
Code à quatre caractères du gestionnaire de compresseur qui compresse ce flux vidéo lors de son enregistrement (par exemple, mmioFOURCC ('M','S','V','C')). Ce membre n’est pas utilisé pour les flux audio.
dwFlags
Indicateurs applicables pour le flux. Les bits dans le mot d’ordre supérieur de ces indicateurs sont spécifiques au type de données contenues dans le flux. Les indicateurs suivants sont définis :
dwCaps
Indicateurs de capacité ; actuellement inutilisé.
wPriority
Priorité du flux.
wLanguage
Langue du flux.
dwScale
Échelle de temps applicable au flux. La division de dwRate par dwScale donne le taux de lecture en nombre d’échantillons par seconde.
Pour les flux vidéo, ce taux doit être la fréquence d’images. Pour les flux audio, ce débit doit correspondre à la taille du bloc audio (membre nBlockAlign de la structure WAVEFORMAT ou PCMWAVEFORMAT ), qui pour la modulation de code d’impulsion (PCM) réduit au taux d’échantillonnage.
dwRate
Taux dans un format entier. Pour obtenir le taux dans les échantillons par seconde, divisez cette valeur par la valeur dans dwScale.
dwStart
Numéro d’exemple de la première image du fichier AVI. Les unités sont définies par dwRate et dwScale. Normalement, il s’agit de zéro, mais il peut spécifier un délai pour un flux qui ne démarre pas simultanément avec le fichier.
La version 1.0 des outils AVI ne prend pas en charge une heure de début différente de zéro.
dwLength
Longueur de ce flux. Les unités sont définies par dwRate et dwScale.
dwInitialFrames
Asymétrie audio. Ce membre spécifie la quantité d’asymétrie des données audio avant les images vidéo dans les fichiers entrelacés. En règle générale, il s’agit d’environ 0,75 seconde.
dwSuggestedBufferSize
Taille de mémoire tampon recommandée, en octets, pour le flux. En règle générale, ce membre contient une valeur correspondant au plus grand segment du flux. L’utilisation de la bonne taille de mémoire tampon rend la lecture plus efficace. Utilisez zéro si vous ne connaissez pas la taille de mémoire tampon correcte.
dwQuality
Indicateur de qualité des données vidéo dans le flux. La qualité est représentée par un nombre compris entre 0 et 10 000. Pour les données compressées, cela représente généralement la valeur du paramètre de qualité passé au logiciel de compression. Si la valeur est –1, les pilotes utilisent la valeur de qualité par défaut.
dwSampleSize
Taille, en octets, d’un échantillon de données unique. Si la valeur de ce membre est zéro, la taille des échantillons peut varier et chaque échantillon de données (par exemple, une image vidéo) doit se trouver dans un segment distinct. Une valeur différente de zéro indique que plusieurs échantillons de données peuvent être regroupés en un seul bloc dans le fichier.
Pour les flux vidéo, ce nombre est généralement égal à zéro, bien qu’il puisse être différent de zéro si toutes les trames vidéo ont la même taille. Pour les flux audio, ce nombre doit être le même que le membre nBlockAlign de la structure WAVEFORMAT ou WAVEFORMATEX décrivant l’audio.
rcFrame
Dimensions du rectangle de destination de la vidéo. Les valeurs représentent les coordonnées du coin supérieur gauche, la hauteur et la largeur du rectangle.
dwEditCount
Nombre de fois que le flux a été modifié. Le gestionnaire de flux gère ce nombre.
dwFormatChangeCount
Nombre de fois que le format du flux a changé. Le gestionnaire de flux gère ce nombre.
szName[64]
Chaîne terminée par null contenant une description du flux.
Remarques
Notes
L’en-tête vfw.h définit AVISTREAMINFO comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
En-tête | vfw.h |