4867
|
1 <HTML>
|
|
2 <BODY BGCOLOR=white>
|
|
3
|
|
4 <FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>
|
|
5
|
|
6 <P><B><A NAME=2.3.1>2.3.1. Dispositivi di output video</A></B></P>
|
|
7
|
|
8 <TABLE BORDER=0>
|
|
9
|
|
10 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>Generale:</B></P></TD><TR>
|
|
11
|
|
12 <TD> </TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica,
|
|
13 sans-serif" size=2><A HREF=#2.3.1.13>x11</A></TD><TD> </TD><TD><FONT
|
|
14 face="Verdana, Arial, Helvetica, sans-serif" size=2>X11 con l'opzionale estensione SHM
|
|
15 </TD><TR>
|
|
16 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
17 size=2><A HREF=#2.3.1.2>xv</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
18 Helvetica, sans-serif" size=2>X11 usando i livelli con l'estensione Xvideo
|
|
19 (YUV hardware YUV e ridimensionamento)</TD><TR>
|
|
20 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
21 size=2><A HREF=#2.3.1.10>gl</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
22 Helvetica, sans-serif" size=2>renderer OpenGL, per ora funziona solo con:
|
|
23 <UL><LI>tutte le schede con Utah-GLX
|
|
24 <LI>schede Matrox con X/DRI >=4.0.3
|
|
25 <LI>Radeon con il CVS di X/DRI</UL></TD><TR>
|
|
26 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
27 size=2><A HREF=#2.3.1.10>gl2</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
28 Helvetica, sans-serif" size=2>renderer OpenGL, versione a texture multiple</TD><TR>
|
|
29 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
30 size=2><A HREF=#2.3.1.3>dga</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
31 Helvetica, sans-serif" size=2>estensione X11 DGA</TD><TR>
|
|
32 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
33 size=2><A HREF=#2.3.1.6>fbdev</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
34 Helvetica, sans-serif" size=2>Output fremebuffer in generale</TD><TR>
|
|
35 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
36 size=2><A HREF=#2.3.1.5>svga</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
37 Helvetica, sans-serif" size=2>Output SVGAlib</TD><TR>
|
|
38 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
39 size=2><A HREF=#2.3.1.4>sdl</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
40 Helvetica, sans-serif" size=2>
|
|
41 <CODE>1.1.7:</CODE> supporta il ridimensionamento software<BR>
|
|
42 <CODE>1.1.8:</CODE> supporta Xvideo (ridimensionamento hardware e schermo pieno)<BR>
|
4961
|
43 <CODE>1.2.0:</CODE> supporta AAlib (-vo aa è caldamente consigliato, vedi sotto!)</TD><TR>
|
4867
|
44 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
45 size=2><A HREF=#2.3.1.14-TODO>ggi</A></TD><TD></TD><TD><FONT face="Verdana,
|
|
46 Arial, Helvetica, sans-serif" size=2>simile a SDL</TD><TR>
|
|
47 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
48 size=2><A HREF=#2.3.1.11>aa</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
49 Helvetica, sans-serif" size=2>rendering in modalità testo con AAlib</TD><TR>
|
|
50 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
51 size=2><a href=#2.3.1.12>vesa</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
52 Helvetica, sans-serif" size=2>Output a BIOS VESA.</TD><TR>
|
|
53 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
54 size=2><a href=#2.3.1.15>vidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
55 Helvetica, sans-serif" size=2>VIDeo Interface for *niX (Interfaccia Video per *nix, ndt; questo non
|
|
56 è un vero driver, ma un'espansione di VIDIX)</TD><TR>
|
|
57 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
58 size=2><a href=#2.3.1.15>xvidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
59 Helvetica, sans-serif" size=2>VIDIX in una finesta X</TD><TR>
|
|
60 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
61 size=2>directfb</TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
62 Helvetica, sans-serif" size=2>Direttamente al dispositivo framebuffer</TD><TR>
|
|
63
|
|
64 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
65 size=2>Specifici per alcune schede:</B></P></TD><TR>
|
|
66
|
|
67 <TD> </TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica,
|
|
68 sans-serif" size=2><A HREF=#2.3.1.7>mga</A></TD><TD> </TD><TD><FONT
|
|
69 face="Verdana, Arial, Helvetica, sans-serif" size=2>Livello YUV hardware di Matrox G200/G400
|
|
70 tramite il dispositivo mga_vid</TD><TR>
|
|
71 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
72 size=2><A HREF=#2.3.1.7>xmga</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
73 Helvetica, sans-serif" size=2>Livello mga_vid di Matrox G200/G400 in una finesta X11<BR>
|
|
74 (<I>emulazione Xv con X 3.3.x!</I>)</TD><TR>
|
|
75 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
76 size=2>syncfb</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica,
|
|
77 sans-serif" size=2>supporto YUV Matrox G400 su framebuffer (obsoleto, usa
|
|
78 mga/xmga)</TD><TR>
|
|
79 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
80 size=2>3dfx</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
81 size=2>supporto YUV hardware per Voodoo3/Banshee (/dev/3dfx, non ancora testato, forse
|
|
82 difettoso)</TD><TR>
|
|
83 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
84 size=2><A HREF=#2.3.1.9>tdfxfb</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
85 Helvetica, sans-serif" size=2>supporto YUV hardware per Voodoo3/Banshee su framebuffer tdfx
|
|
86 (funziona!)</TD><TR>
|
|
87 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
88 size=2><A HREF=#2.3.1.16>zr</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
|
89 Helvetica, sans-serif" size=2>Visualizzazione su schede MJPEG basate su ZR360[56]7
|
|
90 (DC10(+), LML33, Buz)</TD><TR>
|
|
91
|
|
92 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
93 size=2>Speciali:</B></P></TD><TR>
|
|
94
|
|
95 <TD> </TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica,
|
|
96 sans-serif" size=2>png</TD><TD> </TD><TD><FONT face="Verdana, Arial,
|
|
97 Helvetica, sans-serif" size=2>output in file PNG (usa l'opzione -z per regolare
|
|
98 la compressione)</TD><TR>
|
|
99 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
100 size=2>pgm</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
101 size=2>output in file PGM (per test o codifica ffmpeg)</TD><TR>
|
|
102 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
103 size=2>md5</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
104 size=2>output MD5sum (per prove di conformità MPEG)</TD><TR>
|
|
105 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
106 size=2>null</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
|
107 size=2>output nullo (per test di velocità)</TD><TR>
|
|
108 </TABLE>
|
|
109
|
|
110 <P>NOTA: <I>guarda le prossime sezioni per dettagli e requisiti!</I></P>
|
|
111
|
|
112
|
|
113 <P><B><A NAME=2.3.1.1>2.3.1.1. Configurare l' MTRR</A></B></P>
|
|
114
|
|
115 <P>E' DECISAMENTE consigliato controllare se i registri MTRR sono ben configurati,
|
|
116 perchè possono fornire un grande aumento di prestazioni.</P>
|
|
117
|
|
118 <P>Fai un '<CODE>cat /proc/mtrr</CODE>' :</P>
|
|
119
|
|
120 <P><CODE>
|
|
121 --($:~)-- cat /proc/mtrr<BR>
|
|
122 reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9<BR>
|
|
123 reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1<BR>
|
|
124 </CODE></P>
|
|
125
|
4961
|
126 <P>E' a posto, mostra la mia Matrox G400 con 16Mb di memoria. L'ho ottenuto con
|
4867
|
127 XFree 4.x.x , che configura i registri MTRR automaticamente.</P>
|
|
128
|
|
129 <P>Se non ha funzionato, devi farlo manualmente. Prima, bisogna trovare l'indirizzo
|
|
130 di base.
|
|
131 Hai 3 modi per scoprirlo:</P>
|
|
132
|
|
133 <P><UL>
|
|
134 <LI>dai messaggi di avvio di X11, per esempio:
|
|
135 <P><CODE>(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000<BR>
|
|
136 (--) SVGA: Linear framebuffer at 0xD8000000</CODE></P></LI>
|
|
137 <LI>da /proc/pci (usa il comando lspci -v):
|
|
138 <P>
|
|
139 <CODE>01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525</CODE>
|
|
140 <CODE>Memory at d8000000 (32-bit, prefetchable)</CODE>
|
|
141 </P>
|
|
142 <LI>dai messaggi del driver del kernel mga_vid (usa dmesg):
|
|
143 <P><CODE>mga_mem_base = d8000000</CODE></P>
|
|
144 </UL></P>
|
|
145
|
|
146 <P>Poi troviamo la dimensione della memoria. E molto semplice, basta convertire la quantità di ram video
|
|
147 in esadecimale, o usare questa tabella:</P>
|
|
148
|
|
149 <TABLE BORDER=0>
|
|
150 <TD> </TD><TD>1 MB</TD><TD WIDTH=10%></TD><TD>0x100000</TD><TR>
|
|
151 <TD></TD><TD>2 MB</TD><TD></TD><TD>0x200000</TD><TR>
|
|
152 <TD></TD><TD>4 MB</TD><TD></TD><TD>0x400000</TD><TR>
|
|
153 <TD></TD><TD>8 MB</TD><TD></TD><TD>0x800000</TD><TR>
|
|
154 <TD></TD><TD>16 MB</TD><TD></TD><TD>0x1000000</TD><TR>
|
|
155 <TD></TD><TD>32 MB</TD><TD></TD><TD>0x2000000</TD><TR>
|
|
156 </TABLE>
|
|
157
|
|
158
|
|
159 <P>Conosci l'indirizzo di base e la dimensione della memoria, configuriamo i registri mtrr!
|
|
160 Per esempio, per la scheda Matrox di cui sopra (base=0xd8000000) con 32MB di
|
|
161 ram (size=0x2000000) basta eseguire:</P>
|
|
162
|
|
163
|
|
164 <P><CODE> echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr</CODE></P>
|
|
165
|
|
166
|
|
167 <P>Non tutte le CPU supportano l'MTRR. Per esempio i più vecchi K6-2 [circa 266Mhz,
|
|
168 stepping 0] non supportano l'MTRR, ma gli stepping 12 si ('<CODE>cat /proc/cpuinfo</CODE>'
|
|
169 per controllare').</P>
|
|
170
|
|
171 <P><B><A NAME=2.3.1.2>2.3.1.2. Xv</A></B></P>
|
|
172
|
|
173 <P>Sotto XFree86 4.0.2 o più recente, si possono usare le routine hardware della tua scheda
|
|
174 usando l'estensione XVideo. Questo è quello che usa l'opzione '-vo xv'. Inoltre,
|
|
175 questo driver è quello che supporta la regolazione di luminosità/contrasto/hue/etc (a meno che tu stia usando
|
4961
|
176 il vecchio, lento codec DirectShow DivX, che lo supporta ovunque), vedi la pagina di
|
4867
|
177 man.</P>
|
|
178
|
|
179 <P>Per farlo funzionare, assicurati delle seguenti cose:</P>
|
|
180 <P><UL>
|
|
181 <LI>Devi usare XFree86 4.0.2 o più recente (le versioni precedenti non hanno XVideo)
|
|
182 <LI>La tua scheda supporta l'accelerazione hardware (le schede moderne lo fanno)
|
|
183 <LI>X carica l'estensione XVideo, è qualcosa del genere:
|
|
184
|
|
185 <P><CODE> (II) Loading extension XVideo</CODE></P>
|
|
186 <P>in /var/log/XFree86.0.log</P>
|
|
187
|
|
188 <P>NOTA: questo carica solo l'estensione XFree86. In una buona installazione, questo è
|
|
189 sempre caricato, e non significa che il supporto XVideo _della scheda_ è caricato!</P>
|
|
190
|
|
191 <LI>La tua scheda ha il supporto Xv sotto Linux. Per vederlo, prova 'xvinfo', è
|
|
192 parte della distribuzione di XFree86. Dovrebbe mostrare un lungo testo, simile
|
|
193 a questo:
|
|
194 <PRE>
|
|
195 X-Video Extension version 2.2
|
|
196 screen #0
|
|
197 Adaptor #0: "Savage Streams Engine"
|
|
198 number of ports: 1
|
|
199 port base: 43
|
|
200 operations supported: PutImage
|
|
201 supported visuals:
|
|
202 depth 16, visualID 0x22
|
|
203 depth 16, visualID 0x23
|
|
204 number of attributes: 5
|
|
205 (...)
|
|
206 Number of image formats: 7
|
|
207 id: 0x32595559 (YUY2)
|
|
208 guid: 59555932-0000-0010-8000-00aa00389b71
|
|
209 bits per pixel: 16
|
|
210 number of planes: 1
|
|
211 type: YUV (packed)
|
|
212 id: 0x32315659 (YV12)
|
|
213 guid: 59563132-0000-0010-8000-00aa00389b71
|
|
214 bits per pixel: 12
|
|
215 number of planes: 3
|
|
216 type: YUV (planar)
|
|
217 (...ecc...)
|
|
218 </PRE>
|
|
219
|
|
220 <P>Deve supportare i formati pixel YUY2 packed, e YV12 planar per essere
|
|
221 utilizzabile con <B>MPlayer</B>.</P>
|
|
222
|
|
223 <LI>E infine, controlla se <B>MPlayer</B> è stato compilato col supporto 'xv'.
|
|
224 ./configure ti dice questo.
|
|
225
|
|
226 </UL></P>
|
|
227
|
|
228 <P><B><A NAME=2.3.1.2.1>2.3.1.2.1. Schede 3dfx</A></B></P>
|
|
229
|
|
230 <P>I vecchi driver 3dfx avevano problemi con l'accelerazione XVideo,
|
|
231 non supportavano ne YUY2 ne YV12, e cose del genere. Verifica di possedere
|
|
232 XFree86 versione 4.1.0 o maggiore, funziona bene con YUY2, ma va in <B>crash
|
|
233 con YV12</B>! Quindi, o aspetta il 4.2.0 o usa il cvs di
|
|
234 <A HREF="http://dri.sourceforge.net">DRI</A> .
|
4961
|
235 Se hai strani effetti con -vo xv, prova SDL (ha anche XVideo)
|
4867
|
236 e guarda se aiuta. Controlla la <A HREF="#2.3.1.4">sezione SDL</A> per dettagli.</P>
|
|
237
|
|
238 <P><B>O</B>, prova il NUOVO driver -vo tdfxfb! Vedi la sezione <A HREF=#2.3.1.9>2.3.1.9</A>!</P>
|
|
239
|
|
240
|
|
241
|
|
242 <P><B><A NAME=2.3.1.2.2>2.3.1.2.2. Schede S3</A></B></P>
|
|
243
|
|
244 <P>La S3 Savage3D dovrebbe funzionare bene, ma per la Savage4, usa XFree86 versione 4.0.3
|
|
245 o maggiore (in caso di problemi con l'immagine, prova 16bpp). Come per S3 Virge.. c'è il supporto
|
|
246 xv, ma la scheda stessa è molto lenta, quindi faresti meglio a rivenderla.</P>
|
|
247
|
|
248 <P><B>NOTA</B>: la schede Savage hanno una visualizzazione delle immagini lenta con YV12 (deve fare
|
|
249 una conversione YV12->YUY2, perchè l'hardware Savage non può usare YV12).
|
|
250 Quindi quando ad un certo punto di questa documentazione si dice "ha l'output YV12 usa questo,
|
4939
|
251 è più veloce", non è cosa certa. Prova <A HREF="http://www.mplayerhq.hu/MPlayer/contrib/Savage-driver/savage_drv.o.mmx2.bz2">questo
|
|
252 driver</A> che usa MMX2 per questa operazione ed è più veloce del driver nativo di X.</P>
|
4867
|
253
|
|
254
|
|
255 <P><B><A NAME=2.3.1.2.3>2.3.1.2.3. Schede nVidia</A></B></P>
|
|
256
|
|
257 <P>nVidia non è una scelta molto buona sotto Linux (secondo NVidia, questo
|
|
258 <A HREF="users_against_developers.html#nvidia">non è vero</A>).. Sarai costretto ad usare
|
|
259 il driver binario closed-source di nVidia, disponibile sul sito di nVidia. Il driver XFree86 standard
|
|
260 non supporta XVideo per queste schede, a causa delle specificazioni e dei sorgenti chiusi di nVidia.</P>
|
|
261
|
|
262
|
|
263 <P>Per quanto ne so l'ultimo driver XFree86 contiene il supporto XVideo per
|
|
264 Geforce 2 e 3.</P>
|
|
265
|
|
266 <P><UL><LI>Le schede Riva128 non hanno il supporto XVideo neanche col driver di nvidia :(
|
|
267 Lamentati con NVidia.</UL></P>
|
|
268
|
|
269
|
|
270 <P><B><A NAME=2.3.1.2.4>2.3.1.2.4. Schede ATI</A></B></P>
|
|
271
|
|
272 <P>
|
|
273 <LI>Il <A HREF="http://www.linuxvideo.org/gatos">driver GATOS</A> (che dovresti
|
|
274 usare, a meno che tu non abbia Rage128 o Radeon) ha VSYNC abilitato di default. Questo
|
|
275 significa che la velocità di decodifica (!) è sincronizzata con quella di refresh del monitor. Se
|
|
276 la riproduzione sembra essere lenta, prova a disabilitare il VSYNC in qualche modo, o regola la velocità di refresh
|
|
277 a n*(fps del filmato) Hz.</LI>
|
|
278
|
|
279 <LI>Radeon VE - attualmente solo il CVS di XFree86 ha un driver per questa scheda, la versione
|
|
280 4.1.0 no. E nessun supporto TV out. Naturalmente con <B>MPlayer</B> puoi felicemente
|
|
281 ottenere una visualizzazione <B>accelerata</B>, con o senza <B>output TV</B>, e
|
4939
|
282 non servono librerie o X. Leggi le sezioni <a href=#2.3.1.15>Vidix</a> e <A
|
4867
|
283 HREF=#2.3.1.14>livello video Radeon</A>).</LI> </P>
|
|
284
|
|
285
|
|
286 <P><B><A NAME=2.3.1.2.5>2.3.1.2.5. Schede NeoMagic</A></B></P>
|
|
287
|
|
288 <P>
|
4939
|
289 Queste schede possono essere trovate su molti laptop. Sfortunatamente, il driver in
|
|
290 X 4.2.0 non può usare Xv, ma abbiamo un driver modificato, capace di Xv, per te.
|
|
291 <A HREF="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neomagic_drv.o.4.2.0.bz2">Scaricalo da qui</A>.
|
|
292 Driver fornito da Atmosfear.</P>
|
4867
|
293
|
|
294 <P><B><A NAME=2.3.1.2.6>2.3.1.2.6. Schede Trident</A></B></P>
|
|
295
|
|
296 <P>Se vuoi usare xv con una scheda trident, dato che non funziona
|
|
297 col 4.1.0, prova l'ultimo cvs di Xfree o aspetta Xfree 4.2.0.
|
|
298 L'ultimo cvs aggiunge il supporto per xv a pieno schermo con la scheda
|
|
299 Cyberblade XP.</P>
|
|
300
|
|
301 <P><B><A NAME=2.3.1.3>2.3.1.3. DGA</A></B></P>
|
|
302
|
|
303 <P><B><A NAME=2.3.1.3.1>2.3.1.3.1. Sommario</A></B></P>
|
|
304
|
|
305 <P>Questo documento tenta di spiegare cosa sia il DGA in generale e
|
|
306 cosa può fare (e cosa non può) il driver di output video DGA di mplayer.</P>
|
|
307
|
|
308
|
|
309 <P><B><A NAME=2.3.1.3.2>2.3.1.3.2. Cos'è il DGA</A></B></P>
|
|
310
|
|
311 <P>DGA è l'acronimo di Direct Graphics Access (Accesso Diretto alla Grafica, ndt) ed è un modo per un programma di
|
|
312 aggirare il server X e modificare direttamente la memoria del framebuffer.
|
|
313 Detto tecnicamente questo è possibile mappando la memoria del framebuffer nell'area
|
|
314 di memoria del tuo processo. Questo è permesso dal kernel solo se
|
|
315 hai i privilegi di superutente. Puoi ottenerli o loggandoti come
|
|
316 root o applicando il bit suid all'eseguibile mplayer (NON
|
|
317 consigliato!).</P>
|
|
318
|
|
319 <P>Esistono due versioni di DGA: DGA1 è usato da XFree 3.x.x e DGA2 è stato
|
|
320 introdotto con XFree 4.0.1.</P>
|
|
321
|
|
322 <P>DGA1 fornisce solo accesso diretto al framebuffer come descritto sopra. Per
|
|
323 cambiare la risoluzione del segnale video bisogna appoggiarsi all'estensione
|
|
324 XVidMode.</P>
|
|
325
|
|
326 <P>DGA2 incorpora le caratteristiche di XVidMode e permette anche
|
|
327 di cambiare la profondità del display. Cosi puoi, anche se è in esecuzione
|
|
328 un server X a 32 bit di profondità, cambiare ad una profondità di 15 bit e vice
|
|
329 versa. </P>
|
|
330
|
|
331 <P>Però il DGA ha alcune pecche. Sembra che siano in qualche modo dipendenti dal
|
|
332 chip grafico che si usa e dall'implementazione del driver video del server X
|
|
333 che controlla questo chip. Quindi non funziona su tutti i sistemi ...</P>
|
|
334
|
|
335
|
|
336 <P><B><A NAME=2.3.1.3.3>2.3.1.3.3. Installare il supporto DGA per MPlayer</A></B></P>
|
|
337
|
|
338 <P>Per prima cosa assicurati che X carichi l'estensione DGA, controlla in /var/log/XFree86.0.log:</P>
|
|
339
|
|
340 <P> <CODE>(II) Loading extension XFree86-DGA</CODE></P>
|
|
341
|
|
342 <P>Vedi, XFree86 4.0.x o maggiore è DECISAMENTE CONSIGLIATO!
|
|
343 Il driver DGA di <B>MPlayer</B> è trovato automaticamente da ./configure, o si può forzare con
|
|
344 --enable-dga.</P>
|
|
345
|
|
346 <P>Se il driver non può cambiare ad una risoluzione minore, prova con le opzioni
|
|
347 -vm (solo con X 3.3.x), -fs, -bpp, -zoom per trovare una modalità adatta.
|
|
348 Non c'è una conversione per ora.. :(</P>
|
|
349
|
|
350 <P>Diventa ROOT. DGA ha bisogno dell'accesso di root per poter scrivere direttamente nella memoria video.
|
|
351 Se vuoi eseguirlo da utente, allora installa <B>MPlayer</B> SUID root:</P>
|
|
352
|
|
353 <P><CODE>
|
|
354 chown root /usr/local/bin/mplayer<BR>
|
|
355 chmod 750 /usr/local/bin/mplayer<BR>
|
|
356 chmod +s /usr/local/bin/mplayer</CODE></P>
|
|
357
|
|
358
|
|
359 <P>Ora funziona anche da semplice utente.</P>
|
|
360
|
|
361
|
|
362 <P><B>!!!! MA RIMANI IN ASCOLTO !!!!</B><BR>
|
|
363 Questo è un <B>GRANDE</B> rischio per la sicurezza! Non farlo mai su un server o un computer
|
|
364 al quale possono accedere altre persone perchè si possono ottenere i privilegi di root
|
|
365 attraverso mplayer suid root.<BR>
|
|
366 <B>!!!! QUINDI SEI STATO AVVISATO ... !!!!</B></P>
|
|
367
|
|
368 <P>Ora usa l'opzione '-vo dga', ed ecco fatto! (spero:)
|
|
369 Dovresti anche provare se l'opzione '-vo sdl:dga' funziona per te! E' molto più
|
|
370 veloce!!!</P>
|
|
371
|
|
372 <P><B><A NAME=2.3.1.3.4>2.3.1.3.4. Cambiare risoluzione</A></B></P>
|
|
373
|
|
374 <P>Il driver DGA permette di cambiare la risoluzione del segnale di uscita.
|
|
375 Questo evita la necessita di eseguire un (lento) ridimensionamento software e allo stesso
|
|
376 tempo fornisce un'immagine a pieno schermo. Idealmente dovrebbe andare all'esatta risoluzione
|
|
377 (tranne che per rispettare le proporzioni) dei dati video, ma il server X
|
|
378 permette solo di andare ad una risoluzione presente in
|
|
379 <CODE>/etc/X11/XF86Config</CODE> (<CODE>/etc/X11/XF86Config-4</CODE> per XFree 4.0.X).
|
|
380 Queste sono definite dalle cosi dette modeline e dipendono dalle capacità
|
|
381 del tuo hardware video. Il server X legge questo file di configurazione all'avvio e
|
|
382 disabilita le modeline non adatte al tuo hardware. Puoi scoprire quali modalità rimangono
|
|
383 nel file di log di X11. Si trova in:
|
|
384 <CODE>/var/log/XFree86.0.log</CODE>.</P>
|
|
385 <P>Vedi l'appendice A per alcune definizioni di modeline di esempio.</P>
|
|
386
|
|
387 <P><B><A NAME=2.3.1.3.5>2.3.1.3.5. DGA & MPlayer</A></B></P>
|
|
388
|
4961
|
389 <P>DGA è utilizzato in due posti in <B>MPlayer</B>: nel driver SDL
|
4867
|
390 (-vo sdl:dga) e nel driver DGA (-vo dga).
|
|
391 Quello detto sopra è valido per entrambi; nella seguente sezione spiegherò come funziona
|
|
392 il driver DGA di <B>MPlayer</B>.</P>
|
|
393
|
|
394 <P><B><A NAME=2.3.1.3.6>2.3.1.3.6. Caratteristiche del driver DGA</A></B></P>
|
|
395
|
|
396 <P>Il driver DGA è invocato specificando -vo dga alla riga di comando.
|
|
397 Il comportamento di default è quello di cambiare ad una risoluzione il più vicino possibile
|
|
398 a quella originale del filmato. Ignora deliberatamente le opzioni
|
|
399 -vm e -fs (cambiare la modalità video e il pieno schermo) -
|
|
400 tenta sempre di coprire la maggior parte possibile del monitor cambiando la
|
|
401 modalità video, astenendosi così dall'usare anche un solo ciclo in più della CPU
|
|
402 per ridimensionare l'immagine.
|
|
403 Se non ti piace la modalità che ha scelto puoi forzarlo ad usare la risoluzione
|
|
404 più vicina a quella che gli viene passata con le opzioni -x e -y.
|
|
405 Con l'opzione -v, il driver DGA stamperà a video, tra le altre cose,
|
|
406 una lista delle risoluzioni supportate dal tuo attuale file
|
|
407 XF86-Config.
|
|
408 Con il DGA2 puoi anche forzarlo ad usare una certa profondità usando l'pzione -bpp.
|
|
409 Le profondità valide sono 15, 16, 24 e 32. Dipende dal tuo hardware
|
|
410 se queste profondità sono supportate nativamente o se deve essere fatta una (possibilmente lenta)
|
|
411 conversione.</P>
|
|
412
|
|
413 <P>Se sei abbastanza fortunato da avere abbastanza memoria video rimasta
|
|
414 per inserire un'intera immagine, il driver DGA userà il doppio buffering, che permette una riproduzione
|
|
415 video più fluida. Ti dirà se il doppio buffering è abilitato oppure
|
|
416 no.</P>
|
|
417
|
|
418 <P>Doppio buffering significa che la successiva immagine del filmato viene disegnata nella
|
|
419 memoria video mentre è mostrata l'immagine attuale. Quando il successivo frame
|
|
420 è pronto, basta dire al chip grafico la posizione nella memoria
|
|
421 del nuovo frame e prende semplicemente i dati da visualizzare da lì.
|
|
422 Nel frattempo un altro buffer nella memoria sarà di nuovo riempito con nuovi dati
|
|
423 video.</P>
|
|
424
|
|
425 Il doppio buffering può essere abilitato con l'opzione -double e disabilitato con
|
|
426 -nodouble. L'azione attualmente predefinita è quella di disabilitare il doppio
|
|
427 buffering. Quando si usa il driver DGA, l' OSD funziona
|
|
428 solo col doppio buffering abilitato. Comunque, abilitare il doppio buffering può
|
|
429 risultare in una grande perdita di velocità (sul mio K6-II+ 525 usa un 20% in più di tempo della
|
|
430 CPU!) a seconda dell'implementazione del DGA per il tuo hardware.</P>
|
|
431
|
|
432
|
|
433 <P><B><A NAME=2.3.1.3.7>2.3.1.3.7. Questioni sulla velocità</A></B></P>
|
|
434
|
|
435 <P>Parlando in generale, l'accesso al framebuffer DGA dovrebbe essere veloce almeno quanto
|
|
436 il driver X11 con in più il beneficio di avere l'immagine a pieno schermo.
|
|
437 I valori di velocità in percentuale dati da mplayer devono essere interpretati con una certa
|
|
438 cura, dato che per esempio, col driver X11 non includono il tempo impiegato
|
|
439 dal server X necessario per il reale disegno. Aggancia un terminale alla porta
|
|
440 seriale della tua box ed esegui top per vedere cosa sta realmente accadendo
|
|
441 ...</P>
|
|
442
|
|
443 <P>Parlando in generale, l'incremento di velocità dato da DGA rispetto ad un uso 'normale' di X11
|
|
444 dipende in larga misura dalla tua scheda grafica e da quanto sia ben ottimizzato il modulo X-Server
|
|
445 per essa.</P>
|
|
446
|
|
447 <P>Se hai un sistema lento, faresti meglio ad usare una profondità di 15 o 16bit in quanto necessitano
|
|
448 solo metà della larghezza di banda della memoria rispetto ai 32.</P>
|
|
449
|
|
450 <P>Anche usare una profondità di 24bit è una buona idea se la tua scheda li supporta nativamente solo i
|
|
451 32 bit in quanto trasferisce il 25% in meno di dati rispetto alla modalità 32/32.</P>
|
|
452
|
|
453 <P>Ho visto già dei file avi riprodotti su un Pentium MMX 266. Le CPU AMD K6-2
|
|
454 dovrebbero andare bene dai 400 MHZ in su.</P>
|
|
455
|
|
456 <P><B><A NAME=2.3.1.3.8>2.3.1.3.8. Bug conosciuti</A></B></P>
|
|
457
|
|
458 <P>Bene, secondo alcuni sviluppatori di XFree, DGA è proprio una bestiaccia. Raccomandano
|
|
459 di non usarlo. La sua implementazione non è sempre perfetta
|
|
460 con tutti i driver per chipset di XFree la fuori.</P>
|
|
461
|
|
462 <P><UL>
|
|
463 <LI>con XFree 4.0.3 e nv.o c'è un bug che risulta in strani colori
|
|
464 <LI>il driver ATI necessita di cambiare la modalità più volte dopo aver finito di usare
|
|
465 DGA
|
|
466 <LI>alcuni driver semplicemente falliscono nel ritornare alla risoluzione normale (usa
|
|
467 Ctrl-Alt-Keypad +, - per ritornarci manualmente)
|
|
468 <LI>alcuni driver semplicemente mostrano strani colori
|
|
469 <LI>alcuni driver mentono sulla quantità di memoria che mappano nello spazio di indirizzamento del
|
|
470 processo, così vo_dga non userà il doppio buffering (SIS?)
|
|
471 <LI>alcuni driver sembrano fallire nel riportare anche una singola modalità valida. In questo caso
|
|
472 il driver DGA si interromperà lamentandosi di una modalità senza senso di
|
|
473 100000x100000 o simile ...
|
|
474 <LI>OSD funziona solo col doppio buffering abilitato
|
|
475 </UL></P>
|
|
476
|
|
477 <P><B><A NAME=2.3.1.3.9>2.3.1.3.9. Lavoro futuro</A></B></P>
|
|
478
|
|
479 <P><UL><LI>usare la nuova interfaccia di rendering di X11 per OSD
|
|
480 <LI>dov'è la mia lista delle cose da fare ???? :-(((</UL></P>
|
|
481
|
|
482
|
|
483 <P><B><A NAME=2.3.1.3.A>2.3.1.3.A. Alcune modeline</A></B></P>
|
|
484
|
|
485 <PRE>
|
|
486 Section "Modes"
|
|
487 Identifier "Modes[0]"
|
|
488 Modeline "800x600" 40 800 840 968 1056 600 601 605 628
|
|
489 Modeline "712x600" 35.0 712 740 850 900 400 410 412 425
|
|
490 Modeline "640x480" 25.175 640 664 760 800 480 491 493 525
|
|
491 Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan
|
|
492 Modeline "352x288" 25.10 352 368 416 432 288 296 290 310
|
|
493 Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan
|
|
494 Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan
|
|
495 EndSection
|
|
496 </PRE>
|
|
497
|
|
498 <P>Queste funzionano bene col mio chip Riva128, usando il modulo del driver XServer nv.o .
|
|
499 </P>
|
|
500
|
|
501
|
|
502 <P><B><A NAME=2.3.1.3.B>2.3.1.3.B. Segnalazione bug</A></B></P>
|
|
503
|
|
504 <P>Se riscontri dei problemi col driver DGA per favore sentiti libero di inviare una segnalazione
|
|
505 di bug a me (indirizzo e-mail sotto). Per favore esegui mplayer con l'opzione
|
|
506 -v e includi tutte le linee che cominciano con vo_dga: nella segnalazione</P>
|
|
507
|
|
508 <P>Includi anche la versione di X11 che usi, la scheda video
|
|
509 e il tuo tipo di CPU. Anche il modulo del driver X11 (definito in XF86-Config) potrebbe
|
|
510 aiutare. Grazie!</P>
|
|
511
|
|
512
|
|
513 <P><I>Acki (acki@acki-netz.de, www.acki-netz.de)</I></P>
|
|
514
|
|
515
|
|
516 <P><B><A NAME=2.3.1.4>2.3.1.4. SDL</A></B></P>
|
|
517
|
|
518 <P>SDL (Simple Directmedia Layer, Semplice Livello Diretto per media, ndt) è in generale una interfaccio video/audio
|
4961
|
519 unificata. I programmi che ne fanno uso conoscono solo l' SDL, e nulla su quale driver video
|
|
520 o audio SDL usano veramente. Per esempio un port di Doom che usa SDL può
|
4867
|
521 essere eseguito su svgalib, aalib, X, fbdev, e altri, devi solo specificare il
|
|
522 (per esempio) driver video da usare con la variabile d'ambiente SDL_VIDEODRIVER.
|
|
523 Bhe, in teoria.</P>
|
|
524
|
|
525 <P>Con <B>MPlayer</B>, abbiamo usato la capacita di ridimensionamento software del suo driver X11 per
|
|
526 schede/driver che non supportano XVideo, finchè non abbiamo fatto il nostro (più veloce,
|
|
527 più bello) ridimensionatore software. Abbiamo anche usato il suo output aalib, ma ora abbiamo il nostro che è
|
|
528 più comodo. La sua modalità DGA era migliore della nostra, fino a poco
|
|
529 tempo fà. Afferrato ora? :)</P>
|
|
530
|
|
531 <P>Aiuta anche con alcuni driver/schede difettosi se il video o l'audio sono a scatti
|
|
532 (non un problema di sistema lento).</P>
|
|
533
|
|
534 <P>Ecco alcune note sull'output SDL in <B>MPlayer</B>.</P>
|
|
535
|
|
536
|
|
537
|
|
538 <P><TABLE BORDER=0>
|
|
539 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>Ci sono molte opzioni a riga di comando per SDL:</B></P></TD><TR>
|
|
540 <TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-vo sdl:nome</TD><TD> </TD><TD>
|
|
541 <FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>specifica il driver video sdl da usare (es. aalib, dga, x11)</TD><TR>
|
|
542 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-ao sdl:nome</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>specifica il driver audio sdl da usare (es. dsp,
|
|
543 esd, arts)</TD><TR>
|
|
544 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-noxv</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>disabilita l'accelerazione hardware Xvideo</TD><TR>
|
|
545 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-forcexv</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>tenta di forzare l'accelerazione Xvideo</TD><TR>
|
|
546
|
|
547 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>Tasti per SDL:</B></P></TD><TR>
|
|
548
|
|
549 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>F</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>scambia le modalità pieno schermo/finestra</TD><TR>
|
|
550 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>C</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>cambia tra le modalità a pieno schermo disponibili</TD><TR>
|
|
551 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>W/S</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>sostituiscono * e / (controllo mixer)</TD><TR>
|
|
552
|
|
553 </TABLE></P>
|
|
554
|
|
555 <P><B>BUG CONOSCIUTI:</B></P>
|
|
556 <P><UL><LI>I tasti premuti sotto il driver sdl:aalib si ripetono all'infinito. (usa -vo aa !)
|
|
557 E' un bug di SDL, io non posso cambiarlo (provato con SDL 1.2.1).
|
|
558 </UL></P>
|
|
559
|
|
560 <P><B><A NAME=2.3.1.5>2.3.1.5. SVGAlib</A></B></P>
|
|
561
|
|
562 <P>Se non hai X, puoi usare l'output SVGAlib! Assicurati di non usare l'opzione
|
|
563 -fs, in quanto abilita l'utilizzo del ridimensionamento software, e è LEEENTO
|
|
564 per ora, a meno che tu non abbia una CPU veramente veloce (e/o MTRR?). :(</P>
|
|
565
|
|
566 <P>Naturalmente dovrai installare svgalib e il suo pacchetto di sviluppo
|
|
567 in modo che <B>MPlayer</B> possa compilare il suo driver SVGAlib (trovato automaticamente, ma può essere
|
|
568 forzato), e non dimenticare di modificare /etc/vga/libvga.config per adattarlo alla tua
|
|
569 scheda video & monitor.</P>
|
|
570
|
|
571 <P><B><A NAME=2.3.1.6>2.3.1.6. Output col Framebuffer (FBdev)</A></B></P>
|
|
572
|
4939
|
573 <P>Se compilare il driver FBdev è stabilito automaticamente da ./configure .
|
4867
|
574 Leggi la documentazione del framebuffer nei sorgenti del kernel
|
|
575 (Documentation/fb/*) per informazioni su come abilitarlo, ecc.. !</P>
|
|
576
|
|
577 <P>Se la tua scheda non supporta lo standard VBE 2.0 (le più vecchie schede ISA/PCI,
|
|
578 come la S3 Trio64), ma solo VBE 1.2 (o più vecchio?) :
|
4939
|
579 ebbene, VESAfb è ancora disponibile, ma dovrai caricare il programma SciTech Display
|
4867
|
580 Doctor (prima UniVBE) prima di fare il boot di Linux. Usa un dischetto di boot DOS o
|
|
581 quello che vuoi. E non dimenticare di registrare il tuo UniVBE ;))</P>
|
|
582
|
|
583 <P>L'output FBdev accetta alcuni parametri supplementari tra i quali:</P>
|
|
584
|
|
585 <P><TABLE BORDER=0>
|
|
586 <TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-fb</TD><TD> </TD><TD>
|
|
587 <FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>specifica il dispositivo framebuffer da usare (/dev/fb0)</TD><TR>
|
|
588 <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>
|
|
589 <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>
|
|
590 <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>
|
|
591 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-monitor_vfreq</TD><TD></TD><TR>
|
|
592 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-monitor_dotclock</TD><TD></TD><TR>
|
|
593 </TABLE></P>
|
|
594
|
|
595 <P>Se vuoi cambiare ad una modalità specifica, allora usa</P>
|
|
596
|
|
597 <P><CODE> mplayer -vm -fbmode (NomeModalità) nomefile</CODE></P>
|
|
598
|
|
599 <P><UL><LI>l'opzione <B>-vm</B> sceglierà la modalità più adatta da /etc/fb.modes . Può essere usata
|
|
600 anche insieme alle opzioni -x e -y. L'opzione -flip è supportata solo se
|
|
601 il formato dei pixel del filmato corrisponde a quello dei pixel della modalità video.
|
|
602 Fai attenzione al valore di bpp, il driver fbdev tenta di usare l'attuale,
|
|
603 o se si specifica l'opzione -bpp, allora quella.</LI>
|
|
604 <LI>l'opzione <B>-zoom</B> non è supportata (il ridimensionamento software è lento). l'opzione -fs
|
|
605 non è supportata. Non puoi usare le modalità a 8bpp (o meno).</LI>
|
|
606 <LI>Probabilmente vuoi nascondere il cursore : <CODE>echo -e '\033[?25l'</CODE>
|
|
607 o <CODE>setterm -cursor off</CODE><BR>
|
|
608 e lo screen saver: <CODE>setterm -blank 0</CODE><BR>
|
|
609 Per riavere il cursore : <CODE>echo -e '\033[?25h'</CODE>
|
|
610 o <CODE>setterm -cursor on</CODE>
|
|
611 </UL></P>
|
|
612
|
|
613 <P>NOTA: il cambiamento di modalità video di FBdev _non funziona_ col framebuffer VESA,
|
4939
|
614 e non richiederlo, in quanto non è una limitazione di <B>MPlayer</B>.</P>
|
4867
|
615
|
|
616 <P><B><A NAME=2.3.1.7>2.3.1.7. Framebuffer Matrox (mga_vid)</A></B></P>
|
|
617
|
|
618 <P>Questa sezione parla del supporto BES (Back-End Scaler) di Matrox G200/G400/G450/G550,
|
4939
|
619 il driver del kernel mga_vid. E' attualmente sviluppato da me (A'rpi), e
|
4867
|
620 ha il supporto VSYNC hardware con triplo buffering. Funziona sia da console col framebuffer
|
|
621 che sotto X.</P>
|
|
622
|
|
623 <P><B>ATTENZIONE</B>: su sistemi non-Linux, usa <A HREF=#2.3.1.15>Vidix</A> per
|
|
624 mga_vid !!!</P>
|
|
625
|
|
626 <P>Per usarlo, devi prima compilare mga_vid.o:</P>
|
|
627
|
|
628 <P><CODE> cd drivers<BR>
|
|
629 make</CODE></P>
|
|
630
|
|
631 <P>Poi crea il dispositivo /dev/mga_vid:</P>
|
|
632
|
|
633 <P><CODE> mknod /dev/mga_vid c 178 0</CODE></P>
|
|
634
|
|
635 <P>e carica il driver con</P>
|
|
636
|
|
637 <P><CODE> insmod mga_vid.o</CODE></P>
|
|
638
|
|
639 <P>Dovresti controllare il riconoscimento della dimensione della memoria usando il comando 'dmesg'. Se è
|
|
640 sbagliata, usa l'opzione mga_ram_size (prima rmmod mga_vid), specifica la dimensione della memoria
|
|
641 della scheda in MB:</P>
|
|
642
|
|
643 <P><CODE> insmod mga_vid.o mga_ram_size=16</CODE></P>
|
|
644
|
|
645 <P>Per farlo caricare/scaricare automaticamente quando ce n'è bisogno, prima inserisci la seguente riga
|
|
646 alla fine di /etc/modules.conf:</P>
|
|
647
|
|
648 <P><CODE> alias char-major-178 mga_vid</CODE></P>
|
|
649
|
|
650 <P>Quindi copia il modulo <CODE>mga_vid.o</CODE> nella posizione appropriata sotto
|
|
651 <CODE>/lib/modules/<versione kernel>/daqualcheparte</CODE>.</P>
|
|
652
|
|
653 <P>Poi esegui</P>
|
|
654
|
|
655 <P><CODE> depmod -a</CODE></P>
|
|
656
|
|
657 <P>Ora devi (ri)compilare <B>MPlayer</B>, ./configure troverà /dev/mga_vid
|
|
658 e compilerà il driver 'mga'. In <B>MPlayer</B> si usa con '-vo mga' se
|
|
659 hai la console matroxfb, o '-vo xmga' sotto XFree86 3.x.x o 4.x.x.</P>
|
|
660
|
|
661 <P>Il driver mga_vid coopera con Xv.</P>
|
|
662
|
|
663 <P>Il file del dispositivo <CODE>/dev/mga_vid</CODE> può essere letto (per esempio con
|
4961
|
664 <CODE>cat /dev/mga_vid</CODE>) per avere alcune informazioni, e scritto per cambiare la luminosità
|
4867
|
665 : <CODE>echo "brightness=120" > /dev/mga_vid</CODE></P>
|
|
666
|
|
667
|
|
668 <P><B><A NAME=2.3.1.8>2.3.1.8. Framebuffer SiS 6326 (sis_vid)</A></B></P>
|
|
669
|
|
670 <P>Driver del framebuffer YUV SiS 6326 -> driver del kernel sis_vid</P>
|
|
671
|
|
672 <P>La sua interfaccia dovrebbe essere compatibile con mga_vid, ma il driver non è stato aggiornato
|
|
673 dopo i cambiamenti di mga_vid, quindi è obsoleto ora. Si cercano volontari per
|
|
674 testarlo e aggiornare il codice.</P>
|
|
675
|
|
676 <P><B><A NAME=2.3.1.9>2.3.1.9. Supporto YUV 3dfx (tdfxfb)</A></B></P>
|
|
677
|
|
678 <P>Questo driver usa il driver framebuffer del kernel tdfx per riprodurre i filmati con
|
|
679 accelerazione YUV. Devi avere un kernel col supporto tdfxfb, e ricompilare con
|
|
680 <CODE>./configure --enable-tdfxfb</CODE></P>
|
|
681
|
|
682 <P><B><A NAME=2.3.1.10>2.3.1.10. Output in OpenGL</A></B></P>
|
|
683
|
|
684 <P><B>MPlayer</B> supporta la visualizzazione dei filmati usando OpenGL. Sfortunatamente, non tutti
|
|
685 i driver hanno questa capacità. Per esempio i driver Utah-GLX
|
|
686 (per XFree86 3.3.6) lo supportano, con tutte le schede.
|
|
687 Vedi <A HREF="http://utah-glx.sourceforge.net">http://utah-glx.sourceforge.net</A>
|
|
688 per dettagli su come installarlo.</P>
|
|
689
|
|
690 <P>XFree86(DRI) >= 4.0.3 lo supporta solo con schede Matrox, e Radeon.
|
|
691 Vedi <A HREF="http://dri.sourceforge.net">http://dri.sourceforge.net</A> per scaricarlo,
|
|
692 e per istruzioni sull'installazione.</P>
|
|
693
|
|
694 <P><B><A NAME=2.3.1.11>2.3.1.11. AAlib - visione in modalità testo</B></P>
|
|
695
|
|
696 <P><B>AAlib</B> è una libreria per vedere la grafica in modalità testo, usando un potente
|
4961
|
697 renderer ASCII. Ci sono MOLTI programmi che già la supportano, come Doom,
|
|
698 Quake, ecc. MPlayer contiene un driver molto facile da usare per questa.
|
4867
|
699 Se ./configure trova aalib installata, sarà compilato il driver libvo aalib.</P>
|
|
700
|
|
701 <P><TABLE BORDER=0>
|
|
702 <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>
|
|
703 <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>
|
|
704 <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>
|
|
705 <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>
|
|
706 <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>
|
|
707 <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>
|
|
708 <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>
|
|
709 <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
|
710 <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
|
711
|
|
712 <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>
|
|
713
|
|
714 <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>
|
|
715 <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>
|
|
716 <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>
|
|
717
|
|
718 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>La stessa AAlib fornisce un gran numero do opzioni.
|
|
719 Eccone alcune importanti:</P></B></TD><TR>
|
|
720
|
|
721 <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>
|
|
722 <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>
|
|
723 <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>
|
|
724 <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>
|
|
725 </TABLE></P>
|
|
726
|
|
727 <P>NOTA: il rendering utilizza molta CPU, specialmente usando aalib su X,
|
|
728 e ne usa meno su console standard,
|
|
729 non-framebuffer. Usa SVGATextMode per selezionare una modalità testo grande,
|
|
730 e divertiti! (le schede Hercules con uscita secondaria vanno forte :)) (qualcuno può migliorare
|
|
731 bdev per fare conversione/dithering a hgafb? Sarebbe bello :)</P>
|
|
732
|
4961
|
733 <P>Usa l'opzione -framedrop se il tuo computer non è abbastanza veloce da renderizzare tutti i frame!</P>
|
4867
|
734
|
|
735 <P>Usandolo da terminale otterrai una più alta velocità e qualità usando il driver di linux, non
|
|
736 curses (-aadriver linux). Ma per questo devi avere accesso in scrittura a /dev/vcsa<terminale>!
|
4961
|
737 Questa non è ipostata automaticamente da aalib, ma vo_aa cerca di trovare la modalità migliore.
|
4867
|
738 Vedi <A HREF="http://aa-project.sourceforge.net/tune/">http://aa-project.sourceforge.net/tune/</A> per ulteriori questioni di regolazione.</P>
|
|
739
|
|
740
|
|
741 <P><B><A NAME=2.3.1.12>2.3.1.12. VESA - output col BIOS VESA</B></P>
|
|
742 <P>
|
4961
|
743 Questo driver è stato pensato e introdotto come un <b>driver generico</b> per qualsiasi scheda video
|
|
744 con un BIOS VESA VBE 2.0 compatibile. Ma c'è ancora una ragione per lo sviluppo di
|
|
745 questo driver - le suoe molte possibilità di visualizzazione sulla TV.<BR>
|
4867
|
746 <b>VESA BIOS EXTENSION (VBE) Versione 3.0 Data: 16 Settembre 1998</b> (Pagina 70)
|
|
747 dice:
|
|
748 </P>
|
|
749
|
|
750 <P>
|
|
751 <code><i>
|
|
752 <b>Design a doppio controller</b><br>
|
|
753 VBE 3.0 supporta il design a doppio controller supponendo che, dato che entrambi
|
|
754 i controller sono solitamente forniti dallo stesso OEM, sotto il controllo di una
|
4961
|
755 singola ROM BIOS sulla stessa scheda grafica, è possibile nascondere all'applicazione il fatto che
|
|
756 sono realmente presenti due controller. Questo ha la limitazione
|
4867
|
757 di impedire l'uso contemporaneo dei controller indipendenti,
|
|
758 ma consente alle applicazioni rilasciate prima del VBE 3.0 di operare normalmente. La funzione
|
|
759 VBE 00h fornisce l'informazione combinata dei due
|
|
760 controller, inclusa la lista combinata delle modalità disponibili.
|
|
761 Quando l'applicazione seleziona una modalità, viene attivato il controller appropriato.
|
|
762 Ogni rimanente funzione VBE quindi opera sul controller attivo.
|
|
763 </i></code>
|
|
764 </P>
|
|
765
|
|
766 <P>
|
|
767 Quindi si ha la possibilità di far andare il TV-out con questo driver.<br>
|
|
768 (Suppongo che spesso il TV-out abbia un output suo proprio,
|
|
769 almeno.)
|
|
770 </P>
|
|
771
|
|
772 <P>
|
|
773 <b>Le cose positive:</b><BR>
|
|
774 - Hai la possibilità di vedere filmati <b>anche se Linux non conosce nemmeno</b> il tuo hardware video.<BR>
|
|
775 - Non devi aver installato niente per la grafica sul tuo Linux
|
|
776 (come X11 (cioè XFree86), fbdev e così via). Questo driver può essere eseguito dalla
|
|
777 <b>modalità testo</b>.<BR>
|
|
778 - Hai la possibilità di avere il <b>TV-out funzionante</b>. (almeno con le schede ATI).<BR>
|
|
779 - Questo driver richiama l'handler <b>int 10h</b> quindi non è un emulatore - richiama le
|
|
780 cose <b>reali</b> del <b>reale</b> BIOS in modalità <b>reale</b>. (detto meglio -
|
|
781 in modalità vm86).<BR>
|
|
782 - Molto più importante :) puoi guardare i <b>DVD a 320x200</b> se non hai una CPU potente.<BR>
|
|
783 </P>
|
|
784
|
|
785 <P>
|
|
786 <b>Le cose negative:</b><BR>
|
|
787 - Funziona solo su <b>sistemi x86</b>.<BR>
|
|
788 - <b>E' il driver più lento</b> di tutti quelli disponibili per MPlayer.<BR>
|
|
789 (Ma solo se la tua scheda non supporta la <b>modalità DGA</b> - altrimenti questo
|
|
790 driver è simile in velocità a quelli <b>-vo dga</b> e <b>-vo fbdev</b>.<BR>
|
|
791
|
4961
|
792 - Può essere usato solo da <b>ROOT</b>.<BR>
|
4867
|
793 - Attualmente è disponibile solo per <b>Linux</b>.<BR>
|
|
794 - <b>Non usa</b> nessuna <b>accelerazione hardware</b> (come il livello YUV o lo scaling hw).<BR>
|
|
795 </P>
|
|
796
|
|
797 <P>Non usare questo driver col <B>GCC 2.96</B> ! Non funzionerà !</P>
|
|
798
|
|
799 <P>
|
|
800 <TABLE BORDER=0>
|
|
801 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>Sono attualmente disponibili queste opzioni per VESA:</B></P></TD><TR>
|
4961
|
802 <TD> </TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-vo vesa:opzioni</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>attualmente riconosciute: <b>dga</b> per forzare la modalità dga e <b>nodga</b> per disabilitarla. Nota: puoi omettere questi parametri per abilitare il riconoscimento <b>automatico</b> della modalità dga. (In futuro si potranno specificare anche parametri come refresh rate, interlacing, doublescan e così via. Esempi: i43, 85, d100)</TD><TR>
|
4867
|
803 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-screenw, -screenh, -bpp</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>forza la modalità definita dall'utente</TD><TR>
|
|
804 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-x, -y</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>configura il predimensionamento definito dall'utente</TD><TR>
|
|
805 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-zoom</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>abilita il predimensionamento definito dall'utente</TD><TR>
|
|
806 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-fs</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>ridimensiona l'immagine a pieno schermo</TD><TR>
|
|
807 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-fs -zoom</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>ridimensiona il predimensionamento definito dall'utente a pieno schermo</TD><TR>
|
|
808 <TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>-double</TD><TD></TD><TD><FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>abilita la modalità di doppio buffering. (Disponibile solo in modalità DGA). Dovrebbe essere più lento del buffering singolo, ma non ha scatti.</TD><TR>
|
|
809 </TABLE>
|
|
810 </P>
|
|
811
|
|
812 <P>
|
|
813 <b>Problemi conosciuti e come aggirarli:</b><br>
|
|
814 - Se hai installato il font <b>NLS</b> sulla tua Linux box ed esegui il driver VESA
|
|
815 dalla modalità testo allora dopo aver chiuso mplayer avrai il <b>font ROM</b> caricato invece del
|
|
816 nazionale. Puoi ricaricare il font nazionale usando l'utilità <b><i>setsysfont</i></b>
|
|
817 dalla, per esempio, distribuzione Mandrake.<br>
|
|
818 (<b>Suggerimento</b>: la stessa utilità è usata per la "localizzazione" di fbdev).<br>
|
|
819 - Alcuni <b>driver grafici di Linux</b> non aggiornano la <b>modalità BIOS</b> attiva nella memoria DOS. Quindi se hai
|
|
820 un tale problema - usa sempre il driver VESA solo dalla <b>modalità testo</b>. Altrimenti la modalità testo (#03) sarà
|
|
821 attivata comunque e dovrai far ripartire il computer.<br>
|
4961
|
822 - Spesso dopo aver terminato il driver VESA si ottiene uno <b>schermo nero</b>. Per farlo ritornare
|
4867
|
823 allo stato originale - cambia semplicemente console (premendo <b>Alt-Fx</b>) poi ritorna
|
|
824 alla precedente console nello stesso modo.<br>
|
|
825 - Per far <b>funzionare il TV-out</b> devi avere il connettore della tv inserito prima di far partire
|
|
826 il tuo PC in quanto il BIOS video si inizializza solo una volta durante la procedura di POST.
|
|
827 </P>
|
|
828
|
|
829
|
|
830 <P><B><A NAME=2.3.1.13>2.3.1.13. X11</B></P>
|
|
831
|
|
832 <P>Evitalo se possibile. Da l'output a X11 (usa l'estensione per la memoria condivisa), senza alcuna
|
|
833 accelerazione hardware. Supporta (accelerato da MMX/3DNow/SSE, ma ancora
|
|
834 lento) il ridimensionamento software, usa le opzioni <CODE>-fs -zoom</CODE>. Molte schede
|
|
835 hanno il supporto per il ridimensionamento hardware, usa l'output <CODE>-vo xv</CODE> per queste, o
|
|
836 <CODE>-vo xmga</CODE> per le Matrox.</P>
|
|
837
|
|
838 <P>Il problema è che il driver della maggior parte delle schede non supporta
|
|
839 l'accelerazione hardware sulla seconda uscita/TV. In quei casi, si vede una finestra verde/blu
|
|
840 invece del filmato. Qui è dove questo driver è utile,
|
|
841 ma hai bisogno di una CPU potente per usare il ridimensionamento software. Non usare
|
|
842 l'output+scaler software del driver SDL, ha una pessima qualità d'immagine !</P>
|
|
843
|
|
844 <P>Il ridimensionamento software è molto lento, faresti meglio a cambiare modalità video invece.
|
|
845 E' molto semplice. Vedi la <A HREF=#2.3.1.3.A>sezione sulle modeline DGA</A>, e
|
|
846 inseriscile nel tuo XF86Config.
|
|
847 <UL>
|
|
848 <LI>Se hai XFree86 4.x.x - usa l'opzione <CODE>-vm</CODE>. Cambierà ad una
|
|
849 risoluzione adatta al tuo filmato. Se non funziona :</LI>
|
|
850 <LI>Con XFree86 3.x.x - devi cercare tra tutte le risoluzioni disponibili
|
|
851 con i tasti <B>CTRL-ALT-più</B> e <B>meno</B>.</LI>
|
|
852 </UL>
|
|
853
|
|
854 Se non riesci a trovare le modalità che hai inserito, controlla l'output di XFree86. Alcuni
|
|
855 driver non possono usare i bassi pixelclock necessari per modalità video a bassa
|
|
856 risoluzione.</P>
|
|
857
|
|
858
|
|
859 <P><B><A NAME=2.3.1.14>2.3.1.14. Livello video Rage128 (pro) / Radeon (radeon_vid)</A></B></P>
|
|
860 <P>
|
|
861 <b>radeon_vid</b> e <B>rage128_vid</B> forniscono supporto per il <b>BackEnd Scaler</b> su chipset ATI <b>Radeon</b> e Rage128 (Pro).
|
4961
|
862 Sono stati studiati e introdotti come analoghi del driver <a href="video.html#2.3.1.7">mga_vid</a>, quindi puoi usarli nello stesso modo!<br>
|
|
863 Ma l'obbiettivo principale dell'uso di questi driver è il driver <a href="video.html#2.3.1.12">VESA</a>.<br>
|
4867
|
864 Semplicemente perchè VESA abilita il TV-out sulle schede ATI ma il Backend scaler è usato dopo
|
|
865 il cambiamento di modalità. Questa implementazione da il flusso video su entrambi: <b>schermo TV</b> e monitor <b>CRTC</b>
|
4961
|
866 simultaneamente. (Diminuisce leggermente la qualità dell'output video, ma è meglio
|
4867
|
867 che niente).
|
|
868 Spiacente! Non sono riuscito a trovare nessuna informazione sul livello video sulle
|
|
869 pagine di ATI. (ho deciso di implementarlo attraverso chiamate <b>int 10h</b>). Ma è stato
|
|
870 molto facile implementare queste cose attraverso le porte di lettura/scrittura di Radeon.
|
|
871 <br><b>NOTA</b>: la tecnologia XXX_VID è assolutamente non documentata e probabilmente in futuro
|
4961
|
872 queste cose saranno completamente riscritte. Questo è il primo rilascio pubblico dei
|
4867
|
873 driver.</P>
|
|
874
|
|
875 <P><B>Installazione</B></P>
|
|
876
|
|
877 <P>
|
|
878 <UL>
|
|
879 <LI>
|
|
880 <CODE>cd drivers/radeon<BR>
|
|
881 make<BR>
|
|
882 make install<BR>
|
|
883 make nodes</CODE></LI>
|
|
884 <LI>aggiungi uno dei seguenti alla fine del file <CODE>/etc/modules.conf</CODE> :<BR>
|
|
885 <CODE> alias char-major-178 radeon_vid</CODE><BR>
|
|
886 <CODE> alias char-major-178 rage128_vid</CODE></LI>
|
|
887 <LI>run <CODE>depmod -a</CODE></LI>
|
|
888 </UL>
|
|
889 </P>
|
|
890
|
|
891 <P>
|
|
892 <br><b>Utilizzo:</b><BR>
|
4939
|
893 <CODE>mplayer -vo vesa:vidix <le tue opzioni> nomefile</CODE>
|
4867
|
894 </P>
|
|
895
|
|
896 <P>Più esempi (per il deinterlacing hardware, ecc) si possono trovare
|
|
897 <A HREF="../drivers/radeon/README">qui</A>.</P>
|
|
898
|
4961
|
899 <P><B>NOTA</B>: non usare nessun framebuffer se intendi usare questi driver ! Usalo
|
4867
|
900 solo da una console in modalità testo.</P>
|
|
901
|
|
902 <P>
|
|
903 <b>Conclusioni:</b> So che ci sono molte cose che mancano e molti bug. Quindi se sei in grado di migliorare
|
|
904 qualcosa mandami semplicemente le tue patch.
|
|
905 </P>
|
|
906
|
|
907
|
|
908 <P><B><A NAME=2.3.1.15>2.3.1.15. VIDIX</A></B></P>
|
|
909
|
|
910 <P><B><I>COS'E' IL VIDIX</I></B></P>
|
|
911
|
|
912 <P>VIDIX è l'acronimo di <b>VID</b>eo <b>I</b>nterface for
|
|
913 *ni<b>X</b> (Interfaccia Video per *nix, ndt).<BR>
|
|
914 VIDIX è stato studiato e implementato come un'interfaccia per veloci driver in spazio utente
|
4961
|
915 che forniscono <b>DGA</b> ovunque è possibile (<b>a differenza di X11</b>).
|
|
916 Spero che questi driver saranno portabili come X11 (<b>non solo su
|
4867
|
917 *nix</b>).<BR>
|
|
918 Cos'è:
|
|
919 <LI>E' un successore portabile della tecnologia mga_vid, ma è localizzato in spazio
|
|
920 utente.</LI>
|
|
921 <LI>A differenza di X11 fornisce DGA ovunque è possibile</LI>
|
|
922 <LI>A differenza di v4l fornisce un'interfaccia per la riproduzione video</LI>
|
|
923 <LI>A differenza dei driver linux usa librerie matematiche</LI>
|
|
924 </P>
|
|
925
|
|
926 <P>Posso dirtelo in lettere maiuscole e grassetto :<BR>
|
|
927 <b>VIDIX FORNISCE ACCESSO DIRETTO ALLA GRAFICA ALLA MEMORIA YUV BES.</b>
|
|
928 </P>
|
|
929
|
|
930 <P><i>Bene (è tra le cose che devo fare) - implementare un decoder da DGA a MPEG2.</i></P>
|
|
931
|
|
932 <P>Questa interfaccia è stata studiata come un tentativo di far rientrare le esistenti interfacce
|
|
933 di accelerazione video (conosciute come mga_vid, mga_yuv, radeon_vid) in uno schema fisso. Fornisce
|
|
934 un'interfaccia di alto livello ai chip conosciuti come BES (BackEnd
|
|
935 scaler) o OV (Video Overlay). Non fornisce un'interfaccia di basso livello
|
|
936 a cose conosciute come server grafici. (Non voglio competere con il team di X11
|
|
937 nel cambiamento di modalità grafica). Cioè, l'obbiettivo principale di questa interfaccia
|
|
938 è di fornire la massima velocità di riproduzione video ma non di mettere il segnale video sullo
|
|
939 schermo della tua TV o sul nastro del tuo videoregistratore. Sebbene anche queste cose siano
|
|
940 molto importanti - è esattamente un altro compito. (Comunque penso che sarebbe possibile
|
|
941 implementare qualcosa come un mini-X (non confondetelo con Minix ;) in
|
|
942 futuro, se si troverà un certo numero di volontari.
|
|
943 </P>
|
|
944
|
|
945 <P><B><I>UTILIZZO</I></B></P>
|
|
946
|
|
947 <P>
|
|
948 <LI>Puoi usare il driver di output video da solo: <CODE>-vo xvidix</CODE><BR>
|
|
949 Questo driver è stato sviluppato come una interfaccia di X11 per la tecnologia VIDIX.
|
|
950 necessita di un server X e può funzionare solo sotto un server X.</LI>
|
|
951 <LI>Si può usare il sottodispositivo VIDIX che è stato applicato a molti driver di output video,
|
|
952 come:<BR>
|
|
953 <CODE>-vo vesa:vidix</CODE> e <CODE>-vo fbdev:vidix</CODE></LI>
|
|
954 Infatti non importa quale driver di output video si usa con <b>VIDIX</b>.
|
|
955 </P>
|
|
956
|
|
957 <P><B><I>REQUISITI</I></B></P>
|
|
958
|
|
959 <P>
|
|
960 <LI>La scheda video dovrebbe essere in modalità grafica (ho scritto <b>dovrebbe</b> semplicemente
|
|
961 perchè l'ho provato in modalità testo - funziona, ma da un terribile output ;) Usa
|
|
962 AAlib per quello).<BR>
|
|
963 <I>Nota: chiunque può provare questo trucco commentando il cambiamento di modalità nel driver
|
|
964 vo_vesa.</I></LI>
|
|
965 <LI>Il driver di output video di <B>MPlayer</B> dovrebbe conoscere la modalità video attiva ed essere in grado di
|
|
966 dire al sottodispositivo VIDIX alcune caratteristiche video del server.</LI>
|
4961
|
967 Credo che tutti i driver di output video di <B>MPlayer</B> riconoscano
|
4867
|
968 il sottodispositivo <CODE>:vidix</CODE>.
|
|
969 </P>
|
|
970
|
|
971 <P><B><I>METODI DI UTILIZZO</I></B></P>
|
|
972
|
|
973 <P>Quando VIDIX è usato come <b>sottodispositivo</b> (<CODE>-vo vesa:vidix</CODE>) allora
|
|
974 la configurazione della modalità video è fatta dal dispositivo di output video
|
|
975 (<b>vo_server</b> in breve). Quindi puoi passare alla linea di comando di
|
|
976 <B>MPlayer</B> le stesse opzioni di vo_server. In aggiunta interpreta l'opzione
|
|
977 <CODE>-double</CODE> come un parametro globalmente visibile. (Consiglio di usare
|
|
978 questa opzione con VIDIX almeno per le schede ATI).<BR>
|
|
979 Come per <CODE>-vo xvidix</CODE> : attualmente riconosce le seguenti
|
|
980 opzioni: <CODE>-fs -zoom -x -y -double</CODE>.<BR>
|
|
981 </P>
|
|
982
|
|
983 <P>Puoi anche specificare il driver VIDIX direttamente come terzo sotto argomento alla linea di
|
|
984 comando :<BR>
|
|
985 <BR>
|
|
986 <code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
|
|
987 file.avi</code><BR>
|
|
988 o<BR>
|
|
989 <code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp
|
|
990 32 file.avi</code><BR>
|
|
991 <BR>
|
|
992 Ma è pericoloso, e non dovresti farlo. In questo caso il driver dato sarà
|
|
993 forzato e il risultato è imprevedibile (potrebbe <b>bloccare</b> il tuo
|
|
994 computer). Dovresti farlo SOLO se sei assolutamente sicuro che funzionerà,
|
|
995 e <B>MPlayer</B> non lo fa automaticamente. Per favore dillo agli
|
|
996 sviluppatori. Il Modo Giusto è usare VIDIX senza argomenti per abilitare il riconoscimento automatico del
|
|
997 driver.
|
|
998 </P>
|
|
999
|
|
1000 <P>
|
|
1001 VIDIX è una tecnologia molto nuova ed è molto probabile che sul tuo sistema
|
|
1002 (OS=abc CPU=xyz) non funzioni. In questo caso la sola soluzione per te è di eseguire
|
|
1003 un port (principalmente libdha). Ma c'è la speranza che funzioni su quei sistemi dove funziona
|
|
1004 X11.
|
|
1005 </P>
|
|
1006
|
|
1007 <P>E l'ultimo <b>AVVERTIMENTO</b>: (s)fortunatamente <b>DEVI</b> avere i permessi di
|
|
1008 <b>ROOT</b> per usare VIDIX a causa dell'accesso diretto all'hardware. Al limite
|
|
1009 dai il bit <b>suid</b> all'eseguibile <B>MPlayer</B>.
|
|
1010 </P>
|
|
1011
|
|
1012 <P><B><I>EQUALIZZATORE VIDEO</I></B></P>
|
|
1013
|
|
1014 <P>
|
|
1015 Questo è un equalizzatore video implementato specificatamente per Vidix. Puoi usarlo
|
|
1016 sia coi tasti <B>1-8</B> come descritto nelle pagine di man, o
|
|
1017 con argomenti dalla linea di comando. <B>MPlayer</B> riconosce le seguenti
|
|
1018 opzioni :
|
|
1019 </P>
|
|
1020
|
|
1021 <P>
|
|
1022 <CODE>-brightness</CODE> - regola la <B>LUMINOSITÀ</B> dell'output
|
|
1023 video. Non è come la regolazione della luminosità sul pannello del monitor o della TV. Cambia
|
|
1024 l'intensità dei componenti RGB del segnale video da schermo nero a
|
|
1025 bianco.<BR>
|
|
1026 <CODE>-contrast</CODE> - regola il <B>CONTRASTO</B> dell'output video.
|
|
1027 Funziona in maniera simile alla lumunosità.<BR>
|
|
1028 <CODE>-saturation</CODE> - regola la <B>SATURAZIONE</B> dell'output video.
|
|
1029 Puoi ottenere un output in scala di grigi con questa opzione.<BR>
|
|
1030 <CODE>-hue</CODE> - regola l' <B>HUE</B> del segnale video. Puoi ottenere
|
|
1031 il negativo a colori dell'immagine con questa opzione.<BR>
|
|
1032 <CODE>-red_intensity</CODE> - regola l'intensità della componente <B>ROSSO</B>
|
|
1033 del segnale video.<BR>
|
|
1034 <CODE>-green_intensity</CODE> - regola l'intensità della componente <B>VERDE</B>
|
|
1035 del segnale video.<BR>
|
|
1036 <CODE>-blue_intensity</CODE> - regola l'intensità della componente <B>BLU</B>
|
|
1037 del segnale video.
|
|
1038 </P>
|
|
1039 <P>
|
|
1040 Ogni parametro accetta valori da <B>-1000</B> a <B>+1000</B>.<BR>
|
|
1041 Il valore predefinito per ogni parametro è <B>0</B>.
|
|
1042 </P>
|
|
1043 <P>
|
4961
|
1044 <B>Nota:</B> Non tutti i driver supportano ognuno di questi parametri.
|
4867
|
1045 Attualmente solo <B>radeon_vid.so</B> fornisce il pieno supporto per l'equalizzazione video.
|
|
1046 Altri driver supportano solo parzialmente queste opzioni.
|
|
1047 </P>
|
|
1048 <P><B>Esempi:</B><BR>
|
|
1049 <CODE>mplayer -vo vesa:vidix -brightness -300 -contrast 200
|
|
1050 nomefile.avi</CODE><BR>
|
|
1051 o<BR>
|
|
1052 <CODE>mplayer -vo xvidix -red_intensity -50 -saturation 400 -hue 300
|
|
1053 nomefile.vob</CODE>
|
|
1054 </P>
|
|
1055
|
|
1056
|
|
1057 <P><B><A NAME=2.3.1.16>2.3.1.16. Zr</A></B></P>
|
|
1058
|
|
1059 <P>Questo è un driver per la visualizzazione (<CODE>-vo zr</CODE>) per un certo numero di schede MJPEG
|
|
1060 di cattura/riproduzione (testato per DC10+ e Buz, e dovrebbe funzionare per
|
|
1061 LML33, DC10). Il driver funziona codificando il frame in jpeg e mandandolo poi
|
|
1062 alla scheda. Per la codifica jpeg è usato <B>libavcodec</B>,
|
|
1063 ed è quindi necessario.</P>
|
|
1064
|
4961
|
1065 <P>Questo driver dialoga col driver del kernel disponibile a
|
4867
|
1066 <A HREF="http://mjpeg.sourceforge.net">http://mjpeg.sourceforge.net</A>, quindi
|
|
1067 devi far funzionare questo prima. Poi ricompila <B>MPlayer</B> con
|
|
1068 <CODE>--enable-zr</CODE>.</P>
|
|
1069
|
|
1070 <P>Alcune osservazioni:
|
|
1071 <UL>
|
|
1072 <LI>non iniziare o fermare XawTV sul dispositivo di riproduzione durante la stessa,
|
4961
|
1073 bloccherà il tuo computer. Va comunque bene far partire <B>PRIMA</B>
|
4867
|
1074 XawTV, e <B>POI</B> <B>MPlayer</B>, aspettare che <B>MPlayer</B> finisca e
|
|
1075 <B>POI</B> fermare XawTV.</LI>
|
|
1076 <LI>questo driver aggiunge le opzioni <CODE>-zr*</CODE> alla linea di comando. La spiegazione di
|
|
1077 queste opzioni può essere visualizzata con <CODE>-zrhelp</CODE>. E' possibile tagliare
|
|
1078 il frame di input (tagliare i bordi per adattarlo o migliorare le prestazioni)
|
|
1079 e fare altre cose.</LI>
|
4961
|
1080 <LI>Il driver prende i dati nei formati YV12 e YUY2. Questo significa che alcuni
|
4867
|
1081 codec non funzioneranno. Alcuni vecchi codec VfW (Video for Windows), per esempio,
|
|
1082 non sono compatibili con questo driver. Il messaggio d'errore che vedrai è:
|
|
1083 <CODE>Sorry, selected video_out device is incompatible with this codec.
|
|
1084 </CODE></LI>
|
|
1085 <LI>OSD non è attualmente supportato, quindi non vedrai i
|
|
1086 sottotitoli.</LI>
|
|
1087 </UL>
|
|
1088 </P>
|
|
1089
|
|
1090
|
|
1091
|
|
1092 <P><B><A NAME=2.3.1.A>2.3.1.A. Supporto TV-out</A></B></P>
|
|
1093
|
|
1094 <P><B><A NAME=2.3.1.A.1>2.3.1.A.1. Schede Matrox</A></B></P>
|
|
1095
|
|
1096 <P>Sotto Linux hai due modi per far funzionare l'output TV :</P>
|
|
1097
|
|
1098 <P>
|
|
1099 <UL>
|
|
1100 <LI><B>XFree86</B>: usando il driver e il modulo HAL, disponibile al
|
|
1101 <A HREF="http://www.matrox.com">sito della Matrox</A>. Questo ti darà X sulla
|
|
1102 TV.<BR> <B>Questo metodo non da una riproduzione accelerata</B> come
|
|
1103 sotto Windoze! Il secondo connettore ha solo il framebuffer YUV, il <I>BES</I>
|
|
1104 (Back End Scaler, il ridimensionatore YUV sulle schede G200/G400/G450/G550) non funziona
|
4961
|
1105 su questo! Il driver per windows in qualche modo aggira questo problema, probabilmente usando il motore
|
4867
|
1106 3D per zoomare, e il framebuffer YUV per visualizzare l'immagine zoomata.
|
|
1107 Se vuoi veramente usare X, usa le opzioni <CODE>-vo x11 -fs -zoom</CODE>,
|
|
1108 ma sarà <B>LENTO</B>, e ha la protezione da copia <B>Macrovision</B>
|
|
1109 abilitata (puoi "aggirare" Macrovision usando
|
|
1110 <A HREF="http://avifile.sourceforge.net/mgamacro.pl">questo</A> script perl.
|
|
1111 </LI>
|
|
1112 <LI><B>Framebuffer</B>: usando i <B>moduli matroxfb</B> dei kernel 2.4.
|
|
1113 I kernel 2.2 non hanno la possibilità di usare il TVout, quindi sono inutili per questo.
|
|
1114 Devi abilitare TUTTE le voci relative al matroxfb durante la compilazione (eccetto il
|
|
1115 MultiHead), e compilarle come <B>moduli</B>!
|
|
1116 <UL>
|
|
1117 <LI>
|
|
1118 Entra in <CODE>TVout/matroxset</CODE> e fai <CODE>make</CODE>. Installa
|
|
1119 <CODE>matroxset</CODE> da qualche parte nel tuo PATH.</LI>
|
|
1120 <LI>
|
|
1121 Se non hai <CODE>fbset</CODE> installato, entra in
|
|
1122 <CODE>TVout/fbset</CODE> e fai <CODE>make</CODE>. Installa
|
|
1123 <CODE>fbset</CODE> da qualche parte nel tuo PATH.</LI>
|
|
1124 <LI>
|
|
1125 Poi entra nella directory <CODE>TVout/</CODE> dei sorgenti di <B>MPlayer</B>,
|
|
1126 ed esegui <CODE>./modules</CODE> da root. La tua console in modalità testo
|
|
1127 entrerà in modalità framebuffer (non si può tornare indietro!).</LI>
|
|
1128 <LI>Quindi, esegui lo script <CODE>./matroxtv</CODE>. Questo ti presenterà un
|
|
1129 menu molto semplice. Premi <B>2</B> e <B>ENTER</B>. Ora dovresti avere la stessa immagine
|
|
1130 sul monitor e sulla TV. L'opzione <B>3.</B>
|
|
1131 cambierà al display indipendente, ma a quel punto <B>non puoi usare X</B>! Se
|
|
1132 l'immagine della TV (PAL !) ha delle strane strisce, lo script non è stato in grado di
|
|
1133 settare correttamente la risoluzione (a 640x512 di default). Usa altre voci del menu
|
|
1134 a caso e andrà a posto :)</LI>
|
|
1135 </UL>
|
|
1136
|
|
1137 <P>
|
|
1138 Yoh. Il prossimo compito è quello di far scomparire il cursore su tty1 (o quello che è),
|
|
1139 e disattivare lo spegnimento dello schermo. Esegui i seguenti comandi:</P>
|
|
1140
|
|
1141 <P>
|
|
1142 <CODE>echo -e '\033[?25l'</CODE> o <CODE>setterm -cursor off<BR>
|
|
1143 setterm -blank 0</CODE>
|
|
1144 </P>
|
|
1145
|
|
1146 <P>
|
|
1147 Probabilmente vorrai metterli in uno script, e anche pulire lo
|
|
1148 schermo.. Per riavere il cursore :<BR><CODE>echo -e '\033[?25h'</CODE>
|
|
1149 o <CODE>setterm -cursor on</CODE>
|
|
1150 </P>
|
|
1151
|
|
1152 <P>Inizia la riproduzione del filmato con <CODE>mplayer -vo mga -fs -screenw 640
|
|
1153 -screenh 512 <nomefile></CODE><BR>
|
|
1154 (se usi X, ora cambia a matroxfb con per esempio CTRL-ALT-F1 !)<BR>
|
|
1155 Cambia 640x512 se hai impostato la risoluzione diversamente..<BR>
|
|
1156 <B>Goditi l' ultra-veloce output TV Matrox (meglio di Xv) !</B>
|
|
1157 </P>
|
|
1158 </LI>
|
|
1159 </LI>
|
|
1160 </UL>
|
|
1161 </P>
|
|
1162
|
|
1163
|
|
1164 <P><B><A NAME=2.3.1.A.2>2.3.1.A.2. Schede ATI</A></B></P>
|
|
1165
|
|
1166 <P>
|
|
1167 <b>Poche parole sul TV-out di ATI:</b><BR>
|
|
1168 Attualmente ATI non vuole supportare nessuno dei suoi chip TV-out sotto Linux.
|
|
1169 Sotto c'è la risposta ufficiale di ATI Inc.:
|
|
1170
|
|
1171 <P>
|
|
1172 <code>
|
|
1173 <i>
|
|
1174 <br>> Ciao!
|
|
1175 <br>>
|
|
1176 <br>> Sulle vostre pagine scrivete che supportate gli sviluppatori linux.
|
|
1177 <br>> Attualmente partecipo al progetto mplayer (www.mplayerhq.hu)
|
|
1178 <br>> Sono interessato ad abilitare il TV-out su chip Radeon VE durante
|
|
1179 <br>> la riproduzione di filmati. Sarebbe bello aggiungere questa caratteristica al driver radeonfb
|
|
1180 <br>> (che si trova nell'albero CVS del progetto mplayer in main/drivers/radeon).
|
|
1181 <br>> Ho la possibilità di avere della documentazione tecnica ufficiale?
|
|
1182 </i>
|
|
1183 <br>Non possiamo fornire documentazione relativa al TV out a causa della presenza di macrovision.
|
|
1184 <br>Anche il decoding mpeg2 è qualcosa che POTREMMO considerare nel futuro ma non
|
|
1185 <br>al momento. Questo è dovuto ancora a informazioni proprietarie e di terze
|
|
1186 <br>parti.
|
|
1187 </code>
|
|
1188 </P>
|
|
1189
|
|
1190 <P>Peccato vero?</P>
|
|
1191
|
|
1192 <P>
|
|
1193 <code>
|
|
1194 <B>D:Cos'è Macrovision?</B><BR>
|
|
1195 R:E' un meccanismo di protezione dalla copia.</code>
|
|
1196 </P>
|
|
1197
|
|
1198 <P>Significa che se loro rilasciano qualunque informazione relativa al TV-out allora gli
|
|
1199 hacker saranno in grado di disabilitare la protezione dalla copia sui loro chip. Quindi
|
|
1200 non abbiamo possibilità di far funzionare il TV-out sulle ATI.</P>
|
|
1201
|
|
1202 <P>Qual'è lo stato dei chip tv-out ATI sotto Linux:
|
|
1203 <LI><b>ATI Mach64</b> ha <i>ImpacTV</i> che è supportato da <A HREF="http://gatos.sf.net">gatos</A>.
|
|
1204 <LI><b>ASIC Radeon VIVO</b> ha <i>Rage Theatre</i> che è supportato da <A HREF="http://gatos.sf.net">gatos</A>.
|
|
1205 <LI><b>Radeon VE</b> e <b>Rage PRO LT</b> hanno <i>ImpacTV2+</i> che non è supportato sotto Linux.
|
|
1206 Ma con <B>MPlayer</B> ottieni <B>piena accelerazione hardware</B> e <B>TV out</B>
|
|
1207 per le Radeon !
|
|
1208 Guarda le sezioni <a href=#2.3.1.12>driver VESA</a> e <A HREF=#2.3.1.14>accelerazione Radeon
|
|
1209 </A>.</P>
|
|
1210
|
|
1211 <P>
|
|
1212 Fortunatamente, i possessori di CPU abbastanza potenti (Duron, Celeron2 e migliori) <b>possono vedere
|
|
1213 i film sulla TV</b> attraverso i <a href=#2.3.1.12>driver VESA</a>.
|
|
1214 </P>
|
|
1215
|
|
1216 <P>
|
|
1217 Dovrei dire anche delle buone parole a ATI Inc. :<br>
|
|
1218 <b>producono dei BIOS della migliore qualità.</b>
|
|
1219 </P>
|
|
1220
|
|
1221 <P>
|
|
1222 I <b>driver VESA</b> non usano nessuna accelerazione hardware ma simulano
|
|
1223 <b>DGA</b> con una finestra di 64K, che è configurata con le funzioni a 32-bit
|
4961
|
1224 del BIOS. Le schede ATI hanno una <b>memoria video</b> abbastanza veloce (chip DIMM o DDR
|
4867
|
1225 con accesso a 64 - 128-bit) quindi non è un collo di bottiglia per loro. Non ci sono limitazioni
|
|
1226 per la scelta della modalità video da mostrare sulla TV (come in altre
|
|
1227 schede) quindi puoi usare <b>qualunque modalità video</b> sulla tua <b>TV</b> (da
|
|
1228 <b>320x200</b> fino a <b>1024x768</b>).<br>
|
|
1229 D'altra parte (si sa con certezza almeno per le <b>Radeon</b>) c'è una modalità <b>DGA</b>
|
|
1230 che è riconosciuta automaticamente e in questo caso otterrai una velocità paragonabile a quella
|
|
1231 dei driver <b>-vo dga</b> e <b>-vo fbdev</b>.<br>
|
|
1232 L'unica cosa che devi fare - <b>connettere la TV prima di avviare il tuo
|
|
1233 PC</b> in quanto il BIOS video si inizializza una sola volta durante la procedura di POST.
|
|
1234 </P>
|
|
1235
|
|
1236 <P>
|
|
1237 Per dettagli vedi le sezioni <a href="video.html#2.3.1.12">VESA</a> di questa
|
|
1238 documentazione.
|
|
1239 </P>
|
|
1240
|
|
1241
|
|
1242 <P><B><A NAME=2.3.1.A.3>2.3.1.A.3. Voodoo 3</A></B></P>
|
|
1243
|
|
1244 <P>
|
|
1245 Guarda a <A HREF="http://www.iki.fi/too/tvout-voodoo3-3000-xfree">questa URL</A>.
|
|
1246 </P>
|
|
1247
|
|
1248 </BODY>
|
|
1249 </HTML>
|