
{"id":681,"date":"2023-10-28T23:11:26","date_gmt":"2023-10-28T22:11:26","guid":{"rendered":"https:\/\/tty.tartux.net\/?p=681"},"modified":"2023-10-29T18:02:06","modified_gmt":"2023-10-29T17:02:06","slug":"ripper-un-dvd","status":"publish","type":"post","link":"https:\/\/tty.tartux.net\/?p=681","title":{"rendered":"Ripper un DVD"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Le seul pr\u00e9alable :<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"># apt install ffmpeg<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Tout d'abord, on concat\u00e8ne les fichiers VOB qui nous int\u00e9resse apr\u00e8s avoir monter le DVD :<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"># mount \/dev\/sr0 \/mnt<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">$ 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 &gt; \/home\/user\/Vid\u00e9os\/monfilm.VOB<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">On rep\u00e8re les flux vid\u00e9os (g\u00e9n\u00e9ralement le 1), audios et sous-titres :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">$ ffmpeg -i monfilm.VOB<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le flux vid\u00e9o est g\u00e9n\u00e9ralement le premier, on rep\u00e8re 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\u00e7ais). Le flux sous-titre est le 0:3.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On encode ainsi :<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">$ 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<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\"> -map 0:1 donne l'ordre des flux de la future vid\u00e9o. Le premier flux sera la vid\u00e9o (flux 0:1 du DVD), le deuxi\u00e8me sera l'audio en cantonnais (flux 0:10) puis l'audio en fran\u00e7ais (0:11) et enfin les sous-titres (0:3).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-c:v libx264 : le codec vid\u00e9o sera h264<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-c:a copy : on copie le flux audio<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-c:s copy : on copie le flux de sous-titres<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-preset veryslow : vitesse d'encodage, inversement proportionnelle \u00e0 la qualit\u00e9 de l'image. Les options sont : ultrafast, superfast, fast, medium, slow, slower, veryslow. Medium est le r\u00e9glage par d\u00e9faut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-crf : d\u00e9finit le niveau de qualit\u00e9 (q). L'\u00e9chelle va de 0 \u00e0 51 (petit nombre = + de temps de calcul)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-metadata:s:a:0 : d\u00e9finit la metadata du flux audio 0 (a:0) avec language =yue (cantonnais), m\u00eame chose pour le a:1 en fran\u00e7ais<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-metadata:s:s:0 d\u00e9finit la langue des sous-titres (fran\u00e7ais)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Puis, en dernier, le nom du fichier en sortie.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une alternative pour encoder en bitrate variable et en deux passes :<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">ffmpeg -i input.VOB -c:v libx264 -b:v 2000k -pass 1 -an -f null \/dev\/null &amp;&amp; ffmpeg -i input.VOB -c:v libx264 -b:v 2000k -pass 2 -c:a aac-b:a 128k c:s copy output.mp4 <\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">En cas d'erreur, remplacer -na par -vsync cfr<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La doc compl\u00e8te : https:\/\/ffmpeg.org\/documentation.html dont le wiki : https:\/\/trac.ffmpeg.org\/<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une autre doc : https:\/\/forum.hardware.fr\/hfr\/VideoSon\/Traitement-Video\/encodage-ffmpeg-dummies-sujet_154546_1.htm<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le seul pr\u00e9alable : # apt install ffmpeg Tout d'abord, on concat\u00e8ne les fichiers VOB qui nous int\u00e9resse apr\u00e8s 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 &gt; \/home\/user\/Vid\u00e9os\/monfilm.VOB On rep\u00e8re les flux vid\u00e9os (g\u00e9n\u00e9ralement le 1), audios et sous-titres : $ ffmpeg -i monfilm.VOB Le flux vid\u00e9o [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31,135],"tags":[136,137],"class_list":["post-681","post","type-post","status-publish","format-standard","hentry","category-commande","category-video","tag-ffmpeg","tag-video"],"_links":{"self":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts\/681","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=681"}],"version-history":[{"count":7,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts\/681\/revisions"}],"predecessor-version":[{"id":691,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=\/wp\/v2\/posts\/681\/revisions\/691"}],"wp:attachment":[{"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=681"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=681"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tty.tartux.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=681"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}