Comment assurer que le filtre Grabber échantillon ne générera pas plus callbacks lors de l'arrêt de mon graphique de filtre DirectShow?

StackOverflow https://stackoverflow.com/questions/8323334

Question

J'ai une application DirectShow écrit en Delphi 6 en utilisant la bibliothèque de composants DSPACK. Quand je ferme mes graphiques de filtre (jeu d'arrêt), je reçois une violation d'accès en raison d'un rappel du filtre échantillon Grabber DirectShow survenant après l'objet qui possède la méthode de rappel a été détruit. Il ne se produit pas à chaque fois, mais assez souvent. point que quelqu'un peut me à un exemple de code ou d'un document qui me dit les étapes que je dois prendre pour arrêter mes graphiques d'une manière qui fait que tous les échantillons callbacks Grabber en attente ont été reçus ou éliminés?

Était-ce utile?

La solution

Qu'en est-ISampleGrabber::SetCallback(NULL, ... émission avant l'arrêt / la libération du graphique du filtre?

Plus de cela, vous pouvez définir un indicateur interne indiquant la fin et le vérifier dans les callbacks vous devez retourner immeditely sans autre traitement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top