Comment capturer une vidéo avec dvgrab ?

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

Vérifiez que votre carte est bien reconnu. La commande suivante vous donnera une ligne indiquant le nom de la carte trouvée :

lspci | grep 1394
07:01.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (rev 46)

Vérifiez dans le journal de votre PC que le module a bien été chargé à l'aide de la commande :

dmesg | grep fire
[    2.987060] firewire_ohci 0000:07:01.0: added OHCI v1.10 device as card 0, 8 IR + 8 IT contexts, quirks 0x41

Vous pouvez aussi vérifier le chargement des modules avec la commande :

sudo lsmod | grep firewire
firewire_ohci          40960  0
firewire_core          65536  1 firewire_ohci
crc_itu_t              16384  1 firewire_core
Les manipulations suivantes ne sont pas nécessaires depuis 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

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-

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

  • dvgrab.txt
  • Dernière modification: Le 01/07/2018, 09:19
  • par 90.127.215.106