Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
tutoriel:extraire_piste_audio_dvd [Le 11/12/2010, 23:17]
Gemnoc créée, déplacée depuis http://doc.ubuntu-fr.org/extraire_piste_audio_dvd. Suppression des rubriques Installation et Désinstallation. Cette page est en fait un tuto, pas une page de programme.
tutoriel:extraire_piste_audio_dvd [Le 11/09/2022, 12:18] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>Maverick audio tutoriel}}+{{tag>Bionic Xenial ​tutoriel ​audio dvd}}
 ---- ----
 ====== Extraire une piste audio d'un DVD ====== ====== Extraire une piste audio d'un DVD ======
  
- +Il est possible d'​extraire la bande son d'un DVD, par piste ou par chapitre, en utilisant la ligne de commande.
-Il est possible d'​extraire la bande son d'un DVD, par piste ou par chapitre, en utilisant la ligne de commande. ​+
  
 Si vous n'​êtes pas à l'aise avec la ligne de commande, orientez-vous vers le logiciel [[:xcfa]] qui propose les mêmes fonctionnalités,​ mais via une interface graphique. Si vous n'​êtes pas à l'aise avec la ligne de commande, orientez-vous vers le logiciel [[:xcfa]] qui propose les mêmes fonctionnalités,​ mais via une interface graphique.
Ligne 12: Ligne 11:
   * Disposer des [[:​sudo|droits d'​administration]].   * Disposer des [[:​sudo|droits d'​administration]].
   * Disposer d'une connexion à Internet configurée et activée.   * Disposer d'une connexion à Internet configurée et activée.
