Tout ce qu'il faut savoir pour bien gérer le traitement multimédia sur PC

Je construis mes premiers graphes

Messagede F6DZP » Mar 28 Déc 2010 13:48

Il va donc falloir utiliser un ensemble de logiciels de construction de graphes et gestion de ses filtres.

Pour construire/modifier des graphes: tous en anglais

-GraphEdit de Microsoft fourni dans son kit de développement. (pour l'installation voir --> viewtopic.php?f=27&t=27)
-Graphstudio gratuit
-GraphEditPlus (payant mais pas mal pour les développeurs car génère le code C++ et C.net correspondant au graphe)
-Advanced Graph Manager ( bof et payant)

Pour gérer la liste de ses filtres Directshow on a :
-DSFMgr (Directshow Manager)
-FilterManager
-Directshow Detective
-Filmerit_30 en Français

Pour voir ce qui se passe dans un graphe que GraphEdit ne peut pas ouvrir (pour cause d'absence de filtre par exemple)
GRFshow_fr en Français

Nous allons tout d'abord travailler avec GraphEdit
Graphedit-0.jpg
Graphedit-0.jpg (47.96 Kio) Vu 16242 fois


- Fabriquons notre premier graphe : lecture d’un fichier vidéo

je fais : File(fichier) --> Render Media File (Rendre/Visionner un fichier de Media)
Graphedit-1.jpg
Graphedit-1.jpg (92.44 Kio) Vu 16241 fois


une fenêtre s'ouvre pour aller chercher un fichier vidéo dans un répertoire (.avi, .mpg, ...)
on clique dessus et on voit apparaitre un graphe construit automatiquement:
graph lecture avi.jpg
graph lecture avi.jpg (85.59 Kio) Vu 16241 fois


Ici j'ai cliqué sur landoz.avi
La première brique correspond à la source : le fichier.avi
la 2eme brique (filtre) correspond à un <AVI Splitter>, c'est à dire un Séparateur de flux audio/vidéo informatiquement entrelacés ( AVI= AUDIO VIDEO Interlaced)
on retrouve 2 flux à la sortie Stream00 et Stream01
Stream00 est le flux video codé en Mjpeg format DV ( mon caméscope)
Stream01 est le flux Audio numérique non compressé de mon caméscope DV

le flux vidéo codé est décompressé par le Filtre(brique) <DV Video Decoder >et ensuite est rendu dans une fenêtre avec le filtre <Video Renderer>
le flux audio est directement envoyé dans le filtre de rendu de ma carte son <Default Directsound Device>

On a juste à appuyer sur lecture et on voit et entend le film.

Ne pas hésiter à faire un clic droit
sur chaque filtre puis sur chaque pin pour avoir les infos ou les réglages.


Si on recommence la même opération pour lire un fichier .TS (Transport Stream, qui nous intéresse au plus haut point car c’est un fichier transport DVB que l’on va émettre plus loin) :
En mode tout automatique : ( File > Render Media File), j’obtiens :
graph lecture ts auto.jpg
graph lecture ts auto.jpg (92.08 Kio) Vu 16241 fois


J’ai la chance d’avoir le 1er filtre, le Matroska Haali Media Splitter qui sait lire le fichier ts et sait aussi le démultiplexeur pour séparer les 2 flux principaux : vidéo et audio. Ensuite on retrouve les filtres nécessaires au décodage, affichage et écoute.

En mode manuel : je charge d’abord moi-même le filtre ( graph > insert filter > Directshow filters > File source(Async) > ‘F6DZPGoodVideo.ts’ et j’obtiens :
graph lecture ts manuel 1.jpg
graph lecture ts manuel 1.jpg (58.56 Kio) Vu 16241 fois


je clique droit sur la pin "output", je demande le rendu (Render Pin) et il me fabrique le reste du graphe :

graph lecture ts manuel 2.jpg
graph lecture ts manuel 2.jpg (104.24 Kio) Vu 16241 fois

On a donc ici le filtre lecteur, le démultiplexeur, puis les 2 décodeurs suivis de leur renderer respectifs ( vidéo et son). On observe même les valeurs de PID trouvées…
F6DZP
 
Messages: 1129
Inscription: 24 Déc 2010

Forums Statistiques

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

Options

Retourner vers Les filtres Directshow, les Graphes, GraphEdit

cron