Le seul préalable :
# apt install ffmpeg
Tout d'abord, on concatène les fichiers VOB qui nous intéresse après avoir monter le DVD :
# mount /dev/sr0 /mnt
$ cat /mnt/VIDEO_TS/VTS_01_1.VOB /mnt/VIDEO_TS/VTS_01_2.VOB /mnt/VIDEO_TS/VTS_01_3.VOB /mnt/VIDEO_TS/VTS_01_4.VOB > /home/user/Vidéos/monfilm.VOB
On repère les flux vidéos (généralement le 1), audios et sous-titres :
$ ffmpeg -i monfilm.VOB
Le flux vidéo est généralement le premier, on repère ensuite les flux audio et le flux de sous-titre si besoin. Ici, on suppose que l flux video est 0:1, les flux audios 0:10 (cantonnais) et 0:11 (français). Le flux sous-titre est le 0:3.
On encode ainsi :
$ ffmpeg -i monfilm.VOB -map 0:1 -map 0:10 -map 0:11 -map 0:3 -c:v libx264 -preset slow -crf 16 -c:a copy -c:s copy -metadata:s:a:0 language=yue -metadata:s:a:1 language=fra -metadata:s:s:0 language=fra mon_film.mp4
-map 0:1 donne l'ordre des flux de la future vidéo. Le premier flux sera la vidéo (flux 0:1 du DVD), le deuxième sera l'audio en cantonnais (flux 0:10) puis l'audio en français (0:11) et enfin les sous-titres (0:3).
-c:v libx264 : le codec vidéo sera h264
-c:a copy : on copie le flux audio
-c:s copy : on copie le flux de sous-titres
-preset veryslow : vitesse d'encodage, inversement proportionnelle à la qualité de l'image. Les options sont : ultrafast, superfast, fast, medium, slow, slower, veryslow. Medium est le réglage par défaut.
-crf : définit le niveau de qualité (q). L'échelle va de 0 à 51 (petit nombre = + de temps de calcul)
-metadata:s:a:0 : définit la metadata du flux audio 0 (a:0) avec language =yue (cantonnais), même chose pour le a:1 en français
-metadata:s:s:0 définit la langue des sous-titres (français)
Puis, en dernier, le nom du fichier en sortie.
Une alternative pour encoder en bitrate variable et en deux passes :
ffmpeg -i input.VOB -c:v libx264 -b:v 2000k -pass 1 -an -f null /dev/null && ffmpeg -i input.VOB -c:v libx264 -b:v 2000k -pass 2 -c:a aac-b:a 128k c:s copy output.mp4
En cas d'erreur, remplacer -na par -vsync cfr
La doc complète : https://ffmpeg.org/documentation.html dont le wiki : https://trac.ffmpeg.org/
Une autre doc : https://forum.hardware.fr/hfr/VideoSon/Traitement-Video/encodage-ffmpeg-dummies-sujet_154546_1.htm