-  * Avoir [[:tutoriel:​comment_installer_un_paquet#​installer_un_paquet_present_dans_les_depots_recommande|installé les paquets]] **[[apt://lsdvd,transcode|lsdvd et transcode]]**.+  * Être en mesure de [[:lire_un_dvd|lire le DVD]]
 +=====Installation===== 
 +<​note>​Transcode n'est plus disponible dans les dépôts officiels depuis ​[[:​Focal]]((https://packages.ubuntu.com/​search?​suite=default&​section=all&​arch=any&​searchon=names&​keywords=transcode)).</​note>​
  
-===== Identification des pistes ​=====+[[:​tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>​lsdvd,​transcode|lsdvd et transcode]]**. 
 +=====Utilisation=====
  
-Insérez le DVD dans votre lecteur et ouvrez une console. Votre DVD est monté à l'​emplacement ///​media/​NOM_DU_DVD//​+==== Identification des pistes ====
  
-Afin d'​identifier la piste audio à extraire, ​vous pouvez obtenir sa table des matières à l'aide de la commande lsdvd :+Afin d'​identifier la piste audio à extraire, ​insérez le DVD dans votre lecteur puis, dans la [[:​console]],​ tapez la commande lsdvd :
 <code bash>​lsdvd</​code>​ <code bash>​lsdvd</​code>​
  
-Le résultat ​sera du format suivant ​+Le résultat ​de la commande est alors :
 <​code>​ <​code>​
 libdvdread: Using libdvdcss version 1.2.10 for DVD access libdvdread: Using libdvdcss version 1.2.10 for DVD access
-Disc Title: ​BENJAMIN_BIOLAY_LIVE +Disc Title: ​NOM_DU_DVD 
-Title: 01, Length: 00:00:10.200 Chapters: 01, Cells: 01, Audio streams: 08, Subpictures:​ 32 +Title: 01, Length: 00:00:13.100 Chapters: 01, Cells: 01, Audio streams: 08, Subpictures:​ 32 
-Title: 02, Length: 01:31:29.076 Chapters: 18, Cells: 18, Audio streams: 01, Subpictures:​ 00+Title: 02, Length: 01:15:46.084 Chapters: 18, Cells: 18, Audio streams: 01, Subpictures:​ 00
 Longest track: 02 Longest track: 02
 </​code>​ </​code>​
  
 +Les informations délivrées sont les suivantes :
 +  * Le nom du DVD, monté dans l'​[[:​arborescence]] du système de fichiers à l'​emplacement ///​media/​NOM_DU_DVD//​ ;
 +  * Le premier titre ne contient qu'un chapitre, d'une durée de 13 secondes (qui correspond à l'​introduction du DVD) ;
 +  * Le second titre contient 18 chapitres pour une durée totale de 1h15 (qui correspondent aux musiques). C'est ce titre qu'il faut utiliser pour extraire les musiques.
 +
 +==== Syntaxe d'​extraction ====
 +
 +Le logiciel transcode est capable d'​extraire les pistes du DVD et de les transcoder en fichiers audio. Il dispose à cet effet de nombreuses options, sa [[http://​www.transcoding.org/​cgi-bin/​transcode?​Transcode_Command_Line_Options|syntaxe]] est donc relativement complexe.
 +
 +Voici la commande à utiliser pour extraire la troisième piste du second chapitre au format mp3 :
 +
 +<code bash>​transcode -i /​media/​NOM_DU_DVD/​ -x dvd,dvd -T2,3 -a 0 -y null,tcaud -m /​home/​omnisilver/​Musique/​DVD/​Live3.mp3</​code>​
 +
 +Les arguments ont le rôle suivant :
 +  * -i : indique le média à importer dans l'​arborescence de votre système;
 +  * -x : le type de média;
 +  * -T : le titre et le chapitre;
 +  * -a : la piste audio;
 +  * -y : le format de sortie vidéo et audio (soit null car nous ne voulons pas de vidéo, et tcaud est le nom du module convertissant la musique en le mp3);
 +  * -m : le nom de fichier de sortie.
 +
 +**Syntaxe de 1 commande pour plusieurs pistes à la fois:**
 +Pour extraire les 18 pistes du titre 2, en 18 fichiers (par exemple de format libre .ogg), en une seule ligne de commande:
 +
 +<​code>​for i in {1..18};do transcode -x null,dvd -y null,tcaud -i /dev/sr0 -T 2,$i,1 -a 0 -E 44100,16,2 --lame_preset medium -m /​home/​BIBI/​Musique/​CONCERT/​piste${i}.ogg;​ done</​code>​
 +
 +où les arguments utilisés sont:
 +  * -T 2    : pour sélectionner le titre 2
 +  * for i in {1..18};​do ​   : extraire depuis la piste 1 jusqu'​à la piste 18
 +  * --lame_preset medium: ​     qualité moyenne. Pour une meilleure qualité, remplacer medium par standard ou par extreme (attention la taille du fichier généré augmente beaucoup avec la qualité, ainsi que le temps mis pour encoder)
 +  * piste${i}.ogg :      va générer un fichier piste1.ogg, puis ensuite un fichier piste2.ogg, etc ...
  
-===== Syntaxe d'​extraction =====+Le chemin /home/... est à adapter à votre propre chemin.
  
-C'est le logiciel transcode qui est capable d'​extraire et de transcoder ​les pistes du DVD en fichiers audio. Il dispose à cet effet de nombreuses optionsce qui implique une [[http://​www.transcoding.org/​cgi-bin/​transcode?​Transcode_Command_Line_Options|syntaxe]] relativement complexe. Nous développerons ici uniquement celle qui concerne l'​[[http://​www.transcoding.org/​cgi-bin/​transcode?​Command_Examples/​Audio_Only_Processing|extraction audio]] : +A vous de modifier ​les paramètres ​de ces arguments pour obtenir le résultat que vous désirez (fichier oggetc.).
  
-  * Extraire l'audio du 10eme chapitre du premier titre au format ​ogg:+Pour les types de fichiers non gérés nativement par transcode, il est possible d'extraire ​au format ​WAV (sans perte) et de réencoder dans une deuxième étape, par exemple à l'aide de l'​utilitaire en ligne flac (FLAC est un format de compression audio présentant l'​avantage d'​être sans pertes), lancé dans le répertoire contenant les fichiers wav.
  
-<code bash>​transcode -i /​dev/​dvd ​-x dvd -T 1,10,1 -a 0 -y ogg -m track10.ogg</​code>​+Ce qui donne ici, à considérer que lsdvd -a a permis d'​identifier le titre TITRE, angle ANG (en général:1)audio AUD (choisirautant que possible, la piste stéréo, idéalement LPCM si elle existe), comptant CHAP chapitres (remplacer par les vraies valeurs dans la ligne de commande)... comme celui dont on veut extraire l'​audio en wav (fichiers XXX_01.wav...) avant de les convertir en flac:
  
-Les arguments identifient l'​entrée comme /dvd/dvd (-i), le type de l'​entrée comme un DVD (-x), le titre, le chapitre et l'​angle à encoder, dans ce cas-ci étant le titre 1chapitre 10 et l'​angle de camera 1 (-T)la piste audio est la 0 (-a), le format de sortie est ogg (-y), et pour finir le nom de fichier de sortie est track10.ogg ​-m).+<code bash>​for((x=1;​ x<=CHAP; x++)) do transcode -i /dev/dvd -x dvd -T TITRE,$x,ANG -a AUD -y wav -m XXX_$x.wav;done 
 +flac --best *.wav</​code>​
  
-  * Générer un mp3 du titre 1chapitre 20camera 1+Ceci donnera en sortie les mêmes fichiers compressés sans perteextension .flacavec le meilleur ratio de compression (--best).
  
-<code bash>​transcode -i /dev/dvd -x dvd -T 1,20,1 -a 0 -y raw -m track20.mp3</​code>​+A noter que l'​extraction de pistes audio de DVD video (concerts...) va généralement donner des fichiers musicaux 16bits (jusque làOK!) mais échantillonnés à 48kHz. Ceci pose problème à pas mal de baladeurs qui n'​acceptent en général pas des fréquences d'​échantillonnage supérieures à celle du CD audio (44.1kHz)!
  
-  * Pour extraire la piste audio entière d'un titre (tout les chapitres) en format ogg+Il va donc falloir dans ce cas passer par une étape intermédiaire de ré-échantillonnage,​ qui est assez problématique avec le ratio "​tordu"​ 48/​44.1 ​(entre 96kHz, utilisé pour les master audio et les 48kHz classiques sur DVD, le facteur entier 2 serait par exemple bien plus facile à gérer). Tous les utilitaires permettant cette opération ne sont hélas pas tous égaux, ​en particulier pour ces deux fréquences.
  
-<code bash>​transcode -i /dev/dvd -x dvd -T 1,-1 -a 0 -y ogg -m audiotrack.ogg</code>+Le meilleur existant (en 2011) dans le monde libre n'est en plus hélas pas packagé sous Ubuntu. Il s'agit de ssrc, disponible sur le site de son auteur: 
 +http://shibatch.sourceforge.net/
  
-  * Ou en mp3 (titre 1tous les chapitres+Il est néanmoins aisé de le compiler soit-même ​(si on a installé le paquet "​build-essentials"​voir l'aide correspondante)
-<code bash>transcode -i /dev/dvd -x dvd -1,-1 -a 0 -y raw -m track20.mp3</​code>​+- Le downloader: 
 +<code bash>wget http://shibatch.sourceforge.net/​download/​ssrc-1.30.tgz</​code>​
  
-  * Ou bien si vous préférez en fichier wav (titre ​1, chapitre 20)+- L'​extraire/​compiler:​ 
 +<code bash>tar -xjf ssrc-1.30.tgz 
 +cd ssrc-1.30 
 +make all 
 +sudo mv ssrc /​usr/​local/​bin</​code>​
  
-<code bash>transcode ​-i /​dev/​dvd ​-x dvd -T 1,20 -a 0 -y wav -m track20.wav</​code>​+Il faudra dans ce cas ajouter l'​appel à ssrc entre l'​extraction au format wav et la conversion au format flac: 
 +<code bash>ssrc --rate 44100 fichier_original_48k.wav fichier_44_1k.wav</​code>​
  
 +Le mieux étant bien entendu de scripter l'​affaire,​ ssrc n'​acceptant qu'un fichier unique en entrée (pas de wildcard...):​ Pas très convivial, mais c'est le prix à payer pour avoir le meilleur down-sampling libre existant.
  
-Il vous suffit ​d'adapter la commande ​à vos besoins.+Par exemple, si on a extrait une suite de fichiers XXX.wav dans un répertoire avec transcode, le script suivant (fichier à sauver sous ssrc44k par exemple et à rendre exécutable:​ chmod +r ssrc44k) placé sous son home appelé dans ce répertoire ​d'extraction (~/ssrc44k) va downsampler en XXX_44k.wav les fichiers d'​origine,​ les renommer avec le nom d'​origine (attention, ceux en 48kHz seront perdus, travailler au besoin sur une copie ou modifier le script) et en faire des flac, avant de supprimer les wav qui ne servent plus à rien, flac étant sans perte donc parfait pour l'​archivage (et reconversion sur demande): 
 +<code bash>#​!/​bin/​bash 
 +#flac -d *.flac # Set this line if we have to decode flac to wav before downsample 
 +FILES=*.wav 
 +for f in $FILES 
 +do 
 +  echo "​Processing $f file..."​ 
 +  # take action on each file. $f store current file name 
 +  ssrc --rate 44100 "​$f"​ "​44k_$f"​ 
 +  mv -f "​44k_$f"​ "​$f"​ # Set to overwrite 48kHz original files, unset to encode both... 
 +done 
 +flac -f --best --verify *.wav 
 +\rm -rf 44k_*.wav # Set this to autoremove intermediate 44k wav files</​code>​
  
 +Seul bémol: ssrc ne semble pas aimer les échantillons "​drc"​ que l'on retrouve parfois (lsdvd -a l'​indique au chapitre "​quantization",​ en lieu et place des habituels "16 bits"​):​ Il lui faut des échantillons 8/16/24 bits.
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
  
-  * **(en)** [[http://​www.transcoding.org/​cgi-bin/​transcode?​Transcode_Wiki|Site officiel de l'​outil Transcode]]+  * **(en)** [[http://​www.transcoding.org/​cgi-bin/​transcode?​Transcode_Wiki|Site officiel de l'​outil Transcode]]
 +  * **(fr)** [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=362504|Une assistance sur le forum d'​ubuntu-fr]] (qui m'a permis de mettre à jour la syntaxe devenue obsolète)
  
 ---- ----
  • tutoriel/extraire_piste_audio_dvd.1292105857.txt.gz
  • Dernière modification: Le 18/04/2011, 14:51
  • (modification externe)