Linux MP3 HOWTO
Philip Kerr
[email protected], traduction Arnaud Gomes-do-
Vale
[email protected]
v1.10, Septembre 1999
Ce document d�crit le mat�riel, les logiciels et les proc�dures �
suivre pour cr�er et �couter des fichiers son _M_P_3 sous Linux.
______________________________________________________________________
Table des mati�res
1. Introduction
2. Copyright
3. O� trouver ce document
4. Remerciements
4.1 D�n�gation
5. Mat�riel n�cessaire et influence sur les performances
6. Logiciels n�cessaires
7. Configuration du syst�me
7.1 Configuration pour la capture d'une source analogique
7.2 Configuration pour l'extraction de son depuis un CD
7.3 Configuration additionnelle
8. Encodage depuis une source audio
9. Encodage depuis un lecteur de CD-ROM
10. Lire des MP3
11. Retours
______________________________________________________________________
11.. IInnttrroodduuccttiioonn
Ce document d�crit le mat�riel, les logiciels et les proc�dures �
suivre pour cr�er et �couter des fichiers son _M_P_3 sous Linux.
22.. CCooppyyrriigghhtt
Ce HOWTO est � Philip Kerr, 1999.
Sauf indication contraire, les droits d'auteur des HOWTO Linux sont
d�tenus par leurs auteurs respectifs. Les HOWTO Linux peuvent �tre
reproduits et distribu�s, en totalit� ou en partie, sur tout m�dia
physique ou �lectronique dans la mesure o� ce copyright est pr�serv�
dans chaque copie. La distribution commerciale en est autoris�e et
encourag�e. L'auteur appr�cierait toutefois qu'on lui notifie
individuellement ce genre de distribution.
Le pr�sent copyright doit couvrir toute traduction, compilation et
autre travail d�riv� des HOWTO Linux. C'est-�-dire qu'il est interdit
d'imposer des restrictions de diffusion allant au del� du pr�sent
copyright � des ouvrages inspir�s, ou incorporant des passages, de
HOWTO Linux. Sous certaines conditions, des exceptions � ces r�gles
seront tol�r�es : contactez le coordinateur des HOWTO � l'adresse
donn�e ci-dessous.
Pour r�sumer, nous souhaitons une diffusion aussi large que possible
de ces informations. N�anmoins, nous entendons garder la propri�t�
intellectuelle (copyright) des HOWTO, et appr�cierions d'�tre inform�s
de leur redistribution.
Pour toute question plus g�n�rale, merci de contacter le coordinateur
des HOWTO, Tim Bynum, � l'adresse �lectronique linux-
[email protected].
33.. OO�� ttrroouuvveerr ccee ddooccuummeenntt
La derni�re version officielle de ce document se trouve sur le site du
Linux Documentation Project <
http://metalab.unc.edu/LDP/>. La
derni�re version fran�aise se trouve �
<
http://www.freenix.org/linux/HOWTO/>.
44.. RReemmeerrcciieemmeennttss
Lors de l'�criture de ce document, je me suis largement inspir� du
_S_o_u_n_d_-_H_O_W_T_O de Jeff Tranter et du _S_o_u_n_d_-_P_l_a_y_i_n_g_-_H_O_W_T_O de Yoo C. Chung.
Merci �galement aux autres auteurs de HOWTO, au travail desquels je me
r�f�re:
� _L_i_n_u_x _S_y_s_t_e_m _A_d_m_i_n_i_s_t_r_a_t_o_r_s _G_u_i_d_e de Lars Wirzenius
� _L_i_n_u_x _N_e_t_w_o_r_k _A_d_m_i_n_i_s_t_r_a_t_o_r_s _G_u_i_d_e d'Olaf Kirch
� _M_u_l_t_i _D_i_s_k _S_y_s_t_e_m _T_u_n_i_n_g _H_O_W_T_O de Stein Gjoen
44..11.. DD��nn��ggaattiioonn
Vous utilisez les informations contenues dans ce document � vos
propres risques. Nous d�clinons toute responsabilit� quant � son
contenu. L'utilisation des concepts, des exemples ou de tout autre
contenu se fait enti�rement � vos propres risques.
Tous les droits sont d�tenus par leurs propri�taires respectifs, sauf
mention contraire explicite. L'utilisation d'un terme dans ce document
ne constitue pas une limitation � sa validit� en tant que marque.
Le fait de citer un produit ou une marque particuli�re ne constitue
pas une adh�sion.
Il est fortement conseill� d'effectuer une sauvegarde de votre syst�me
avant une installation importante ainsi qu'� intervalles r�guliers.
55.. MMaatt��rriieell nn��cceessssaaiirree eett iinnfflluueennccee ssuurr lleess ppeerrffoorrmmaanncceess
Le traitement de son num�rique est une t�che qui demande beaucoup de
ressources, notamment en termes de puissance de calcul et
d'entr�es/sorties. Je recommande fortement une machine de type Pentium
au minimum.
Si vous voulez produire des MP3 � partir d'une source analogique, une
carte son PCI donnera les meilleurs r�sultats. La diff�rence de
performance entre les E/S d'une carte ISA et celles d'une carte PCI
sont importantes (environ 132 Mbps pour du PCI, d'apr�s le _P_C_I_-_H_O_W_T_O).
Naturellement, meilleur est le rapport signal/bruit de la carte,
meilleur est le MP3 produit. J'ai utilis� une Soundblaster PCI128, et
je suis r�cemment pass� � une Soundblaster Live Value. Les deux cartes
ont de bonnes performances, mais la Live a un rapport signal/bruit
sensiblement meilleur, assez bon pour un usage semi-professionnel.
Souvenez-vous de la vieille maxime du traitement de donn�es: si vous
partez de d�chets, vous obtiendrez des d�chets.
Lorsque vous enregistrez du son directement sur un disque dur
(enregistrement d2d, direct-to-disk), les performances du disque et de
son interface sont primordiales. Si vous utilisez un syst�me bas� sur
de l'IDE, le mode 4 ou l'UDMA sont pr�ferables, dans la mesure o� ils
ont un d�bit presque acceptable.
La solution id�ale reste un syst�me � base de SCSI, dont les disques
et les interfaces ont un bien meilleur d�bit, de 5 Mo/s pour le SCSI-1
� 80 Mo/s pour le SCSI ultra-wide. L'IDE peut aller jusqu'� des
vitesses variant de 8,3 Mo/s � 33 Mo/s pour l'Ultra-ATA, mais il
s'agit de cr�tes, les d�bits moyens seront plus faibles. Si vous
pouvez trouver ou vous offrir un disque SCSI AV, allez-y. Les disques
AV ont des t�tes de lecture/�criture optimis�es pour les transferts
continus de donn�es; les autres disques SCSI et IDE ne peuvent
normalement soutenir un transfert de donn�es car leurs t�tes chauffent
trop !
Naturellement, un disque �quip� de cache donnera des r�sultats plus
homog�nes, vu que le cache peut servir de tampon lorsque les t�tes se
d�placent ou ne peuvent pas soutenir le d�bit.
Si votre disque n'est pas � la hauteur, vos enregistrements seront
parsem�s de coupures et d'erreurs lorsque le disque n'arrivera pas �
enregistrer le signal. Si vous enregistrez des �v�nements uniques,
comme des concerts, investissez dans un bon syst�me disque SCSI.
Une charge syst�me �lev�e peut aussi causer des coupures dans des
enregistrements d2d. Des t�ches de fond peuvent momentan�ment occuper
le syst�me. Il vaut mieux r�duire les services au minimum vital,
particuli�rement les services r�seau. Pour plus d'informations �
propos des services r�seau et des scripts de d�marrage, reportez-vous
au _S_A_G et au _N_A_G.
La pagination de la m�moire virtuelle peut aussi provoquer des
erreurs, donc mettez le plus de m�moire physique possible. Je
recommande au moins 32 Mo, mais vous pouvez avoir besoin de plus.
Pour ceux qui veulent tirer le maximum de leur syst�me, optimiser le
noyau ne fera probablement pas de mal.
Alors que le mat�riel ci-dessus vous donnera un syst�me acceptable
pour encoder des donn�es sonores, ne n�gligez pas l'emploi de mat�riel
plus ancien et moins performant si c'est tout ce � quoi vous avez
acc�s.
La configuration d'un syst�me bas de gamme pour donner de bons
r�sultats sera un d�fi int�ressant pour un administrateur syst�me, et
le r�sultat sera probablement une machine Linux plus heureuse.
Un autre point important est la connectique. Des c�bles et des
connecteurs bon march� et de mauvaise qualit� donneront un
enregistrement de mauvaise qualit�. Si votre carte le permet, utilisez
des connecteurs phono (RCA). Des contacts plaqu�s or aideront aussi �
obtenir un son de bonne qualit�. Enfin, s�parez bien les c�bles audio
des c�bles transmettant d'autres donn�es pour �viter les risques
d'interf�rences.
Mais n'oubliez pas, une fortune d�pens�e en c�bles sera perdue si le
reste du syst�me n'est pas optimis�.
Pour encoder des MP3 depuis un CD-ROM, la vitesse et le type du
lecteur d�terminent le temps n�cessaire � l'extraction des
informations. Un lecteur simple vitesse est probablement trop lent
sauf pour les plus patients.
Votre lecteur de CD-ROM doit �tre connect� � votre carte son, ou bien
au moyen du connecteur interne, ou bien en branchant la sortie casque
du lecteur sur l'entr�e ligne de la carte son.
Pour des informations d�taill�es sur la configuration des cartes son,
lisez le _S_o_u_n_d_-_H_O_W_T_O.
66.. LLooggiicciieellss nn��cceessssaaiirreess
La conversion de son en MP3 se fait normalement en deux �tapes.
D'abord, le son est enregistr� au format WAV, puis le WAV est converti
en MP3. Le support du son que vous voulez encoder, CD ou
enregistrement direct, d�terminera les logiciels n�cessaires � la
production du fichier WAV.
Si vous voulez enregistrer depuis une source sonore, vous aurez besoin
d'un programme pour lire les donn�es sur l'entr�e de votre carte son
et les sauvegarder au format WAV. Voici quelques logiciels utiles.
_W_a_v_r_e_c
Wavrec fait partie du paquetage Wavplay, qui peut �tre t�l�charg�
sur :
<
ftp://metalab.unc.edu/pub/Linux/apps/sound/players/>
Pour convertir des CD audio au format WAV (extraction de CD) :
_C_D_D_A_2_W_A_V
<
http://metalab.unc.edu/pub/Linux/apps/sound/cdrom/>
_C_d_p_a_r_a_n_o_i_a
<
http://www.xiph.org/>
Pour convertir les fichiers WAV au format MP3 :
_B_l_a_d_e_'_s _M_P_3 _E_n_c_o_d_e_r
<
http://bladeenc.cjb.net>
Pour lire les MP3, il vout faut un lecteur :
_X_m_m_s _(_a_n_c_i_e_n_n_e_m_e_n_t _X_1_1_A_m_p_)
<
http://www.xmms.org>
_X_a_u_d_i_o
<
http://www.xaudio.com>
Vous aurez peut-�tre �galement besoin d'un mixeur ; Xmixer, inclus
dans la plupart des distributions, fonctionne bien.
77.. CCoonnffiigguurraattiioonn dduu ssyysstt��mmee
Cette section d�crit les bases de la configuration de Linux en vue de
l'enregistrement de son depuis une source analogique ou un CD audio.
J'ai pris comme base mon syst�me Intel sous Red Hat 5.2, mais cette
section devrait �tre raisonnablement ind�pendante de la distribution
utilis�e. Je traiterai prochainement de la plate-forme Sparc. Si ce
HOWTO vous est utile avec d'autres types de mat�riel, merci de me
contacter.
Naturellement, une carte son en �tat de marche est un pr�-requis
raisonnable. Pour cela, je vous invite � lire l'excellent _L_i_n_u_x _S_o_u_n_d
_H_O_W_T_O de Jeff Tranter et le _L_i_n_u_x _S_o_u_n_d _P_l_a_y_i_n_g _H_O_W_T_O de Yoo C. Chung.
Ces deux HOWTO d�crivent l'art et la mani�re de configurer le son sous
Linux beaucoup mieux que je ne saurais le faire.
77..11.. CCoonnffiigguurraattiioonn ppoouurr llaa ccaappttuurree dd''uunnee ssoouurrccee aannaallooggiiqquuee
Pour commencer, configurez votre �quipement audio. Il existe de
multiples fa�ons d'amener le son jusqu'� votre machine Linux. Voici
les plus communes :
Sortie ligne vers entr�e ligne. La plupart des appareils audio ont une
sortie ligne. Le niveau ligne est un standard pr�cisant la tension et
l'intensit� du courant �mis par l'appareil. Si je me souviens bien,
l'intensit� est de 500 mA pour les �quipements domestiques et semi-pro
et 750 mA pour les �quipements pro. Je suppose que la plupart des
cartes son utilisent le standard � 500 mA, mais certaines cartes pro
r�centes peuvent utiliser l'autre. La diff�rence ne devrait pas �tre
trop importante si vous n'enregistrez pas � un volume tr�s important.
La sortie ligne est g�n�ralement utilis�e pour connecter des
�quipements hi-fi � un amplificateur, donc les tuners radio et les
platines cassette, CD, DAT, Mini-Disc et autres devraient pouvoir se
brancher sans probl�me. Les tourne-disques peuvent �tre plus
emb�tants; voir ci-dessous pour en savoir plus.
Vous pouvez aussi capturer du son depuis un magn�toscope. La plupart
des magn�toscopes ont une sortie ligne, ou vous pouvez obtenir un
signal au niveau ligne depuis une prise p�ritel si votre magn�toscope
en est �quip�.
Sortie d'amplificateur vers entr�e ligne, sortie ligne vers entr�e
cassette sur l'amplificateur. Essentiellement, vous remplacez la
platine cassette reli�e � votre ampli hi-fi par votre syst�me Linux.
Le lien entre la sortie ligne et l'entr�e de l'ampli permet de
contr�ler le niveau de l'enregistrement.
Micro sur entr�e micro. Le courant g�n�r� par un microphone est
beaucoup plus faible que le niveau ligne. Si vous branchez votre micro
sur votre entr�e ligne, vous n'enregistrerez probablement jamais rien.
_A_t_t_e_n_t_i_o_n, l'inverse, brancher la sortie ligne d'un appareil sur
l'entr�e micro, peut endommager votre carte son !
Tourne-disques sur entr�e micro. H�las, je ne dispose pas
d'informations � ce sujet pour le moment. Si je me souviens bien, le
tourne-disques devrait �tre branch� sur l'entr�e micro, vu qu'il
utilise un m�canisme similaire et des courants comparables.
Les claviers et synth�s doivent �tre branch�s sur l'entr�e ligne, et
les guitares sur l'entr�e ligne via une bo�te de direct (DI box,
utilis�e pour convertir le signal au niveau ligne).
Avant de brancher quoi que ce soit sur votre carte son, assurez-vous
que le volume est regl� au minimum et que les �ventuels micros ne sont
pas tourn�s vers les haut-parleurs.
77..22.. CCoonnffiigguurraattiioonn ppoouurr ll''eexxttrraaccttiioonn ddee ssoonn ddeeppuuiiss uunn CCDD
Configurer votre syst�me Linux pour extraire le son d'un CD avec votre
lecteur de CD-ROM est relativement simple.
Si vous pouvez �couter un CD audio avec votre lecteur branch� sur
votre carte son, il y a des chances que vous puissiez l'enregistrer.
77..33.. CCoonnffiigguurraattiioonn aaddddiittiioonnnneellllee
Logez-vous normalement sur votre syst�me, puis utilisez un programme
mixeur pour regler des niveau d'enregistrement assez forts pour avoir
un son d�cent, mais pas trop pour �viter la distorsion. Normalement,
j'�value �a � l'oreille ; apr�s quelques temps, vous conna�trez le
meilleur niveau pour votre syst�me.
Je recommande ou bien d'arr�ter tous les services non indispensables,
ou bien de passer en mode utilisateur seul, en particulier si vous
enregistrez depuis une source ext�rieure. Cela assure que seuls un
nombre minimum de services fonctionnent, et donc que les erreurs
d'enregistrement sont r�duites au minimum.
J'ai r�serv� un disque SCSI � l'enregistrement du son. J'y ferai
r�f�rence comme /mnt/mp3. J'ai fait cela principalement pour le gain
de performances apport� par un disque SCSI. De plus, enregistrer sur
un disque s�par�, dont vous savez que la t�te ne va pas tout � coup se
d�placer � l'autre bout du disque pendant que vous �tes en train
d'enregistrer, est une Bonne Chose. :-)
Pour les d�tails de la configuration d'un syst�me Linux avec plusieurs
disques, la lecture du _M_u_l_t_i_-_D_i_s_k_-_H_O_W_T_O de Stein Gjoen peut �tre
utile.
88.. EEnnccooddaaggee ddeeppuuiiss uunnee ssoouurrccee aauuddiioo
Premi�rement, assurez-vous que vous avez suffisamment de place sur
votre disque dur. Pour un enregistrement de qualit� CD (44,1 kHz,
16 bits, st�r�o), une minute prend pr�s de 5 Mo.
En g�n�ral, j'enregistre avec une qualit� DAT, 48 kHz, 16 bits,
st�r�o.
Avec wavrec, j'utilise la syntaxe suivante:
/usr/local/bin/wavrec -t 60 -s 48000 -S /mnt/mp3/temp.wav
La premi�re partie est le chemin d'acc�s explicite de wavrec. le -t 60
pr�cise la dur�e de l'enregistrement en secondes. l'option -s 48000
donne la fr�quence d'�chantillonnage en bits/s (la fr�quence du DAT
est 48000, celle du CD, 44100). La derni�re option indique le fichier
de sortie.
Pour voir la liste compl�te des options, lancez wavrec -help ou lisez
le manuel.
Ceci va produire un fichier WAV. Ensuite, vous allez devoir l'encoder
au format MP3. Utilisez bladeenc avec la ligne de commande suivante.
/usr/local/bin/bladeenc _[_f_i_c_h_i_e_r _s_o_u_r_c_e_] _[_f_i_c_h_i_e_r _d_e_s_t_i_n_a_t_i_o_n_] -br
256000
L'option -br pr�cise la fr�quence. En l'occurrence, je l'ai regl�e au
maximum: 256 kbits/s. Le chemin d'acc�s de bladeenc peut aussi �tre
diff�rent sur votre syst�me de celui de mon exemple.
Pour voir la liste des options, lancez bladeenc -help. En fait, il
s'agit d'une option invalide, mais cela va afficher la liste des
options.
99.. EEnnccooddaaggee ddeeppuuiiss uunn lleecctteeuurr ddee CCDD--RROOMM
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, "/mnt/mp3/tmp/cdda.wav");
$track = "$ARGV[1]/track".$count.".mp3";
$benc = system("bladeenc /tmp/cdda.wav $track -br 256000");
$count++;
}
until $count > $ARGV[0];
exit;
}
else {
print "Usage cdriper [nombre de pistes] [r�pertoire cible]\n\n";
}
______________________________________________________________________
La ligne int�ressante est
$cdcap = system("cdparanoia", $count, "/mnt/mp3/tmp/cdda.wav");
Cette ligne appelle l'extracteur de CD audio, cdparanoia, qui
convertit les donn�es brutes extraites d'un CD en fichier WAV.
Les options sont $count (le nombre de pistes � extraire), puis le
chemin d'acc�s des fichiers WAV produits. Dans mon exemple, il d'agit
d'un r�pertoire tmp sur 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.
Remarquez que ce script est tr�s simple et ne s'embarrasse pas de
d�tails comme la r�cup�ration d'erreurs. Vous �tes libre de
l'am�liorer. :-)
1100.. LLiirree ddeess MMPP33
Maintenant, vous devriez avoir quelques fichiers MP3 pr�ts � lire.
Les deux lecteurs MP3 les plus appr�ci�s sous Linux sont Xaudio et
xmms (anciennement x11amp). J'ai donn� des liens vers leurs sites web
dans la section ``Logiciels n�cessaires''.
Pour l'�criture de ce HOWTO, je me suis appuy� sur Xaudio,
principalement parce qu'il est utilisable avec ou sans X.
Ce logiciel est un partagiciel. Il s'agit en fait d'un ensemble de
programmes, dont les plus int�ressants pour nous sont xaudio et
mxaudio.
Apr�s l'avoir install� sur votre syst�me, vous avez le choix entre
utiliser la version en ligne de commande xaudio ou la version X
mxaudio.
L'interface de mxaudio est agr�able et simple � utiliser.
La liste des options de xaudio peut �tre obtenue avec l'option -help
(xaudio -h). Pour lire un fichier, utilisez xaudio fichier.mp3. Pour
lire le contenu d'un r�pertoire, xaudio *.mp3.
Les deux programmes sont accompagn�s de fichiers README.
1111.. RReettoouurrss
De nouveaux mat�riels et logiciels sortent sans cesse. Si vous
utilisez des versions plus r�centes du mat�riel et/ou des logiciels
d�crits dans ce HOWTO, ou si vous pouvez ajouter quoi que ce soit,
envoyez-moi vos informations �
[email protected] pour que je les
rajoute � la prochaine version.
Bons MP3 !