fonction acmStreamConvert (msacm.h)
La fonction acmStreamConvert demande à ACM d’effectuer une conversion sur le flux de conversion spécifié. Une conversion peut être synchrone ou asynchrone, selon la façon dont le flux a été ouvert.
Syntaxe
MMRESULT ACMAPI acmStreamConvert(
HACMSTREAM has,
LPACMSTREAMHEADER pash,
DWORD fdwConvert
);
Paramètres
has
Gérez le flux de conversion ouvert.
pash
Pointeur vers un en-tête de flux qui décrit les mémoires tampons source et de destination pour une conversion. Cet en-tête doit avoir été préparé précédemment à l’aide de la fonction acmStreamPrepareHeader .
fdwConvert
Indicateurs pour effectuer la conversion. Les valeurs suivantes sont définies.
Valeur | Signification |
---|---|
ACM_STREAMCONVERTF_BLOCKALIGN | Seuls les nombres intégraux de blocs seront convertis. Les données converties se terminent sur les limites alignées sur les blocs. Une application doit utiliser cet indicateur pour toutes les conversions sur un flux jusqu’à ce qu’il n’y ait pas suffisamment de données sources pour convertir en destination alignée sur les blocs. Dans ce cas, la dernière conversion doit être spécifiée sans cet indicateur. |
ACM_STREAMCONVERTF_END | Le flux de conversion ACM doit commencer à renvoyer les données instance en attente. Par exemple, si un flux de conversion contient instance données, telles que la fin d’une opération de filtre d’écho, cet indicateur entraîne le début du retour de ces données restantes avec des données sources facultatives. Cet indicateur peut être spécifié avec l’indicateur ACM_STREAMCONVERTF_START. |
ACM_STREAMCONVERTF_START | Le flux de conversion ACM doit réinitialiser ses données instance. Par exemple, si un flux de conversion contient des données instance, telles que des informations delta ou prédictives, cet indicateur restaure le flux à des valeurs par défaut de démarrage. Cet indicateur peut être spécifié avec l’indicateur ACM_STREAMCONVERTF_END. |
Valeur retournée
Retourne zéro en cas de réussite ou d’erreur dans le cas contraire. Les valeurs d’erreur possibles sont les suivantes.
Code de retour | Description |
---|---|
|
L’en-tête de flux spécifié dans pash est actuellement utilisé et ne peut pas être réutilisé. |
|
L’en-tête de flux spécifié dans pash n’est actuellement pas préparé par la fonction acmStreamPrepareHeader . |
|
Au moins un indicateur n’est pas valide. |
|
Le handle spécifié n’est pas valide. |
|
Au moins un paramètre n’est pas valide. |
Notes
Vous devez utiliser la fonction acmStreamPrepareHeader pour préparer les mémoires tampons source et de destination avant qu’elles ne soient transmises à acmStreamConvert.
Si une demande de conversion asynchrone est correctement mise en file d’attente par ACM ou le pilote et que la conversion est ultérieurement jugée impossible, la structure ACMSTREAMHEADER est renvoyée à la fonction de rappel de l’application avec le membre cbDstLengthUsed défini sur zéro.
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] |
Plateforme cible | Windows |
En-tête | msacm.h |
Bibliothèque | Msacm32.lib |
DLL | Msacm32.dll |