Comment capturer une vidéo avec dvgrab ?

Capturer une vidéo DV

Voici en quelques lignes, comment configurer un système i386 sous Ubuntu pour piloter un caméscope branché via une liaison FireWire afin de capturer, en ligne de commande, une séquence vidéo DV. Si vous préférez une interface graphique, tournez vous vers Kino ou dvdgrabgui sur sourceforge.

Matériel requis

  • RAM : minimum 192 Mo
  • Disque : compter 1 Go de libre pour 4 minutes de film
  • Firewire : carte IEEE1394 et cable DV (testé avec une carte PCMCIA avec 1 port DV)
  • Caméscope : Numérique mini-dv (avec un port DV en sortie)

Pré-requis

Préparation du système

Ces manipulations ne sont pas nécessaires sous Ubuntu 14.04.

Il se peut qu'un problème de droits d'écriture/lecture se pose et empêche l'utilisation correcte de l'interface IEEE1394. Il suffira alors de modifier les droits en entrant :

sudo chmod 777 /dev/raw1394

Vu sur Lprod.org.

Depuis Ubuntu 11.04 le module raw n'étant plus chargé, il faut faire

sudo chmod 777 /dev/fwX

en changeant X par le numéro donné par la commande dmesg.
Autre méthode : faire partir du groupe video. Vous pouvez par exemple saisir

sudo usermod -aG video

Depuis un terminal, charger dans le noyau les modules nécessaires en saisissant ces commandes:

sudo modprobe raw1394
sudo modprobe dv1394
sudo modprobe ohci1394
sudo modprobe ieee1394

Pour une utilisation pérenne après redémarage, entrer ceci à la fin du fichier /etc/modules:

raw1394

Cf la doc de Kino

Peuvent être utiles aussi :

video1394
dv1394

Vérifier que les modules sont correctement chargés en saisissant :

lsmod | grep 1394

qui doit vous donner une réponse semblable à :

dv1394                 18764  0
ohci1394               30644  1 dv1394
raw1394                26348  0
ieee1394               90936  3 dv1394,ohci1394,raw1394

Capture

Connecter le camescope à l'interface IEEE1394, et lancer la commande dvgrab en mode interactif

sudo dvgrab -i

qui devrait vous répondre:

Going interactive. Press '?' for help.
q=quit, p=play, c=capture, Esc=stop, h=reverse, j=backward scan, k=pause        
l=forward scan, a=rewind, z=fast forward, 0-9=trickplay, space=play/pause
"Playing Paused" ff :ff :ff :ff ""          sec

Commandes utiles

  • a : pour rembobiner la bande. Cette commande peut ne pas fonctionner correctement. Dans ce cas rembobiner la bande depuis le caméscope.
  • p : (play) pour avancer la bande sans capturer
  • c : (capture) pour lancer la capture. La bande est lue par le caméscope et est "téléchargée" en même temps sur le disque dur.
  • Playing Paused = ff:ff:ff:ff lorsque la bande est au début.

Le fichier généré est nommé par défaut dvgrab-001.avi

Exemple d'utilisation

dvgrab --autosplit --timestamp --format dv2 monfichier-

Cette commande génère pour chaque séquence un fichier au format dv2 avec pour nom 'monfichier-' et la date et '.avi':

"monfichier-2006.05.07_15-37-00.avi":   115.92 MB 815 frames timecode 00:14:01.15 date 2006.05.07 15:37:38
"monfichier-2006.05.07_15-37-38.avi":    19.20 MB 135 frames timecode 00:00:00.02 date 2006.03.22 13:55:44
"monfichier-2006.03.22_13-55-44.avi":    79.79 MB 561 frames timecode 00:00:23.19 date 2006.03.22 13:56:08

Pour tout copier au format dv2 en un seul fichier avec l'heure système dont le nom est 'dvgrab-YYYY.MM.DD_HH-MM-SS.avi :

dvgrab -format dv2 -timesys -size 0

Pour plus d'infos reportez vous au manuel de dvgrab

Capturer une vidéo HDV

Les dernières versions de dvgrab permettent de capturer un flux vidéo en provenance d'une camera HDV. Il faut simplement préciser à dvgrab le format hdv de la source.

sudo dvgrab -format hdv fichierhdv-

Problème de capture DV

Si vous rencontrez des problèmes d'accès au DV ou de Capture, utilisez la commande suivante :

sudo adduser $USER disk

Fermer votre session et rouvrez-la.


Contributeurs: FIXME