Structure ACMSTREAMHEADER (msacm.h)
La structure ACMSTREAMHEADER définit l’en-tête utilisé pour identifier une paire source de conversion ACM et mémoire tampon de destination pour un flux de conversion.
Syntaxe
typedef struct tACMSTREAMHEADER {
DWORD cbStruct;
DWORD fdwStatus;
DWORD_PTR dwUser;
LPBYTE pbSrc;
DWORD cbSrcLength;
DWORD cbSrcLengthUsed;
DWORD_PTR dwSrcUser;
LPBYTE pbDst;
DWORD cbDstLength;
DWORD cbDstLengthUsed;
DWORD_PTR dwDstUser;
DWORD dwReservedDriver[_DRVRESERVED];
} ACMSTREAMHEADER, *PACMSTREAMHEADER, *LPACMSTREAMHEADER;
Membres
cbStruct
Taille, en octets, de la structure ACMSTREAMHEADER . Ce membre doit être initialisé avant que l’application appelle toutes les fonctions de flux ACM à l’aide de cette structure. La taille spécifiée dans ce membre doit être suffisamment grande pour contenir la structure ACMSTREAMHEADER de base.
fdwStatus
Indicateurs donnant des informations sur les mémoires tampons de conversion. Ce membre doit être initialisé à zéro avant que l’application appelle la fonction acmStreamPrepareHeader et ne doit pas être modifié par l’application tant que l’en-tête de flux reste préparé.
Name | Description |
---|---|
|
Défini par l’ACM ou le pilote pour indiquer qu’il a terminé la conversion et retourne les mémoires tampons à l’application. |
|
Défini par l’ACM ou le pilote pour indiquer que les mémoires tampons sont mises en file d’attente pour la conversion. |
|
Défini par aCM pour indiquer que les mémoires tampons ont été préparées à l’aide de la fonction acmStreamPrepareHeader . |
dwUser
Données utilisateur. Il peut s’agir de n’importe quelle instance données spécifiées par l’application.
pbSrc
Pointeur vers la mémoire tampon source. Ce pointeur doit toujours faire référence au même emplacement tant que l’en-tête de flux reste préparé. Si une application doit modifier l’emplacement source, elle doit annuler la préparation de l’en-tête et la préparer à nouveau avec l’autre emplacement.
cbSrcLength
Longueur, en octets, de la mémoire tampon source pointée vers pbSrc. Lorsque l’en-tête est préparé, ce membre doit spécifier la taille maximale qui sera utilisée dans la mémoire tampon source. Les conversions peuvent être effectuées sur des longueurs de source inférieures ou égales à la taille préparée d’origine. Toutefois, ce membre doit être réinitialisé à la taille d’origine lorsqu’une application annule la préparation de l’en-tête.
cbSrcLengthUsed
Quantité de données, en octets, utilisée pour la conversion. Ce membre n’est pas valide tant que la conversion n’est pas terminée. Cette valeur peut être inférieure ou égale à cbSrcLength. Une application doit utiliser le membre cbSrcLengthUsed lors de l’avancement vers l’élément de données source suivant pour le flux de conversion.
dwSrcUser
Données utilisateur. Il peut s’agir de n’importe quelle instance données spécifiées par l’application.
pbDst
Pointeur vers la mémoire tampon de destination. Ce pointeur doit toujours faire référence au même emplacement tant que l’en-tête de flux reste préparé. Si une application doit modifier l’emplacement de destination, elle doit annuler la préparation de l’en-tête et la préparer à nouveau avec l’autre emplacement.
cbDstLength
Longueur, en octets, de la mémoire tampon de destination pointée par pbDst. Lorsque l’en-tête est préparé, ce membre doit spécifier la taille maximale qui sera utilisée dans la mémoire tampon de destination.
cbDstLengthUsed
Quantité de données, en octets, retournée par une conversion. Ce membre n’est pas valide tant que la conversion n’est pas terminée. Cette valeur peut être inférieure ou égale à cbDstLength. Une application doit utiliser le membre cbDstLengthUsed lors de l’avancement vers l’emplacement de destination suivant pour le flux de conversion.
dwDstUser
Données utilisateur. Il peut s’agir de n’importe quelle instance données spécifiées par l’application.
dwReservedDriver[_DRVRESERVED]
Réservé ; ne pas utiliser. Ce membre ne nécessite aucune initialisation par l’application et ne doit jamais être modifié tant que l’en-tête reste préparé.
Notes
Pour qu’une structure ACMSTREAMHEADER puisse être utilisée pour une conversion, elle doit être préparée à l’aide de la fonction acmStreamPrepareHeader . Lorsqu’une application a terminé une structure ACMSTREAMHEADER , elle doit appeler la fonction acmStreamUnprepareHeader avant de libérer les mémoires tampons source et de destination.
Spécifications
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 | msacm.h |
Voir aussi
Gestionnaire de compression audio