Outils personnels
Vous êtes ici : Accueil Les logiciels VLC - VideoLan Comment ripper/copier un DVD ? avec VLC bien sûr !

Comment ripper/copier un DVD ? avec VLC bien sûr !

Par Freecrazy - Dernière modification 02/11/2014 18:33

Depuis longtemps, je convertis mes DVD en un fichier numérique (Divx ou autre), afin de pouvoir disposer d'une bibliothèque de films accessibles à tout moment et n'importe où (PC portable ou non, smartphone, ...). Mais les DRM et autres systèmes anti - copie rendent la tâche de plus en plus ardue. Pourtant avec VLC j'y arrive encore.

Avertissement

Avant toute chose je vais aller de mon petit couplet d'honnête citoyen : la copie de tout film est interdite. Je ne rentre même pas dans le détail (copie privée, support DVD, etc.), cela ne m'intéresse pas, tellement c'est devenu complexe. Mais ceux que cela intéressent peuvent jeter un œil sur la page Wikipédia qui parle de la loi d'août 2006 dite DADVSI (relative au Droit d'Auteur et Droits Voisins dans la Société d'Information) qui a été suivie du rapport Olivennes et de la loi Hadopi. Un œil sur la page Copie privée de Wikipédia devrait rassurer ceux qui se limitent à une stricte copie de leurs DVD à usage privé. Je laisse aux pointilleux le soin de lire le texte de la loi 2006-961 sur Légifrance, et de rechercher toute la jurisprudence.

Nota

Cet article a été rédigé sur la base de VLC 2.0.1 sous W7, et a été testé avec VLC 1.1.4 sous Linux Mint 10 (1). Les différences notables sont indiquées.

1 - J'avais essayé sous Debian Squeeze, cependant l'installation de la libdvdcss, qui permet de lire certains cryptages de DVD, est alors obligatoire. Comme elle ne fait pas partie des dépôts Debian, j'ai ajouté au fichier /etc/apt/sources.list un nouveau dépôt de deb-multimedia.org. Mais je n'ai jamais réussi à rendre VLC pleinement opérationnel. Par contre cette version ancienne de VLC sous Linux Mint 10 a très bien fonctionné et ce du premier coup.

Allons-y !

Comme indiqué en préambule, je cherchais à m'affranchir du support DVD, afin de me constituer une bibliothèque de films numériques. Plusieurs raisons à cela :

  • ne pas avoir à rechercher la pochette plastique du DVD, et une fois trouvée, ne pas avoir à s'échiner à sortir le DVD de la dite pochette sans rien casser
  • pouvoir regarder un DVD sur un micro, portable ou non, ne disposant pas de lecteur de DVD
  • me constituer une bibliothèque de films à portée de main (sur serveur donc !).

 J'ai utilisé, il y a un certain temps un outil qui permettait de convertir un DVD en un fichier Divx moins gourmand en espace mémoire. Mais depuis, les DRM et autres systèmes anti - copie se sont développés, et mon outil ne fonctionnait plus aussi bien, voire pas du tout. De plus, cet outil ne fonctionnait que sous environnement Windows. Aujourd'hui je ne me suis pas amusé à tester les outils existant (quasi tous sous Windows : Format Factory, Super, Free DVD Decrypter, Any DVD, DVD Shrink mais dont la dernière version officielle 3.2.0.15 date de 2005, ...), je vous en laisse le soin. Non car j'ai trouvé deux solutions plus simples et multiplateformes :

  • la copie exacte du DVD, grâce à la commande 'dd'. C'est ma préférée, mais cela donnera lieu à un autre article;
  • l'enregistrement avec VLC bien sûr !

1 - Ripper/Enregistrer un DVD avec VLC via l'interface graphique (GUI), solution simple mais lente.

Intuitivement on peut penser que si VLC est capable de lire un DVD, il n'y a aucune raison que l'on ne puisse pas récupérer les données qu'il a traitées. Et nous aurions raison.

En effet VLC propose une fonction d'enregistrement. Pour l'activer il faut se rendre dans "Vue" et cliquer sur "Contrôles avancés". Une 2ième ligne apparaît alors au-dessus de la ligne habituelle (lecture, play list, etc.) avec notamment un bouton d'enregistrement (carré gris avec un un rond rouge si présence d'un film).

A partir de là, rien de plus simple : vous insérez votre DVD, vous lancez le film et vous cliquez de suite sur le bouton d'enregistrement dont le fond vire alors au gris-bleu. Une fois le film terminé (hé oui, il faut attendre la fin du film, c'est l'inconvénient), vous retrouverez alors votre film sous le répertoire Vidéo (sous W7 comme sous Mint) sous un nom de type  "vlc-record-aaaa-mm-dd-hhhmmmsss-dvd____D__-.mpg". La taille de la vidéo est de près de 6Go donc non compressée (vs DVD j'entends).

