Méthode CSourceStream.FillBuffer

[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 FillBuffer méthode remplit un exemple de média avec des données.

Syntaxe

virtual HRESULT FillBuffer(
   IMediaSample *pSample
) = 0;

Paramètres

pSample

Pointeur vers l’interface IMediaSample de l’exemple.

Valeur renvoyée

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

Code de retour Description
S_FALSE
Fin du flux
S_OK
Succès

Notes

La classe dérivée doit implémenter cette méthode.

L’exemple multimédia donné à cette méthode n’a pas d’horodatage. La classe dérivée doit appeler la méthode IMediaSample::SetTime pour définir les horodatages. Si le type de média est approprié, la classe dérivée doit également définir l’heure du média, en appelant la méthode IMediaSample::SetMediaTime . Pour plus d’informations, consultez Heure et horloges dans DirectShow.

Retournez S_FALSE à la fin du flux. Cela entraîne l’envoi de la notification de fin de flux par la classe CSourceStream et l’arrêt de la boucle de traitement de la mémoire tampon. Pour plus d’informations, consultez CSourceStream::D oBufferProcessingLoop .

Configuration requise

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

Voir aussi

CSourceStream, classe