Spécificités des clients waveOut
Un appel à waveOutOpen retourne WAVERR_BADFORMAT si un pilote ne prend pas en charge le format d’onde spécifié.
Microsoft Windows ne prend pas actuellement en charge la boucle d’un en-tête de vague avec un format non PCM. Une tentative de boucle d’un format non PCM échoue, mais le système ne détecte l’échec qu’à l’étape header-submittal (et non header-preparation) en raison de contraintes architecturales. Plus précisément, un appel à waveOutPrepareHeader peut accepter un en-tête d’onde non-PCM avec WHDR_BEGINLOOP et/ou WHDR_ENDLOOP définis dans dwFlags, mais un appel ultérieur à waveOutWrite échoue et retourne MMSYSERR_INVALPARAM. Si WHDR_BEGINLOOP et WHDR_ENDLOOP ne sont pas définis dans dwFlags, toutefois, la spécification de dwLoops>1 n’entraîne pas l’échec de waveOutWrite .
Lorsque des données non PCM sont lues, un appel à waveOutBreakLoop échoue avec le code de retour MMSYSERR_INVALPARAM.