Accueil > Linux / Logiciels Libres > GNU/Linux > Création de fichier vidéo compressé : dvd::rip

Création de fichier vidéo compressé : dvd::rip

dimanche 4 septembre 2005, par Yann

Documents
Fichier PDF de l’article
Création de fichier vidéo compressé~: {dvd::rip}

Création de fichier vidéo compressé : dvd::rip

Y. Morère

Résumé

Ce petit article présente l'utilisation de dvd::rip (http://www.exit1.org/dvdrip/) dans le cadre de la transformation d'un film dvd en DivX. Il s'inspire largement de l'article suivant : http://www.trustonme.net/didactels/205.html.

Table des matières

1  Introduction
2  Installation des composants
3  Utilisation de dvd::rip
    3.1  Extraction et encodage
    3.2  Dimensionnement
    3.3  Les sous-titres :
    3.4  Encodage
    3.5  Prévisualisation
    3.6  Eviter la desynchronisation audio/vidéo
    3.7  Générer le film

1  Introduction

dvd::rip est un programme de copie de DVD avec de nom breuses fonctionnalités écrit en Perl. Il fournit une riche interface GTK+ pour contrôler tous les aspects du processus d'extraction et de l'encodage de DVD. Il utilise le très connu couteau suisse de la video transcode et de nombreux autres outils Open Source. dvd::rip est sous licence GPL / Perl Artistic.
Il est bien sur possible possible de tout faire sans ce frontal graphique http://www.prism.uvsq.fr/users/bcohen/Perso/.

2  Installation des composants

Le processus d'installation est détaillé à la page suivante http://www.exit1.org/dvdrip/doc/install.cipp.
Comme indiqué dans la documentation, l'installation n'est pas difficile en soit, mais dvd::rip possède de nombreuses dépendances.
Il est donc conseillé de passer par les distributions de binaires. dvd::rip existe en binaires pour Debian, SuSE, Mandrake, RedHat, Gentoo, FreeBSD et OpenBSD.
Si vous utilisez une autre distribution, vous serz obligez de partir des sources. Un très bon article peut être trouvé à l'adresse suivante http://www.trustonme.net/didactels/205.html. Un autre ici http://www.linuxfrench.net/article.php3?id_article=1203
Pour ma part j'utilise une distribution Debian. Je vais donc utiliser apt-get en ayant modifier au préalable mon fichier /etc/apt/sources.list en y ajoutant la ligne correspondante à ma distribution (Sarge = stable) parmi les 3 suivantes :
deb ftp://ftp.nerim.net/debian-marillat stable main
deb ftp://ftp.nerim.net/debian-marillat testing main
deb ftp://ftp.nerim.net/debian-marillat unstable main

À l'aide, d'apt-get, dselect ou encore aptitude vous recherchez et installez le paquet nommé dvdrip.

3  Utilisation de dvd::rip

Lancez dvd::rip par la commande dvdrip, vous obtenez la fenêtre suivante :
local/cache-vignettes/L671xH679/dvdrip-01fec.jpg?1682572474
Figure 1: Fenêtre d'acceuil dvdrip

3.1  Extraction et encodage

Pour encoder graphiquement nous avons besoin d'extraire le contenu du DVD sur le disque dur, il faut donc un espace conséquent. Prévoyez une partition de 10 Go pour cet usage.
Lancez dvdrip par : dvdrip &, puis complétez vos paramètres.
local/cache-vignettes/L672xH564/dvdrip_prefs-14cf3.jpg?1682572474
Figure 2: Préferences de dvdrip
Vous pouvez également compléter les onglets [Gravure de CD] et [Commandes] si vous désirez tout faire depuis dvdrip.
Ouvrez un nouveau projet (Fichier / Nouveau projet). Il démarre à l'onglet stockage. indiquez le titre du projet, évitez les espaces et les accents, puis les chemins.
local/cache-vignettes/L672xH498/projet_dvdrip_1-29979.jpg?1682572474
Figure 3: Configuration du projet dvdrip
Il est temps d'insérer le dvd à extraire dans votre lecteur.
Passez à l'onglet Extraction et appuyez sur le bouton Lire la table des matières du DVD. Après quelques secondes, la liste en dessous se remplira avec les titres présents sur le DVD.
Sélectionnez le titre que vous voulez extraire (vous pouvez en choisir plusieurs en appuyant sur [Ctrl]). En général, le film est contenu dans celui qui a le plus de chapitre, chez moi c'est le 1.
local/cache-vignettes/L672xH498/projet_dvdrip_2-e8ca3.jpg?1682572474
Figure 4: Choix de la partie à extraire dvdrip
Choisissez la langue et l'angle. Laissez l'option Séparer les chapitres sur Nono. Terminez en appuyant sur Extraire les titres ou chapitres selectionnés.
J'obtiens un répertoire, 001/ dans /home/yann/temp/rip/matrix_revolution/vob, contenant des vobs
yann@minitux:~/temp/rip/matrix_revolution$ ls vob/001/
matrix_revolution-001.vob  matrix_revolution-003.vob  matrix_revolution-005.vob
matrix_revolution-002.vob  matrix_revolution-004.vob  matrix_revolution-006.vob
yann@minitux:~/temp/rip/matrix_revolution$

