Partager via


Interface IAMBufferNegotiation (strmif.h)

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

L’interface IAMBufferNegotiation demande le nombre de mémoires tampons pour un filtre à créer et la taille de chaque mémoire tampon. Cette interface peut être exposée par n’importe quelle broche qui se connecte à l’aide de l’interface de broche IMemInputPin , mais elle est généralement exposée sur les broches de sortie des filtres de capture.

Lorsque deux broches se connectent via IMemInputPin, elles s’accordent sur un objet d’allocator qui est responsable de la création de mémoires tampons. Normalement, ce processus est transparent pour l’application, mais dans certains cas, l’application a besoin de plus de contrôle. Si une broche expose IAMBufferNegotiation, l’application peut suggérer le nombre de mémoires tampons à créer, la taille des mémoires tampons et d’autres propriétés. Si votre application effectue une préversion de l’audio capturé, vous pouvez spécifier une taille de mémoire tampon plus petite pour réduire la latence. Les applications de téléconférence doivent spécifier un nombre minimal de mémoires tampons.

Pour utiliser cette interface, appelez la méthode SuggestAllocatorProperties avant de se connecter. Une fois que les broches se sont connectés, appelez la méthode GetAllocatorProperties pour déterminer si la broche a respecté la demande.

Développeurs de filtres : les filtres de capture doivent toujours prendre en charge cette interface lorsque cela est possible.

Héritage

L’interface IAMBufferNegotiation hérite de l’interface IUnknown . IAMBufferNegotiation a également les types de membres suivants :

Méthodes

L’interface IAMBufferNegotiation possède ces méthodes.

 
IAMBufferNegotiation ::GetAllocatorProperties

La méthode GetAllocatorProperties récupère les propriétés d’allocator que la broche utilise.
IAMBufferNegotiation ::SuggestAllocatorProperties

La méthode SuggestAllocatorProperties informe le code pin des propriétés d’allocator préférées de l’application. Appelez cette méthode avant que la broche ne se connecte.

Configuration requise

Condition requise Valeur
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 strmif.h (include Dshow.h)

Voir aussi

Interfaces