letransfertpellicule

  • Increase font size
  • Default font size
  • Decrease font size

Virtualdub pour les nuls

Envoyer
Index de l'article
Virtualdub pour les nuls
1) Installation du logiciel
2) Ouvrir un fichier vidéo et ajouter un filtre
3) Déplacement dans la vidéo - Découpage d'un clip
4) Premier script AviSynth
5) Simplifier l'utilisation de AviSynth avec l'éditeur de scripts AvsP
Toutes les pages

VirtualDub est le "couteau suisse" de celui qui cherche à exploiter au mieux ses captures.
Il est même d'ailleurs capable de capturer les vidéos à l'instar de CaptureFlux de PaulGlaGla.

VirtualDub




1) Installation du logiciel.

Deux méthodes sont utilisables :
  • La copie directe des fichiers du programme dans le répertoire "Program Files"
    Il faut tout d'abord créer un répertoire "VirtualDub" dans le répertoire "Program Files", puis y décompresser le contenu du fichier VirtualDub-Fr.zip
  • L'installation par l'exécution d'un .exe. Dans ce cas, il suffit de d'exécuter le programme VirtualDub.exe.
Après l'installation, on trouvera dans le répertoire VirtualDub un répertoire "plugins" qui est vide lors de l'installation, mais dans lequel on pourra ensuite très simplement installer des "filtres" supplémentaires, dits "externes" par opposition aux filtres natifs de VirtualDub.
Les filtres serviront à modifier des vidéos chargées dans VirtualDub. Certains permettent de corriger les couleurs, d'autres de redimensionner ou inverser les images, d'autres de stabiliser les images, etc.
Les filtres externes (*.vdf) copiés dans ce dossier seront chargés automatiquement au démarrage de VirtualDub.

Un premier pack de plugins doit être installé pour lire différents fichiers video : MPEG2, WMV, FLV, etc.
Dans le cas contraire, on est limité aux ficheirs .AVI
Il s'agit d'un fichier exécutable ou l'on peut choisir tout ou partie des plugins disponibles :-
  • DirectShow : il s'agit d'un composant de la plateforme DirectX de MicroSoft qui permet de manipuler les contenus multimedia.
  • MPEG-2 : la norme des fichiers stockés sur DVD
  • WMV : Windows Media Video : un codec très utilisé sur les sites Internet, celui de VD n'est pas encore au point (certains fichiers ne sont pas lus)
  • FLV : Fichiers FlashPlayer, utilisés sur YouTube par exemple.
  • QuickTime : le format de vidéos d'Apple
  • FLIC : format que je ne connais pas !
  • AC3 : format de compression numérique du son utilisé par les laboratoires Dolby