3.2  Dimensionnement

Rendez-vous à l'onglet Découpage et zoom, pour gérer les dimensions de l'image. Indiquez une image au hasard, par son numéro de frame, par exemple 90000 dans Capturer l'image Numéro et pressez Capturer l'image, vous obtenez alors la frame sélectionnée en 3 exemplaires. En cliquant sur la dernière, vous avez une idée du produit final. Voici les réglages :
local/cache-vignettes/L672xH498/projet_dvdrip_3-006be.jpg?1682572474
Figure 5: Réglage extraction dvdrip
Il y'a bien plus de paramètres consultez la documentation officiellehttp://www.exit1.org/dvdrip/doc/gui.cipp, ou laissez les valeurs par défaut.
local/cache-vignettes/L672xH482/projet_dvdrip_3b-ede6f.jpg?1682572474
Figure 6: Réglage extraction dvdrip

3.3  Les sous-titres :

Ça se passe dans Sous-titres, vous avez la possibilité de choisir la langue parlée et la langue des sous titres.
local/cache-vignettes/L672xH498/projet_dvdrip_4-40c47.jpg?1682572474
Figure 7: Réglage des sous-titres dvdrip
N'oubliez pas de cocher Créer plus tard après l'encodage. Pour lire les films avec sous-titres via mplayer se sera :
mplayer -sub fichier_sous_titre.srt le_film.avi

3.4  Encodage

Pour ça, c'est l'onglet Encoder qu'il faut aller. Là indiquez votre codec, je vous conseille fortement xvid, mais vous pouvez également utiliser divx5 pour Linux, dans ce dernier cas, votre film sera de moins bonne qualité.
local/cache-vignettes/L672xH498/projet_dvdrip_5-813b4.jpg?1682572474
Figure 8: Réglage Encodage dvdrip
Si votre vidéo est entrelacée, positionnez le Mode de désentrlacement sur Zoom To full frame (slow), et Antialias mode sur Process full frame, sinon la bonne option est Aucun entrelacement, et No antialiasing.
Dvdrip essaie d'auto-détecter votre framerate. S'il a échoué, vous pouvez le corriger ici (cf le menu précédent). Use YUV internal devrait toujours être sur yes à moins que le codec de sortie ne supporte pas les modes YUV. XviD les supporte. 2-Pass encoding devrait également être sur yes.
Dans la partie Audio options, vous avez le choix entre mp3, vorbis et Ac3 ou encore OggVorbis.
Finissez en ajustant le nombre et taille de CDs.

3.5  Prévisualisation

Toujours dans Encoder, dans la zone Options générale, indiquez un morceau de film dans Intervalle d'images (exemple 200 - 950). Quand vous êtes satisfait du résultat appuyez sur Encoder.
local/cache-vignettes/L672xH498/projet_dvdrip_7-2e1f6.jpg?1682572474
Figure 9: Fenêtre de Log dvdrip
Au final, il a généré un fichier matrix_revolution-001.avi, que je peux lire par :
totem ~/temp/rip/matrix_revolution/avi/001/matrix_revolution-001.avi

Si vous n'êtes pas satisfait, revoyez vos paramètres et relancer l'encodage.

3.6  Eviter la desynchronisation audio/vidéo

Si l'audio et la vidéo ne sont pas synchrones dans votre prévisualisation (ou quand vous lisez le DVD lui-même) vous pouvez fournir à transcode un décalage de frame pour la synchronisation a/v. Il vous faut préciser le paramètre -D nr dans l'entrée Option de trancode dans l'onglet Encoder. nr est le nombre de frames de décalage de l'audio.
Ce nombre peut être négatif. Un frame est long de 40ms à 25fps. De façon plus générale, un frame dure (1000 / fps)ms.

3.7  Générer le film

Pour générer le film, enlever les paramètres que vous avez mis dans intervalle d'images, et appuyez sur Encoder pour générer le film d'un bloc. Appuyez sur Encoder et Découper, si vous souhaitez que dvdrip coupe le film dès qu'il arrive à la taille max de vos cds, dans mon cas se sera 700 Mo.
Dans tous les cas nous verrons plus tard comment splitter un film. C'est le moment de vous resservir du café, de continuer à travailler sur autre chose. En effet, sur mon P3 833, un film de 2h est encodé en 13h (4h=passe 1 + 9h=passe2).
Mais la machine reste tout a fait utilisable pendant ce temps (j'ai dailleurs écrit cet article pendant l'encodage à l'aide de LaTeX).
C'en est fini de cet article, toutes remarques et corrections sont les bienvenues à l'adresse morere@univ-metz.fr