Méthode IAudioOutputEndpointRT ::ReleaseOutputDataPointer (audioengineendpoint.h)

La méthode ReleaseOutputDataPointer libère le pointeur vers la mémoire tampon de sortie.

Syntaxe

void ReleaseOutputDataPointer(
  [in] const APO_CONNECTION_PROPERTY *pConnectionProperty
);

Paramètres

[in] pConnectionProperty

Pointeur vers une structure APO_CONNECTION_PROPERTY . Les valeurs de la structure ne doivent pas être modifiées. L’appelant définit les membres comme suit :

  • pBuffer est défini sur le pointeur vers la mémoire tampon de données de sortie retournée par la méthode IAudioOutputEndpointRT ::GetOutputDataPointer .
  • u32ValidFrameCount est défini sur le nombre réel d’images qui ont été générées par le moteur audio. La valeur peut ne pas être identique au nombre d’images passé dans le paramètre u32FrameCount de la méthode GetOutputDataPointer .
  • u32BufferFlags a la valeur BUFFER_VALID si la mémoire tampon de sortie pointée par le membre pBuffer contient des données valides. u32BufferFlags a la valeur BUFFER_SILENT si la mémoire tampon de sortie contient uniquement des données silencieuses. Les données contenues dans la mémoire tampon n’ont pas besoin d’être silencieuses, mais la mémoire tampon spécifiée dans le membre pBuffer doit être capable de contenir toutes les images de silence contenues dans le membre u32ValidFrameCount . Par conséquent, si BUFFER_SILENT est spécifié, le point de terminaison doit écrire le silence dans la mémoire tampon de sortie.

Valeur de retour

None

Remarques

ReleaseOutputDataPointer avertit le point de terminaison que le moteur audio a terminé la tâche d’écriture des données dans la mémoire tampon de sortie et n’a plus besoin du pointeur de données. Cette méthode relaye également des informations telles que la durée qui correspond aux exemples audio dans la mémoire tampon de sortie, le nombre d’images générées par le moteur audio et si la mémoire tampon est remplie de données valides ou de données de silence. Sur la base de ces informations, un point de terminaison qui représente une mémoire tampon bouclée et qui est attaché à la sortie du moteur audio peut faire avancer sa position d’écriture dans la mémoire tampon. La valeur zéro dans le paramètre u32FrameCount de la méthode GetOutputDataPointer indique que le moteur audio n’a pas écrit de données valides dans la mémoire tampon de sortie. La valeur du paramètre u32FrameCount doit être inférieure ou égale au nombre d’images spécifié dans GetOutputDataPointer. Le point de terminaison ne doit pas supposer que toutes les données demandées par GetOutputDataPointer ont été réellement générées.

Cette méthode peut être appelée à partir d’un thread de traitement en temps réel. L’implémentation de cette méthode ne doit pas bloquer, accéder à la mémoire paginée ou appeler des routines système bloquantes.

L’API AudioEndpoint des services Bureau à distance est destinée aux scénarios Bureau à distance ; il ne s’agit pas d’applications clientes.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7
Serveur minimal pris en charge Windows Server 2008 R2
Plateforme cible Windows
En-tête audioengineendpoint.h

Voir aussi

IAudioOutputEndpointRT