A noter que ces plugins un peu particuliers (appelés pilotes d'entrée) sont installés dans le répertoire Plugins32 et non plugins, et qu'ils ont l'extension .vdplugin

Dernière étape avant d'entrer dans le vif du sujet, installer Avi!Synth.
Avi!Synth est un éditeur vidéo non-linéaire entièrement contrôlé par des scripts (il ne possède pas d'interface graphique). Il agit comme un intermédiaire entre une source vidéo, comme un fichier .avi ou .mpg, et notre logiciel VirtualDub.

Avisynth peut appliquer une grande variété de fonctions de traitement et d'édition - via des filtres - sur un flux vidéo, avant de retransmettre les résultats vers VirtualDub comme s'il s'agissait réellement d'une source avi. Ces filtres permettent d'exécuter des fonctions comme le trim (extraction), le crop (recadrage), le désentrelacement, le téléciné inverse, des corrections de couleur, des redimensionnements, du denoising (débruitage), la suppression des images cisaillées, etc...
Pour utiliser ces filtres, on doit passer par des scripts (simple fichier texte portant l'extension .avs) écrits en langage avisynth. Si certains filtres sont directement inclus dans avisynth, pour étendre les capacités de ce programme on pourra, comme avec VirtualDub, y ajouter des plugins (fichier .dll), qui seront installés dans le répertoire "plugins" d'AviSynth.
Avisynth peut fonctionner dans de nombreux espaces couleurs incluant RVB, YUY2 et YU12 (ce qui est nécessaire pour assurer une compatibilité avec tout type d'entrée ou sortie vidéo). Cependant, certains filtres comme GetDups (suppression des images cisaillées) ne fonctionnent que dans un espace couleur donné, ce qui implique une conversion de l'espace couleur.
Cette notion d'espace couleur est importante et nous verrons que la plupart des scripts intègrent une commande de conversion de l'espace couleur.

(Source Wikipedia)

Pour installer AviSynth, on exécute le programme AviSynth_090820.exe en laissant les trois premières options cochées.


2) Ouvrir un fichier vidéo et ajouter un filtre

Comme pour tout logiciel Wndows, l'ouverture d'un fichier vidéo se fait par le menu "Fichier - ouvrir (un fichier vidéo)".

ouvrir-fichier

Tous les fichiers acceptés par VirtualDub sont proposés dans la fenêtre qui apparaît sur l'écran.
Il est aussi possible d'ouvrir des images (jpeg, gif, bmp, etc.)

Une fois le fichier vidéo ouvert, le logiciel présente deux fenêtres. La fenêtre de gauche correspond à la vidéo d'origine et la fenêtre de gauche à la vidéo "filtrée", c'est-à-dire modifiée par les filtres de correction d'image de VD.
Pour notre premier essai, nous allons charger le filtre (interne) servant à retourner l'image dans le sens vertical, utile si on utilise le transfert "Objectif dans objectif", puisque l'image est capturée à l'envers.

fenetre-principale

Dans le menu Video - Filtres, on choisit le bouton "Ajouter", puis le filtre "Flip vertically" (retournement vertical)
On obtient ainsi le résultat suivant :

retournement-vertical

Pour enregistrer le fichier modifié, il faut tout d'abord choisir la compression vidéo à utiliser dans le menu Vidéo - compression.
Pour ne perdre aucune information, il faut choisir le format RGB non compressé, mais la taille du fichier est alors très élevée.
Une bonne méthode est d'utiliser le codec Panasonic, qui correspond à une compression au format DV.

codec-panasonic

Une fois le codec choisi, on enregistre le nouveau clip vidéo par le menu Fichier - Enregistrer en AVI (F7).

enregistrement

Une fois le rendu effectué, on obtient un nouveau clip dont l'image a été retournée.

r-sultat


3) Déplacement dans la vidéo - Découpage d'un clip
Sur la fenêtre principale de VirtualDub, on trouve un certain nombre de boutons destinés à se déplacer dans la vidéo et à insérer des points de découpe :

commandes

Pour découper une séquence dans un clip, il suffit d'utiliser le bouton "Marqueur début". pour indiquer à VirtualDub à partir de quel endroit commence le découpage, puis de se déplacer à l'endroit prévu pour la fin du clip et cliquer sur le bouton "Marqueur fin" :

d-but-d-coupe

La séquence découpée apparaît en bleu sur l'écran :

fin-d-coupe

Pour sauvegarder la séquence découpée, il suffira de choisir Fichier - Enregistrer un AVI découpé.



4) Premier script AviSynth

Comme nous l'avons vu en introduction, Avi!Synth est un éditeur vidéo entièrement contrôlé par des scripts (il ne possède pas d'interface graphique). Il agit comme un intermédiaire entre une source vidéo, comme un fichier .avi ou .mpg, et VirtualDub.
Un script AviSynth est un simple fichier texte qui contient des instructions qui vont être appliquées au fichier vidéo.
Pour créer ce fichier il suffit, dans le répertoire choisi, de faire un clic droit et de choisir Nouveau – Document texte en donnant au fichier l'extension .avs.
Toutefois, si vous avez installé AviSynth, vous pourrez aussi trouver la ligne « AviSynth script », qui crée automatiquement un fichier dénommé Nouveau AviSynth Script.avs
Ensuite, on ouvre ce fichier texte (Clic droit – Ouvrir avec – Bloc notes) et on tape les instructions AviSynth de traitement.

Pour commencer, nous allons simplement ouvrir un fichier AVI à l'aide de AviSynth. L'instruction est AVISource("nom du fichier")
Notre premier script va donc comporter une seule ligne :

avisource

En double-cliquant sur ce script, VirtualDub se lance automatiquement et affiche le fichier AVI choisi :

avisynth-script

