Partager via


Méthode IMemAllocator::SetProperties (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.]

La SetProperties méthode spécifie le nombre de mémoires tampons à allouer et la taille de chaque mémoire tampon.

Syntaxe

HRESULT SetProperties(
  ALLOCATOR_PROPERTIES *pRequest,
  ALLOCATOR_PROPERTIES *pActual
);

Paramètres

pRequest

Pointeur vers une structure ALLOCATOR_PROPERTIES qui contient les exigences de mémoire tampon.

pActual

Pointeur vers une structure ALLOCATOR_PROPERTIES qui reçoit les propriétés de mémoire tampon réelles.

Valeur renvoyée

Retourne une valeur HRESULT . Les valeurs possibles incluent celles indiquées dans le tableau suivant.

Code de retour Description
S_OK
Opération réussie.
E_POINTER
Argument pointeur NULL .
VFW_E_ALREADY_COMMITTED
Impossible de modifier la mémoire allouée tant que le filtre est actif.
VFW_E_BADALIGN
Un alignement non valide a été spécifié.
VFW_E_BUFFERS_OUTSTANDING
Une ou plusieurs mémoires tampons sont toujours actives.

Notes

Cette méthode spécifie les exigences de mémoire tampon, mais n’alloue aucune mémoire tampon. Appelez la méthode IMemAllocator::Commit pour allouer des mémoires tampons.

L’appelant alloue deux structures ALLOCATOR_PROPERTIES. Le paramètre pRequest contient les exigences de mémoire tampon de l’appelant, y compris le nombre de mémoires tampons et la taille de chaque mémoire tampon. Lorsque la méthode retourne, le paramètre pActual contient les propriétés de mémoire tampon réelles, telles que définies par l’allocateur.

Lorsque cette méthode est appelée, l’allocateur ne doit pas être validée ou avoir des mémoires tampons en attente.

Configuration requise

   
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)
Bibliothèque Strmiids.lib

Voir aussi

Codes d’erreur et de réussite

IMemAllocator Interface