2010-10-15 1 views
2

Est-ce que quelqu'un est au courant d'un moyen de saisir des images d'un DVD en utilisant DirectShow et C++? L'échantillonneur d'échantillons n'est pas pris en charge lors de l'utilisation du moteur de rendu DVD et si j'utilise GetCurrentImage, qui fait partie du contrôle sans contrôle VMR9, il ne semble pas fonctionner.Saisir des images à partir d'un DVD en utilisant le show direct

Répondre

1

Découvrez l'échantillon « SampVid » dans les échantillons DirectShow:

http://msdn.microsoft.com/en-us/library/dd375468(VS.85).aspx

Avec cela, vous pouvez écrire votre propre filtre de convertisseur vidéo. Le seul problème que vous aurez est de savoir comment capturer la frmae car tout passe par la classe "CDrawImage". Le code source qui figure dans winutil.h & .cpp qui sont inclus dans les classes de base d'exposition directe. Rouler votre propre version résoudrait votre problème et vous permettrait de saisir une image de données d'image pendant qu'elle est écrite à l'écran.

+0

Merci pour l'entrée, se penchera sur cela. Je ne sais pas si cela sera efficace avec un DVD, mais je vous le ferai savoir. – paj7777

1

Écrivez un filtre vidéo trans-in-place, que vous pouvez utiliser pour récupérer un échantillon et l'écrire sur le disque.

Lorsque vous détectez une touche (pour la capture d'écran), appelez un rappel dans votre programme à partir de la fonction Transform() des filtres. Consultez le guide MSDN sur Writing Transform Filters pour plus d'informations sur l'écriture de filtres.

Vous pouvez consulter la EZRGB24 filter sample de MSDN, qui montre comment utiliser la CTransformFilter

Bonne chance!

Questions connexes