Bien sûr, il va maintenant falloir enrichir ce script pour lui faire effectuer des traitements sur la vidéo. Comme nous l'avons dit en introduction, beaucoup de filtres AviSynth ne fonctionnent que dans un espace couleur donné, ce qui implique une conversion de l'espace couleur.
Pour le filtre que nous allons maintenant utiliser (HotSpot.dll, destiné à atténuer le vignetage, c'est-à-dire l'assombrissement de la périphérie d'une image), il va falloir utiliser l'espace de couleurs YV12 ou YUY2.
On ajoute donc sous l'instruction AVISource l'instruction ConvertToYV12() ou bien l'instruction ConvertToYUY2()
Il semble (à confirmer) que le second dégrade moins la vidéo. C'est d'ailleurs l'espace de couleur préférentiel d'AviSynth. C'est donc celui que nous allons utiliser.
Le fichier d'origine HotSpot.avi est un clip qui présente un fort vignetage :

hotspot

Le corps du script devient :
Avisource("HotSpot.avi")
converttoYV12()

Ensuite, on charge le plugin HotSpot que l'on aura copié dans le répertoire plugins d'AviSynth à l'aide de la fonction LoadPlugin et on exécute ce plugin avec HotSpot(paramètres)

On a donc le script :
Avisource("HotSpot.avi") # Ouverture du clip d'origine HotSpot.avi
converttoYUY2() # Chargement de l'espace de couleur
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\HotSpot.dll") # Chargement du plugin HotSpot
# dans le répertoire plugins d'AviSynth
HotSpot(mask="Cache.bmp", mult=114, add=155) # Exécution du filtre HotSpot

Cette fonction HotSpot comprend trois paramètres :
  • mask="fichier bitmap de masque" Pour atténuer le vignetage, il faut créer un fichier "en négatif" de l'image projetée sans film :

    cache
  • mult : force de l'effet de correction
  • add : augmentation de la luminance dans les angles, là où le vignetage est le plus fort.

En lançant le script, on constate que le vignetage a été atténué :

hotspot-corrig

Annexe : comment fabriquer le fichier Cache.bmp, représentant l'image négative de la fenêtre de projection sans film
(par jcgrini)

Il faut un logiciel de retouche photo, par exemple Photoshop elements, Photofiltre studio, gimp etc. . L'important est d'avoir la possibilité de travailler avec des calques.

1) avec le caméscope, capturer une image sans film afin de récupérer le défaut d'homogénéité de la lumière.
2) ouvrir cette image dans le logiciel de retouche photo. Cette image se retrouve en fond.
3) créer un calque Noir, un calque Blanc
4) changer la transparence du calque Blanc afin de voir l'image du fond.
5) dessiner une sélection représentant au mieux le halo.
6) suivant ce que l'on veut faire, on peut inverser la sélection ou pas. En général, non.
7) remettre la transparence à 100% (l'image est blanche).
8°) enregistrer ce fichier car il va vous servir plusieurs fois.
9°) régler une valeur assez grande pour le "contour progressif", puis faire "effacer".
10°) le mieux est de sauver plusieurs fichiers avec des réglages différents. Faire "sauver sous" et choisir le format jpg.
11°) on peut effacer plusieurs fois pour accentuer l'effet. On peut changer le réglage du "contour progressif" sur un "second effacer". On peut aussi agir sur la transparence du calque blanc.
on peut jouer sur la lumière et le contraste etc. Chaque fois, faire sauver sous et jpg.
12°) avec AVIsynth, vous testerez l'image qui donne le meilleur résultat.
(cliquer sur l'image ci dessous pour agrandir l'image)

tuto-hallo

exemples de résultats.
cache-13432ac-1
cache-13432ac-2
cache-13432ac-3



5) Simplifier l'utilisation de AviSynth avec l'éditeur de scripts AvsP

Première étape : télécharger et installer AvsP
Voir ici sur ce forum pour plus de détails

Il suffit de le copier dans le répertoire AvsP de Program Files.
Ensuite on exécute le programme AvsP.exe :

avsp-initial

Pour ouvrir le script, on utilise le menu File - Open
On a alors l'écran suivant :

avsp-script

Pour afficher l'image, on clique sur le triangle en bas à gauche :

avsp-image

Pour faire varier les paramètres de la fonction HotSpot, il suffit de cliquer dans la liste de droite sur le "+" figurant devant HotSpot. Tous les paramètres de la fonction apparaissent, avec les valeurs qui ont été saisies dans le script. En modifiant ces valeurs, l'image est ajustée en temps réel :

avsp-modif

Le tutoriel que nous vous proposons est complété par une discussion sur le forum.


 

Visiteurs en ligne

Nous avons 1 invité en ligne

Connexion