7.11. Créer un rip MPEG4 ("DivX") de haute qualité à partir d'un DVD
Précédent | Chapitre 7. Encodage avec MEncoder | Suivant

## 7.11. Créer un rip MPEG4 ("DivX") de haute qualité à partir d'un DVD

Ripper un titre DVD dans un fichier MPEG4 (DivX) de qualité maximale implique de nombreuses considérations. Vous trouverez plus bas un exemple du processus quand il n'y a pas de taille de fichier particulière à atteindre (à part peut être faire tenir le résultat dans 2 Go). `libavcodec` sera utilisé pour la vidéo, et l'audio sera copié sans aucun changement.

### 7.11.1. Découpage

Lisez le DVD et appliquez le filtre de détection de découpage (`-vf cropdetect`) dessus. Cela affiche un rectangle de découpage à utiliser pour l'encodage. Les raisons du découpage sont que beaucoup de films ne sont pas dans un aspect ratio standard (16/9 ou 4/3), ou, pour n'importe quelle raison, l'image ne tient pas dans la trame. Vous pouvez aussi les bandes noires quand vous rippez. Cela améliore la qualité du rip car le bord dur des bandes noires gaspille beaucoup de bits. Un aspect courant est 2.35, ce qui corresponds au cinescope. La plupart des gros blockbusters ont cet aspect ratio.

### 7.11.2. Niveau de qualité

Ensuite vous devez choisir le niveau de qualité désiré. Quand il n'y a pas besoin de garder une certaine taille pour tenir sur des CDs ou autres, en utilisant une quantisation constante, c-a-d. une qualité constante, est un bon choix. De cette façon chaque trame reçoit autant de bits dont elle a besoin pour maintenir la qualité au niveau désiré, mais les multiples passes d'encodage ne sont pas requises. Avec `libavcodec`, vous pouvez obtenir une qualité constante en utilisant `-lavcopts vqscale=`N``. `vqscale=3` devrait vous donner un fichier de taille inférieure à 2Go, suivant la longueur du film et le bruit de la vidéo (plus il y a de bruit, plus il est difficile de comresser.)

### 7.11.3. Fichiers de plus de 2 Go

Si le fichier provenant d'un encodage à qualité constante fait plus de 2 Go, vous devrez créer un index pour pouvoir le voir correctement. Vous devez soit

- lire le film avec `-forceidx` pour créer un index à la volée,

- utiliser `-saveidx` pour écrire l'index dans un fichier une fois pour toute et `-loadidx` pour l'utiliser pour la lecture de ce fichier.

Si cela vous ennuie, vous préférez peut-être garder la taille du fichier inférieure à 2 Go.

Il y a trois façons d'éviter cela. Vous pouvez essayer de réencoder en utilisant `vqscale=4` et voir si la taille et la qualité sont toutes deux acceptables. Vous pouvez aussi utiliser l'encodage 2 passes. Puisque vous copiez la piste audio telle quelle et que donc vous connaissez son débit, et que vous connaissez la durée du film, vous pouvez calculer le débit requis à passer à l'option `-lavcopts vbitrate=`bitrate`` en utilisant l'encodage 3 passes.

La troisième et peut-être la meilleure option serait de légèrement diminuer la résolution. Le 'softening' léger et la perte de détails est visuellement préférable à la pixélisation et autres artéfacts de la compression MPEG. Diminuer la résolution réduit le bruit de l'image, ce qui est bénéfique, car le bruit est difficile à compresser.

### 7.11.4. Désentrelacement

Si le film est entrelaçé, vous pouvez le désentrelaçer pendant le rip. Le faire à cette étape est discutable. L'avantage est que le désentrelaçement pendant la conversion en MPEG4 rends la compression meilleure, et le visionnage plus facile et moins gourmand en CPU sur des moniteurs d'ordinateur car aucun désentrelacement n'est requis.

