mpv/DOCS/xml/fr/cd-dvd.xml

354 lines
16 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- synced with 1.16 -->
<chapter id="cd-dvd">
<title>Utilisation des CD/DVD</title>
<sect1 id="drives">
<title>Lecteurs CD/DVD</title>
<para>
Les lecteurs modernes de CD-ROM peuvent atteindre de tr<74>s hautes vitesses de lecture,
bien que certains soient capables de fonctionner <20> des vitesses r<>duites.
Il y a plusieurs raisons possibles pour vouloir changer cette vitesse:
</para>
<itemizedlist>
<listitem><para>
Il a <20>t<EFBFBD> signal<61> que des lecteurs peuvent commettre des erreurs de lecture <20>
haute vitesse, surtout avec des CD-ROM mal press<73>s. Diminuer la vitesse peut alors
emp<EFBFBD>cher la perte de donn<6E>es dans ces circonstances.
</para></listitem>
<listitem><para>
Les lecteurs CD-ROM g<>n<EFBFBD>rent souvent un bruit assourdissant, qu'une vitesse r<>duite
peut contribuer <20> diminuer.
</para></listitem>
</itemizedlist>
<sect2 id="drives_linux">
<title>Linux</title>
<para>
Vous pouvez r<>duire la vitesse des lecteurs de CD-ROM IDE avec <command>hdparm</command>,
<command>setcd</command> ou <command>cdctl</command>. Ils fonctionnent comme suit:
<screen>hdparm -E <replaceable>[vitesse]</replaceable> <replaceable>[p<>riph. cdrom]</replaceable></screen>
<screen>setcd -x <replaceable>[vitesse]</replaceable> <replaceable>[p<>riph. cdrom]</replaceable></screen>
<screen>cdctl -bS <replaceable>[vitesse]</replaceable></screen>
</para>
<para>
Si vous utilisez l'<27>mulation SCSI, vous pourriez avoir <20> appliquer les param<61>tres au
vrai p<>riph<70>rique IDE, et non au p<>riph<70>rique SCSI <20>mul<75>.
</para>
<para>
Si vous avez les privil<69>ges root, la commande suivante peut <20>galement aider:
<screen>echo file_readahead:2000000 &gt; /proc/ide/<replaceable>[p<>riph. cdrom]</replaceable>/settings</screen>
</para>
<para>
Ceci cr<63><72> un cache de 2 Mo, ce qui est utile pour les CD-ROMs endommag<61>s (ray<61>s).
Si vous lui donnez une valeur trop haute, le lecteur ne va pas cesser de s'arr<72>ter
et de repartir, ce qui va dramatiquement diminuer les performances. Il est
<EFBFBD>galement recommand<6E> d'optimiser votre lecteur de CD-ROM avec <command>hdparm</command>:
<screen>hdparm -d1 -a8 -u1 <replaceable>[p<>riph. cdrom]</replaceable></screen>
</para>
<para>
Ceci permet l'acc<63>s DMA, le cache en lecture, et l'IRQ unmasking. (lisez la page de
man de <command>hdparm</command> pour plus d'explications).
</para>
<para>
R<EFBFBD>f<EFBFBD>rez vous <20> &quot;<filename>/proc/ide/<replaceable>[p<>riph. cdrom]</replaceable>/settings</filename>&quot;
pour optimiser pr<70>cis<69>mment votre lecteur CD-ROM.
</para>
<para>
Les lecteurs SCSI n'ont pas une mani<6E>re uniforme de r<>gler ces param<61>tres (Vous en
connaissez une ? Dites-la nous!) Il y a un outil qui fonctionne pour les
<ulink url="http://das.ist.org/~georg/">Lecteurs SCSI Plextor</ulink>.
</para>
</sect2>
<sect2 id="drives_freebsd">
<title>FreeBSD</title>
<para>Vitesse:
<screen>
cdcontrol [-f <replaceable>p<EFBFBD>riph<EFBFBD>rique</replaceable>] speed <replaceable>[vitesse]</replaceable>
</screen>
</para>
<para>DMA:
<screen>
sysctl hw.ata.atapi_dma=1
</screen>
</para>
</sect2>
</sect1>
<sect1 id="dvd">
<title>Lecture de DVD</title>
<para>
Pour voir la liste compl<70>te des options disponibles, veuillez lire la page de man.
La syntaxe pour lire un Digital Versatile Disc (DVD) est la suivante:
<screen>mplayer dvd://<replaceable>&lt;piste&gt;</replaceable> [-dvd-device <replaceable>&lt;p<EFBFBD>riph<EFBFBD>rique&gt;</replaceable>]</screen>
</para>
<para>
Exemple:
<screen>mplayer dvd://<replaceable>1</replaceable> -dvd-device <replaceable>/dev/hdc</replaceable></screen>
</para>
<para>
Le p<>riph<70>rique DVD par d<>faut est <filename>/dev/dvd</filename>. Si votre
installation diff<66>re, faites un lien symbolique ou sp<73>cifiez le p<>riph<70>rique
correct en ligne de commande avec l'option <option>-dvd-device</option>.
</para>
<formalpara>
<title>Nouvelle m<>thode de lecture DVD (mpdvdkit2)</title>
<para>
<application>MPlayer</application> utilise <systemitem>libdvdread</systemitem> et
<systemitem>libdvdcss</systemitem> pour le d<>cryptage et la lecture de DVD.
Ces deux biblioth<74>ques sont contenues dans le sous-r<>pertoire
<filename class="directory">libmpdvdkit2/</filename> du r<>pertoire
source de <application>MPlayer</application>, vous n'avez donc pas besoin de les
installer s<>par<61>ment. Nous avons opt<70> pour cette solution car nous devions corriger
un bug de <systemitem>libdvdread</systemitem>, et appliquer un patch qui ajoute
<emphasis role="bold">un cache pour les cl<63>s CSS cass<73>es</emphasis> <20>
<systemitem>libdvdcss</systemitem>. Le r<>sultat est bien plus rapide car les cl<63>s
n'ont pas <20> <20>tre cass<73>es <20> chaque lecture.
</para>
</formalpara>
<para>
<application>MPlayer</application> peut <20>galement utiliser les biblioth<74>ques
globales au syst<73>me <systemitem>libdvdread</systemitem>
et <systemitem>libdvdcss</systemitem> mais cette solution n'est
<emphasis role="bold">pas</emphasis> recommand<6E>e, car elle peut provoquer des
bogues, des incompatibilit<69>s de librairies, et une vitesse moins importante.
</para>
<note><para>
En cas de probl<62>me de d<>codage de DVD, essayez de d<>sactiver supermount, ou
tous les outils de ce genre. Certains lecteurs RPC-2 peuvent aussi avoir
besoin que leur code de r<>gion soit bien param<61>tr<74>.
</para></note>
<formalpara>
<title>Structure d'un DVD</title>
<para>
Les disques DVD utilisent tous des secteurs de 2048 octets par seconde avec ECC/CRC. Ils ont
g<EFBFBD>n<EFBFBD>ralement un syst<73>me de fichier UDF sur une seule piste, qui contient divers fichiers (des
petits fichiers .IFO et .BUK et de gros (1Go) fichiers .VOB). Ce sont de v<>ritables fichiers et ils
peuvent <20>tre jou<6F>s/copi<70>s depuis le syst<73>me de fichier mont<6E> d'un DVD non-crypt<70>.
</para>
</formalpara>
<para>
Les fichiers .IFO contiennent les infos de navigation dans le film (carte des chapitres/titres/angles,
table des langues, etc) et sont requis pour lire et interpr<70>ter le contenu des .VOB (le film). Les
fichiers .BUK sont des backups de ces fichiers. Ils utilisent des <emphasis role="bold">secteurs</emphasis>
partout, donc vous avez besoin d'utiliser un adressage brut des secteurs sur le disque pour impl<70>menter
la navigation DVD. C'est <20>galement requis pour d<>crypter le contenu.
</para>
<para>
Le support DVD n<>cessite un acc<63>s brut aux secteurs du p<>riph<70>rique. Malheureusement
vous devez (sous Linux) <20>tre root pour avoir acc<63>s aux adresses des secteurs d'un fichier. C'est
pourquoi nous n'utilisons pas du tout le pilote de syst<73>me de fichier du noyau, <20>
la place nous l'avons r<>impl<70>ment<6E> en espace utilisateur. <systemitem>libdvdread</systemitem>
0.9.x et <systemitem>libmpdvdkit</systemitem> font cela. Le pilote pour le syst<73>me
de fichier UDF du noyau n'est pas requis puisqu'ils ont d<>j<EFBFBD> leur pilote UDF incorpor<6F>.
De plus le DVD n'a pas besoin d'<27>tre mont<6E> <20>tant donn<6E> que seul l'acc<63>s brut aux secteurs est utilis<69>.
</para>
<para>
Parfois <filename>/dev/dvd</filename> ne peut <20>tre lu par les utilisateurs; les auteurs de
<systemitem>libdvdread</systemitem> ont donc impl<70>ment<6E> une couche d'<27>mulation qui transforme les
adresses des secteurs en noms de fichier+offsets, pour <20>muler l'acc<63>s brut par-dessus un syst<73>me de fichier
mont<EFBFBD> ou m<>me un disque dur.
</para>
<para>
<systemitem>libdvdread</systemitem> accepte m<>me le point de montage au lieu du nom de p<>riph<70>rique
pour l'acc<63>s brut et regarde dans <filename>/proc/mounts</filename> pour obtenir le nom de p<>riph<70>rique.
Il a <20>t<EFBFBD> d<>velopp<70> pour Solaris, o<> les noms de p<>riph<70>riques sont allou<6F>s dynamiquement.
</para>
<para>
Le p<>riph<70>rique DVD par d<>faut est <filename>/dev/dvd</filename>. Si votre installation diff<66>re, faites
un lien symbolique ou sp<73>cifiez le bon p<>riph<70>rique en ligne de commande avec l'option
<option>-dvd-device</option>.
</para>
<formalpara>
<title>Certification DVD</title>
<para>
La nouvelle m<>thode de certification et de d<>cryptage est fait par l'utilisation d'un <systemitem>libdvdcss</systemitem>
patch<EFBFBD> (voir plus haut). La m<>thode peut <20>tre sp<73>cifi<66>e au travers de la variable d'environnement <envar>DVDCSS_METHOD</envar>
qui peut <20>tre initialis<69>e <20> key (cl<63>), disk (disque) ou title (titre).
</para>
</formalpara>
<para>
Si rien n'est sp<73>cifi<66> il essaie les m<>thodes suivantes (par d<>faut: cl<63>, demande de titre):
</para>
<orderedlist>
<listitem><para>
<emphasis role="bold">cl<EFBFBD> bus</emphasis>: Cette cl<63> est
n<EFBFBD>goci<EFBFBD>e durant l'authentification (une longue suite
d'ioctls et d'<27>changes de diverses clefs cryptographiques) et elle est
utilis<EFBFBD> pour crypter le titre et la clef du
disque avant de les envoyer sur un bus non prot<6F>g<EFBFBD> (pour
emp<EFBFBD>cher les <20>coutes). La clef bus est n<>cessaire
pour obtenir et pr<70>-d<>crypter la clef disque crypt<70>e.
</para></listitem>
<listitem><para>
<emphasis role="bold">cl<EFBFBD> mise en cache</emphasis>: <application>MPlayer</application>
cherche des titres de cl<63> d<>j<EFBFBD> cass<73>e qui sont stock<63>es dans le r<>pertoire
<filename class="directory">~/.mplayer/DVDKeys</filename> (rapide ;).
</para></listitem>
<listitem><para>
<emphasis role="bold">cl<EFBFBD></emphasis>: Si aucune cl<63> n'est disponible dans le cache,
<application>MPlayer</application> essaye de d<>crypter la cl<63> disque avec un ensemble de cl<63>s incluses.
</para></listitem>
<listitem><para>
<emphasis role="bold">disque</emphasis>: Si la m<>thode cl<63> <20>choue (ex: pas de cl<63>s incluses),
<application>MPlayer</application> va casser la cl<63> disque avec un algorithme brute force. Ce
processus est intensif pour le CPU et requiert 60 Mo de m<>moire (table de hachage 32Bit de 16M) pour
stocker temporairement les donn<6E>es. Cette m<>thode devrait toujours fonctionner (lent).
</para></listitem>
<listitem><para>
<emphasis role="bold">demande de titre</emphasis>: Avec les cl<63>s disque <application>MPlayer</application>
demande les cl<63>s titre crypt<70>es, qui sont <20> l'int<6E>rieur de <emphasis>secteurs cach<63>s</emphasis>
en utilisant <systemitem>ioctl()</systemitem>. La protection de r<>gion des lecteurs RPC-2 devrait
op<EFBFBD>rer <20> cette <20>tape et devrait <20>chouer sur ces lecteurs. Si elle r<>ussit, les cl<63>s titre seront
crypt<EFBFBD>es avec les cl<63>s bus et disque.
</para></listitem>
<listitem><para>
<emphasis role="bold">titre</emphasis>: Cette m<>thode est utilis<69>e si la demande de titre a <20>chou<6F> et ne
repose sur aucun <20>change de cl<63> avec le lecteur DVD. Il utilise une attaque crypto pour deviner la cl<63>
titre directement (en trouvant un motif r<>p<EFBFBD>t<EFBFBD> dans le contenu VOB d<>cod<6F> et en supposant que le texte
en clair correspondant aux premiers octets crypt<70>s est une continuation de ce motif). Cette m<>thode est
<EFBFBD>galement connue sous le nom de &quot;known plaintext attack&quot; ou &quot;DeCSSPlus&quot;. Dans de
rares cas cela peut <20>chouer car il n'y a pas assez de donn<6E>es crypt<70>es sur le disque pour faire
une attaque statistique ou <20> cause des changements de cl<63> au milieu du titre. C'est la seule fa<66>on de
d<EFBFBD>crypter un DVD stock<63> sur le disque dur ou un DVD avec une mauvaise zone sur un lecteur RPC2 (lent).
</para></listitem>
</orderedlist>
<para>
Les lecteurs DVD RPC-1 ne prot<6F>gent les r<>glages de protection de zone que de fa<66>on logicielle. Les
lecteurs RPC-2 ont une protection mat<61>rielle qui ne permet que 5 changements. Il peut <20>tre
requis/recommand<6E> de mettre <20> niveau le firmware en RPC-1 si vous avez un lecteur DVD RPC-2. Les mises <20> niveau
firmware peuvent <20>tre trouv<75>es sur cette <ulink url="http://www.firmware-flash.com">page de firmware</ulink>.
Si il n'y a pas de mise <20> niveau de firmware disponible pour votre p<>riph<70>rique, utilisez l'
<ulink url="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">outil de r<>glage de zone</ulink>
pour changer le code de zone de votre lecteur DVD (sous Linux).
<emphasis role="bold">Attention</emphasis>: Vous ne pouvez changer la zone que 5 fois.
</para>
</sect1>
<sect1 id="vcd">
<title>Lecture de VCDs</title>
<para>
Pour voir la liste compl<70>te des options disponibles, veuillez lire la page de man.
La syntaxe pour lire un Video CD standard (VCD) est la suivante:
<screen>mplayer vcd://<replaceable>&lt;piste&gt;</replaceable> [-cdrom-device <replaceable>&lt;p<EFBFBD>riph<EFBFBD>rique&gt;</replaceable>]</screen>
Exemple:
<screen>mplayer vcd://<replaceable>2</replaceable> -cdrom-device <replaceable>/dev/hdc</replaceable></screen>
Le p<>riph<70>rique VCD par d<>faut est <filename>/dev/cdrom</filename>. Si votre installation diff<66>re,
faites un lien symbolique ou sp<73>cifiez le bon p<>riph<70>rique en ligne de commande avec l'option
<option>-cdrom-device</option>.
</para>
<note><para>
Au moins les CD-ROM SCSI Plextor et certains Toshiba ont d'horribles performances durant la lecture
de VCDs. C'est parce que l'<systemitem>ioctl</systemitem> CDROMREADRAW n'est pas compl<70>tement
impl<EFBFBD>ment<EFBFBD> pour ces lecteurs. Si vous avez des connaissances dans la programmation SCSI, merci de
<ulink url="../../tech/patches.txt">nous aider</ulink> <20> impl<70>menter un support SCSI g<>n<EFBFBD>rique pour
les VCDs.
</para></note>
<para>
<EFBFBD> ce propos vous pouvez extraire des donn<6E>es d'un VCD avec
<ulink url="http://miketeo.net/links/readvcd-0.3.tgz">readvcd</ulink>
et lire le fichier obtenu avec <application>MPlayer</application>.
</para>
<formalpara>
<title>Structure d'un VCD</title>
<para>
Un CD Video (VCD) est constitu<74> de secteurs CD-ROM XA, c<>d CD-ROM mode 2
forme 1 et 2 pistes:</para>
</formalpara>
<itemizedlist>
<listitem><para>
La premi<6D>re piste est en mode 2 forme 2 ce qui signifie qu'elle utilise une
correction d'erreur L2. La piste contient un syst<73>me de fichiers ISO-9660 avec 2048
octets/secteur. Ce syst<73>me de fichiers contient des informations VCD meta-donn<6E>e, aussi
bien que les frames fixes souvent utilis<69>es dans les menus. Les segments MPEG pour les menus peuvent
aussi <20>tre stock<63>s dans la premi<6D>re piste, mais les donn<6E>es MPEG doivent <20>tre cass<73>es en s<>ries de bouts de 150 secteurs.
Le syst<73>me de fichiers ISO-9660 peut contenir d'autres fichiers ou programmes qui ne sont pas essentiels pour les
op<EFBFBD>rations VCD.
</para></listitem>
<listitem><para>
La seconde piste et les suivantes sont des pistes MPEG brutes (film) <20> 2324 octets/secteur, contenant
un paquet de donn<6E>es MPEG PS par secteur. Celles-ci sont format<61>es selon le mode 2 forme 1, donc elles stockent
plus de donn<6E>es par secteur au d<>pend de la perte de quelque correction d'erreur. Il est aussi permis d'avoir
des pistes CD-DA dans un VCD aussi bien apr<70>s la premi<6D>re piste.
Sur certains syst<73>mes op<6F>rant, il y a quelques astuces qui permettent de faire appara<72>tre ces pistes non-ISO-9660
dans un syst<73>me de fichiers. Sur d'autres syst<73>mes op<6F>rant comme GNU/Linux cela n'est pas le cas (pas encore). Ici
les donn<6E>es MPEG <emphasis role="bold">ne peuvent <20>tre mont<6E>es</emphasis>. Comme la plupart des films sont <20> l'int<6E>rieur
de ce genre de piste, vous devrez tout d'abord essayer <option>vcd://2</option>
</para></listitem>
<listitem><para>
Il existe <20>galement certains disques VCD sans la premi<6D>re piste (une seule piste et pas de syst<73>me de
fichier du tout). Ils sont quand m<>me lisibles, mais ne peuvent pas <20>tre mont<6E>s.
</para></listitem>
<listitem><para> La d<>finition d'un Video CD standard est appel<65>e le
Philips "White Book" et n'est g<>n<EFBFBD>ralement disponible qu'en ligne <20>tant donn<6E>
qu'il doit <20>tre acheter chez Philips. Plus information d<>tail<69> sur le Video
CD peut <20>tre trouv<75> sur <ulink url="http://www.vcdimager.org/pub/vcdimager/manuals/0.7/vcdimager.html#SEC4">vcdimager documentation</ulink>.
</para></listitem>
</itemizedlist>
<formalpara>
<title>A propos des fichiers .DAT:</title>
<para>
Le fichier de ~600 Mo visible sur la premi<6D>re piste d'un VCD mont<6E> n'est pas un vrai fichier! C'est
ce qu'on appelle une passerelle iso, cr<63><72>e pour permettre <20> Windows de g<>rer de telles pistes (Windows
n'autorise pas l'acc<63>s brut au p<>riph<70>rique du tout). Sous linux, vous ne pouvez pas copier ou lire de
telles pistes (elle contiennent des ordures). Sous Windows c'est possible car son pilote iso9660 <20>mule
la lecture brute des pistes dans ce fichier. Pour lire un fichier .DAT vous avez besoin un pilote noyau
qui peut <20>tre trouv<75> dans la version Linux de PowerDVD. Il poss<73>de un pilote de syst<73>me de fichier
iso9660 modifi<66> (<filename>vcdfs/isofs-2.4.X.o</filename>), qui est capable d'<27>muler les pistes brutes
au travers de ce fichier .DAT fant<6E>me. Si vous montez le disque en utilisant leur pilote, vous pouvez
copier et m<>me lire les fichiers .DAT avec mplayer. Mais cela ne <emphasis role="bold">fonctionnera pas</emphasis>
avec le pilote iso9660 standard du noyau! Il est recommand<6E> d'utiliser l'option <option>vcd://</option>
<EFBFBD> la place. D'autres possibilit<69>s pour la copie de VCD sont le nouveau pilote noyau
<ulink url="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</ulink> (qui ne fait pas partie du noyau
officiel) qui montre les sessions du CD en temps que fichier image et
<ulink url="http://cdrdao.sf.net/">cdrdao</ulink>, une application d'enregistrement/copie
bit-<2D>-bit).
</para>
</formalpara>
</sect1>
</chapter>