Partager via


Méthode IMFSampleGrabberSinkCallback2::OnProcessSampleEx (mfidl.h)

Appelé lorsque le récepteur d’échantillonnage reçoit un nouvel exemple multimédia.

Syntaxe

HRESULT OnProcessSampleEx(
  [in] REFGUID       guidMajorMediaType,
  [in] DWORD         dwSampleFlags,
  [in] LONGLONG      llSampleTime,
  [in] LONGLONG      llSampleDuration,
  [in] const BYTE    *pSampleBuffer,
  [in] DWORD         dwSampleSize,
  [in] IMFAttributes *pAttributes
);

Paramètres

[in] guidMajorMediaType

GUID de type principal qui spécifie le format des données. Pour obtenir la liste des valeurs possibles, consultez Principaux types de médias.

[in] dwSampleFlags

Exemples d’indicateurs. Le récepteur sample-grabber obtient la valeur de ce paramètre en appelant la méthode IMFSample::GetSampleFlags de l’exemple multimédia.

[in] llSampleTime

Durée de présentation de cet exemple, en unités de 100 nanosecondes. Si l’exemple n’a pas d’heure de présentation, la valeur de ce paramètre est _I64_MAX

[in] llSampleDuration

Durée de l’exemple, en unités de 100 nanosecondes.

Si l’exemple n’a pas de durée, la valeur de ce paramètre est _I64_MAX.

[in] pSampleBuffer

Pointeur vers une mémoire tampon qui contient les exemples de données.

[in] dwSampleSize

Taille, en octets, de la mémoire tampon pSampleBuffer .

[in] pAttributes

Pointeur vers l’interface IMFAttributes . Utilisez cette interface pour obtenir les attributs de cet exemple (le cas échéant). Pour obtenir la liste des exemples d’attributs, consultez Exemples d’attributs.

Valeur retournée

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Notes

Si vous utilisez le récepteur d’échantillonnage dans une topologie de lecture, cette méthode doit revenir rapidement, sinon elle risque d’interférer avec la lecture. Ne bloquez pas le thread, n’attendez pas les événements ou n’effectuez pas d’autres opérations longues à l’intérieur de cette méthode.

Configuration requise

   
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête mfidl.h

Voir aussi

IMFSampleGrabberSinkCallback2