Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1481 connectés 

  FORUM HardWare.fr
  Programmation
  API Win32

  [DirectShow] Video Renderer bloqué

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[DirectShow] Video Renderer bloqué

n°1771303
CKaiser
Posté le 08-08-2008 à 16:07:39  profilanswer
 

Bonjour,
 
J'ai pas mal d'expérience en C/C++ mais moins sur l'API Win32 et je début avec DirectShow. J'aimerai acquerir une vidéo à partir d'une source Live, modifier quelques pixels dans l'image capturée (afin d'y stocker quelques informations) puis de l'enrigistrer en AVI en même temps que j'ai un apperçu.
 
Pour la partie capture, pas de problème, je fait une énumération des filtres de type CLSID_VideoInputDeviceCategory et je sélectionne le bon.
Pour la modification de chaque frame afin d'y insérer des données, j'ai développé moi-même 2 filtres CInframeDataEncoder et CInframeDataDecoder qui hérites tous deux de CTransInPlaceFilter. J'ai testé ces deux filtres et ils fonctionnent également (il accepte n'importe quel MediaType a condition qu'il soit du type MEDIATYPE_Video).
 
La structure de mon graphe est la suivante :
 
VideoInput --> InframeDataEncoder --> Smart Tee --Capture pin--> AVI Muxer --> File Wirter
                                                                     |
                                                                     --Preview pin--> Video Renderer
 
Dans cette configuration, l'enregistrement se passe bien et ma fenêtre m'affiche bien l'entrée vidéo que j'ai sélectionnée, malheureusement cette fenêtre ne réponds à aucune commande : lorsque je passe le curseur dessus celui-ci se transforme en petit sablier et je ne peu ni déplacer la fenêtre, ni la redimentionner, ni la fermer. En bref je ne peux rien faire avec. En fait j'ai l'impression qu'elle raffraichie son contenu mais pas la fenêtre à proprement dite. En effet lorsque je déplace une tiers fenêtre par dessus ma fenêtre de rendu après l'avoir enlevé, les bord ainsi que la barre de titre de cette dernière ne réapparaissent pas et m'affiche une image fantôme de la fenetre que j'ai déplacé au dussus.
 
J'ai bien essayé d'autres méthodes, comme changé de filtre de rendu (j'ai essayé les 3 disponibles : Video Renderer, Video Mixing Renderer 7 et Video Mixing Renderer 9), ou bien la méthode Render de l'interface IGraphBuilder en lui donnant la pin sortante "Preview" de mon filtre Smart Tee, ou enfin en utilisant un CaptureGraphBuilder2 qui fait tout le boulot à notre place, mais dans tous les cas j'ai le même problème.
 
Je précise que je n'utilise pas de MFC, mon projet est un simple projet Console Win32. Si cela peut aider aussi, j'ai récupérer l'instance de l'interface IVideoWindow de mon filtre Video Renderer et lorsque je fait un get_Owner ou bien un get_MessageDrain, cela me renvoit NULL. Je ne sais pas si c'est normal ou pas mais bon, je le dis tout de même.
 
Je voulais savoir si quelqu'un avait déjà eu ce problème et comment il l'avait réglé car mis à part cela, mon application fonctionne (encodage des données, ecriture de l'AVI puis lecture de l'AVI, décodage des données et affichage de ces dernières à l'écran). Seulement pour faire une capture sans avoir d'apperçu qui fonctionne correctement c'est juste chiant et pas facile car je précise que cette application est destinée à faire des mesures avec du matériel spécifique.
 
Merci d'avance pour votre aide

mood
Publicité
Posté le 08-08-2008 à 16:07:39  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  API Win32

  [DirectShow] Video Renderer bloqué

 

Sujets relatifs
insérer video html[RESOLU]fonction mail qui ouvre messagerie
[résolu] waitFor() qui reste bloqué...A l'aide, bloqué dans Flash par Actionscript
lecteur video flash sur un site : comment démarer immédiatementIntégration video avi dans blog
Envoi de mail bloquécomment récupérer le flux video d'une webcam
Récupération vidéo WMVCarte d'acquisiton, capture signal vidéo et traitement tp réel ??
Plus de sujets relatifs à : [DirectShow] Video Renderer bloqué


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR