De la m�me fa�on, l'encodage depuis un CD se d�roule en deux �tapes. Tout d'abord, les donn�es extraites du CD sont enregistr�es au format WAV, puis le fichier WAV est converti en MP3. Il existe deux types d'encodeurs, en ligne de commande ou sous X. Ils r�alisent le m�me travail, mais ceux qui utilisent X sont plus faciles � utiliser et plus beaux.
L� encore, v�rifiez que vous avez suffisamment de place sur votre disque dur.
J'ai �crit un petit script Perl pour extraire et encoder des pistes d'un CD.
#!/usr/bin/perl
if ($ARGV[0] ne "") {
$count = 1;
do {
$cdcap = system("cdparanoia", $count, "/mp3/cdda.wav");
$track = "$ARGV[1]/track".$count.".mp3";
$enc = system("bladeenc /mp3/cdda.wav $track -br 256000");
$count++;
}
until $count> $ARGV[0];
exit;
}
else {
print "Usage cdriper [nombre de pistes] [r�pertoire cible]\n\n";
}
Notez que ce script est tr�s rudimentaire et ignore compl�tement les
perfectionnements tels que la v�rification d'erreur ou l'utilisation de
CDDB. Am�liorez-le tant que vous voudrez :-)La ligne int�ressante est
$cdcap = system("cdparanoia", $count, "/mp3/cdda.wav");
Cette ligne appelle l'extracteur de CD audio, cdparanoia, qui convertit les donn�es brutes extraites d'un CD en fichier WAV.
J'utilise cdparanoia, mais vous pourriez aussi bien utiliser cdda2wav. Dans ce cas, cette ligne devient :
$cdcap = system("cdda2wav", $count, "/mp3/cdda.wav");
Les options sont $count
(le nombre de pistes � extraire), puis le chemin
d'acc�s des fichiers WAV produits. Dans mon exemple, il s'agit de mon disque
r�serv� aux MP3.
Les fichiers WAV sont ensuite convertis en MP3 avec Bladeenc.
J'ai �crit ce script pour extraire tout un CD sans devoir extraire et encoder chaque piste s�par�ment, et sans utiliser le traitement par lots de cdparanoia, qui extrait tout le disque, ce qui peut occuper jusqu'� 600 Mo.
Si vous pr�ferez utiliser Lame ou Gogo, remplacez la ligne
$enc = system("bladeenc /mp3/cdda.wav $track -br 256000");
$enc = system("lame /mp3/cdda.wav $track -b 256");
$enc = system("gogo /mp3/cdda.wav $track -b 256");
Voici une liste des options disponibles pour chacun de ces encodeurs :
Bladeenc
BladeEnc 0.91 (c) Tord Jansson Homepage: http://bladeenc.mp3.no =============================================================================== BladeEnc is free software, distributed under the Lesser General Public License. See the file COPYING, BladeEnc's homepage or www.fsf.org for more details. Usage: bladeenc [options globales] entr�e1 [sortie1 [options]] entr�e2 ... Options g�n�rales : -[kbit], -br [kbit] D�bit du flux MP3 en kbit/s. La valeur par d�faut est 128 (64 pour une sortie mono) -crc Inclure un code de v�rification dans le fichier MP3 -delete, -del Effacer le fichier WAV apr�s un encodage r�ussi -private, -p Positionner le drapeau priv� du fichier MP3 -copyright, -c Positionner le drapeau copyright du fichier MP3 -copy Enlever le drapeau original du fichier MP3 -mono, -dm Produire un MP3 mono � partir des deux canaux combin�s -leftmono, -lm Produire un MP3 mono � partir du canal de gauche -rightmono, -rm Produire un MP3 mono � partir du canal de droite -swap Intervertir les canaux st�r�o de droite et de gauche -rawfreq=[freq] Fr�quence du flux brut (RAW). La valeur par d�faut est 44100 -rawbits=[bits] Nombre de bits d'�chantillonage pour chaque canal du flux brut. La valeur par d�faut est 16 -rawmono Les flux bruts sont mono, pas st�r�o -rawstereo Les flux bruts sont st�r�o (valeur par d�faut) -rawsigned Les flux bruts sont sign�s (valeur par d�faut) -rawunsigned Les flux bruts ne sont pas sign�s -rawbyteorder=[order]Ordre des bits du flux brut : LITTLE ou BIG. -rawchannels=[1/2] Nombre de canaux pour les flux bruts. M�me effet que -rawmono ou -rawstereo, respectivement. Options uniquement globales : -quit, -q Quitte sans attendre l'appui sur une touche une fois l'encodage termin� -outdir=[dir] Sauve les MP3 dans le r�pertoire sp�cifi� -quiet D�sactive les sorties � l'�cran -nocfg Ignore le fichier de configuration -prio=[prio] Priorit� de BladeEnc. Les valeurs possibles sont HIGHEST, HIGHER, NORMAL, LOWER, LOWEST(d�faut) et IDLE -refresh=[rate] Fr�quence de mise � jour de l'indicateur de progression. 1=rapide, 2=valeur par d�faut -progress=[0-8] Quel indicateur de progression utiliser. 0=aucun, 1=d�faut. Les fichiers d'entr�e et de sortie peuvent �tre remplac�s par STDIN et STDOUT, respectivement.
Lame
LAME version 3.50 (www.sulaco.org/mp3) GPSYCHO: GPL psycho-acoustic model version 0.74. USAGE : lame [options] <entr�e> [sortie] <entr�e> et/ou <sortie> peuvent �tre "-", c'est � dire stdin/stdout. OPTIONS : -m mode (s)t�r�o, (j)oint, (f)orce ou (m)ono (par d�faut j) force = force ms_stereo sur toutes les voix. Plus rapide et utilise les seuils de masquage sp�ciaux Mid & Side -b <bitrate> positionne le d�bit du flux, par d�faut 128 kbps (pour les VBR, il s'agit du d�bit minimum autoris�) -s sfreq fr�quence d'�chantillonage du fichier d'entr�e (en kHz) - par d�faut 44.1 --resample sfreq fr�quence d'�chantillonage du fichier de sortie (en kHz) - par d�faut, celle de l'entr�e sfreq --mp3input le fichier d'entr�e est un fichier MP3 --voice mode exp�rimental 'voice' -v utilise un d�bit variable (VBR) -V n param�tre de quali� pour le VBR. Par d�faut n=4 0=meilleur qualit�, fichiers plus gros. 9=plus petits fichiers -t d�sactive la marque d'information VBR Xing --nohist d�sactive l'affichage de l'histogramme VBR -h utilise (peut-�tre) les am�liorations de qualit� -f mode rapide (basse qualit�) -k d�sactive l'extinction sfb=21 -d permet diff�rents types de blocs pour les canaux --athonly utilise seulement l'ATH pour le masquage -r l'entr�e est du pcm brut -x force l'inversion des bits de l'entr�e -a r�duit le flux de st�r�o vers mono pour en encodage mono -e emp post-correction n/5/c (obsol�te) -p protection d'erreur. Ajoute un code d'erreur 16 bits � chaque s�quence. (le code d'erreur est calcul� correctement) -c ajoute la marque de copyright -o ajoute la marque non original -S n'affiche pas d'indicateur de progression, ni d'histogramme VBR Sp�cifier l'une des options suivantes ajoutera les marques ID3 --tt <title> titre le la chanson (maximum 30 caract�res) --ta <artist> artiste qui a fait la chanson (maximum 30 caract�res) --tl <album> album d'o� provient la chanson (maximum 30 caract�ress) --ty <year> ann�e au cours de laquelle la chanson a �t� faite (maximum 4 caract�res) --tc <comment> information suppl�mentaires (maximum 30 caract�ress) MPEG1 samplerates(kHz): 32 44.1 48 bitrates(kbs): 32 48 56 64 80 96 112 128 160 192 224 256 320 MPEG2 samplerates(kHz): 16 22.05 24 bitrates(kbs): 8 16 24 32 40 48 56 64 80 96 112 128 144 160
Gogo
GOGO-no-coda ver. 2.24 (Feb 12 2000) Copyright (C) 1999 PEN@MarineCat and shigeo Special thanks to Keiichi SAKAI, URURI, Noisyu and Kei This is based on LAME3.29beta and distributed under the LGPL usage gogo inputPCM [outputPCM] [options] inputPCM est le fichier d'entr�e wav Si input.wav est `stdin', alors l'entr�e est stdin outputPCM est le fichier de sortie mp3 (facultatif) Options -b kbps d�bit [kpbs] -br bps d�bit [ bps] -silent ne pas afficher d'indicateur de progression -off optimisation {3dn,mmx,kni(sse),e3dn} -v {0,..,9} VBR [0:haute qualit� 9:haute compression] Il n'est conseill� d'utiliser cette option avec l'option -b que pour une entr�e PCM brut -offset bytes saute la taille de l'en-t�te -8bit PCM 8~bits [par d�faut PCM 16~bits] -mono PCM mono [par d�faut PCM st�r�o] -bswap �change les bits de poids faible et fort pour le PCM 16~bits -s kHz fr�quence du PCM [par d�faut 44.1kHz] -nopsy d�sactive les psycho-acoustiques -m {s,m,j} format de sortie s:st�r�o, m:mono, j:j-st�r�o -d kHz change la fr�quence d'�chantillonage pour le MP3 produit -emh {n,c,5} post-correction -lpf {on,off} filtre 16~kHz [par d�faut utilis� si <= 128~kbps ; non utilis� si>= 160kbps] -test mode test de performance -delete supprime le fichier d'entr�e apr�s l'encodage
RipEnc effectue la m�me t�che que le code ci-dessus, mais est �crit en shell et est plus facile � utiliser :-)
Voici � quoi il ressemble :
RipEnc version 0.7, Copyright (C) 1999 Michael J. Parmeley <mjparme@asde.com>, RipEnc comes with ABSOLUTELY NO WARRANTY Il n'y a actuellement PAS de processus d'encodage en t�che de fond Votre fichier encode.log fait 982607 octets. <Entrer 'd' pour les d�tails, 'v' pour voir le fichier journal d'encodage ou 'del' pour supprimer le fichier journal> 1) Changer le r�pertoire de travail.............[/megajukebox/tmp] 2) Choisir l'encodeur...........................[lame] 3) Choisir l'extracteur.........................[cdparanoia] 4) Choisir l'outil de marquage ID3..............[aucun] 5) Basculer entre le nommage manuel ou par CDDB.[manuel] 6) Positionner la variable XMCD_LIBDIR pour CDA.[/var/X11R6/lib/xmcd] 7) Positionner la convention de nommage pr�f�r�e[artist-name_of_song.mp3] 8) Extraire le CD en entier ?...................[non] 9) Positionner l'option petit disque dur ?......[non] 10) Veuillez s�lectionner votre Cd-Rom..........[/dev/cdrom] 11) Positionner le d�bit des MP3 encod�s........[256] 12) Lister les fichiers du r�pertoire de travail 13) D�marrer 14) A propos 15) Sortir ?
Cd2mp3 est un encodeur CDDA vers MP3 en un seul passage. Il convertit une piste audio en MP3 sans produire de fichier interm�diaire.
Voici � quoi il ressemble en fonctionnement :
[dj@megajukebox]$ cd2mp3 options ALL Using language: 1 - English. Translator: Gustavo Sverzut Barbieri(k-s) <gsbarbieri@hotmail.com> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Cd2Mp3 1.0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Author: Gustavo Sverzut Barbieri (k-s) <gsbarbieri@hotmail.com.br> *** device: -D/dev/cdrom type: -Icooked_ioctl *** audio device: /dev/dsp *** preset: tape *** copyright: Yes *** author: *** album: recording: '1' as 'track-1.mp3' (wait) Ok! (recorded) recording: '2' as 'track-2.mp3' (wait)
Vous pouvez bien sur lui fournir des options sur la ligne de commande dont voici la liste :
dj@megajukebox]$ cd2mp3 --help %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Cd2Mp3 1.0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Author: Gustavo Sverzut Barbieri (k-s) <gsbarbieri@hotmail.com.br> Usage: cd2mp3 options <track_number>="<track name>" ... <track_number>="<track name>"or: cd2mp3 options ALL (to record all tracks) or: cd2mp3 options LIST=<reclist_path> (to read pairs: <track_number>="<track name>" from a file) ou: cd2mp3 options PLAY=<track_number> VOL=[0..100] (only plays the track) Options: DEV=<cdrom_device> (default: /dev/cdrom) DEV_TYPE=[generic_scsi|cooked_ioctl] (default: cooked_ioctl) AUDIO_DEV=<audio_device> (default:/dev/dsp) LANGUAGE=<language_number> (LANGUAGE=help to see supported languages) COPYRIGHT=[YES|NO] PRESET=[phone|voice|fm|tape|hifi|cd|studio] (PRESET=help will give more info) ALBUM="<album's title>" AUTHOR="<author's name>"
Les encodeurs en mode graphique offrent toutes les fonctionnalit�s de ceux en mode console, mais englobe le tout dans une interface agr�able et facile � utiliser. Grip et RippperX sont semblables d'utilisation, tous deux permettent de choisir une, plusieurs ou toutes les pistes d'un CD et de les convertir. Ils offrent aussi le support CDDB qui vous permet de r�cup�rer les informations sur l'album et les pistes � partir d'un serveur. Ceci vous �vite d'avoir � les saisir � la main.
Dans la section sur l'encodage, j'ai mentionn� 3 encodeurs diff�rents : bladeenc, lame et gogo. La principale diff�rence se situe dans leur performance en encodage (bien qu'il y ait aussi des diff�rences dans les options disponibles list�es auparavant).
Prenons un petit exemple : j'ai extrait une piste d'un CD, puis l'ai encod� avec chaque encodeur. Tous les encodeurs ont �t� ex�cut� dans les m�me conditions syst�me et ont tous produit des MP3 st�r�o.
[dj@megajukebox]$ ls -l cdda.wav -rw-rw-r-- 1 dj dj 59823164 Feb 10 00:56 cdda.wav [dj@megajukebox]$ bladeenc cdda.wav -br 256 BladeEnc 0.91 (c) Tord Jansson Homepage: http://bladeenc.mp3.no =============================================================================== BladeEnc is free software, distributed under the Lesser General Public License. See the file COPYING, BladeEnc's homepage or www.fsf.org for more details. Files to encode: 1 Encoding: ../test.wav Input: 44.1 kHz, 16 bit, stereo. Output: 128 kBit, stereo. Completed. Encoding time: 00:05:58 (0.78X) All operations completed. Total encoding time: 00:05:58 -------------------------------------------------------------------------------- [dj@megajukebox]$ lame cdda.wav -b 256 LAME version 3.50 (www.sulaco.org/mp3) GPSYCHO: GPL psycho-acoustic model version 0.74. Encoding ../test.wav to ../test.wav.mp3 Encoding as 44.1 kHz 128 kbps j-stereo MPEG1 LayerIII file Frame | CPU/estimated | time/estimated | play/CPU | ETA 10756/ 10756(100%)| 0:02:28/ 0:02:28| 0:02:29/ 0:02:29| 1.9074| 0:00:00 -------------------------------------------------------------------------------- [dj@megajukebox]$ gogo cdda.wav -m s -b 256 GOGO-no-coda ver. 2.24 (Feb 12 2000) Copyright (C) 1999 PEN@MarineCat and shigeo Special thanks to Keiichi SAKAI, URURI, Noisyu and Kei MPEG 1, layer 3 stereo inp sampling-freq=44.1kHz out sampling-freq=44.1kHz bitrate=256kbps inp sampling-freq=44.1kHz out sampling-freq=44.1kHz bitrate=128kbps input file `../test.wav' output file `../test.mp3' { 10751/ 10755} 100.0% ( 2.94x) re:[00:00:00.03] to:[00:01:35.42] End of encoding time= 95.430sec
Il semble que gogo ait un algorithme mieux optimis� pour l'encodage que bladeenc ou lame.
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:20