Mercurial > mplayer.hg
annotate DOCS/it/video.html @ 9697:5025150738eb
10000l (YUV vs. YVU swscale fix/cleanup)
author | michael |
---|---|
date | Thu, 27 Mar 2003 16:04:53 +0000 |
parents | 0fe056bdb135 |
children | 36a2215d1146 |
rev | line source |
---|---|
4867 | 1 <HTML> |
2 | |
5583 | 3 <HEAD> |
7509 | 4 <TITLE>Video - MPlayer - Movie Player per Linux</TITLE> |
6462 | 5 <LINK REL="stylesheet" TYPE="text/css" HREF="default.css"> |
7509 | 6 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> |
5583 | 7 </HEAD> |
4867 | 8 |
7509 | 9 <BODY> |
6462 | 10 |
8707 | 11 <H3><A NAME="video">2.3.1. Dispositivi di output video</A></H3> |
4867 | 12 |
8707 | 13 <H4><A NAME="mtrr">2.3.1.1. Configurare l' MTRR</A></H4> |
4867 | 14 |
15 <P>E' DECISAMENTE consigliato controllare se i registri MTRR sono ben configurati, | |
16 perchè possono fornire un grande aumento di prestazioni.</P> | |
17 | |
18 <P>Fai un '<CODE>cat /proc/mtrr</CODE>' :</P> | |
19 | |
20 <P><CODE> | |
21 --($:~)-- cat /proc/mtrr<BR> | |
22 reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9<BR> | |
23 reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1<BR> | |
24 </CODE></P> | |
25 | |
4961 | 26 <P>E' a posto, mostra la mia Matrox G400 con 16Mb di memoria. L'ho ottenuto con |
4867 | 27 XFree 4.x.x , che configura i registri MTRR automaticamente.</P> |
28 | |
29 <P>Se non ha funzionato, devi farlo manualmente. Prima, bisogna trovare l'indirizzo | |
30 di base. | |
31 Hai 3 modi per scoprirlo:</P> | |
32 | |
33 <P><UL> | |
34 <LI>dai messaggi di avvio di X11, per esempio: | |
35 <P><CODE>(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000<BR> | |
36 (--) SVGA: Linear framebuffer at 0xD8000000</CODE></P></LI> | |
37 <LI>da /proc/pci (usa il comando lspci -v): | |
38 <P> | |
39 <CODE>01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525</CODE> | |
40 <CODE>Memory at d8000000 (32-bit, prefetchable)</CODE> | |
41 </P> | |
42 <LI>dai messaggi del driver del kernel mga_vid (usa dmesg): | |
43 <P><CODE>mga_mem_base = d8000000</CODE></P> | |
44 </UL></P> | |
45 | |
46 <P>Poi troviamo la dimensione della memoria. E molto semplice, basta convertire la quantità di ram video | |
47 in esadecimale, o usare questa tabella:</P> | |
48 | |
49 <TABLE BORDER=0> | |
50 <TD> </TD><TD>1 MB</TD><TD WIDTH=10%></TD><TD>0x100000</TD><TR> | |
51 <TD></TD><TD>2 MB</TD><TD></TD><TD>0x200000</TD><TR> | |
52 <TD></TD><TD>4 MB</TD><TD></TD><TD>0x400000</TD><TR> | |
53 <TD></TD><TD>8 MB</TD><TD></TD><TD>0x800000</TD><TR> | |
54 <TD></TD><TD>16 MB</TD><TD></TD><TD>0x1000000</TD><TR> | |
55 <TD></TD><TD>32 MB</TD><TD></TD><TD>0x2000000</TD><TR> | |
56 </TABLE> | |
57 | |
58 | |
59 <P>Conosci l'indirizzo di base e la dimensione della memoria, configuriamo i registri mtrr! | |
60 Per esempio, per la scheda Matrox di cui sopra (base=0xd8000000) con 32MB di | |
61 ram (size=0x2000000) basta eseguire:</P> | |
62 | |
63 | |
64 <P><CODE> echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr</CODE></P> | |
65 | |
66 | |
67 <P>Non tutte le CPU supportano l'MTRR. Per esempio i più vecchi K6-2 [circa 266Mhz, | |
68 stepping 0] non supportano l'MTRR, ma gli stepping 12 si ('<CODE>cat /proc/cpuinfo</CODE>' | |
69 per controllare').</P> | |
70 | |
8707 | 71 <H4><A NAME="normal">2.3.1.2 Output video per normali schede video</A></H4> |
72 | |
73 <H4><A NAME="xv">2.3.1.2.1 Xv</A></H4> | |
4867 | 74 |
75 <P>Sotto XFree86 4.0.2 o più recente, si possono usare le routine hardware della tua scheda | |
76 usando l'estensione XVideo. Questo è quello che usa l'opzione '-vo xv'. Inoltre, | |
77 questo driver è quello che supporta la regolazione di luminosità/contrasto/hue/etc (a meno che tu stia usando | |
4961 | 78 il vecchio, lento codec DirectShow DivX, che lo supporta ovunque), vedi la pagina di |
4867 | 79 man.</P> |
80 | |
81 <P>Per farlo funzionare, assicurati delle seguenti cose:</P> | |
82 <P><UL> | |
83 <LI>Devi usare XFree86 4.0.2 o più recente (le versioni precedenti non hanno XVideo) | |
84 <LI>La tua scheda supporta l'accelerazione hardware (le schede moderne lo fanno) | |
85 <LI>X carica l'estensione XVideo, è qualcosa del genere: | |
86 | |
87 <P><CODE> (II) Loading extension XVideo</CODE></P> | |
88 <P>in /var/log/XFree86.0.log</P> | |
89 | |
90 <P>NOTA: questo carica solo l'estensione XFree86. In una buona installazione, questo è | |
91 sempre caricato, e non significa che il supporto XVideo _della scheda_ è caricato!</P> | |
92 | |
93 <LI>La tua scheda ha il supporto Xv sotto Linux. Per vederlo, prova 'xvinfo', è | |
94 parte della distribuzione di XFree86. Dovrebbe mostrare un lungo testo, simile | |
95 a questo: | |
96 <PRE> | |
97 X-Video Extension version 2.2 | |
98 screen #0 | |
99 Adaptor #0: "Savage Streams Engine" | |
100 number of ports: 1 | |
101 port base: 43 | |
102 operations supported: PutImage | |
103 supported visuals: | |
104 depth 16, visualID 0x22 | |
105 depth 16, visualID 0x23 | |
106 number of attributes: 5 | |
107 (...) | |
108 Number of image formats: 7 | |
109 id: 0x32595559 (YUY2) | |
110 guid: 59555932-0000-0010-8000-00aa00389b71 | |
111 bits per pixel: 16 | |
112 number of planes: 1 | |
113 type: YUV (packed) | |
114 id: 0x32315659 (YV12) | |
115 guid: 59563132-0000-0010-8000-00aa00389b71 | |
116 bits per pixel: 12 | |
117 number of planes: 3 | |
118 type: YUV (planar) | |
119 (...ecc...) | |
120 </PRE> | |
121 | |
122 <P>Deve supportare i formati pixel YUY2 packed, e YV12 planar per essere | |
8707 | 123 utilizzabile con MPlayer.</P> |
4867 | 124 |
8707 | 125 <LI>E infine, controlla se MPlayer è stato compilato col supporto 'xv'. |
4867 | 126 ./configure ti dice questo. |
127 | |
128 </UL></P> | |
129 | |
8707 | 130 <H4><A NAME="xv_3dfx">2.3.1.2.1.1 Schede 3dfx</A></H4> |
4867 | 131 |
132 <P>I vecchi driver 3dfx avevano problemi con l'accelerazione XVideo, | |
133 non supportavano ne YUY2 ne YV12, e cose del genere. Verifica di possedere | |
5583 | 134 XFree86 versione 4.2.0 o maggiore, funziona bene con YV12 e YUY2. Le versioni |
135 precedenti, inclusa la 4.1.0 <B>vanno in crash con YV12</B>! | |
4961 | 136 Se hai strani effetti con -vo xv, prova SDL (ha anche XVideo) |
7509 | 137 e guarda se aiuta. Controlla la <A HREF="#sdl">sezione SDL</A> per dettagli.</P> |
4867 | 138 |
7509 | 139 <P><B>O</B>, prova il NUOVO driver -vo tdfxfb! Vedi la sezione <A HREF="#tdfxfb"">tdfxfb</A>!</P> |
4867 | 140 |
141 | |
142 | |
8707 | 143 <H4><A NAME="xv_s3">2.3.1.2.1.2. Schede S3</A></H4> |
4867 | 144 |
145 <P>La S3 Savage3D dovrebbe funzionare bene, ma per la Savage4, usa XFree86 versione 4.0.3 | |
146 o maggiore (in caso di problemi con l'immagine, prova 16bpp). Come per S3 Virge.. c'è il supporto | |
147 xv, ma la scheda stessa è molto lenta, quindi faresti meglio a rivenderla.</P> | |
148 | |
8707 | 149 <P><B>NOTA</B>: non è chiaro in quali modelli Savage manchi il supporto YV12, |
150 ed è convertito dal driver (lento). Se hai dei sospetti sulla tua scheda, prendi un nuovo driver, | |
151 o chiedi gentilmente sulla mailing list mplayer-users mailing un driver col supporto | |
152 MMX/3DNow.</P> | |
4867 | 153 |
8707 | 154 <H4><A NAME="xv_nvidia">2.3.1.2.1.3. Schede nVidia</A></H4> |
4867 | 155 |
156 <P>nVidia non è una scelta molto buona sotto Linux (secondo NVidia, questo | |
157 <A HREF="users_against_developers.html#nvidia">non è vero</A>).. Sarai costretto ad usare | |
158 il driver binario closed-source di nVidia, disponibile sul sito di nVidia. Il driver XFree86 standard | |
159 non supporta XVideo per queste schede, a causa delle specificazioni e dei sorgenti chiusi di nVidia.</P> | |
160 | |
161 | |
162 <P>Per quanto ne so l'ultimo driver XFree86 contiene il supporto XVideo per | |
163 Geforce 2 e 3.</P> | |
164 | |
165 <P><UL><LI>Le schede Riva128 non hanno il supporto XVideo neanche col driver di nvidia :( | |
166 Lamentati con NVidia.</UL></P> | |
167 | |
168 | |
8707 | 169 <H4><A NAME="xv_ati">2.3.1.2.1.4. Schede ATI</A></H4> |
4867 | 170 |
171 <P> | |
8707 | 172 <LI>Il <A HREF="http://gatos.sourceforge.net">driver GATOS</A> (che dovresti |
4867 | 173 usare, a meno che tu non abbia Rage128 o Radeon) ha VSYNC abilitato di default. Questo |
174 significa che la velocità di decodifica (!) è sincronizzata con quella di refresh del monitor. Se | |
175 la riproduzione sembra essere lenta, prova a disabilitare il VSYNC in qualche modo, o regola la velocità di refresh | |
176 a n*(fps del filmato) Hz.</LI> | |
177 | |
178 <LI>Radeon VE - attualmente solo il CVS di XFree86 ha un driver per questa scheda, la versione | |
8707 | 179 4.1.0 no. E nessun supporto TV out. Naturalmente con MPlayer puoi felicemente |
4867 | 180 ottenere una visualizzazione <B>accelerata</B>, con o senza <B>output TV</B>, e |
7509 | 181 non servono librerie o X. Leggi le sezioni <a href="#vidix">Vidix</a>. |
4867 | 182 |
183 | |
8707 | 184 <H4><A NAME="xv_neomagic">2.3.1.2.1.5. Schede NeoMagic</A></H4> |
4867 | 185 |
186 <P> | |
4939 | 187 Queste schede possono essere trovate su molti laptop. Sfortunatamente, il driver in |
188 X 4.2.0 non può usare Xv, ma abbiamo un driver modificato, capace di Xv, per te. | |
189 <A HREF="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neomagic_drv.o.4.2.0.bz2">Scaricalo da qui</A>. | |
5583 | 190 Driver fornito da Stefan Seyfried.</P> |
191 | |
192 <P>Per permettere la riproduzione di DVD cambia il tuo XF86Config così:</P> | |
193 | |
194 <P> | |
195 Section "Device"<BR> | |
196 <I>[...]</I><BR> | |
197 Driver "neomagic"<BR> | |
198 <B>Option "OverlayMem" "829440"</B><BR> | |
199 <I>[...]</I><BR> | |
200 EndSection | |
201 </P> | |
4867 | 202 |
8707 | 203 <H4><A NAME="xv_trident">2.3.1.2.1.6. Schede Trident</A></H4> |
4867 | 204 |
205 <P>Se vuoi usare xv con una scheda trident, dato che non funziona | |
8707 | 206 col 4.1.0, installa XFree 4.2.0 che |
207 aggiunge il supporto per xv a pieno schermo con la scheda | |
4867 | 208 Cyberblade XP.</P> |
209 | |
8707 | 210 <H4><A NAME="dga2>2.3.1.2.2 DGA</A></H4> |
4867 | 211 |
8707 | 212 <H4><A NAME="dga_summary">2.3.1.2.2.1 Sommario</A></H4> |
4867 | 213 |
214 <P>Questo documento tenta di spiegare cosa sia il DGA in generale e | |
215 cosa può fare (e cosa non può) il driver di output video DGA di mplayer.</P> | |
216 | |
217 | |
8707 | 218 <H4><A NAME="dga_whatis">2.3.1.2.2.2 Cos'è il DGA</A></H4> |
4867 | 219 |
220 <P>DGA è l'acronimo di Direct Graphics Access (Accesso Diretto alla Grafica, ndt) ed è un modo per un programma di | |
221 aggirare il server X e modificare direttamente la memoria del framebuffer. | |
222 Detto tecnicamente questo è possibile mappando la memoria del framebuffer nell'area | |
223 di memoria del tuo processo. Questo è permesso dal kernel solo se | |
224 hai i privilegi di superutente. Puoi ottenerli o loggandoti come | |
225 root o applicando il bit suid all'eseguibile mplayer (NON | |
226 consigliato!).</P> | |
227 | |
228 <P>Esistono due versioni di DGA: DGA1 è usato da XFree 3.x.x e DGA2 è stato | |
229 introdotto con XFree 4.0.1.</P> | |
230 | |
231 <P>DGA1 fornisce solo accesso diretto al framebuffer come descritto sopra. Per | |
232 cambiare la risoluzione del segnale video bisogna appoggiarsi all'estensione | |
233 XVidMode.</P> | |
234 | |
235 <P>DGA2 incorpora le caratteristiche di XVidMode e permette anche | |
236 di cambiare la profondità del display. Cosi puoi, anche se è in esecuzione | |
237 un server X a 32 bit di profondità, cambiare ad una profondità di 15 bit e vice | |
238 versa. </P> | |
239 | |
240 <P>Però il DGA ha alcune pecche. Sembra che siano in qualche modo dipendenti dal | |
241 chip grafico che si usa e dall'implementazione del driver video del server X | |
242 che controlla questo chip. Quindi non funziona su tutti i sistemi ...</P> | |
243 | |
244 | |
8707 | 245 <H4><A NAME="dga_installation">2.3.1.2.2.3. Installare il supporto DGA per MPlayer</A></H4> |
4867 | 246 |
247 <P>Per prima cosa assicurati che X carichi l'estensione DGA, controlla in /var/log/XFree86.0.log:</P> | |
248 | |
249 <P> <CODE>(II) Loading extension XFree86-DGA</CODE></P> | |
250 | |
251 <P>Vedi, XFree86 4.0.x o maggiore è DECISAMENTE CONSIGLIATO! | |
8707 | 252 Il driver DGA di MPlayer è trovato automaticamente da ./configure, o si può forzare con |
4867 | 253 --enable-dga.</P> |
254 | |
255 <P>Se il driver non può cambiare ad una risoluzione minore, prova con le opzioni | |
256 -vm (solo con X 3.3.x), -fs, -bpp, -zoom per trovare una modalità adatta. | |
257 Non c'è una conversione per ora.. :(</P> | |
258 | |
259 <P>Diventa ROOT. DGA ha bisogno dell'accesso di root per poter scrivere direttamente nella memoria video. | |
8707 | 260 Se vuoi eseguirlo da utente, allora installa MPlayer SUID root:</P> |
4867 | 261 |
262 <P><CODE> | |
263 chown root /usr/local/bin/mplayer<BR> | |
264 chmod 750 /usr/local/bin/mplayer<BR> | |
265 chmod +s /usr/local/bin/mplayer</CODE></P> | |
266 | |
267 | |
268 <P>Ora funziona anche da semplice utente.</P> | |
269 | |
270 | |
271 <P><B>!!!! MA RIMANI IN ASCOLTO !!!!</B><BR> | |
272 Questo è un <B>GRANDE</B> rischio per la sicurezza! Non farlo mai su un server o un computer | |
273 al quale possono accedere altre persone perchè si possono ottenere i privilegi di root | |
274 attraverso mplayer suid root.<BR> | |
275 <B>!!!! QUINDI SEI STATO AVVISATO ... !!!!</B></P> | |
276 | |
277 <P>Ora usa l'opzione '-vo dga', ed ecco fatto! (spero:) | |
278 Dovresti anche provare se l'opzione '-vo sdl:dga' funziona per te! E' molto più | |
279 veloce!!!</P> | |
280 | |
8707 | 281 <H4><A NAME="dga_resolution">2.3.1.2.2.4. Cambiare risoluzione</A></H4> |
4867 | 282 |
283 <P>Il driver DGA permette di cambiare la risoluzione del segnale di uscita. | |
284 Questo evita la necessita di eseguire un (lento) ridimensionamento software e allo stesso | |
285 tempo fornisce un'immagine a pieno schermo. Idealmente dovrebbe andare all'esatta risoluzione | |
286 (tranne che per rispettare le proporzioni) dei dati video, ma il server X | |
287 permette solo di andare ad una risoluzione presente in | |
288 <CODE>/etc/X11/XF86Config</CODE> (<CODE>/etc/X11/XF86Config-4</CODE> per XFree 4.0.X). | |
289 Queste sono definite dalle cosi dette modeline e dipendono dalle capacità | |
290 del tuo hardware video. Il server X legge questo file di configurazione all'avvio e | |
291 disabilita le modeline non adatte al tuo hardware. Puoi scoprire quali modalità rimangono | |
292 nel file di log di X11. Si trova in: | |
293 <CODE>/var/log/XFree86.0.log</CODE>.</P> | |
294 <P>Vedi l'appendice A per alcune definizioni di modeline di esempio.</P> | |
295 | |
8707 | 296 <H4><A NAME="dga_mplayer">2.3.1.2.2.5. DGA & MPlayer</A></H4> |
4867 | 297 |
8707 | 298 <P>DGA è utilizzato in due posti in MPlayer: nel driver SDL |
4867 | 299 (-vo sdl:dga) e nel driver DGA (-vo dga). |
300 Quello detto sopra è valido per entrambi; nella seguente sezione spiegherò come funziona | |
8707 | 301 il driver DGA di MPlayer.</P> |
4867 | 302 |
8707 | 303 <H4><A NAME="dga_features">2.3.1.2.2.6. Caratteristiche del driver DGA</A></H4> |
4867 | 304 |
305 <P>Il driver DGA è invocato specificando -vo dga alla riga di comando. | |
306 Il comportamento di default è quello di cambiare ad una risoluzione il più vicino possibile | |
307 a quella originale del filmato. Ignora deliberatamente le opzioni | |
308 -vm e -fs (cambiare la modalità video e il pieno schermo) - | |
309 tenta sempre di coprire la maggior parte possibile del monitor cambiando la | |
310 modalità video, astenendosi così dall'usare anche un solo ciclo in più della CPU | |
311 per ridimensionare l'immagine. | |
312 Se non ti piace la modalità che ha scelto puoi forzarlo ad usare la risoluzione | |
313 più vicina a quella che gli viene passata con le opzioni -x e -y. | |
314 Con l'opzione -v, il driver DGA stamperà a video, tra le altre cose, | |
315 una lista delle risoluzioni supportate dal tuo attuale file | |
316 XF86-Config. | |
317 Con il DGA2 puoi anche forzarlo ad usare una certa profondità usando l'pzione -bpp. | |
318 Le profondità valide sono 15, 16, 24 e 32. Dipende dal tuo hardware | |
319 se queste profondità sono supportate nativamente o se deve essere fatta una (possibilmente lenta) | |
320 conversione.</P> | |
321 | |
322 <P>Se sei abbastanza fortunato da avere abbastanza memoria video rimasta | |
323 per inserire un'intera immagine, il driver DGA userà il doppio buffering, che permette una riproduzione | |
324 video più fluida. Ti dirà se il doppio buffering è abilitato oppure | |
325 no.</P> | |
326 | |
327 <P>Doppio buffering significa che la successiva immagine del filmato viene disegnata nella | |
328 memoria video mentre è mostrata l'immagine attuale. Quando il successivo frame | |
329 è pronto, basta dire al chip grafico la posizione nella memoria | |
330 del nuovo frame e prende semplicemente i dati da visualizzare da lì. | |
331 Nel frattempo un altro buffer nella memoria sarà di nuovo riempito con nuovi dati | |
332 video.</P> | |
333 | |
334 Il doppio buffering può essere abilitato con l'opzione -double e disabilitato con | |
335 -nodouble. L'azione attualmente predefinita è quella di disabilitare il doppio | |
336 buffering. Quando si usa il driver DGA, l' OSD funziona | |
337 solo col doppio buffering abilitato. Comunque, abilitare il doppio buffering può | |
338 risultare in una grande perdita di velocità (sul mio K6-II+ 525 usa un 20% in più di tempo della | |
339 CPU!) a seconda dell'implementazione del DGA per il tuo hardware.</P> | |
340 | |
341 | |
8707 | 342 <H4><A NAME="dga_speed">2.3.1.2.2.7. Questioni sulla velocità</A></H4> |
4867 | 343 |
344 <P>Parlando in generale, l'accesso al framebuffer DGA dovrebbe essere veloce almeno quanto | |
345 il driver X11 con in più il beneficio di avere l'immagine a pieno schermo. | |
346 I valori di velocità in percentuale dati da mplayer devono essere interpretati con una certa | |
347 cura, dato che per esempio, col driver X11 non includono il tempo impiegato | |
348 dal server X necessario per il reale disegno. Aggancia un terminale alla porta | |
349 seriale della tua box ed esegui top per vedere cosa sta realmente accadendo | |
350 ...</P> | |
351 | |
352 <P>Parlando in generale, l'incremento di velocità dato da DGA rispetto ad un uso 'normale' di X11 | |
353 dipende in larga misura dalla tua scheda grafica e da quanto sia ben ottimizzato il modulo X-Server | |
354 per essa.</P> | |
355 | |
356 <P>Se hai un sistema lento, faresti meglio ad usare una profondità di 15 o 16bit in quanto necessitano | |
357 solo metà della larghezza di banda della memoria rispetto ai 32.</P> | |
358 | |
359 <P>Anche usare una profondità di 24bit è una buona idea se la tua scheda li supporta nativamente solo i | |
360 32 bit in quanto trasferisce il 25% in meno di dati rispetto alla modalità 32/32.</P> | |
361 | |
362 <P>Ho visto già dei file avi riprodotti su un Pentium MMX 266. Le CPU AMD K6-2 | |
363 dovrebbero andare bene dai 400 MHZ in su.</P> | |
364 | |
8707 | 365 <H4><A NAME="dga_bugs">2.3.1.2.2.8. Bug conosciuti</A></H4> |
4867 | 366 |
367 <P>Bene, secondo alcuni sviluppatori di XFree, DGA è proprio una bestiaccia. Raccomandano | |
368 di non usarlo. La sua implementazione non è sempre perfetta | |
369 con tutti i driver per chipset di XFree la fuori.</P> | |
370 | |
371 <P><UL> | |
372 <LI>con XFree 4.0.3 e nv.o c'è un bug che risulta in strani colori | |
373 <LI>il driver ATI necessita di cambiare la modalità più volte dopo aver finito di usare | |
374 DGA | |
375 <LI>alcuni driver semplicemente falliscono nel ritornare alla risoluzione normale (usa | |
376 Ctrl-Alt-Keypad +, - per ritornarci manualmente) | |
377 <LI>alcuni driver semplicemente mostrano strani colori | |
378 <LI>alcuni driver mentono sulla quantità di memoria che mappano nello spazio di indirizzamento del | |
379 processo, così vo_dga non userà il doppio buffering (SIS?) | |
380 <LI>alcuni driver sembrano fallire nel riportare anche una singola modalità valida. In questo caso | |
381 il driver DGA si interromperà lamentandosi di una modalità senza senso di | |
382 100000x100000 o simile ... | |
383 <LI>OSD funziona solo col doppio buffering abilitato | |
384 </UL></P> | |
385 | |
8707 | 386 <H4><A NAME="dga_future">2.3.1.2.2.9. Lavoro futuro</A></H4> |
4867 | 387 |
388 <P><UL><LI>usare la nuova interfaccia di rendering di X11 per OSD | |
389 <LI>dov'è la mia lista delle cose da fare ???? :-(((</UL></P> | |
390 | |
391 | |
8707 | 392 <H4><A NAME="dga_modelines">2.3.1.2.2.A. Alcune modeline</A></H4> |
4867 | 393 |
394 <PRE> | |
395 Section "Modes" | |
396 Identifier "Modes[0]" | |
397 Modeline "800x600" 40 800 840 968 1056 600 601 605 628 | |
398 Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 | |
399 Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 | |
400 Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan | |
401 Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 | |
402 Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan | |
403 Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan | |
404 EndSection | |
405 </PRE> | |
406 | |
407 <P>Queste funzionano bene col mio chip Riva128, usando il modulo del driver XServer nv.o . | |
408 </P> | |
409 | |
410 | |
8707 | 411 <H4><A NAME="dga_bug_reports">2.3.1.2.2.B. Segnalazione bug</A></H4> |
4867 | 412 |
413 <P>Se riscontri dei problemi col driver DGA per favore sentiti libero di inviare una segnalazione | |
414 di bug a me (indirizzo e-mail sotto). Per favore esegui mplayer con l'opzione | |
415 -v e includi tutte le linee che cominciano con vo_dga: nella segnalazione</P> | |
416 | |
417 <P>Includi anche la versione di X11 che usi, la scheda video | |
418 e il tuo tipo di CPU. Anche il modulo del driver X11 (definito in XF86-Config) potrebbe | |
419 aiutare. Grazie!</P> | |
420 | |
421 | |
422 <P><I>Acki (acki@acki-netz.de, www.acki-netz.de)</I></P> | |
423 | |
424 | |
8707 | 425 <H4><A NAME="sdl">2.3.1.2.3 SDL</A></H4> |
4867 | 426 |
427 <P>SDL (Simple Directmedia Layer, Semplice Livello Diretto per media, ndt) è in generale una interfaccio video/audio | |
4961 | 428 unificata. I programmi che ne fanno uso conoscono solo l' SDL, e nulla su quale driver video |
429 o audio SDL usano veramente. Per esempio un port di Doom che usa SDL può | |
4867 | 430 essere eseguito su svgalib, aalib, X, fbdev, e altri, devi solo specificare il |
431 (per esempio) driver video da usare con la variabile d'ambiente SDL_VIDEODRIVER. | |
432 Bhe, in teoria.</P> | |
433 | |
8707 | 434 <P>Con MPlayer, abbiamo usato la capacita di ridimensionamento software del suo driver X11 per |
4867 | 435 schede/driver che non supportano XVideo, finchè non abbiamo fatto il nostro (più veloce, |
436 più bello) ridimensionatore software. Abbiamo anche usato il suo output aalib, ma ora abbiamo il nostro che è | |
437 più comodo. La sua modalità DGA era migliore della nostra, fino a poco | |
438 tempo fà. Afferrato ora? :)</P> | |
439 | |
440 <P>Aiuta anche con alcuni driver/schede difettosi se il video o l'audio sono a scatti | |
441 (non un problema di sistema lento).</P> | |
442 | |
5583 | 443 <P>Il video output SDL supporta la visualizzazione dei sottotitoli sotto al filmato, sulla (se |
444 presente) barra nera.</P> | |
445 | |
8707 | 446 <P><B>Ci sono molte opzioni a riga di comando per SDL:</B></P> |
447 <DL> | |
448 <DT><CODE>-vo sdl:name</CODE></DT> | |
449 <DD>specifica il driver video sdl da usare (es. aalib, dga, x11)</DD> | |
4867 | 450 |
8707 | 451 <DT><CODE>-ao sdl:name</CODE></DT> |
452 <DD>specifica il driver audio sdl da usare (es. dsp, esd, arts)</DD> | |
4867 | 453 |
8707 | 454 <DT><CODE>-noxv</CODE></DT> |
455 <DD>disabilita l'accelerazione hardware Xvideo</DD> | |
4867 | 456 |
8707 | 457 <DT><CODE>-forcexv</CODE></DT> |
458 <DD>tenta di forzare l'accelerazione Xvideo</DD> | |
459 </DL> | |
4867 | 460 |
8707 | 461 <TABLE BORDER=0> |
462 <TR><TD COLSPAN=4><P><B>Tasti per SDL:</B></P></TD></TR> | |
463 <TR><TD></TD><TD><CODE>F</CODE></TD><TD></TD><TD>scambia le modalità pieno schermo/finestra</TD></TR> | |
464 <TR><TD></TD><TD><CODE>C</CODE></TD><TD></TD><TD>cambia tra le modalità a pieno schermo disponibili</TD></TR> | |
465 <TR><TD></TD><TD><CODE>W/S</CODE></TD><TD></TD><TD>sostituiscono * e / (controllo mixer)</TD></TR> | |
466 </TABLE> | |
4867 | 467 |
468 <P><B>BUG CONOSCIUTI:</B></P> | |
469 <P><UL><LI>I tasti premuti sotto il driver sdl:aalib si ripetono all'infinito. (usa -vo aa !) | |
470 E' un bug di SDL, io non posso cambiarlo (provato con SDL 1.2.1). | |
8707 | 471 <LI>NON USARE L'SDL CON LA GUI! Non funziona come dovrebbe.</LI> |
4867 | 472 </UL></P> |
473 | |
8707 | 474 <H4><A NAME="svgalib">2.3.1.2.4 SVGAlib</A></H4> |
4867 | 475 |
6819 | 476 <P><B><U>Installazione</U></B><BR> |
477 Devi installare svgalib e il suo pacchetto di sviluppo per fare in modo che | |
8707 | 478 MPlayer compili il suo driver SVGAlib (riconosciuto automaticamente, ma può essere forzato), |
6819 | 479 e non dimenticare di modificare /etc/vga/libvga.config per adattarlo alla tua scheda & monitor.</P> |
480 | |
481 <P><B><U>Note</U></B><BR> | |
482 Non usare l'opzione -fs, in quanto abilita il ridimensionamento via software, | |
483 che è lento. Se ne hai davvero bisogno, usa l'opzione <CODE>-sws 4</CODE>, | |
484 risulterà una qualità peggiore ma è in qualche modo più veloce.</P> | |
485 | |
486 <P><B><U>Supporto EGA (4bpp)</U></B><BR> | |
8707 | 487 SVGAlib incorpora EGAlib, e MPlayer può mostrare qualsiasi |
6819 | 488 filmato in 16 colori, quindi è utilizzabile con le seguenti configurazioni:</P> |
4867 | 489 |
6819 | 490 <UL> |
491 <LI>Scheda EGA con monitor EGA: 320x200x4bpp, 640x200x4bpp, 640x350x4bpp</LI> | |
492 <LI>Scheda EGA con monitor CGA: 320x200x4bpp, 640x200x4bpp</LI> | |
493 </UL> | |
494 | |
495 <P>Il valore di bpp (bits per pixel) deve essere impostato manualmente a 4:<BR> | |
496 <CODE>-bpp 4</CODE><BR> | |
497 Il filmato probabilmente deve essere ridimensionato per adattarlo alla modalità EGA:<BR> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
498 <CODE>-vf scale=640:350</CODE> or<BR> |
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
499 <CODE>-vf scale=320:200</CODE><BR> |
6819 | 500 Per questo abbiamo bisogno di una routine di ridimensionamento veloca ma di cattiva qualità:<BR> |
501 <CODE>-sws 4</CODE><BR> | |
502 Forse deve essere disabilitata la correzione automatica dell'aspetto:<BR> | |
503 <CODE>-noaspect</CODE><BR> | |
504 </P> | |
4867 | 505 |
8707 | 506 <H4><A NAME="fbdev">2.3.1.2.5 Output col Framebuffer (FBdev)</A></H4> |
4867 | 507 |
4939 | 508 <P>Se compilare il driver FBdev è stabilito automaticamente da ./configure . |
4867 | 509 Leggi la documentazione del framebuffer nei sorgenti del kernel |
510 (Documentation/fb/*) per informazioni su come abilitarlo, ecc.. !</P> | |
511 | |
512 <P>Se la tua scheda non supporta lo standard VBE 2.0 (le più vecchie schede ISA/PCI, | |
513 come la S3 Trio64), ma solo VBE 1.2 (o più vecchio?) : | |
4939 | 514 ebbene, VESAfb è ancora disponibile, ma dovrai caricare il programma SciTech Display |
4867 | 515 Doctor (prima UniVBE) prima di fare il boot di Linux. Usa un dischetto di boot DOS o |
516 quello che vuoi. E non dimenticare di registrare il tuo UniVBE ;))</P> | |
517 | |
518 <P>L'output FBdev accetta alcuni parametri supplementari tra i quali:</P> | |
519 | |
520 <P><TABLE BORDER=0> | |
521 <TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-fb</TD><TD> </TD><TD> | |
522 <FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>specifica il dispositivo framebuffer da usare (/dev/fb0)</TD><TR> | |
523 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-fbmode</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>nome della modalità da usare (secondo /etc/fb.modes)</TD><TR> | |
524 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-fbmodeconfig</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2> file di configurazione delle modalità (default /etc/fb.modes)</TD><TR> | |
525 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-monitor_hfreq</TD><TD></TD><TD ROWSPAN=3><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>valori IMPORTANTI, vedi example.conf</TD><TR> | |
526 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-monitor_vfreq</TD><TD></TD><TR> | |
527 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-monitor_dotclock</TD><TD></TD><TR> | |
528 </TABLE></P> | |
529 | |
530 <P>Se vuoi cambiare ad una modalità specifica, allora usa</P> | |
531 | |
532 <P><CODE> mplayer -vm -fbmode (NomeModalità) nomefile</CODE></P> | |
533 | |
534 <P><UL><LI>l'opzione <B>-vm</B> sceglierà la modalità più adatta da /etc/fb.modes . Può essere usata | |
535 anche insieme alle opzioni -x e -y. L'opzione -flip è supportata solo se | |
536 il formato dei pixel del filmato corrisponde a quello dei pixel della modalità video. | |
537 Fai attenzione al valore di bpp, il driver fbdev tenta di usare l'attuale, | |
538 o se si specifica l'opzione -bpp, allora quella.</LI> | |
539 <LI>l'opzione <B>-zoom</B> non è supportata (il ridimensionamento software è lento). l'opzione -fs | |
540 non è supportata. Non puoi usare le modalità a 8bpp (o meno).</LI> | |
541 <LI>Probabilmente vuoi nascondere il cursore : <CODE>echo -e '\033[?25l'</CODE> | |
542 o <CODE>setterm -cursor off</CODE><BR> | |
543 e lo screen saver: <CODE>setterm -blank 0</CODE><BR> | |
544 Per riavere il cursore : <CODE>echo -e '\033[?25h'</CODE> | |
545 o <CODE>setterm -cursor on</CODE> | |
546 </UL></P> | |
547 | |
548 <P>NOTA: il cambiamento di modalità video di FBdev _non funziona_ col framebuffer VESA, | |
8707 | 549 e non richiederlo, in quanto non è una limitazione di MPlayer.</P> |
4867 | 550 |
8707 | 551 <H4><A NAME="mga_vid">2.3.1.2.6. Framebuffer Matrox (mga_vid)</A></H4> |
4867 | 552 |
553 <P>Questa sezione parla del supporto BES (Back-End Scaler) di Matrox G200/G400/G450/G550, | |
4939 | 554 il driver del kernel mga_vid. E' attualmente sviluppato da me (A'rpi), e |
4867 | 555 ha il supporto VSYNC hardware con triplo buffering. Funziona sia da console col framebuffer |
556 che sotto X.</P> | |
557 | |
8707 | 558 <P><B>ATTENZIONE</B>: su sistemi non-Linux, usa <A HREF=#vidix>Vidix</A> per |
4867 | 559 mga_vid !!!</P> |
560 | |
561 <P>Per usarlo, devi prima compilare mga_vid.o:</P> | |
562 | |
563 <P><CODE> cd drivers<BR> | |
564 make</CODE></P> | |
565 | |
566 <P>Poi crea il dispositivo /dev/mga_vid:</P> | |
567 | |
568 <P><CODE> mknod /dev/mga_vid c 178 0</CODE></P> | |
569 | |
570 <P>e carica il driver con</P> | |
571 | |
572 <P><CODE> insmod mga_vid.o</CODE></P> | |
573 | |
574 <P>Dovresti controllare il riconoscimento della dimensione della memoria usando il comando 'dmesg'. Se è | |
575 sbagliata, usa l'opzione mga_ram_size (prima rmmod mga_vid), specifica la dimensione della memoria | |
576 della scheda in MB:</P> | |
577 | |
578 <P><CODE> insmod mga_vid.o mga_ram_size=16</CODE></P> | |
579 | |
580 <P>Per farlo caricare/scaricare automaticamente quando ce n'è bisogno, prima inserisci la seguente riga | |
581 alla fine di /etc/modules.conf:</P> | |
582 | |
583 <P><CODE> alias char-major-178 mga_vid</CODE></P> | |
584 | |
585 <P>Quindi copia il modulo <CODE>mga_vid.o</CODE> nella posizione appropriata sotto | |
586 <CODE>/lib/modules/<versione kernel>/daqualcheparte</CODE>.</P> | |
587 | |
588 <P>Poi esegui</P> | |
589 | |
590 <P><CODE> depmod -a</CODE></P> | |
591 | |
8707 | 592 <P>Ora devi (ri)compilare MPlayer, ./configure troverà /dev/mga_vid |
593 e compilerà il driver 'mga'. In MPlayer si usa con '-vo mga' se | |
4867 | 594 hai la console matroxfb, o '-vo xmga' sotto XFree86 3.x.x o 4.x.x.</P> |
595 | |
596 <P>Il driver mga_vid coopera con Xv.</P> | |
597 | |
598 <P>Il file del dispositivo <CODE>/dev/mga_vid</CODE> può essere letto (per esempio con | |
4961 | 599 <CODE>cat /dev/mga_vid</CODE>) per avere alcune informazioni, e scritto per cambiare la luminosità |
4867 | 600 : <CODE>echo "brightness=120" > /dev/mga_vid</CODE></P> |
601 | |
8707 | 602 <H4><A NAME="tdfxfb">2.3.1.2.7. Supporto YUV 3dfx (tdfxfb)</A></H4> |
4867 | 603 |
604 <P>Questo driver usa il driver framebuffer del kernel tdfx per riprodurre i filmati con | |
605 accelerazione YUV. Devi avere un kernel col supporto tdfxfb, e ricompilare con | |
606 <CODE>./configure --enable-tdfxfb</CODE></P> | |
607 | |
8707 | 608 <H4><A NAME="opengl">2.3.1.2.8. Output in OpenGL</A></H4> |
4867 | 609 |
8707 | 610 <P>MPlayer supporta la visualizzazione dei filmati usando OpenGL, ma se |
6462 | 611 la tua piattaforma/driver supporta xv come dovrebbe essere su un PC con Linux, usa xv |
612 invece, le prestazioni di OpenGL sono peggiori. Se hai una implementazione X11 | |
613 senza il supporto di xv, OpenGL è un' alternativa disponibile.</P> | |
614 | |
615 <P>Sfortunatamente, non tutti | |
4867 | 616 i driver hanno questa capacità. Per esempio i driver Utah-GLX |
617 (per XFree86 3.3.6) lo supportano, con tutte le schede. | |
618 Vedi <A HREF="http://utah-glx.sourceforge.net">http://utah-glx.sourceforge.net</A> | |
619 per dettagli su come installarlo.</P> | |
620 | |
6462 | 621 <P>XFree86(DRI) >= 4.0.3 supporta OpenGL con schede Matrox, e Radeon, >= 4.2 |
622 lo supporta anche per le Rage128. | |
4867 | 623 Vedi <A HREF="http://dri.sourceforge.net">http://dri.sourceforge.net</A> per scaricarlo, |
624 e per istruzioni sull'installazione.</P> | |
625 | |
8707 | 626 <H4><A NAME="aalib">2.3.1.2.9. AAlib - visione in modalità testo</A></H4> |
4867 | 627 |
628 <P><B>AAlib</B> è una libreria per vedere la grafica in modalità testo, usando un potente | |
4961 | 629 renderer ASCII. Ci sono MOLTI programmi che già la supportano, come Doom, |
630 Quake, ecc. MPlayer contiene un driver molto facile da usare per questa. | |
4867 | 631 Se ./configure trova aalib installata, sarà compilato il driver libvo aalib.</P> |
632 | |
633 <P><TABLE BORDER=0> | |
634 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>Puoi usare alcuni tasti nella finestra AA per cambiare le opzioni di rendering:</B></P></TD><TR> | |
635 <TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>1</TD><TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>diminuisce il contrasto</TD><TR> | |
636 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>2</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>aumenta il contrasto</TD><TR> | |
637 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>3</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>diminuisce la luminosità</TD><TR> | |
638 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>4</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>aumenta la luminosità</TD><TR> | |
639 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>5</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>(dis)attiva il rendering veloce</TD><TR> | |
640 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>6</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>cambia la modalità di dithering (nessuno, distribuzione dell'errore, floyd steinberg)</TD><TR> | |
641 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>7</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>inverte l' immagine</TD><TR> | |
4961 | 642 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>a</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>cambia i controlli da aa a mplayer</TD><TR> |
4867 | 643 |
644 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>Possono essere usate le seguenti opzioni a riga di comando:</B></P></TD><TR> | |
645 | |
646 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-aaosdcolor=V</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>cambia il colore dell'osd</TD><TR> | |
647 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-aasubcolor=V</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>cambia il colore dei sottotitoli</TD><TR> | |
648 <TD COLSPAN=3></TD><TD><P><I><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>dove V può essere: (0/normal, 1/dark, 2/bold, 3/boldfont, 4/reverse, 5/special)</P></TD><TR> | |
649 | |
650 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>La stessa AAlib fornisce un gran numero do opzioni. | |
651 Eccone alcune importanti:</P></B></TD><TR> | |
652 | |
653 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-aadriver</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>seleziona il driver aa consigliato (X11, curses, linux)</TD><TR> | |
654 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-aaextended</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>usa tutti i 256 caratteri</TD><TR> | |
655 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-aaeight</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>usa ascii a otto bit</TD><TR> | |
656 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-aahelp</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>stampa tutte le opzioni di aalib</TD><TR> | |
657 </TABLE></P> | |
658 | |
659 <P>NOTA: il rendering utilizza molta CPU, specialmente usando aalib su X, | |
660 e ne usa meno su console standard, | |
661 non-framebuffer. Usa SVGATextMode per selezionare una modalità testo grande, | |
662 e divertiti! (le schede Hercules con uscita secondaria vanno forte :)) (qualcuno può migliorare | |
663 bdev per fare conversione/dithering a hgafb? Sarebbe bello :)</P> | |
664 | |
4961 | 665 <P>Usa l'opzione -framedrop se il tuo computer non è abbastanza veloce da renderizzare tutti i frame!</P> |
4867 | 666 |
667 <P>Usandolo da terminale otterrai una più alta velocità e qualità usando il driver di linux, non | |
668 curses (-aadriver linux). Ma per questo devi avere accesso in scrittura a /dev/vcsa<terminale>! | |
4961 | 669 Questa non è ipostata automaticamente da aalib, ma vo_aa cerca di trovare la modalità migliore. |
4867 | 670 Vedi <A HREF="http://aa-project.sourceforge.net/tune/">http://aa-project.sourceforge.net/tune/</A> per ulteriori questioni di regolazione.</P> |
671 | |
672 | |
8707 | 673 <H4><A NAME="vesa">2.3.1.2.10. VESA - output col BIOS VESA</H4> |
4867 | 674 <P> |
4961 | 675 Questo driver è stato pensato e introdotto come un <b>driver generico</b> per qualsiasi scheda video |
8707 | 676 con un BIOS VESA VBE 2.0+ compatibile. Ma c'è ancora una ragione per lo sviluppo di |
6819 | 677 questo driver - la sua possibilità di abilitare l'output sulla TV.<BR> |
4867 | 678 <b>VESA BIOS EXTENSION (VBE) Versione 3.0 Data: 16 Settembre 1998</b> (Pagina 70) |
679 dice: | |
680 </P> | |
681 | |
682 <P> | |
683 <code><i> | |
684 <b>Design a doppio controller</b><br> | |
685 VBE 3.0 supporta il design a doppio controller supponendo che, dato che entrambi | |
686 i controller sono solitamente forniti dallo stesso OEM, sotto il controllo di una | |
4961 | 687 singola ROM BIOS sulla stessa scheda grafica, è possibile nascondere all'applicazione il fatto che |
688 sono realmente presenti due controller. Questo ha la limitazione | |
4867 | 689 di impedire l'uso contemporaneo dei controller indipendenti, |
690 ma consente alle applicazioni rilasciate prima del VBE 3.0 di operare normalmente. La funzione | |
691 VBE 00h fornisce l'informazione combinata dei due | |
692 controller, inclusa la lista combinata delle modalità disponibili. | |
693 Quando l'applicazione seleziona una modalità, viene attivato il controller appropriato. | |
694 Ogni rimanente funzione VBE quindi opera sul controller attivo. | |
695 </i></code> | |
696 </P> | |
697 | |
698 <P> | |
699 Quindi si ha la possibilità di far andare il TV-out con questo driver.<br> | |
700 (Suppongo che spesso il TV-out abbia un output suo proprio, | |
701 almeno.) | |
702 </P> | |
703 | |
704 <P> | |
8707 | 705 <b>Vantaggi:</b><BR> |
4867 | 706 - Hai la possibilità di vedere filmati <b>anche se Linux non conosce nemmeno</b> il tuo hardware video.<BR> |
707 - Non devi aver installato niente per la grafica sul tuo Linux | |
708 (come X11 (cioè XFree86), fbdev e così via). Questo driver può essere eseguito dalla | |
709 <b>modalità testo</b>.<BR> | |
710 - Hai la possibilità di avere il <b>TV-out funzionante</b>. (almeno con le schede ATI).<BR> | |
711 - Questo driver richiama l'handler <b>int 10h</b> quindi non è un emulatore - richiama le | |
712 cose <b>reali</b> del <b>reale</b> BIOS in modalità <b>reale</b>. (detto meglio - | |
713 in modalità vm86).<BR> | |
6819 | 714 - Puoi usarlo insieme a Vidix, ottenendo così l'accelerazione video |
715 <B>E</B> l'output su TV allo stesso tempo! (raccomandato per le schede ATI) | |
8707 | 716 <LI>Se hai VESA VBE 3.0+, e hai specificato <CODE>monitor_hfreq</CODE>, |
717 <CODE>monitor_vfreq</CODE>, <CODE>monitor_dotclock</CODE> da qualche parte (file di | |
718 configurazione, o linea di comando) otterrai il refresh rate più alto possibile. (Usando | |
719 General Timing Formula). Per abilitalo dovrai specificare | |
720 <B>tutte</B> le opzioni del tuo monitor.</LI> | |
4867 | 721 </P> |
722 | |
723 <P> | |
8707 | 724 <b>Svantaggi:</b><BR> |
4867 | 725 - Funziona solo su <b>sistemi x86</b>.<BR> |
4961 | 726 - Può essere usato solo da <b>ROOT</b>.<BR> |
4867 | 727 - Attualmente è disponibile solo per <b>Linux</b>.<BR> |
728 </P> | |
729 | |
730 <P>Non usare questo driver col <B>GCC 2.96</B> ! Non funzionerà !</P> | |
731 | |
8707 | 732 <P><B>Opzioni a riga di comando disponibili per VESA:</B></P> |
733 <DL> | |
734 <DT><CODE>-vo vesa:opzioni</CODE></DT> | |
735 <DD>attualmente riconosciute: <B>dga</B> per forzare la modalità dga e <B>nodga</B> per | |
736 disabilitarla. Nella modalità dga si può abilitare il double buffering con l'opzione | |
737 <CODE>-double</CODE>. Nota: si possono tralasciare questi parametri per abilitare il | |
738 <B>riconoscimento automatico</B> della modalità dga.</DD> | |
739 </DL> | |
4867 | 740 |
741 <P> | |
742 <b>Problemi conosciuti e come aggirarli:</b><br> | |
743 - Se hai installato il font <b>NLS</b> sulla tua Linux box ed esegui il driver VESA | |
744 dalla modalità testo allora dopo aver chiuso mplayer avrai il <b>font ROM</b> caricato invece del | |
745 nazionale. Puoi ricaricare il font nazionale usando l'utilità <b><i>setsysfont</i></b> | |
746 dalla, per esempio, distribuzione Mandrake.<br> | |
747 (<b>Suggerimento</b>: la stessa utilità è usata per la "localizzazione" di fbdev).<br> | |
748 - Alcuni <b>driver grafici di Linux</b> non aggiornano la <b>modalità BIOS</b> attiva nella memoria DOS. Quindi se hai | |
749 un tale problema - usa sempre il driver VESA solo dalla <b>modalità testo</b>. Altrimenti la modalità testo (#03) sarà | |
750 attivata comunque e dovrai far ripartire il computer.<br> | |
4961 | 751 - Spesso dopo aver terminato il driver VESA si ottiene uno <b>schermo nero</b>. Per farlo ritornare |
4867 | 752 allo stato originale - cambia semplicemente console (premendo <b>Alt-Fx</b>) poi ritorna |
753 alla precedente console nello stesso modo.<br> | |
754 - Per far <b>funzionare il TV-out</b> devi avere il connettore della tv inserito prima di far partire | |
755 il tuo PC in quanto il BIOS video si inizializza solo una volta durante la procedura di POST. | |
756 </P> | |
757 | |
758 | |
8707 | 759 <H4><A NAME="x11">2.3.1.2.11. X11</A></H4> |
4867 | 760 |
761 <P>Evitalo se possibile. Da l'output a X11 (usa l'estensione per la memoria condivisa), senza alcuna | |
762 accelerazione hardware. Supporta (accelerato da MMX/3DNow/SSE, ma ancora | |
763 lento) il ridimensionamento software, usa le opzioni <CODE>-fs -zoom</CODE>. Molte schede | |
764 hanno il supporto per il ridimensionamento hardware, usa l'output <CODE>-vo xv</CODE> per queste, o | |
765 <CODE>-vo xmga</CODE> per le Matrox.</P> | |
766 | |
767 <P>Il problema è che il driver della maggior parte delle schede non supporta | |
768 l'accelerazione hardware sulla seconda uscita/TV. In quei casi, si vede una finestra verde/blu | |
769 invece del filmato. Qui è dove questo driver è utile, | |
770 ma hai bisogno di una CPU potente per usare il ridimensionamento software. Non usare | |
771 l'output+scaler software del driver SDL, ha una pessima qualità d'immagine !</P> | |
772 | |
773 <P>Il ridimensionamento software è molto lento, faresti meglio a cambiare modalità video invece. | |
7509 | 774 E' molto semplice. Vedi la <A HREF="#dga_modelines".A>sezione sulle modeline DGA</A>, e |
4867 | 775 inseriscile nel tuo XF86Config. |
776 <UL> | |
777 <LI>Se hai XFree86 4.x.x - usa l'opzione <CODE>-vm</CODE>. Cambierà ad una | |
778 risoluzione adatta al tuo filmato. Se non funziona :</LI> | |
779 <LI>Con XFree86 3.x.x - devi cercare tra tutte le risoluzioni disponibili | |
780 con i tasti <B>CTRL-ALT-più</B> e <B>meno</B>.</LI> | |
781 </UL> | |
782 | |
783 Se non riesci a trovare le modalità che hai inserito, controlla l'output di XFree86. Alcuni | |
784 driver non possono usare i bassi pixelclock necessari per modalità video a bassa | |
785 risoluzione.</P> | |
786 | |
787 | |
8707 | 788 <H4><A NAME="vidix">2.3.1.2.12. Vidix</A></H4> |
4867 | 789 |
790 <P><B><I>COS'E' IL VIDIX</I></B></P> | |
791 | |
792 <P>VIDIX è l'acronimo di <b>VID</b>eo <b>I</b>nterface for | |
793 *ni<b>X</b> (Interfaccia Video per *nix, ndt).<BR> | |
794 VIDIX è stato studiato e implementato come un'interfaccia per veloci driver in spazio utente | |
6819 | 795 che offrono le stesse performance video che mga_vid fornisce pe le schede Matrox. E anche |
796 molto portabile.</P> | |
4867 | 797 <P>Questa interfaccia è stata studiata come un tentativo di far rientrare le esistenti interfacce |
6819 | 798 di accelerazione video (conosciute come mga_vid, rage128_vid, radeon_vid, pm3_vid) in uno schema fisso. Fornisce |
4867 | 799 un'interfaccia di alto livello ai chip conosciuti come BES (BackEnd |
800 scaler) o OV (Video Overlay). Non fornisce un'interfaccia di basso livello | |
801 a cose conosciute come server grafici. (Non voglio competere con il team di X11 | |
802 nel cambiamento di modalità grafica). Cioè, l'obbiettivo principale di questa interfaccia | |
6819 | 803 è di fornire la massima velocità di riproduzione video. |
4867 | 804 </P> |
805 | |
806 <P><B><I>UTILIZZO</I></B></P> | |
807 | |
808 <P> | |
809 <LI>Puoi usare il driver di output video da solo: <CODE>-vo xvidix</CODE><BR> | |
810 Questo driver è stato sviluppato come una interfaccia di X11 per la tecnologia VIDIX. | |
8707 | 811 necessita di un server X e può funzionare solo sotto un server X. Nota che, in quanto |
812 accede direttamente all'hardware e aggira il driver X, le pixmap | |
813 salvate nella memoria della scheda video potrebbero essere corrotte. Si può evitare questo | |
814 limitando la quantità di memoria video usata da X con l'opzione di XF86Config | |
815 "VideoRam" nella sezione device. Dovresti impostarla al valore della memoria della | |
816 scheda meno 4MB. Se hai meno di 8MB di | |
817 ram video, puoi invece usare l'opzione "XaaNoPixmapCache" nella sezione screen.</LI> | |
4867 | 818 <LI>Si può usare il sottodispositivo VIDIX che è stato applicato a molti driver di output video, |
819 come:<BR> | |
6819 | 820 <CODE>-vo vesa:vidix</CODE> (<B>SOLO PER LINUX</B>) e <CODE>-vo fbdev:vidix</CODE></LI> |
4867 | 821 Infatti non importa quale driver di output video si usa con <b>VIDIX</b>. |
822 </P> | |
823 | |
824 <P><B><I>REQUISITI</I></B></P> | |
825 | |
826 <P> | |
827 <LI>La scheda video dovrebbe essere in modalità grafica (ho scritto <b>dovrebbe</b> semplicemente | |
828 perchè l'ho provato in modalità testo - funziona, ma da un terribile output ;) Usa | |
829 AAlib per quello).<BR> | |
830 <I>Nota: chiunque può provare questo trucco commentando il cambiamento di modalità nel driver | |
831 vo_vesa.</I></LI> | |
8707 | 832 <LI>Il driver di output video di MPlayer dovrebbe conoscere la modalità video attiva ed essere in grado di |
4867 | 833 dire al sottodispositivo VIDIX alcune caratteristiche video del server.</LI> |
834 </P> | |
835 | |
836 <P><B><I>METODI DI UTILIZZO</I></B></P> | |
837 | |
838 <P>Quando VIDIX è usato come <b>sottodispositivo</b> (<CODE>-vo vesa:vidix</CODE>) allora | |
839 la configurazione della modalità video è fatta dal dispositivo di output video | |
840 (<b>vo_server</b> in breve). Quindi puoi passare alla linea di comando di | |
8707 | 841 MPlayer le stesse opzioni di vo_server. In aggiunta interpreta l'opzione |
4867 | 842 <CODE>-double</CODE> come un parametro globalmente visibile. (Consiglio di usare |
843 questa opzione con VIDIX almeno per le schede ATI).<BR> | |
844 Come per <CODE>-vo xvidix</CODE> : attualmente riconosce le seguenti | |
845 opzioni: <CODE>-fs -zoom -x -y -double</CODE>.<BR> | |
846 </P> | |
847 | |
848 <P>Puoi anche specificare il driver VIDIX direttamente come terzo sotto argomento alla linea di | |
849 comando :<BR> | |
850 <BR> | |
851 <code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double | |
852 file.avi</code><BR> | |
853 o<BR> | |
854 <code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp | |
855 32 file.avi</code><BR> | |
856 <BR> | |
857 Ma è pericoloso, e non dovresti farlo. In questo caso il driver dato sarà | |
858 forzato e il risultato è imprevedibile (potrebbe <b>bloccare</b> il tuo | |
859 computer). Dovresti farlo SOLO se sei assolutamente sicuro che funzionerà, | |
8707 | 860 e MPlayer non lo fa automaticamente. Per favore dillo agli |
4867 | 861 sviluppatori. Il Modo Giusto è usare VIDIX senza argomenti per abilitare il riconoscimento automatico del |
862 driver. | |
863 </P> | |
864 | |
865 <P> | |
866 VIDIX è una tecnologia molto nuova ed è molto probabile che sul tuo sistema | |
867 (OS=abc CPU=xyz) non funzioni. In questo caso la sola soluzione per te è di eseguire | |
868 un port (principalmente libdha). Ma c'è la speranza che funzioni su quei sistemi dove funziona | |
869 X11. | |
870 </P> | |
871 | |
872 <P>E l'ultimo <b>AVVERTIMENTO</b>: (s)fortunatamente <b>DEVI</b> avere i permessi di | |
873 <b>ROOT</b> per usare VIDIX a causa dell'accesso diretto all'hardware. Al limite | |
8707 | 874 dai il bit <b>suid</b> all'eseguibile MPlayer. |
4867 | 875 </P> |
876 | |
877 | |
8707 | 878 <H4><A NAME="directfb">2.3.1.2.13 DirectFB</A></H4> |
879 | |
880 <P><I>"DirectFB è una libreria grafica che è stata progettata con in mente i sistemi | |
881 embedded. Offre la massima performance per l'accelerazione hardware con un minimo | |
882 utilizzo di risorse."</I> - citato da | |
883 <A HREF="http://www.directfb.org">http://www.directfb.org</A>.</P> | |
884 | |
885 <P>Escluderò le caratteristiche di DirectFB da questa sezione.</P> | |
4867 | 886 |
8707 | 887 <P>Sebbene MPlayer non sia supportato come "video provider" in DirectFB, questo |
888 driver di output abilita la riproduzione video tramite DirectFB. Naturalmente | |
889 è accelerata sulla mia Mtrox G400 la velocità di DirectFB è la stessa di | |
890 XVideo.</P> | |
4867 | 891 |
8707 | 892 <P>Cerca sempre di usare l'ultima versione di DirectFB. Si possono usare le opzioni di DirectFB |
893 da riga di comando con l'opzione <CODE>-dfbopts</CODE>. | |
894 La selezione del layer si può fare col metodo del sottodispositivo, es.: <CODE>-vo | |
895 directfb:2</CODE> (layer -1 è il default: riconoscimento automatico)</P> | |
4867 | 896 |
8707 | 897 <H4><A NAME="dfbmga">2.3.1.2.14 DirectFB/Matrox (dfbmga)</A></H4> |
898 | |
899 <P>Leggi la <A HREF="#directfb">sezione principale di DirectFB</A> per le informazioni | |
900 generali.</P> | |
901 | |
902 <P>Questo driver di output video abilita il CRTC2 (sulla seconda uscita) sulle schede | |
903 Matrox G400, mostrando il video <B>indipendentemente</B> dalla prima uscita.</P> | |
4867 | 904 |
8707 | 905 <P>Le istruzioni per farlo funzionare si trovano nella |
906 <A HREF="../tech/directfb.txt">sezione tecnica</A> | |
907 o direttamente sulla | |
908 <A HREF="http://www.sci.fi/~syrjala/directfb/readme.txt">home page</A> di Ville Syrjala.</P> | |
909 | |
910 <P>Nota: noi non siamo riusciti a farlo andare, ma altri si. Comunque, | |
911 è iniziato il porting del codice CRTC2 in <B>mga_vid</B>.</P> | |
912 | |
913 <H4><A NAME="mpegdec">2.3.1.3 Decoder MPEG</A></H4> | |
914 | |
915 <H4><A NAME="dvb">2.3.1.3.1 DVB</A></H4> | |
916 | |
917 <P>MPlayer supporta le schede con chipset DVB Siemens fabbricati da aziende quali | |
7509 | 918 Siemens, Technotrend, Galaxis o Hauppauge. I driver DVB più recenti sono disponibili sul |
919 sito <A HREF="http://www.linuxtv.org">Linux TV</A>. Se vuoi | |
920 fare il transcoding software devi avere almeno una CPU da 1GHz.</P> | |
921 | |
922 <P>Lo script configure dovrebbe riconoscere automaticamente la tua scheda DVB. se non riesce, forzane | |
8707 | 923 il riconoscimento con</P> |
7509 | 924 |
925 <PRE> | |
926 ./configure --enable-dvb | |
927 </PRE> | |
928 | |
929 <P>Se hai gli header ost in una locazione non-standard, imposta il path con</P> | |
930 | |
931 <PRE> | |
932 ./configure --with-extraincdir=<directory sorgenti DVB>/ost/include | |
933 </PRE> | |
934 | |
935 <P>Quindi compila e installa come al solito.</P> | |
936 | |
937 <B>UTILIZZO</B> | |
938 | |
939 <P>Si può abilitare la decodifica hardware (riproduzione di file MPEG1/2 standard) | |
940 col comando:</P> | |
941 | |
942 <PRE> | |
943 mplayer -ao mpegpes -vo mpegpes file.mpg|vob | |
944 </PRE> | |
945 | |
946 <P>Si può abilitare la decodifica software o il transcoding da diversi formati a MPEG1 | |
947 usando un comando come questo:</P> | |
948 | |
949 <PRE> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
950 mplayer -ao mpegpes -vo mpegpes -vf lavc tuofile.ext |
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
951 mplayer -ao mpegpes -vo mpegpes -vf expand,fame tuofile.ext |
7509 | 952 </PRE> |
953 | |
954 <P>Nota che le schede DVB supportano solo un'altezza di 288 o 576 per il PAL e 240 o 480 | |
955 per NTSC. <B>Devi</B> ridimensionare se vuoi altre altezze aggiungendo | |
956 <CODE>scale=larghezza:altezza</CODE> con le dimensioni desiderate all'opzione | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
957 <CODE>-vf</CODE>. Le schede DVB accettano varie larghezze, come 720, 704, |
7509 | 958 640, 512, 480, 352 ecc e utilizzano il ridimensionamento hardware nella direzione orizzontale, |
959 quindi nella maggior parte dei casi non devi ridimensionare orizzontalmente. Per un DivX 512x384 (aspetto 4:3) prova:</P> | |
960 | |
961 <PRE> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
962 mplayer -ao mpegpes -vo mpegpes -vf scale=512:576,lavc |
7509 | 963 </PRE> |
964 | |
965 <P>Se hai un filmato widescreen e non vuoi ridimensionarlo a piena altezza, | |
966 puoi usare il plugin <CODE>expand=l:a</CODE> per aggiungere delle bande nere. Per vedere | |
967 un DivX 640x384, prova:</P> | |
968 | |
969 <PRE> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
970 mplayer -ao mpegpes -vo mpegpes -vf expand=640:576,lavc file.avi |
7509 | 971 </PRE> |
972 | |
973 <P>Se la tua CPU è troppo lenta per un DivX a dimensione intera 720x576, prova a ridurlo:</P> | |
974 | |
975 <PRE> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
976 mplayer -ao mpegpes -vo mpegpes -vf scale=352:576,lavc file.avi |
7509 | 977 </PRE> |
978 | |
979 <P>Se la velocità non aumenta, prova anche a ridurlo verticalmente:</P> | |
980 | |
981 <PRE> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
982 mplayer -ao mpegpes -vo mpegpes -vf scale=352:288,lavc file.avi |
7509 | 983 </PRE> |
984 | |
8707 | 985 <P>Per l'OSD e i sottotitoli usa l'opzione OSD del filtro di espansione. Quindi, invece |
7509 | 986 di <CODE>expand=l:a</CODE> o <CODE>expand=l:a:x:y</CODE>, usa |
987 <CODE>expand=l:a:x:y:1</CODE> (il quinto parametro <CODE>:1</CODE> alla fine | |
988 abilita il rendering OSD). Potresti aver bisogno di spostare l'immagine un po' in alto | |
989 per ottenere una zona nera più grande per i sottotitoli. Potresti anche voler spostare in alto i sottotitoli, se | |
990 sono fuori dallo schermo della TV, usa l'opzione <CODE>-subpos <0-100></CODE> | |
991 per regolarli (<CODE>-subpos 80</CODE> è una buona scelta).</P> | |
992 | |
993 <P>Per riprodurre filmati non a 25fps su una TV PAL o con una CPU lenta, aggiungi l'opzione | |
994 <CODE>-framedrop</CODE>.</P> | |
995 | |
996 <P>Per mantenere le proporzioni dei file DivX e ottenere i parametri di ridimensionamento ottimali | |
997 (ridimensionamento orizzontale in hardware e verticale in software mentre si conservano | |
8707 | 998 le giuste proporzioni), usa il nuovo filtro dvbscale:</P> |
7509 | 999 |
1000 <PRE> | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
1001 per TV 3:4: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1 |
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
1002 per TV 16:9: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1 |
7509 | 1003 </PRE> |
1004 | |
1005 <H4>FUTURO</H4> | |
1006 | |
1007 <P>Se hai domande o vuoi sentire gli annunci di nuove caratteristiche e prender parte alle | |
1008 discussioni su questo argomento, unisciti alla nostra mailing list | |
1009 <A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dvb">MPlayer-DVB</A>. | |
1010 Per favore ricorda che la lingua di questa lista è l'inglese.</P> | |
1011 | |
1012 <P>In futuro potresti aspettarti la possibilità di mostrare l'OSD e i sottotitoli usando | |
1013 la caratteristica OSD nativa delle schede DVB, e anche una riproduzione più fluente | |
1014 dei filmati non a 25fps e il transcoding in tempo reale tra MPEG2 e MPEG4 (decompressione | |
1015 parziale).</P> | |
4867 | 1016 |
8707 | 1017 <H4><A NAME="dxr2">2.3.1.3.2 DXR2</A></H4> |
4867 | 1018 |
8707 | 1019 <P>DA FARE.</P> |
7509 | 1020 |
8707 | 1021 <H4><A NAME="dxr3">2.3.1.3.3 DXR3/Hollywood+</A></H4> |
1022 | |
1023 <P>MPlayer supporta la riproduzione accelerata in hardware con le schede Creative DXR3 | |
7509 | 1024 e Sigma Designs Hollywood Plus. Queste schede usano il chip di decodifica MPEG em8300 |
1025 prodotto da Sigma Designs.</P> | |
1026 | |
1027 <P>Prima di tutto devi installare correttamente i driver DXR3/H+, versione | |
1028 0.12.0 o successiva. I driver e le istruzioni per l'installazione si trovano sul sito | |
1029 <A HREF="http://dxr3.sourceforge.net/">DXR3 & Hollywood Plus per | |
1030 Linux</A>. Lo script configure dovrebbe riconoscere automaticamente la tua scheda, la compilazione | |
1031 dovrebbe procedere senza problemi.</P> | |
1032 | |
1033 <P><B>Utilizzo:</B></P> | |
1034 <DL> | |
8707 | 1035 <DT><CODE>-vo dxr3:prebuf:sync:norm=x:<device></CODE></DT> |
1036 <DD><CODE>overlay</CODE> attiva l' overlay invece del TVOut. Necessita | |
1037 un supporto overlay corretamente configurato. Il modo più facile per | |
1038 configurarlo è di eseguire prima autocal. Quindi eseguire mplayer con l'output | |
1039 dxr3 senza l'overlay, e eseguire dxr3view. In dxr3view si possono regolare | |
1040 le impostazioni dell'overlay e vedere gli effetti in tempo reale, forse questa caratteristica | |
1041 verrà supportata dalla GUI di MPlayer GUI in futuro. Quando l'overlay sarà | |
1042 correttamente impostato non dovrai più usare dxr3view.<BR> | |
1043 <DD><CODE>prebuf</CODE> attiva il prebuffering. Il prebuffering è una caratteristica | |
7509 | 1044 del chip em8300 che gli consente di tenere più di un frame del video alla volta. |
8707 | 1045 Qusto significa che quando utilizzi il prebuffering |
1046 MPlayer tenta di tenere sempre pieno il buffer video. | |
1047 Se sei su una macchina lenta probabilmente MPlayer userà circa | |
7509 | 1048 o esattamente il 100% della CPU. Questa situazione è comune in particolare nella riproduzione |
8707 | 1049 di puri stream MPEG (come DVD, SVCD, ecc.) in quanto MPlayer non deve |
7509 | 1050 ricodificarli in MPEG e riempirà il buffer molto velocemente.<BR> |
1051 Col prebuffering la riproduzione video è <B>molto</B> meno sensibile ad altri | |
1052 programmi che divorano la CPU, non scarterà alcun frame a meno che le altre applicazioni | |
1053 non carichino la CPU per un lungo periodo.<BR> | |
8707 | 1054 Senza il prebuffering l' em8300 è molto più sensibile al carico della CPU load, quindi è |
1055 caldamente consigliato usare l'opzione di | |
1056 MPlayer <CODE>-framedrop</CODE> per evitare ulteriori perdite di sincronia.<BR> | |
1057 <CODE>sync</CODE> attiva il nuovo metodo di sincronia. E' attualmente in fase | |
1058 sperimentale. Con questa opzione il clock interno dell' em8300 | |
1059 sarà continuamente monitorato, se comincia a deviare dal clock di MPlayer | |
1060 verrà resettato facendo sì che l' em8300 scarti i frame che sono rimasti indietro.<BR> | |
1061 <CODE>norm=x</CODE> imposta il norm della TV norm della scheda DXR3 senza la necessità di | |
1062 utility esterne come em8300setup. Norm valide sono 5 = NTSC, 4 = PAL-60, | |
1063 3 = PAL. Norm speciali sono 2 (riconosce automaticamente PAL/PAL-60) e 1 | |
1064 (riconosce automaticamente PAL/NTSC) in quanto decidono quale norm usare | |
1065 controllando il frame rate del filmato. Le moderne TV supportano sia il PAL che | |
1066 l'NTSC. Guardare filmati con il framerate al quale sono stati registrati | |
1067 da una riproduzione migliore senza frame scartati. norm = 0 (default) non modifica | |
1068 il norm attuale.<BR> | |
7509 | 1069 <CODE><device></CODE> = numero del dispositivo da usare se hai più di una scheda |
1070 em8300. | |
1071 <BR> | |
8707 | 1072 Queste opzioni possono tutte essere tralasciate. |
1073 <CODE>:prebuf:sync</CODE> sembra andare benissimo per i DivX ecc, anche sulla CPU | |
1074 AMD. Ma alcuni hanno segnalato problemi usando queste opzioni con i normali | |
1075 MPEG. Prova prima senza queste opzioni, se hai problemi di | |
1076 sincronia prova ad usare <CODE>:sync</CODE>.</DD> | |
7509 | 1077 |
1078 <DT><CODE>-ao oss:/dev/em8300_ma-X</CODE></DT> | |
1079 <DD>Per l'output audio, dove <CODE>X</CODE> è il numero del dispositivo | |
1080 (0 se hai una sola scheda).</DD> | |
4867 | 1081 |
7509 | 1082 <DT><CODE>-aop list=resample:fout=xxxxx</CODE></DT> |
1083 <DD>L' em8300 non può riprodurre campioni con frequenza minore di 44100Hz. Se la frequenza | |
1084 di campionamento è sotto 44100Hz seleziona 44100Hz o 48000Hz a seconda di quale più si | |
1085 avvicina. Cioè se il filmato usa 22050Hz, allora usa 44100Hz dato che | |
1086 44100 / 2 = 22050, se è a 24000Hz, usa 48000Hz dato che 48000 / 2 = 24000 e così via. | |
1087 Questo non funziona con output audio digitale (<CODE>-ac hwac3</CODE>).</DD> | |
1088 | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
1089 <DT><CODE>-vf lavc/fame</CODE></DT> |
7509 | 1090 <DD>Per vedere contenuti non-MPEG sul em8300 (cioè DivX o RealVideo) devi specificare |
1091 un filtro video MPEG1 come libavcodec (lavc) o libfame | |
1092 (fame). Al momento lavc è più veloce che e ha una migliore qualità dell'immagine, | |
1093 suggeriamo di usarlo a meno che tu non riscontra problemi. Leggi la pagina di man | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
1094 per altre informazioni su <CODE>-vf lavc/fame</CODE>.<BR> |
8707 | 1095 Usare lavc è caldamente consigliato. Al momento non è possibile regolare |
1096 l'fps dell' em8300 e ciò significa che è fisso a 29.97fps. Perciò si | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
1097 consiglia di usare <CODE>-vf lavc=<qualità>:25</CODE>, |
8707 | 1098 specialmente se usi il prebuffering. Quindi perchè 25 e non 29.97? Bhe, |
1099 il fatto è che quando si usa 29.97 l'immagine saltella un po'. La ragione | |
1100 è a noi sconosciuta. Se lo si imposta a qualcosa tra 25 e | |
1101 27 l'immagine si stabilizza. Per ora tutto quello che possiamo fare è accettarlo | |
1102 come un fatto.</DD> | |
1103 | |
9644
0fe056bdb135
vop -> vf change, small fixes. The Polish documentation should be checked for correctness.
jonas
parents:
9332
diff
changeset
|
1104 <DT><CODE>-vf expand=-1:-1:-1:-1:1,lavc</CODE></DT> |
8707 | 1105 <DD>Anche se il driver DXR3 può inserire degli OSD nei video MPEG1/2/4, |
1106 ha una qualità molto minore dell'OSD di MPlayer, e ha anche alcuni problemi di | |
1107 refresh. La riga di comando scritta sopra prima converte il video in entrata | |
1108 in MPEG4 (questo è obbligatorio, spiacente), poi applica un filtro di espansione | |
1109 che in realtà non espande nulla (-1: default), ma applica il normale OSD | |
1110 sull'immagine (questo è quello che fa l' "1" alla fine).</DD> | |
7509 | 1111 |
1112 <DT><CODE>-ac hwac3</CODE></DT> | |
1113 <DD>L' em8300 supporta la riproduzione audio AC3 (suono surround) attraverso | |
8707 | 1114 l'uscita audio digitale della scheda. Vedi l'opzione <CODE>-ao oss</CODE> |
1115 sopra, deve essere usata per specificare l'output DXR3 al posto di una scheda | |
1116 sonora. Leggi inoltre la sezione <A HREF="codecs.html#hardware_ac3">AC3 hardware</A> | |
1117 per ulteriori informazioni sull' AC3.</DD> | |
7509 | 1118 </DL> |
1119 | |
1120 | |
1121 <H4>Note su MPEG1, MPEG2, VCD e DVD</H4> | |
1122 | |
1123 <P>In alcuni casi, i sottotitoli potrebbero non apparire in sincronia col flusso A/V | |
1124 quando si usa la decodifica hardware (<CODE>-vc mpegpes</CODE>). Qusto è un bug | |
1125 conosciuto. L' em8300 gestisce anche male i sottotitoli troppo grandi, | |
1126 e potrebbe fermarsi per un secondo o due. Al momento l'unico modo per aggirare il problema | |
1127 è usare <CODE>-vc mpeg12</CODE> quando si guardano DVD con sottotitoli. Con | |
8707 | 1128 <CODE>-vc mpeg12</CODE> MPlayer ricodifica il video in MPEG (anche nel caso in cui |
7509 | 1129 è già MPEG). Questo significa che necessita una maggiore potenza della CPU, e potresti |
1130 perdere un po' di qualità dell'immagine.</P> | |
1131 | |
8707 | 1132 <H4><A NAME="other">2.3.1.4 Altro hardware di visualizzazione</A></H4> |
7509 | 1133 |
8707 | 1134 <H4><A NAME="zr">2.3.1.4.1 Zr</A></H4> |
1135 | |
1136 <P>Questo è un driver per la visualizzazione (<CODE>-vo zr</CODE>) per un certo numero di schede MJPEG | |
1137 di cattura/riproduzione (testato per DC10+ e Buz, e dovrebbe funzionare per | |
1138 LML33, DC10). Il driver funziona codificando il frame in jpeg e mandandolo poi | |
1139 alla scheda. Per la codifica jpeg è usato <B>libavcodec</B>, | |
1140 ed è quindi necessario. Con la speciale modalità <I>cinerama</I>, si possono | |
1141 guardare i film in vero wide screen se hai due beamer e due schede | |
1142 MJPEG. A seconda della risoluzione e delle impostazioni di qualità, questo driver | |
1143 può richiedere molta potenza di CPU, ricorda di specificare <CODE>-framedrop</CODE> | |
1144 se la tua macchina è troppo lenta. Nota: ill mio AMD K6-2 350MHz è abbastanza (con <CODE> | |
1145 -framedrop</CODE>) potente per vedere cose della dimensione dei VCD e film | |
1146 ridimensionati.</P> | |
1147 | |
1148 <P>Questo driver dialoga col driver del kernel disponibile a | |
1149 <A HREF="http://mjpeg.sourceforge.net">http://mjpeg.sourceforge.net</A>, quindi | |
1150 devi far funzionare questo prima. Poi ricompila MPlayer con | |
1151 <CODE>--enable-zr</CODE>.</P> | |
7509 | 1152 |
8707 | 1153 <P>Alcune osservazioni: |
1154 <UL> | |
1155 <LI>non iniziare o fermare XawTV sul dispositivo di riproduzione durante la stessa, | |
1156 bloccherà il tuo computer. Va comunque bene far partire <B>PRIMA</B> | |
1157 XawTV, e <B>POI</B> MPlayer, aspettare che MPlayer finisca e | |
1158 <B>POI</B> fermare XawTV.</LI> | |
1159 <LI>questo driver aggiunge le opzioni <CODE>-zr*</CODE> alla linea di comando. La spiegazione di | |
1160 queste opzioni può essere visualizzata con <CODE>-zrhelp</CODE>. E' possibile tagliare | |
1161 il frame di input (tagliare i bordi per adattarlo o migliorare le prestazioni) | |
1162 e fare altre cose.</LI> | |
1163 <LI>Il driver prende i dati nei formati YV12 e YUY2. Questo significa che alcuni | |
1164 codec non funzioneranno. Alcuni vecchi codec VfW (Video for Windows), per esempio, | |
1165 non sono compatibili con questo driver. Il messaggio d'errore che vedrai è: | |
1166 <CODE>Sorry, selected video_out device is incompatible with this codec. | |
1167 </CODE></LI> | |
1168 <LI>OSD non è attualmente supportato, quindi non vedrai i | |
1169 sottotitoli.</LI> | |
1170 </UL> | |
1171 </P> | |
1172 | |
1173 <H4><A NAME="blinken">2.3.1.4.2 Blinkenlights</A></H4> | |
1174 | |
1175 <P>Questo driver è in grado di usare il protocollo UPD Blinkenlights. | |
1176 Se non sai cosa sia Blinkenlights, non hai bisogno di questo driver.</P> | |
1177 | |
1178 <H4><A NAME="tv-out">2.3.1.5. Supporto TV-out</A></H4> | |
1179 | |
1180 <H4><A NAME="tv-out_matrox">2.3.1.5.1. Schede Matrox G400</A></H4> | |
4867 | 1181 |
5583 | 1182 <P>Sotto Linux hai due modi per far funzionare l'output TV delle G400 :</P> |
1183 | |
7509 | 1184 <P><B>IMPORTANTE:</B> per istruzioni sul supporto TV-out delle Matrox G450/G550) vedi la |
1185 prossima sezione!</B></P> | |
4867 | 1186 |
1187 <P> | |
1188 <UL> | |
1189 <LI><B>XFree86</B>: usando il driver e il modulo HAL, disponibile al | |
1190 <A HREF="http://www.matrox.com">sito della Matrox</A>. Questo ti darà X sulla | |
1191 TV.<BR> <B>Questo metodo non da una riproduzione accelerata</B> come | |
1192 sotto Windoze! Il secondo connettore ha solo il framebuffer YUV, il <I>BES</I> | |
1193 (Back End Scaler, il ridimensionatore YUV sulle schede G200/G400/G450/G550) non funziona | |
4961 | 1194 su questo! Il driver per windows in qualche modo aggira questo problema, probabilmente usando il motore |
4867 | 1195 3D per zoomare, e il framebuffer YUV per visualizzare l'immagine zoomata. |
1196 Se vuoi veramente usare X, usa le opzioni <CODE>-vo x11 -fs -zoom</CODE>, | |
1197 ma sarà <B>LENTO</B>, e ha la protezione da copia <B>Macrovision</B> | |
1198 abilitata (puoi "aggirare" Macrovision usando | |
1199 <A HREF="http://avifile.sourceforge.net/mgamacro.pl">questo</A> script perl. | |
1200 </LI> | |
1201 <LI><B>Framebuffer</B>: usando i <B>moduli matroxfb</B> dei kernel 2.4. | |
1202 I kernel 2.2 non hanno la possibilità di usare il TVout, quindi sono inutili per questo. | |
1203 Devi abilitare TUTTE le voci relative al matroxfb durante la compilazione (eccetto il | |
5994 | 1204 MultiHead), e compilarle come <B>moduli</B>! Devi avere anche I2C abilitato. |
4867 | 1205 <UL> |
1206 <LI> | |
1207 Entra in <CODE>TVout/matroxset</CODE> e fai <CODE>make</CODE>. Installa | |
1208 <CODE>matroxset</CODE> da qualche parte nel tuo PATH.</LI> | |
1209 <LI> | |
1210 Se non hai <CODE>fbset</CODE> installato, entra in | |
1211 <CODE>TVout/fbset</CODE> e fai <CODE>make</CODE>. Installa | |
1212 <CODE>fbset</CODE> da qualche parte nel tuo PATH.</LI> | |
1213 <LI> | |
8707 | 1214 Poi entra nella directory <CODE>TVout/</CODE> dei sorgenti di MPlayer, |
4867 | 1215 ed esegui <CODE>./modules</CODE> da root. La tua console in modalità testo |
1216 entrerà in modalità framebuffer (non si può tornare indietro!).</LI> | |
7509 | 1217 <LI>Quindi, MODIFICA ed esegui lo script <CODE>./matroxtv</CODE>. Questo ti presenterà un |
4867 | 1218 menu molto semplice. Premi <B>2</B> e <B>ENTER</B>. Ora dovresti avere la stessa immagine |
7509 | 1219 sul monitor e sulla TV. Se |
1220 l'immagine della TV (PAL di default) ha delle strane strisce, lo script non è stato in grado di | |
1221 settare correttamente la risoluzione (a 640x512 di default). Prova altre | |
1222 risoluzioni e/o esperimenta con fbset</LI> | |
4867 | 1223 </UL> |
1224 | |
1225 <P> | |
1226 Yoh. Il prossimo compito è quello di far scomparire il cursore su tty1 (o quello che è), | |
1227 e disattivare lo spegnimento dello schermo. Esegui i seguenti comandi:</P> | |
1228 | |
1229 <P> | |
1230 <CODE>echo -e '\033[?25l'</CODE> o <CODE>setterm -cursor off<BR> | |
1231 setterm -blank 0</CODE> | |
1232 </P> | |
1233 | |
1234 <P> | |
1235 Probabilmente vorrai metterli in uno script, e anche pulire lo | |
1236 schermo.. Per riavere il cursore :<BR><CODE>echo -e '\033[?25h'</CODE> | |
1237 o <CODE>setterm -cursor on</CODE> | |
1238 </P> | |
1239 | |
1240 <P>Inizia la riproduzione del filmato con <CODE>mplayer -vo mga -fs -screenw 640 | |
1241 -screenh 512 <nomefile></CODE><BR> | |
1242 (se usi X, ora cambia a matroxfb con per esempio CTRL-ALT-F1 !)<BR> | |
1243 Cambia 640x512 se hai impostato la risoluzione diversamente..<BR> | |
1244 <B>Goditi l' ultra-veloce output TV Matrox (meglio di Xv) !</B> | |
1245 </P> | |
1246 </LI> | |
1247 </LI> | |
1248 </UL> | |
1249 </P> | |
1250 | |
8707 | 1251 <H4>Costruire un cavo TV-out Matrox</H4> |
1252 | |
1253 <P>Questa informazione ci è stata fornita da <B>Rácz Balázs</B>. Naturalmente | |
1254 non ci prendiamo nessuna responsabilità per qualsiasi danno causato | |
1255 per questa documentazione.</P> | |
1256 | |
1257 <P>Il quarto pin del connettore CRTC2 è il segnale video composito. Le terre | |
1258 sono il sesto, settimo e ottavo pin.</P> | |
1259 | |
1260 <H4><A NAME="tv-out_matrox_g450">2.3.1.5.2 Schede Matrox G450/G550</A></H4> | |
4867 | 1261 |
7509 | 1262 <P>Il supporto al TV output per queste schede è stato introdotto solo recentemente, e non |
1263 è ancore ne kernel ufficiale. Al momento il modulo <B>mga_vid</B> | |
1264 non può essere usato AFAIK, perchè il driver G450/G550 funziona solo in una configurazione: | |
1265 il primo chip CRTC (con molte più caratteristiche) sul primo | |
1266 display (sul monitor), e il secondo CRTC (non <B>BES</B> - per una spiegazione del | |
1267 BES, vedi la sezione G400 sopra) sulla TV. Quindi al momento puoi usare solo il driver di | |
8707 | 1268 output <I>fbdev</I> di MPlayer.</P> |
7509 | 1269 |
1270 <P>Il primo CRTC non può essere indirizzato alla seconda uscita, al momento. | |
1271 L'autore del driver del kernel matroxfb - Petr Vandrovec - ne implementerà probabilmente il | |
1272 supportp, visualizzando l'output del primo CRTC su entrambe le uscite insieme, | |
1273 come attualmente raccomandato per la G400, vedi la sezione sopra.</P> | |
1274 | |
8707 | 1275 <P>La patch del kernel necessaria e le istruzioni dettagliate sono scaricabili da |
1276 <A HREF="http://www3.sympatico.ca/dan.eriksen/matrox_tvout/">http://www3.sympatico.ca/dan.eriksen/matrox_tvout/</A></P> | |
7509 | 1277 |
1278 | |
8707 | 1279 <P><B><A NAME="tv-out_ati">2.3.1.5.3. Schede ATI</A></B></P> |
4867 | 1280 |
1281 <P> | |
8707 | 1282 <H5>PREAMBOLO</H5> |
6819 | 1283 Attualmente ATI non vuole supportare nessuno dei suoi chip TV-out sotto Linux |
1284 a causa della tecnologia sotto licenza della Macrovision che utilizzano. | |
4867 | 1285 |
6819 | 1286 <P><B><U>STATO DEL TV-OUT DELLE SCHEDE ATI SOTTO LINUX</U></B></P> |
1287 <UL> | |
1288 <LI><b>ATI Mach64</b> è supportato da <A HREF="http://gatos.sf.net">gatos</A>.</LI> | |
1289 <LI><b>ASIC Radeon VIVO</b> è supportato da <A HREF="http://gatos.sf.net">gatos</A>.</LI> | |
8707 | 1290 <LI><B>Radeon</B> e <B>Rage128</B>: supportate da MPlayer! |
7509 | 1291 Controlla le sezioni <a href="#vesa">driver VESA</a> e <A HREF="#vidix">Vidix</A>.</LI> |
8707 | 1292 <LI><B>Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4</B>: Supportate da |
1293 <A HREF="http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/"> | |
1294 atitvout</A>. | |
6819 | 1295 </UL> |
4867 | 1296 <P> |
7509 | 1297 Con altre schede, usate semplicemente il <a href="#vesa">driver VESA</a>, senza |
6819 | 1298 Vidix. Però è necessaria una CPU potente. |
4867 | 1299 </P> |
1300 | |
6819 | 1301 <P>La sola cosa che devi fare - <B>collegare la TV prima di avviare |
7509 | 1302 il PC</B> in quanto il BIOS video viene inizializzato solo al momento della |
6819 | 1303 procedura di POST. |
4867 | 1304 </P> |
1305 | |
1306 | |
8707 | 1307 <H4><A NAME="tv-out_voodoo">2.3.1.5.4. Voodoo 3</A></H4> |
4867 | 1308 |
1309 <P> | |
6819 | 1310 Controlla <A HREF="http://www.iki.fi/too/tvout-voodoo3-3000-xfree">questa URL</A>. |
4867 | 1311 </P> |
1312 | |
8707 | 1313 <H4><A NAME="tv-out_nvidia">2.3.1.5.5 nVidia</A></H4> |
1314 | |
1315 <P>Primo, DEVI scaricare i driver a sorgenti chiusi da | |
1316 <A HREF="http://nvidia.com">http://nvidia.com</A>. Non descriviamo il processo | |
1317 di installazione e configurazione perchè non rientra negli scopi di | |
1318 questa documentazione.</P> | |
1319 | |
1320 <P>Dopo che XFree86, XVideo, e l'accelerazione 3D funzionano correttamente, | |
1321 modifica la sezione Device della tua scheda nel file <CODE>XF86Config</CODE>, | |
1322 riferendoti al seguente esempio (adattalo per la tua scheda/TV):</P> | |
1323 | |
1324 <PRE> | |
1325 Section "Device" | |
1326 Identifier "GeForce" | |
1327 VendorName "ASUS" | |
1328 BoardName "nVidia GeForce2/MX 400" | |
1329 Driver "nvidia" | |
1330 #Option "NvAGP" "1" | |
1331 Option "NoLogo" | |
1332 Option "CursorShadow" "on" | |
1333 | |
1334 Option "TwinView" | |
1335 Option "TwinViewOrientation" "Clone" | |
1336 Option "MetaModes" "1024x768,640x480" | |
1337 Option "ConnectedMonitor" "CRT, TV" | |
1338 Option "TVStandard" "PAL-B" | |
1339 Option "TVOutFormat" "Composite" | |
1340 | |
1341 EndSection | |
1342 </PRE> | |
1343 | |
1344 <P>Naturalmente la perte importante è quella del TwinView.</P> | |
1345 | |
4867 | 1346 </BODY> |
1347 </HTML> |