Mercurial > mplayer.hg
annotate DOCS/it/cd-dvd.html @ 18115:5e0bafa6f7e8
remove completely pointless != NULL check
author | reimar |
---|---|
date | Sun, 16 Apr 2006 13:25:14 +0000 |
parents | 7e22b762e1a8 |
children |
rev | line source |
---|---|
6462 | 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
4867 | 2 <HTML> |
9864
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
3 <!-- Synced with english version 1.56 --> |
5583 | 4 <HEAD> |
7509 | 5 <TITLE>CD, DVD, VCD - MPlayer - Movie Player per Linux</TITLE> |
9512 | 6 <LINK REL="stylesheet" TYPE="text/css" HREF="../default.css"> |
6462 | 7 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> |
5583 | 8 </HEAD> |
9 | |
6462 | 10 <BODY> |
4867 | 11 |
12 | |
8707 | 13 <H2><A NAME="drives">4.1. Lettori CD/DVD</A></H2> |
4867 | 14 |
15 <P>Dalla documentazione di Linux:</P> | |
16 | |
17 <P>Alcuni lettori CDROM sono capaci di cambiare la loro velocità. Ci sono varie | |
18 ragioni per cambiare la velocità di un CD-ROM. CDROM pressati male possono avere | |
19 benefici da una velocità minore della massima. I moderni lettori CDROM possono raggiungere | |
20 velocità molto alte (fino a 24-volte è comune). E' stato riportato che questi lettori | |
21 possono dare errori di lettura a queste alte velocità, ridurre la velocità può prevenire | |
22 perdite di dati in queste circostanze. In fine, alcuni di questi lettori possono | |
23 produrre un fastidioso rumore, che si può ridurre a velocità più basse.</P> | |
24 | |
8707 | 25 <P>Per ridurre la velocità del lettore si può usare hdparm o un programma chiamato setcd. |
26 Usali così:</P> | |
4867 | 27 |
8707 | 28 <P> <CODE>hdparm -E [velocità] [cdrom]</CODE></P> |
4867 | 29 <P> <CODE>setcd -x [velocità] [cdrom]</CODE></P> |
30 | |
31 <P>Puoi anche provare:</P> | |
32 | |
33 <P> <CODE>echo current_speed:4 >/proc/ide/[cdrom device]/settings</CODE></P> | |
34 | |
8707 | 35 <P>ma devi avere i privilegi di root. Può aiutare anche il seguente comando:</P> |
4867 | 36 |
37 <P> <CODE>echo file_readahead:2000000 >/proc/ide/[cdrom device]/settings</CODE></P> | |
38 | |
39 <P>per leggere 2MB in anticipo dal file (è utile per i CDROM rigati). | |
8707 | 40 Se viene impostato ad un valore troppo alto, il lettore continuerà a girare e a |
41 fermarsi, riducendo drasticamente la performance. | |
4867 | 42 Si consiglia anche di regolare il tuo lettore CDROM anche con hdparm:</P> |
43 | |
44 <P> <CODE>hdparm -d1 -a8 -u1 (cdrom device)</CODE></P> | |
45 | |
46 <P>per abilitare l'accesso DMA, readahead, e l' IRQ unmasking. | |
47 (se non capisci, *leggi la pagina di man di hdparm*)</P> | |
48 | |
49 <P>Per favore fai riferimento a "<CODE>/proc/ide/[cdrom device]/settings</CODE>" per una regolazione fine del | |
50 CDROM.</P> | |
51 | |
8707 | 52 <P>I lettori SCSI non hanno un modo comune per regolare questi parametri (ne conosci |
53 uno? Diccelo!) Esiste una utility che funziona con i | |
54 <A HREF="http://das.ist.org/~georg/">lettori SCSI Plextor</A>.</P> | |
55 | |
56 <P>FreeBSD:</P> | |
57 | |
58 <P> Velocità: <CODE>cdcontrol [-f device] speed [velocità]</CODE></P> | |
59 <P> DMA: <CODE>sysctl hw.ata.atapi_dma=1</CODE></P> | |
60 | |
61 | |
62 <H2><A NAME="dvd">4.2. Vedere i DVD</A></H2> | |
63 | |
9864
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
64 <P>Per la lista completa delle opzioni disponibili, leggete la pagina di man. |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
65 La sintassi per la riproduzione di un DVD standard è la seguente:</P> |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
66 |
10405 | 67 <P><CODE>mplayer dvd://<track> [-dvd-device <device>]</CODE></P> |
9864
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
68 |
10405 | 69 <P>Esempio:<CODE>mplayer dvd://1 -dvd-device /dev/hdc</CODE></P> |
9864
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
70 |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
71 <P>Il dispositivo DVD predefinito è <CODE>/dev/dvd</CODE>. Se il tuo sistema è |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
72 diverso, crea un symlink o specifica il dispositivo corretto sulla linea di comando |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
73 con l'opzione <CODE>-dvd-device</CODE>.</P> |
8707 | 74 |
75 <H4>Supporto DVD nuovo stile (mpdvdkit2)</H4> | |
4867 | 76 |
5994 | 77 <P><B>MPlayer</B> usa <CODE>libdvdread</CODE> e <CODE>libdvdcss</CODE> per |
78 decifrare e leggere i DVD. Queste due librerie si trovano nella subdirectory | |
8707 | 79 <CODE>libmpdvdkit2/</CODE> dell'albero di <B>MPlayer</B>, non |
5994 | 80 devi installarle separatamente. Abbiamo optato per questa soluzione perchè |
81 abbiamo dovuto correggere un bug di libdvdread, e applicare una patch che aggiunge | |
8707 | 82 il <B>supporto al caching delle chiavi CSS crackate</B> per libdvdcss. Risulta un grande |
83 aumento della velocità perchè le chiavi non devono essere crackate ogni volta | |
84 prima della riproduzione . Queste chiavi vengono conservate nella | |
5994 | 85 directory <CODE>$HOME/.mplayer/DVDKeys</CODE>.</P> |
4867 | 86 |
8707 | 87 <P>MPlayer può anche utilizzare le librerie <CODE>libdvdread</CODE> e |
88 <CODE>libdvdcss</CODE> installate nel sistema, ma questa soluzione <B>non</B> è | |
89 consigliata, in quanto possono risultare bug, incompatibilità di librerie, e minore velocità.</P> | |
90 | |
91 <H4>Supporto DVD Navigation (dvdnav)</H4> | |
92 | |
93 <P>Il supporto per DVD navigation attraverso <CODE>dvdnav</CODE> era in implementazione, ma | |
94 non è mai stato completato del tutto ed è quindi <B>sconsigliato</B>!</P> | |
95 | |
96 <H4>Supporto DVD vecchio stile - <I>OPZIONALE</I></H4> | |
4867 | 97 |
8707 | 98 <P>Utile se vuoi leggere file VOB dall' hardisk. Compila e |
99 installa <B>libcss</B> 0.0.1 (non più recente) (se <B>MPlayer</B> non lo trova, | |
100 usa l'opzione <CODE>-csslib /percorso/di/libcss.so</CODE>). Per usarlo, | |
12228 | 101 devi essere root, usare un binario di MPlayer suid root o far richiamare ad MPlayer il programma |
8707 | 102 wrapper fibmap_mplayer che è suid root.</P> |
103 | |
104 <H4>Struttura dei DVD</H4> | |
105 | |
106 <P>I dischi DVD hanno settori da 2048 byte/settore con ECC/CRC. Solitamente hanno un | |
107 filesystem UDF su una singola traccia, che contiene vari file (piccoli file .IFO e .BUK | |
108 e grandi (1GB) file .VOB). Questi sono veri file e possono essere copiati/riprodotti | |
109 dal filesystem montato di un DVD non criptato.</P> | |
4867 | 110 |
8707 | 111 <P>I file .IFO contengono le informazioni per la navigazione del film (capitoli/titoli/mappa |
112 delle angolazioni, tabella delle lingue, ecc.) ed è necessario per leggere ed interpretare il | |
113 contenuto .VOB (film). I file .BUK sono i loro backup. Usano i <B>settori</B> ovunque, | |
114 quindi bisogna usare il puro indirizzamento dei settori del disco per implementare la navigazione | |
115 dei DVD navigation. Questo è necessario anche per decrittare il contenuto.</P> | |
116 | |
117 <P>L'intero supporto DVD vecchio stile con libcss deve quindi avere il filesystem del DVD | |
118 montato e l'accesso a basso livello ai settori della device. Sfortunatamente devi essere root | |
119 (sotto Linux) per avere l'indirizzo del settore di un file. Hai quindi le seguenti | |
120 possibilità:</P> | |
4867 | 121 |
8707 | 122 <UL> |
123 <LI>Essere root o usare un binario di mplayer suid-root.</LI> | |
124 <LI>Far chiamare ad MPlayer il programma wrapper fibmap_mplayer (che è suid root) per accedere | |
125 al DVD (usato col metodo che utilizzava libcss).</LI> | |
126 <LI>Non usare per nulla il driver di filesystem del kernel e reimplementarlo in | |
127 userspace. libdvdread 0.9.x e libmpdvdkit fanno questo (supporto DVD | |
128 nuovo stile). Il driver per il filesystem udf del kernel non è necessario in quanto | |
129 hanno già il proprio driver per l'udf. Inoltre il dvd non deve essere montato | |
130 in quanto viene usato solo l'accesso a basso livello ai settori.</LI> | |
131 </UL> | |
132 | |
133 <P>A volte /dev/dvd non può essere letto dagli utenti, quindi gli autori di libdvdread | |
134 hanno implementato un livello di emulazione che trasferisce gli indirizzi dei settori in | |
135 nomifile+offset, per simulare un accesso a basso livello su un filesystem montato | |
136 o anche su un hard disk.</P> | |
137 | |
138 <P>libdvdread accetta anche il punto di mount al posto del nome del dispositivo | |
139 e controlla in <CODE>/proc/mounts</CODE> per ottenere il nome del device. E' stato | |
140 sviluppato per Solaris, dove i nomi dei dispositivi sono assegnati dinamicamente.</P> | |
5994 | 141 |
8707 | 142 <P>Il dispositivo DVD di default è <CODE>/dev/dvd</CODE>. Se la tua impostazione è diversa, |
143 fai un symlink, o specifica la device corretta alla riga di comando con l'opzione | |
144 <CODE>-dvd-device</CODE>.</P> | |
145 | |
146 <H4>Autenticazione del DVD</H4> | |
5994 | 147 |
8707 | 148 <P>Il metodo di autenticazione e decrittazione del supporto DVD nuovo stile usa |
149 un libdvdcss modificato (vedi sopra). Il metodo può essere specificato con | |
150 la variabile d'ambiente <CODE>DVDCSS_METHOD</CODE> che può avere i valori | |
151 <CODE>key</CODE>, <CODE>disk</CODE> o <CODE>title</CODE>.</P> | |
152 | |
153 <P>Se non è specificato nulla vengono provati i seguenti metodi | |
154 (default: key, title request):</P> | |
4867 | 155 |
8707 | 156 <OL> |
157 <LI><B>bus key:</B> Questa chiave è negoziata durante l'autenticazione (un lungo miscuglio | |
158 di ioctls e vari scambi di chiavi, roba crittografica) ed è usata per criptare le chiavi | |
159 del titolo e del disco prima di mandarle sul bus non protetto | |
160 (per prevenire l'eavesdropping). La chiave del bus è necessaria per ottenere e pre-decriptare | |
161 la chiave del disco.</LI> | |
162 <LI><B>cached key:</B> MPlayer cerca chiavi di titolo eventualmente già scoperte | |
163 che sono salvate nella directory <CODE>~/.mplayer/DVDKeys</CODE> | |
164 (veloce ;).</LI> | |
165 <LI><B>key:</B> Se non è disponibile nessuna chiave già salvata, MPlayer prova a decriptare | |
166 la chiave del disco con un insieme di chiavi incluse.</LI> | |
167 <LI><B>disk:</B> Se il metodo della chave fallisce (es. nessuna chiave inclusa), | |
168 MPlayer romperà la chiave del disco usando un algoritmo a forza bruta. | |
169 Questo processo consuma molta CPU e richiede 64 MB di memoria (tabella di hash | |
170 da 16M con 32bit di elementi) per salvare i dati temporanei. Questo metodo dovrebbe funzionare | |
171 sempre (lento).</LI> | |
172 <LI><B>title request:</B> Con la chiave del disco MPlayer richiede le chiavi criptate | |
173 del titolo, che sono contenute in <I>settori nascosti</I> usando <CODE>ioctl()</CODE>. | |
174 La protezione regionale dei lettori RPC-2 avviene a questo passaggio e potrebbe fallire | |
175 su queto tipo di lettori. Se ha successo, le chiavi del titolo verranno decripttate usando | |
176 la chiave del bus e la chiave del disco.</LI> | |
177 <LI><B>title:</B> Questo metodo è usato se fallisce la title request e non si | |
178 basa sullo scambio di chiavi con il lettore DVD. Usa un attacco criptografico per | |
179 indovinare direttamente la chiave del titolo (trovando un modello che si ripete nel contenuto | |
180 VOB e supponendo che il testo in chiaro dei primi byte criptati siano una continuazione | |
181 di quel modello). | |
182 Il metodo è conosciuto anche come "known plaintext attack" o "DeCSSPlus". | |
183 In rari casi può fallire perchè non ci sono abbastanza dati criptati sul disco | |
184 per implementare un attacco statistico o perchè la chiave cambia nel mezzo di un titolo. | |
185 D'altra parte è l'unico modo per decriptare un DVD | |
186 salvato su un hard disk o un DVD con la regione sbagliata su un lettore RPC2 | |
187 (lento).</LI> | |
188 </OL> | |
4867 | 189 |
8707 | 190 <P>I lettori DVD RPC-1 proteggono le impostazioni regionali solo su lettori DVD software. |
191 I lettori RPC-2 hanno una protezione hardware che permette solo 5 cambiamenti. Potrebbe | |
192 essere necessario/consigliato aggiornare il firmware a RPC-1 se hai un lettore DVD RPC-2. | |
193 Aggiornamenti del firmware possono essere trovati | |
194 <A HREF="http://www.firmware-flash.com">qui</A>. Se non c'è un aggiornamento | |
195 del firmware per il tuo lettore, usa l'applicazione | |
196 <A HREF="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">regionset</A> | |
197 per impostare il codice regionale del tuo lettore DVD (sotto Linux). | |
198 <B>Attenzione:</B> Si può impostare la regione solo 5 volte.</P> | |
4867 | 199 |
7509 | 200 <H2><A NAME="vcd">4.3 Vedere i VCD</A></H2> |
201 | |
8707 | 202 <P>Per la lista completa delle opzioni disponibili, leggete la pagina di man. |
203 La sintassi per vedere i Video CD standard (VCD) è la seguente:</P> | |
4867 | 204 |
7509 | 205 <P> |
10405 | 206 mplayer vcd://<I>numerotraccia</I> [-cdrom-device device]<BR><BR> |
7509 | 207 Esempi:<BR> |
10405 | 208 mplayer vcd://1<BR> |
209 mplayer -fs vcd://2 -cdrom-device /dev/hdc<BR> | |
4867 | 210 </P> |
211 | |
8707 | 212 <P><B>Nota:</B> Almeno i Plextor e alcuni CD-ROM SCSI della Toshiba hanno |
213 terribili prestazioni nella lettura dei VCD. Questo perchè l'ioctl CDROMREADRAW | |
214 non è del tutto implementato per questi lettori. Se hai conoscenze nella programmazione SCSI, | |
9388 | 215 per favore <A HREF="../tech/patches.txt">aiutaci</A> ad implementare il supporto |
8707 | 216 SCSI generico per i VCD.</P> |
217 | |
9864
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
218 <P>Nel frattempo puoi estrarre i dati dal VCD con |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
219 <A HREF="http://140.132.1.204/OS/Linux/packages/X/viewers/readvcd/">readvdc</A> |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
220 e vedere il file risultante con MPlayer.</P> |
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
221 |
8707 | 222 <H4>Struttura dei VCD</H4> |
223 | |
224 <P>I dischi VCD contengono una o più tracce:</P> | |
225 | |
226 <UL> | |
227 <LI>La prima è una piccola traccia da 2048 byte/settore, con un filesystem iso9660, | |
228 contenente di solito programmi win32 per la riproduzione di VCD e a volte altre informazioni | |
229 (jpeg, testi, ecc).</LI> | |
230 <LI>La seconda e le successive tracce sono pure tracce mpeg da 2324 byte/settore, senza | |
231 alcun filesystem ma puri dati mpeg ps, un pacchetto per settore. Questi contengono il | |
232 film... Le tracce <B>non possono essere montate</B>! E' come con le tracce audio | |
233 (es. Tu non hai mai montato un cd audio per leggerlo, vero?). | |
234 Dato che di solito i film sono contenuti nella traccia due, dovresti provare | |
10405 | 235 l'opzione <CODE>vcd://2</CODE> per prima.</LI> |
8707 | 236 <LI>Esistono anche dischi VCD senza la prima traccia (traccia singola e privi |
237 di qualunque filesystem). Sono sempre leggibili, ma non possono essere montati.</LI> | |
238 </UL> | |
239 | |
240 <P>Circa i file .DAT:</P> | |
241 | |
242 <P>Il file da ~600 MB visibile sulla prima traccia vcd montato non è un vero file! | |
243 E' un così detto iso gateway, creato per permettere a Windows di gestire quel tipo di tracce | |
244 (Windows non consente assolutamente alle applicazioni un accesso a basso livello ai dispositivi). | |
245 Sotto linux, non puoi copiare o riprodurre tali file (contengono schifezze). | |
246 Sotto Windows è possibile perchè il suo driver iso9660 emula la lettura delle tracce pure | |
247 in questo file. Per riprodurre un file .DAT devi usare un driver del kernel che si può | |
248 trovare nella versione Linux di PowerDVD. Ha un driver per il filesystem iso9660 modificato | |
9864
b65bcfaedbe5
Sync with 0_90. All stuff different from 0_90 is missing.
rtognimp
parents:
9512
diff
changeset
|
249 (vcdfs/isofs-2.4.X.o). Se monti il disco col loro driver puoi copiare e riprodurre |
8707 | 250 il file .DAT con mplayer. Ma <B>non funzionerà</B> |
251 col driver iso9660 standard contenuto nel kernel! Si consiglia invece di usare l'opzione | |
252 <CODE>-vcd</CODE>. Altre opzioni per la copia dei VCD sono | |
253 il nuovo driver del kernel <A HREF="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</A> | |
254 (mostra le <I>sessioni</I> del CD come file di immagine) e | |
255 <A HREF="http://cdrdao.sourceforge.net/">cdrdao</A> (un'applicazione che fa una copia bit-a-bit | |
256 dei cd).</P> | |
257 | |
258 <P> Il dispositivo VCD di default è /dev/cdrom. Se il dispositivo è diverso, allora devi fare un | |
259 link simbolico, o specificarlo dalla linea di comando con l'opzione <CODE>-cdrom-device</CODE>. | |
7509 | 260 </P> |
4867 | 261 |
262 </BODY> | |
263 </HTML> |