2 - Ripper un DVD avec VLC via l'interface graphique (GUI), solution plus aléatoire, mais permet le transcodage

Contrairement à ce que j'ai compris, cf. le tableau de compatibilité mux et formats Vidéo/Audio , l'enregistrement du flux brut par cette méthode n'est pas possible (en tout cas je n'y suis pas arrivé, si quelqu'un a trouvé comment faire je suis preneur). Par contre, son grand intérêt est de pouvoir convertir un DVD en un format lisible par d'autres lecteurs que celui du salon (Smartphones, PS3, XBox 360, etc.) aussi bien en termes de format que de résolution, et de compresser votre fichier en une taille plus "acceptable" (quoiqu'aujourd'hui avec la taille des disques durs cette question n'est plus vraiment cruciale; pour ma part je préfère maintenant garder les vidéos à leur poids d'origine évitant ainsi la perte de qualité inévitable du transcodage).

Voici comment procéder:
Le DVD est dans le lecteur, lancer VLC et dans Média > Convertir/Enregistrer (ou Ctrl + R) > Onglet Disque > cocher "No Disc menus"; clic sur "Convertir/Sauvegarder" > Définir le fichier de destination avec ici une extension compatible avec le profil; ne pas cocher "Afficher le flux de sortie"; déterminer le profil voulu, c.a.d les codecs > Démarrer.

La dernière fenêtre ressemble à ceci :

VLC-Options d'enregistrement d'un DVD

A noter :

  • "No disc menus" permet, comme on peut le deviner, d'éviter la partie menu qui boucle en permanence en attendant une action de votre part (choix des langues, lancer le film, un chapitre, les bonus ...)
  • Vous mettez le fichier de destination où vous voulez avec le nom que vous voulez, mais son extension doit être compatible avec les profil/codecs utilisés, sinon vous risquez de râler, en effet le transcodage ne marchera pas mais VLC ne vous le dira pas !  
  • Nous n'affichons pas la sortie ce qui permet d'alléger un peu le travail du processeur qui, ici, ne l'oublions pas fait du transcodage.
  • Malgré l'existence de la case à cocher, je n'ai jamais réussi à avoir un enregistrement du flux brut.

Les résultats

Sur ma configuration (I7 + SSD) et sous W7, pour un enregistrement avec le profil ts, extension fichier .mpg, il m'a fallu 48' pour 1H36' de film, son poids était alors de 708Mo.

