Taille de la mémoire tampon de sortie

La méthode IMiniport::D ataRangeIntersection du pilote miniport copie la structure qui spécifie le format de données négocié dans une mémoire tampon allouée par l’appelant. Le paramètre OutputBufferLength de la méthode spécifie la taille de la mémoire tampon en octets. Notez que la taille de la structure de format varie selon le format sélectionné. Pour éviter d’écrire au-delà de la fin de la mémoire tampon, la méthode DataRangeIntersection doit d’abord vérifier que la mémoire tampon allouée est suffisamment grande pour contenir le format.

Pour un format mono ou stéréo, la taille minimale de la mémoire tampon de sortie est sizeof(KSDATAFORMAT_WAVEFORMATEX) ou sizeof(KSDATAFORMAT_DSOUND), selon qu’un format WAVEFORMATEX ou DirectSound a été sélectionné.

Si le format d’onde prend en charge plus de deux canaux, la structure WAVEFORMATEX incorporée à la fin de la structureKSDATAFORMAT_WAVEFORMATEX se développe pour occuper un nombre supplémentaire d’octets égal à la différence

sizeof(WAVEFORMATEXTENSIBLE) - sizeof(WAVEFORMATEX)