Méthode CBaseOutputPin.DecideBufferSize

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si 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.]

La DecideBufferSize méthode définit les exigences de mémoire tampon.

Syntaxe

virtual HRESULT DecideBufferSize(
   IMemAllocator        *pAlloc,
   ALLOCATOR_PROPERTIES *ppropInputRequest
) = 0;

Paramètres

pAlloc

Pointeur vers l’interface IMemAllocator de l’allocateur.

ppropInputRequest

Pointeur vers une structure ALLOCATOR_PROPERTIES qui contient les exigences de mémoire tampon de la broche d’entrée. Si la broche d’entrée n’a pas d’exigences, l’appelant doit zéro des membres de cette structure avant d’appeler la méthode.

Valeur renvoyée

Retourne S_OK en cas de réussite, ou une valeur HRESULT indiquant la cause de l’erreur.

Notes

Remplacez cette méthode dans votre classe dérivée. Appelez la méthode IMemAllocator::SetProperties pour spécifier vos exigences de mémoire tampon. En règle générale, la classe dérivée respecte les exigences de mémoire tampon de la broche d’entrée, mais elle n’est pas obligatoire.

Configuration requise

Condition requise Valeur
En-tête
Amfilter.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)

Voir aussi

CBaseOutputPin, classe