Sur la configuration VM Linux Mint 10, pour un enregistrement avec le profil MP4 (le plus passe-partout à l'heure actuelle), il m'a fallu 3H20' ! pour mon film d'1H36' qui ne pesait plus que 442,4Mo ! A noter que sa résolution originale est restée à 720x576 !

3 - Ripper un DVD avec VLC en ligne de commande

Il existe un descriptif, mais en anglais sur http://wiki.videolan.org/Rip_DVD , sa lecture m'a appris certains détails mais tout n'est pas forcément bien actualisé.

Pour ma part, la commande qui permet cette fois l'enregistrement du flux brut est :

  • sous W7 - Invite de commandes (en une seule ligne) :
> "c:\Program Files (x86)\VideoLAN\VLC\vlc.exe" dvdsimple:///d:\
          --sout "#standard{access=file,mux=ts,dst=dvdout.mpg}" vlc://quit
  • sous Linux - Terminal (en une seule ligne) :
$ vlc dvdsimple:///media/cdrom0 
          --sout "#standard{access=file,mux=ts,dst=dvdout.mpg}" vlc://quit

A noter :

  • sous Windows, le chemin, nécessairement, complet de vlc.exe peut être différent pour vous
  • dvdsimple est l'équivalent de "No disc menus"; sous Windows d: est l'emplacement de mon lecteur DVD, il peut être différent pour vous; sous Linux /media/cdrom0 est l'emplacement du lecteur DVD sous une Debian, sous Linux Mint 10 ou encore sous Mandriva 2012 il se trouve sous /media/<Titre du DVD>, donc là aussi cela peut être différent pour vous.
  • #standard : J'avoue ne pas encore avoir bien compris la différence entre ces options #standard, #transcode et #duplicate. A priori le premier permet le streaming sur le réseau ou un encodage dans un nouveau fichier, le second permet de changer à la volée le débit de sortie, le codec audio et/ou vidéo, et enfin le 3ième permet de créer un nouveau flux de sortie pouvant être traité de manière différente.
  • dst = fichier de destination, vous mettez le nom que vous souhaitez mais vous lui mettez obligatoirement l'extension .mpg. Ici vous retrouverez votre fichier dvdout.mpg sous le répertoire d'où vous avez lancé la commande.
  • vlc://quit permet l'arrêt de l'enregistrement lorsque le film est terminé.
  • Sur ma configuration (I7 + SSD) 1H de film est enregistrée en 15' et le poids d'1H36' de film est de près de 6Go

Rappel :

La ligne de commande offre des possibilités innombrables. Pour la maîtriser, le mieux est d'en comprendre la syntaxe.  Le document La ligne de commande sous VLC 0.8.5 (cf. paragraphe "3 - En savoir plus" de la page "VLC - Généralités") est, je trouve, une très bonne entrée en matière.

4 - Question(s) que vous m'avez posées (ou pas)

Les 3 questions qui suivent sont inspirées d'une question d'Alain qui souhaitait 'automatiser' la sauvegarde de ses 150 DVD.

 

4.1 - Comment ripper un DVD dans la langue désirée ?

En effet enregistrer un DVD multi-langue sans passer par le menu du DVD vous donne un fichier en ... anglais (le plus souvent je pense). Et pourtant dans la documentation de VLC il me semble avoir lu quelque part que l'enregistrement se faisait dans la langue locale du PC.

Un coup d'oeil sur le document La ligne de commande sous VLC 0.8.5 page 31 donne 2 options: --audio-language=fr et sub-language=en, plus pratique (enfin je trouve) que l'autre possibilité --audio-track=1 et --sub-track=1 (ce qui sur mon DVD de test donne le même résultat que les 2 commandes précédentes).

La ligne de commande pour ripper en français devient donc (testée sous W7 64b, VLC 2.1.5):

c:\Program Files (x86)\VideoLAN\VLC\vlc.exe" dvdsimple:///d:\ --audio-language=fr 
    --sout "#standard{access=file,mux=ts,dst=dvdout.mpg}" vlc://quit"

 

4.2 - Comment ripper un DVD avec un sous-titre ?

C'est vrai que pour perfectionner mon anglais, j'aimerai bien me garder la possibilité de regarder le film en français sous-titré en anglais ou vice-versa (anglais est un exemple, si vous préférez une autre langue et qu'elle est disponible sur votre DVD cela marche aussi ;-)

Pour les sous-titres, j'ai du chercher un peu (cf ci-dessous), car il faut passer par transcode, ce qui donne au final:

c:\Program Files (x86)\VideoLAN\VLC\vlc.exe" dvdsimple:///d:\ --audio-language=fr --sub-language=en
    --sout "#transcode{scodec=dvbs}:file{dst=dvdout.ts,no-overwrite}" --sout-keep vlc://quit"

Note:

  • L'extension a changé (laisser mpg ne fonctionnera pas);
  • je ne sais pas à quoi sert --sout-keep. Sans, cela avait l'air de fonctionner aussi. Cela doit intervenir sur la fin du DVD mais je n'ai pas été jusque là.

Testée sous W7 64b, VLC 2.1.5 avec mon DVD de test qui proposait 3 langues: en, fr et it, cela fonctionne.

Il est vrai que ces sous-titres m'ont résisté un peu. Sans le #transcode, lorsque je relisais le fichier vidéo, je voyais bien la piste dans Sous-titres > Piste sous-titres mais activée elle ne s'affichait pas !? C'est en essayant avec le GUI que j'ai fini par trouver la bonne commande.

4.3 - Comment ripper un DVD dans la langue désirée et avec un sous-titre via l'interface graphique ?

Pour faire la même chose que les points 4-1 et 4-2 avec le GUI (interface graphique), il faut passer par le menu de VLC:

  1. Ouvrir un disque > cocher Pas de menus, et dans 'Audio et sous titres' indiquer ce que l'on veut (mais les bons chiffres sont à chercher, à priori = piste Audio -1) puis aller à Diffuser (J'ai eu des soucis avec Convertir, et de plus Diffuser indique à la fin, la ligne de commande exécutée, c'est comme cela que j'ai trouvé la commande qui me manquait pour les sous-titres (cf. paragraphe précédent)
  2. > Source (RAS) > Destination: Ajouter le fichier et indiquer son nom sans extension (VLC le fera pour vous) > Options de transcodage
  3. > Profil = Video - H264+AAC(TS) dont on configure les codecs vidéo et audio en cochant 'Conserver ...', pour les Sous-titres je prends le Codec DVB subtitle, enregistrer et > Options où il n'y a rien à faire si ce n'est s'inspirer de la ligne de commande générée !

Toujours sous W7 64b, VLC 2.1.5 avec mon DVD de test j'obtiens bien le résultat escompté (j'ai du cependant activer les sous-titres après la première phrase prononcée et ce malgré une activation par défaut)

Comme pour les 2 points précédents, je n'ai pas poussé les tests sur d'autres DVD ou sous Linux faute de temps, mais en cherchant un peu on doit pouvoir trouver une solution semblable si ce n'est identique.

Actions sur le document