IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

GraphEdit : Je n'arrive pas à creer un filter graph pour encoder une capture en DV2


Sujet :

DirectX

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut GraphEdit : Je n'arrive pas à creer un filter graph pour encoder une capture en DV2
    Bonjour,

    Depuis VirtualDub, j'arrive à faire de l'acquisition vidéo dans un fichier AVI en compressant en DV2.
    J'essaie de recréer le graph permettant cela dans GraphEdit sans succès :



    Comment puis-je envoyer la sortie de mon Panasonic DV Codec vers mon fichier AVI ?

    Mon but est de trouver un graph idéal pour faire de l'acquisition vidéo en compressant un peu tout en conservant une très bonne qualité, dans un format facilement exploitable ensuite. Le DV type 2 me paraissait être un bon choix. Si vous avez des remarques, n'hésitez pas...

    Merci pour toute aide.
    Bonne journée
    Images attachées Images attachées  

  2. #2
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Points : 2 605
    Points
    2 605
    Par défaut
    Bonjour.

    Pour la compression, il sera mieux de retirer l'aperçu. Et pour compresser en DV2, il faut un encodeur DV2 (je n'en vois pas dans le graphe et d'ailleurs je ne connais pas ce format de compression).

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    Et pour compresser en DV2, il faut un encodeur DV2 (je n'en vois pas dans le graphe et d'ailleurs je ne connais pas ce format de compression).
    Par DV2, j'entend DV Type 2. Et dans mon graph, c'est le codec "Panasonic DV Codec".
    Dans VirtualDub, c'est bien ce codec que je sélectionne pour compresser la vidéo capturée et tout se passe bien, la vidéo encodée est fluide et de bonne qualité.

    Mon problème, c'est que je ne sais pas quel graph je dois construire pour l'utiliser correctement... Chaque fois que j'essai de connecter l'entrée ou la sortie du codec, j'ai un message d'erreur de DirectShow qui me dit qu'il ne trouve pas de filtre intermédiaire.

  4. #4
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Splug, inspire-toi d'un fichier AVI compressé avec Div X par exemple lambda il semble qu'il n'yait pas de Video Renderer

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    Splug, inspire-toi d'un fichier AVI compressé avec Div X par exemple lambda il semble qu'il n'yait pas de Video Renderer
    Mon VMR-9 ne sert qu'à la preview, mais dans le cas présent, vous pouvez l'ignorer.
    Mon but est de faire un graph qui encode en DV type 2 et affiche en même temps la preview. J'aurai dû l'effacer (le Video Renderer) avant d'envoyer ma capture d'écran .

    N'y a t il pas moyen de connaitre le graph qu'utilise VirtualDub pour faire la capture ?

  6. #6
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Points : 2 605
    Points
    2 605
    Par défaut
    Re.

    Le filtre GraphEdit_DV2_230.avi, est-il un filtre directshow FileWriter ?

    Ici un lien que j'avais donné pour la compression AVI:

    http://www.developpez.net/forums/sho...88&postcount=4

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    Le filtre GraphEdit_DV2_230.avi, est-il un filtre directshow FileWriter ?
    Oui, c'est bien ça.

    J'arrive à relier AVI Mux au File Writer ("GraphEdit_DV2_230.avi"). Mais je n'arrive pas à relier mon DV Codec à l'AVI Mux... je n'ai pas trouvé de solution sur les liens proposés.

  8. #8
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Points : 2 605
    Points
    2 605
    Par défaut
    Re.

    Sinon, essaies clic-droit->propriétés sur le filtre panasonic. Il nécessite peut-être un réglage interne afin d'être compatible avec le muxer.

    Sinon je vois qu'il y a un DV Muxer/Splitter sur ton graphedit. Essaies celui-ci à la place du AVI Muxer.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    Sinon je vois qu'il y a un DV Muxer/Splitter sur ton graphedit. Essaies celui-ci à la place du AVI Muxer.
    C'est déjà fait sans succès.

    Sinon, essaies clic-droit->propriétés sur le filtre panasonic. Il nécessite peut-être un réglage interne afin d'être compatible avec le muxer.
    Aucun réglage, voilà ce que j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Output pin properties:
    Major Type:  Video - Sub Type:  dvsd - Format:  dvsd 720x576, 24 bits
    rcSrc=(0,0,0,0)
    rcDst=(0,0,0,0)
     
    Input pin properties:
    Major Type: Video
    Sub Type: RGB555
    Format: RGB 768X576, 16 bits
    rcSrc=(0,0,0,0)
    rcDst=(0,0,0,0)
    ...

  10. #10
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    SPlug pour VirtualDub tu as les sources du logiciel...complexes certes mais tu peux essayer de t'en inspirer.
    Je pense que Virtual Dub utilise des API de Windows du genre VFW.

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    SPlug pour VirtualDub tu as les sources du logiciel...complexes certes mais tu peux essayer de t'en inspirer.
    Je pense que Virtual Dub utilise des API de Windows du genre VFW.
    Mmhh.. oui, je pourrai faire ça. Mais ça va prendre très longtemps (je ne programme pas en C++).

    Mais sinon, où puis-je trouver un graph pour encoder en DV Type 2 ? Peut-être y a t il une alternative, utiliser un autre codec, etc.. ?

  12. #12
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Points : 2 605
    Points
    2 605
    Par défaut
    Re.

    Apparemment, le truc qui marche, c'est l'encodeur DV puis le Muxer-DV puis l'AVI-Muxer et enfin le FileWriter.



    PS: par contre pour quelle raison encoder dans ce format ?
    Images attachées Images attachées  

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    Merci moldavi,

    je vais essayer ça demain.

    La raison de ce format est simple: il encode peu, occupe peu de ressources et conserve une très bonne qualité. J'ai besoin d'encoder en temps réel pendant la capture, et je dispose d'une capacité conséquente. Ce format me permet d'avoir environ 1min sur un peu plus de 200 Mo.
    Si besoin est, je pourrai encoder mes fichiers en Mpeg plus tard...

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Août 2005
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 346
    Points : 119
    Points
    119
    Par défaut
    Ca fonctionne effectivement.

    Merci encore moldavi.

    Cependant, la qualité de cet encodeur fourni par Microsoft est très mauvaise.

    Je me suis tourné vers le MJPEG (Morgan MJPEG Compressor). La qualité est relativement bonne et la compression un peu meilleure.

    Images attachées Images attachées  

  15. #15
    Nouveau Candidat au Club
    Inscrit en
    Juin 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut VirtualDub enumerer sur GraphEdit
    T'a essayé de simplement charger le fichier sur GraphEdit et de faire "render" ?
    parfois ca cree tout , tout seul.

    aussi : Je crois que VirtualDub est open scource,
    je conseille :
    1. decharger le source code
    2. compiler le source code de VirtualDub
    3. analyser ce qui se passe, mettre des breakpoints
    4. regardes ou il y a des appels vers "AddFilter"

    =U

    Citation Envoyé par Splug Voir le message
    Mon VMR-9 ne sert qu'à la preview, mais dans le cas présent, vous pouvez l'ignorer.
    Mon but est de faire un graph qui encode en DV type 2 et affiche en même temps la preview. J'aurai dû l'effacer (le Video Renderer) avant d'envoyer ma capture d'écran .

    N'y a t il pas moyen de connaitre le graph qu'utilise VirtualDub pour faire la capture ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. N'arrive pas à creer ruban personalisé
    Par Salsaboy60 dans le forum VBA Access
    Réponses: 12
    Dernier message: 27/09/2009, 17h23
  2. n'arrive pas a recuperer mes id pour effectuer une somme
    Par CROSS dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 26/07/2007, 15h09
  3. Réponses: 1
    Dernier message: 12/02/2007, 15h22
  4. Réponses: 10
    Dernier message: 12/08/2006, 23h48
  5. Réponses: 2
    Dernier message: 23/05/2006, 11h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo