Partager via


ReceiveConnection

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngineet audio/vidéo capture dans 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 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.]

Ce mécanisme permet à une broche de sortie de proposer une modification de format à son homologue en aval, lorsque le nouveau format nécessite une mémoire tampon plus grande. L’épingle de sortie effectue les opérations suivantes :

  1. Appelle IPin ::ReceiveConnection sur la broche d’entrée en aval.
  2. Si ReceiveConnection réussit, appelle IMemInputPin ::NotifyAllocator sur la broche d’entrée.

En outre, l’épingle de sortie peut avoir besoin d’appeler IMemAllocator ::SetProperties, puis decommit et de recommitez l’allocateur afin de modifier les tailles de mémoire tampon. Veillez à fournir tous les exemples en attente dans l’ancien format avant de modifier la taille de la mémoire tampon.

Certains décodeurs MPEG-2 utilisent ce mécanisme pour basculer entre la sortie MPEG-1 et MPEG-2 ou si la taille de la vidéo change.