Overzicht van gebeurtenismelding
[De functie die is gekoppeld aan deze pagina, DirectShow, is een verouderde functie. Het is vervangen door MediaPlayer, IMFMediaEngineen Audio/Video Capture in Media Foundation. Deze functies zijn geoptimaliseerd voor Windows 10 en Windows 11. Microsoft raadt ten zeerste aan om nieuwe code te gebruiken MediaPlayer, IMFMediaEngine en Audio/Video Capture in Media Foundation in plaats van DirectShow, indien mogelijk. Microsoft stelt voor dat bestaande code die gebruikmaakt van de verouderde API's, indien mogelijk opnieuw worden geschreven om de nieuwe API's te gebruiken.]
Een filter meldt Filter Graph Manager over een gebeurtenis door een gebeurtenismelding te plaatsen. De gebeurtenis kan iets verwachts zijn, zoals het einde van een stream, of kan een fout vertegenwoordigen, zoals een fout bij het weergeven van een stream. De Filter Graph Manager verwerkt bepaalde filterevenementen zelf en laat andere evenementen door de applicatie afhandelen. Als filtergrafiekbeheer geen filtergebeurtenis verwerkt, wordt de gebeurtenismelding in een wachtrij geplaatst. De filtergrafiek kan ook zijn eigen gebeurtenismeldingen in de wachtrij zetten voor de toepassing.
Een toepassing haalt gebeurtenissen op uit de wachtrij en reageert erop op basis van het type gebeurtenis. Gebeurtenismelding in DirectShow is daarom vergelijkbaar met het wachtrijschema voor Microsoft Windows-berichten. Een toepassing kan ook het standaardgedrag van Filter Graph Manager voor een bepaald gebeurtenistype annuleren. Vervolgens plaatst de Filter Graph Manager deze gebeurtenissen rechtstreeks in de wachtrij voor de toepassing om af te handelen.
Dit mechanisme maakt het mogelijk
- Filter Graph Manager om te communiceren met de toepassing.
- Filters om te communiceren met zowel de toepassing als filtergrafiekbeheer.
- De toepassing om de mate van betrokkenheid bij het afhandelen van gebeurtenissen te bepalen.