Savoir si on désentrelace durant l'étape du rip dépends du DVD. Si le DVD est un film, qui a été tourné en 24 fps, vous pouvez très bien désentrelacer pendant le rip. Si, par contre, la vidéo originale est en 50/60 fps, la convertir en vidéo 23.976/25 fps désentrelaçé perdra des informations. Si vous décidez tout de même de désentrelacer, vous pouvez essayer avec différents filtres de désentrelacement, voir http://www.wieser-web.de/MPlayer/ pour des exemples. Un bon point de départ est `-vf pp=fd`.

Si vous découpez et désentrelacez en même temps, désentrelacez avant de découper. En fait, cela n'est pas nécessaire si l'offset de découpage vertical est un multiple de 2 pixels. De toute façon avec certains autres filtres comme le dering vous devez toujours découper en dernier, donc c'est une bonne habitude à prendre de mettre le filtre de découpage en dernier.

### 7.11.5. Telecine inversé

Si vous rippez un DVD PAL, qui est en 25 fps, vous n'avez pas à vous soucier des fps. Utilisez juste 25 fps. D'un autre coté les DVDs NTSC sont en 29.97 fps (souvent arrondi à 30 fps, mais ce n'est pas la vitesse réelle). Si le film à été enregistré pour la TV, vous n'avez encore une fois pas à toucher les fps. Mais si le film a été enregistré sur pellicule, et donc à (exactement) 24 fps, il a été converti en 29.97 fps pour le presser sur DVD. La conversion où 12 champs sont ajoutés toutes les 24 trames est appelée telecine. Pour plus d'infos sur telecine, faites une recherche Google sur "telecine field 23.976".

Au cas où vous ayez un DVD teleciné, vous pouvez inverser le telecine, c-a-d. convertir le film en 23.976 fps (29.97*4/5). Sinon les panoramiques seront sales et horribles. Vous pouvez utiliser `-ofps 23.976` pour cela. Tous ce qui est montré au cinéma est enregistré sur pellicule et nécessite le telecine inverse, les programmes TV n'en ont pas besoin.

### 7.11.6. Redimensionnement et aspect ratio

Pour une meilleur qualité, ne redimensionnez pas les films pendant le rip. Le redimensionnement produit des artéfacts et un fichier plus gros. Les pixels des films DVD ne sont pas carrés, donc ces films incluent des infos sur l'aspect ratio correct. Il est possible d'insérer l'aspect ratio dans l'entête MPEG4 du fichier de sortie. La plupart des lecteurs vidéos ignorent cette info, mais MPlayer l'utilise. Donc si vous comptez utiliser uniquement MPlayer pour lire le fichier rippé, vous n'avez pas besoin de redimensionner le film, passez juste `-lavcopts autoaspect` à MEncoder et tout sera fait automatiquement. Si vous devez redimensionner le film, assurez-vous de garder une taille correcte, surtout si vous découpez.

### 7.11.7. Résumons

Avec tout ce qui a été mentioné plus haut, une commande d'encodage convenable pourrait être

    mencoder dvd://1 -aid 128 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vqscale=3:vhq:v4mv:trell:autoaspect \
      -ofps 23.976 -vf crop=720:364:0:56 -o Harry_Potter_2.avi

Ici `dvd://1` indique le titre DVD à ripper. l'option `-aid 128` dit d'utiliser la piste audio 128, et `-oac copy` de la copier telle quelle. Vous devrez utiliser MPlayer pour trouver les bonnes valeurs pour ces options.

Les options `vhq:v4mv:trell` pour `-lavcopts` améliorent la qualité vis-à-vis du débit, mais rends l'encodage plus long. Surtout `trell` qui ralentit l'encodage mais augmente visiblement la qualité. Si vous voulez désentrelacer, ajoutez un filtre `pp` à `-vf`, par exemple `-vf pp=fd,crop=720:364:0:56` (dans cet ordre). Si vous n'avez pas besoin de telecine inverse, enlevez `-ofps 23.976`.

Précédent | Niveau supérieur | Suivant
7.10. Inter/intra matrices personnalisées | Sommaire | 7.12. Comment gérer le téléciné et le désentrelacement avec les DVDs NTSC