11721
|
1 <?xml version="1.0" encoding="utf-8"?>
|
|
2 <!-- synced with 1.43 -->
|
|
3 <sect2 id="video-dev">
|
|
4 <title>Urządzenia wyjścia video</title>
|
|
5
|
|
6 <sect3 id="mtrr">
|
|
7 <title>Ustawianie MTRR</title>
|
|
8
|
|
9 <para>
|
|
10 Jest WYSOCE wskazane, aby sprawdzić, czy rejestry MTRR są ustawione prawidłowo,
|
|
11 ponieważ mogą dać duży wzrost wydajności.
|
|
12 </para>
|
|
13
|
|
14 <para>
|
|
15 Wykonaj <command>cat /proc/mtrr</command>:
|
|
16 <screen>
|
|
17 <prompt>--($:~)--</prompt> cat /proc/mtrr
|
|
18 reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9
|
|
19 reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1<!--
|
|
20 --></screen>
|
|
21 </para>
|
|
22
|
|
23 <para>
|
|
24 Widać mojego Matroksa G400 z 16MB pamięci. Wydałem tę komendę z XFree 4.x.x,
|
|
25 które ustawiają MTRR automatycznie
|
|
26 </para>
|
|
27
|
|
28 <para>
|
|
29 Jeżeli nie zadziałało, trzeba to ustawić ręcznie.
|
|
30 Przede wszystkim, musisz znaleźć adres bazowy. Możesz to zrobić na 3 sposoby:
|
|
31
|
|
32 <orderedlist>
|
|
33 <listitem><para>
|
|
34 z komunikatów startowych X11, na przykład:
|
|
35 <screen>
|
|
36 (--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000
|
|
37 (--) SVGA: Linear framebuffer at 0xD8000000<!--
|
|
38 --></screen>
|
|
39 </para></listitem>
|
|
40 <listitem><para>
|
|
41 z <filename>/proc/pci</filename> (użyj polecenia <command>lspci -v</command>
|
|
42 ):
|
|
43 <screen>
|
|
44 01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525
|
|
45 Memory at d8000000 (32-bit, prefetchable)
|
|
46 </screen>
|
|
47 </para></listitem>
|
|
48 <listitem><para>
|
|
49 z komunikatów sterownika mga_vid w jądrze (użyj <command>dmesg</command>):
|
|
50 <screen>mga_mem_base = d8000000</screen>
|
|
51 </para></listitem>
|
|
52 </orderedlist>
|
|
53 </para>
|
|
54
|
|
55 <para>
|
|
56 Znajdźmy teraz rozmiar pamięci. Jest to bardzo łatwe, po prostu zamień
|
|
57 rozmiar RAMu na karcie graficznej na system szestnastkowy, lub użyj
|
|
58 tej tabelki:
|
|
59 <informaltable frame="none">
|
|
60 <tgroup cols="2">
|
|
61 <tbody>
|
|
62 <row><entry>1 MB</entry><entry>0x100000</entry></row>
|
|
63 <row><entry>2 MB</entry><entry>0x200000</entry></row>
|
|
64 <row><entry>4 MB</entry><entry>0x400000</entry></row>
|
|
65 <row><entry>8 MB</entry><entry>0x800000</entry></row>
|
|
66 <row><entry>16 MB</entry><entry>0x1000000</entry></row>
|
|
67 <row><entry>32 MB</entry><entry>0x2000000</entry></row>
|
|
68 </tbody>
|
|
69 </tgroup>
|
|
70 </informaltable>
|
|
71 </para>
|
|
72
|
|
73 <para>
|
|
74 Znasz już adres bazowy i rozmiar pamięci. Ustawmy więc rejestry MTRR!
|
|
75 Na przykład dla powyższej karty Matrox (<literal>base=0xd8000000</literal>)
|
|
76 z 32MB RAMu (<literal>size=0x2000000</literal>) po prostu wykonaj:
|
|
77 <screen>
|
|
78 echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr</screen>
|
|
79 </para>
|
|
80
|
|
81 <para>
|
|
82 Nie wszystkie procesory obsługują MTRR. Na przykład starsze K6-2
|
|
83 (jakieś 266MHz, stepping 0) nie obsługują MTRR, ale już stepping 12 tak.
|
|
84 (<command>cat /proc/cpuinfo </command> aby sprawdzić).
|
|
85 </para>
|
|
86 </sect3>
|
|
87
|
|
88 <sect3 id="output-trad">
|
|
89 <title>Wyjścia video dla tradycyjnych kart graficznych</title>
|
|
90 <sect4 id="xv">
|
|
91 <title>Xv</title>
|
|
92
|
|
93 <para>
|
|
94 W XFree86 4.0.2 lub nowszym możesz używać sprzętowego YUV poprzez
|
|
95 rozszerzenie XVideo. To tego używa opcja <option>-vo xv</option>.
|
|
96 Ten sterownik obsługuje także regulację jasności/kontrastu/nasycenia/itp.
|
|
97 (chyba, że używasz starego, powolnego kodeka DirectShow DivX,
|
|
98 który to obsługuje wszędzie). Spójrz na stronę man.
|
|
99 </para>
|
|
100
|
|
101 <para>
|
|
102 Aby to zadziałało upewnij się, że:
|
|
103
|
|
104 <orderedlist>
|
|
105 <listitem><para>
|
|
106 Masz XFree86 4.0.2 lub nowsze (starsze nie mają XVideo)
|
|
107 </para></listitem>
|
|
108 <listitem><para>
|
|
109 Twoja karta obsługuje przyśpieszanie sprzętowe (współczesne karty to mają)
|
|
110 </para></listitem>
|
|
111 <listitem><para>
|
|
112 X ładuje rozszerzenie XVideo, zwykle wygląda to tak:
|
|
113 <programlisting>(II) Loading extension XVideo</programlisting>
|
|
114 w logu <filename>/var/log/XFree86.0.log</filename>
|
|
115 <note><para>
|
|
116 To ładuje tylko rozszerzenie XFree86. W dobrej instalacji
|
|
117 jest to zawsze włączone i nie oznacza to że obsługa XVideo w
|
|
118 <emphasis role="bold">karcie</emphasis> jest załadowana.
|
|
119 </para></note>
|
|
120 </para></listitem>
|
|
121 <listitem><para>
|
|
122 Twoja karta obsługuje Xv pod Linuksem. Aby sprawdzić, spróbuj
|
|
123 <command>xvinfo</command>, wchodzące w skład dystrybucji XFree86.
|
|
124 Powinno wyświetlić długi tekst podobny do tego:
|
|
125 <screen>
|
|
126 X-Video Extension version 2.2
|
|
127 screen #0
|
|
128 Adaptor #0: "Savage Streams Engine"
|
|
129 number of ports: 1
|
|
130 port base: 43
|
|
131 operations supported: PutImage
|
|
132 supported visuals:
|
|
133 depth 16, visualID 0x22
|
|
134 depth 16, visualID 0x23
|
|
135 number of attributes: 5
|
|
136 (...)
|
|
137 Number of image formats: 7
|
|
138 id: 0x32595559 (YUY2)
|
|
139 guid: 59555932-0000-0010-8000-00aa00389b71
|
|
140 bits per pixel: 16
|
|
141 number of planes: 1
|
|
142 type: YUV (packed)
|
|
143 id: 0x32315659 (YV12)
|
|
144 guid: 59563132-0000-0010-8000-00aa00389b71
|
|
145 bits per pixel: 12
|
|
146 number of planes: 3
|
|
147 type: YUV (planar)
|
|
148 (...etc...)<!--
|
|
149 --></screen>
|
|
150 Karta musi obsługiwać formaty "YUY2 packed" i "YV12 planar",
|
|
151 aby mogła być używana z <application>MPlayerem</application>.
|
|
152 </para></listitem>
|
|
153 <listitem><para>
|
|
154 I na koniec sprawdź, czy <application>MPlayer</application>
|
|
155 został skompilowany z obsługą Xv. wykonaj <command>mplayer -vo help | grep xv </command>,
|
|
156 jeżeli została zbudowana obsługa Xv to powinna się pojawić podobna linia:
|
|
157 <screen>
|
|
158 xv X11/Xv<!--
|
|
159 --></screen>
|
|
160 </para></listitem>
|
|
161 </orderedlist>
|
|
162 </para>
|
|
163
|
|
164 <sect5 id="tdfx">
|
|
165 <title>Karty 3dfx</title>
|
|
166
|
|
167 <para>
|
|
168 Starsze sterowniki 3dfx znane były z tego, że miały problemy z akceleracją XVideo.
|
|
169 Nie obsługiwały ani YUY2, ani YV12. Sprawdź czy masz XFree86 w wersji 4.2.0
|
|
170 lub nowszej. Działają one dobrze z YV12 i YUY2. Poprzednie wersje z 4.1.0
|
|
171 włącznie <emphasis role="bold">wywalały się na YV12</emphasis>.
|
|
172 Jeżeli napotkasz na dziwne działanie używając <option>-vo xv</option>,
|
|
173 spróbuj SDL (także ma XVideo) i zobacz, czy to pomaga.
|
|
174 Dokładniejsze instrukcje są w sekcji <link linkend="sdl">SDL</link>.
|
|
175 </para>
|
|
176
|
|
177 <para>
|
|
178 <emphasis role="bold">LUB</emphasis>, spróbuj NOWEGO sterownika <option>-vo tdfxfb</option>! Zajrzyj do sekcji <link linkend="tdfxfb">tdfxfb</link>
|
|
179 </para>
|
|
180 </sect5>
|
|
181
|
|
182 <sect5 id="s3">
|
|
183 <title>Karty S3</title>
|
|
184
|
|
185 <para>
|
|
186 S3 Savage3D powinny działać. Jeżeli masz Savage4 używaj XFree86 4.0.3 lub nowszego
|
|
187 (gdyby występowały problemy z obrazem, spróbuj ustawić głębię kolorów na 16bpp).
|
|
188 Jeżeli chodzi o S3 Virge: obsługuje ona Xv, ale jest bardzo wolna,
|
|
189 więc najlepiej ją sprzedaj.
|
|
190 </para>
|
|
191
|
|
192 <note>
|
|
193 <para>
|
|
194 Obecnie niejasne jest, które modele kart Savage nie mają sprzętowej obsługi YV12 i
|
|
195 robią to programowo (co jest wolne). Jeżeli podejrzewasz o to swoją kartę,
|
|
196 zdobądź nowsze sterowniki, lub grzecznie poproś o sterownik z obsługą MMX/3DNow
|
|
197 na grupie dyskusyjnej mplayer-users
|
|
198 </para>
|
|
199 </note>
|
|
200 </sect5>
|
|
201
|
|
202
|
|
203 <sect5 id="nvidia">
|
|
204 <title>Karty nVidia</title>
|
|
205
|
|
206 <para>
|
|
207 nVidia nie zawsze jest dobrym wyborem dla Linuksa (wg nVidii to
|
|
208 <link linkend="nvidia-opinions">nieprawda</link>)...
|
|
209 Sterownik XFree86 o otwartych źródłach obsługuje większość tych kart, lecz
|
|
210 w niektórych wypadkach
|
|
211 będziesz zmuszony używać binarnych sterowników o zamkniętych źródłach
|
|
212 (do pobrania ze <ulink url="http://www.nvidia.com/object/linux.html">strony nVidii</ulink>).
|
|
213 Jeżeli chcesz uzyskać przyspieszenie 3D to zawsze będziesz potrzebować tych sterowników.
|
|
214 </para>
|
|
215
|
|
216 <para>
|
|
217 karty Riva 128 nie obsługują XVideo nawet ze sterownikami nVidii :(
|
|
218 Zażalenia składaj do nVidii.
|
|
219
|
|
220 </para>
|
|
221
|
|
222 <para>
|
|
223 Jednakże <application>MPlayer</application> zawiera sterownik <link linkend="vidix">VIDIX</link>
|
|
224 obsługujący większość kart nVidia.
|
|
225 Obecnie znajduje się w stadium beta i ma pewne ograniczenia.
|
|
226 Więcej informacji znajdziesz w sekcji <link linkend="vidix-nvidia">nVidia</link>.
|
|
227 </para>
|
|
228 </sect5>
|
|
229
|
|
230
|
|
231 <sect5 id="ati">
|
|
232 <title>Karty ATI</title>
|
|
233
|
|
234 <para>
|
|
235 <ulink url="http://www.linuxvideo.org/gatos">Sterowniki GATOS</ulink>
|
|
236 (których powinieneś używać, chyba że masz Rage128 lub Radeon)
|
|
237 mają standardowo włączone VSYNC. Znaczy to, że szybkość dekodowania (!)
|
|
238 jest zsynchronizowana z (pionową) częstotliwością odświeżania obrazu.
|
|
239 Jeżeli odtwarzanie wydaje Ci się powolne,
|
|
240 spróbuj w jakiś sposób wyłączyć VSYNC,
|
|
241 lub ustaw częstotliwość odświeżania na n*(fps filmu) Hz.
|
|
242 </para>
|
|
243
|
|
244 <para>
|
|
245 Radeon VE - jeżeli potrzebujesz X, używaj XFree86 4.2.0 lub nowszego.
|
|
246 Brak obsługi wyjścia TV.
|
|
247 Oczywiście w <application>MPlayerze</application> możesz uzyskać
|
|
248 <emphasis role="bold">przyśpieszane</emphasis> wyświetlanie,
|
|
249 z lub bez <emphasis role="bold">wyjścia TV</emphasis>.
|
|
250 Żadne biblioteki czy X nie są do tego potrzebne.
|
|
251 Poczytaj sekcję o <link linkend="vidix">VIDIX</link>.
|
|
252 </para>
|
|
253 </sect5>
|
|
254
|
|
255
|
|
256 <sect5 id="neomagic">
|
|
257 <title>Karty NeoMagic</title>
|
|
258
|
|
259 <para>
|
|
260 Te karty można znaleźć w wielu laptopach.
|
|
261 Musisz używać XFree86 4.3.0 lub nowszych, lub sterowników Stefana Seyfried'a
|
|
262 <ulink url="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/">
|
|
263 obsługujących Xv</ulink>.
|
|
264 Po prostu wybierz ten, który pasuje do Twojej wersji XFree86.
|
|
265 </para>
|
|
266
|
|
267 <para>
|
|
268 XFree86 4.3.0 zawierają obsługę Xv, lecz Bohdan Horst wysłał małą
|
|
269 <ulink url="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neo_driver.patch">łatkę</ulink>
|
|
270 na źródła XFree86, która przyśpiesza operacje na buforze ramki (framebuffer)
|
|
271 nawet czterokrotnie. Ta łatka została uwzględniona w XFree86 CVS
|
|
272 i powinna znaleźć się w następnej wersji po 4.3.0
|
|
273 </para>
|
|
274
|
|
275 <para>
|
|
276 Aby umożliwić odtwarzanie zawartości o rozmiarach DVD zmodyfikuj
|
|
277 swój XF86Config w następujący sposób:
|
|
278 <programlisting>
|
|
279 Section "Device"
|
|
280 [...]
|
|
281 Driver "neomagic"
|
|
282 <emphasis>Option "OverlayMem" "829440"</emphasis>
|
|
283 [...]
|
|
284 EndSection<!--
|
|
285 --></programlisting>
|
|
286 </para>
|
|
287 </sect5>
|
|
288
|
|
289
|
|
290 <sect5 id="trident">
|
|
291 <title>Karty Trident</title>
|
|
292 <para>
|
|
293 Jeżeli chcesz używać Xv z kartą trident (zakładając, że nie działa z 4.1.0),
|
|
294 zainstaluj XFree 4.2.0. 4.2.0 obsługuje pełnoekranowe Xv
|
|
295 w karcie Cyberblade XP.
|
|
296 </para>
|
|
297
|
|
298 <para>
|
|
299 Alternatywą jest sterownik <link linkend="vidix">VIDIX</link> dla
|
|
300 karty Cyberblade/i1.
|
|
301 </para>
|
|
302
|
|
303
|
|
304 </sect5>
|
|
305
|
|
306
|
|
307 <sect5 id="kyro">
|
|
308 <title>Karty Kyro/PowerVR</title>
|
|
309 <para>
|
|
310 Jeżeli chcesz używać Xv z kartą opartą na Kyro
|
|
311 (na przykład Hercules Prophet 4000XT), powinieneś ściągnąć sterowniki ze
|
|
312 <ulink url="http://www.powervr.com/">strony PowerVR</ulink>
|
|
313 </para>
|
|
314 </sect5>
|
|
315 </sect4>
|
|
316
|
|
317 <!-- ********** -->
|
|
318
|
|
319 <sect4 id="dga">
|
|
320 <title>DGA</title>
|
|
321
|
|
322 <formalpara>
|
|
323 <title>WSTĘP</title>
|
|
324 <para>
|
|
325 Celem tego dokumentu jest wyjaśnienie w kilku słowach, czym ogólnie jest DGA
|
|
326 i co może zrobić sterownik do <application>MPlayera</application>
|
|
327 (i czego nie może).
|
|
328 </para>
|
|
329 </formalpara>
|
|
330
|
|
331 <formalpara>
|
|
332 <title>CO TO JEST DGA</title>
|
|
333 <para>
|
|
334 <acronym>DGA</acronym> to skrót od <emphasis>Direct Graphics Access
|
|
335 (Bezpośredni Dostęp do Grafiki)</emphasis> i jest środkiem dla programu
|
|
336 na ominięcie X serwera i bezpośrednią modyfikację pamięci bufora ramki
|
|
337 (framebuffer). Technicznie mówiąc, działa to w ten sposób,
|
|
338 że pamięć bufora ramki mapowana jest na zakres pamięci Twojego procesu.
|
|
339 Jest to dozwolone tylko i wyłącznie gdy masz prawa administratora (superuser).
|
|
340 Możesz je uzyskać logując się jako
|
|
341 <systemitem class="username">root</systemitem> lub ustawiając bit SUID
|
|
342 na pliku wykonywalnym <application>MPlayera</application>
|
|
343 (<emphasis role="bold">nie zalecane</emphasis>).
|
|
344 </para>
|
|
345 </formalpara>
|
|
346 <para>
|
|
347 Istnieją dwie wersje DGA: DGA1 używane przez XFree 3.x.x i DGA2,
|
|
348 które pojawiło się w XFree 4.0.1.
|
|
349 </para>
|
|
350
|
|
351 <para>
|
|
352 DGA1 zapewnia jedynie bezpośredni dostęp do bufora ramki,
|
|
353 w sposób opisany powyżej.
|
|
354 Aby zmienić rozdzielczość sygnału video będziesz musiał polegać na
|
|
355 rozszerzeniu XVidMode.
|
|
356 </para>
|
|
357
|
|
358 <para>
|
|
359 DGA2 łączy cechy rozszerzenia XVidMode z możliwością zmiany głębi wyświetlania,
|
|
360 więc możesz mając uruchomiony X serwer w 32 bitowej głębi przełączać się na
|
|
361 15 bitów i vice versa.
|
|
362 </para>
|
|
363
|
|
364 <para>
|
|
365 Jednakże DGA ma pewne wady. Jest poniekąd zależne od układu graficznego
|
|
366 jakiego używasz, a także od implementacji sterownika video (w X serwerze)
|
|
367 sterującego układem. Nie działa to więc na każdym systemie...
|
|
368 </para>
|
|
369
|
|
370 <formalpara>
|
|
371 <title>INSTALOWANIE OBSŁUGI DGA W MPLAYERze</title>
|
|
372
|
|
373 <para>
|
|
374 Przede wszystkim upewnij się, że X ładuje rozszerzenie DGA. Spójrz na
|
|
375 <filename>/var/log/XFree86.0.log</filename>:
|
|
376
|
|
377 <programlisting>(II) Loading extension XFree86-DGA</programlisting>
|
|
378
|
|
379 XFree86 4.0.x lub nowsze jest <emphasis role="bold">wysoce wskazane</emphasis>!
|
|
380 Sterownik DGA <application>MPlayera</application> jest wykrywany automatycznie
|
|
381 przez <filename>./configure</filename>. Możesz także wymusić jego obsługę
|
|
382 poprzez <option>--enable-dga</option>.
|
|
383 </para>
|
|
384 </formalpara>
|
|
385
|
|
386 <para>
|
|
387 Jeżeli sterownik nie mógł przełączyć się na niższą rozdzielczość,
|
|
388 poeksperymentuj z opcjami <option>-vm</option> (tylko w X 3.3.x),
|
|
389 <option>-fs</option>, <option>-bpp</option>, <option>-zoom</option>
|
|
390 aby znaleźć tryb wyświetlania, który odpowiada filmowi.
|
|
391 Na razie nie ma żadnego konwertera :(
|
|
392 </para>
|
|
393
|
|
394 <para>
|
|
395 Stań się użytkownikiem <systemitem class="username">root</systemitem>.
|
|
396 DGA wymaga praw roota, aby móc zapisywać bezpośrednio do pamięci video.
|
|
397 Jeżeli chcesz posługiwać się DGA jako zwykły użytkownik, zainstaluj
|
|
398 <application>MPlayera</application> w trybie SUID root:
|
|
399
|
|
400 <screen>
|
|
401 chown root <replaceable>/usr/local/bin/mplayer</replaceable>
|
|
402 chmod 750 <replaceable>/usr/local/bin/mplayer</replaceable>
|
|
403 chmod +s <replaceable>/usr/local/bin/mplayer</replaceable>
|
|
404 </screen>
|
|
405 Teraz DGA działa także dla zwykłego użytkownika.
|
|
406 </para>
|
|
407
|
|
408 <caution>
|
|
409 <title>Zagrożenie Bezpieczeństwa</title>
|
|
410 <para>
|
|
411 To jest <emphasis role="bold">poważne</emphasis> zagrożenie bezpieczeństwa!
|
|
412 <emphasis role="bold">Nigdy</emphasis>
|
|
413 nie rób tego na serwerze, ani na komputerze dostępnym dla innych osób,
|
|
414 ponieważ mogą one zdobyć prawa roota poprzez SUID root
|
|
415 <application>MPlayer</application>.
|
|
416 </para>
|
|
417 </caution>
|
|
418
|
|
419 <para>
|
|
420 Teraz użyj opcji <option>-vo dga</option> i już! (mam nadzieję:)
|
|
421 Powinieneś także spróbować czy działa u Ciebie opcja <option>-vo sdl:dga</option>!
|
|
422 Jest wiele szybsza!
|
|
423 </para>
|
|
424
|
|
425
|
|
426 <formalpara id="dga-modelines">
|
|
427 <title>ZMIANA ROZDZIELCZOŚCI</title>
|
|
428
|
|
429 <para>
|
|
430 Sterownik DGA zezwala na zmianę rozdzielczości sygnału wyjściowego.
|
|
431 Eliminuje to potrzebę (wolnego) programowego skalowania i
|
|
432 równocześnie zapewnia wyświetlanie pełnoekranowe.
|
|
433 W warunkach idealnych rozdzielczość zostałaby zmieniona na dokładnie taką samą
|
|
434 (z zachowaniem formatu obrazu) jak dane video,
|
|
435 ale X serwer pozwala stosować tylko tryby predefiniowane w
|
|
436 <filename>/etc/X11/XF86Config</filename>
|
|
437 (<filename>/etc/X11/XF86Config-4</filename> dla XFree 4.X.X).
|
|
438 Są one definiowane przez tak zwane "modelines" (linie trybów) i zależą od możliwości
|
|
439 Twojego sprzętu.
|
|
440 X serwer skanuje przy starcie ten plik konfiguracyjny
|
|
441 i wyłącza tryby nie pasujące do Twojego sprzętu. Aby się dowiedzieć,
|
|
442 które tryby przetrwały ten proces sprawdź:
|
|
443 <filename>/var/log/XFree86.0.log</filename>.
|
|
444 </para>
|
|
445 </formalpara>
|
|
446
|
|
447 <para>
|
|
448 Te wpisy działają z układem Riva128, przy użyciu modułu sterownika nv.o
|
|
449 (moduł X serwera):
|
|
450 </para>
|
|
451
|
|
452
|
|
453 <para><programlisting>
|
|
454 Section "Modes"
|
|
455 Identifier "Modes[0]"
|
|
456 Modeline "800x600" 40 800 840 968 1056 600 601 605 628
|
|
457 Modeline "712x600" 35.0 712 740 850 900 400 410 412 425
|
|
458 Modeline "640x480" 25.175 640 664 760 800 480 491 493 525
|
|
459 Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan
|
|
460 Modeline "352x288" 25.10 352 368 416 432 288 296 290 310
|
|
461 Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan
|
|
462 Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan
|
|
463 EndSection
|
|
464 </programlisting></para>
|
|
465
|
|
466
|
|
467 <formalpara>
|
|
468 <title>DGA i MPLAYER</title>
|
|
469 <para>
|
|
470 DGA jest używane w dwóch miejscach w <application>MPlayerze</application>:
|
|
471 może go używać sterownik SDL (<option>-vo sdl:dga</option>)
|
|
472 oraz bezpośrednio przez sterownik DGA (<option>-vo dga</option>).
|
|
473 To co zostało napisane powyżej jest prawdziwe dla obu;
|
|
474 w następnych sekcjach wyjaśnię jak działa sterownik DGA dla
|
|
475 <application>MPlayera</application>.
|
|
476 </para>
|
|
477 </formalpara>
|
|
478
|
|
479
|
|
480 <formalpara>
|
|
481 <title>WŁASNOŚCI</title>
|
|
482
|
|
483 <para>
|
|
484 Sterownik DGA wywoływany jest poprzez podanie <option>-vo dga</option>
|
|
485 w linii poleceń.
|
|
486 Standardowym zachowaniem jest zmiana rozdzielczości na jak najbardziej
|
|
487 pasującą do obrazu.
|
|
488 Ignorowane są opcje <option>-vm</option> i <option>-fs</option>
|
|
489 (zmiana trybu wyświetlania oraz wyświetlanie pełnoekranowe).
|
|
490 Sterownik zawsze próbuje pokryć jak największą powierzchnię ekranu poprzez
|
|
491 zmianę trybu wyświetlania, dzięki temu oszczędza jeden cykl procesora,
|
|
492 który byłby wykorzystany na skalowanie obrazu.
|
|
493 Jeżeli nie podoba Ci się dobrany tryb, możesz sam go określić,
|
|
494 korzystając z opcji <option>-x</option> oraz <option>-y</option>.
|
|
495 Jeżeli podasz opcję <option>-v</option>,
|
|
496 sterownik DGA wyświetli między innymi listę wszystkich obsługiwanych
|
|
497 w tej chwili trybów, dostępnych w Twoim pliku konfiguracyjnym
|
|
498 <filename>XF86Config</filename>.
|
|
499 Mając DGA2 możesz zmusić je także do wyświetlania obrazu w określonej głębi,
|
|
500 używając opcji <option>-bpp</option>.
|
|
501 Prawidłowymi głębiami są 15, 16, 34 i 32.
|
|
502 Od Twojego sprzętu zależy czy są one obsługiwane natywnie czy też dokonywana
|
|
503 jest konwersja (możliwe, że powolna).
|
|
504
|
|
505 </para>
|
|
506 </formalpara>
|
|
507 <para>
|
|
508 Jeżeli jesteś takim szczęśliwcem, że masz wystarczająco dużo pamięci poza-ekranowej
|
|
509 (offscreen memory) aby zmieścił się tam cały obraz,
|
|
510 sterownik DGA użyje podwójnego buforowania (doublebuffering).
|
|
511 Efektem będzie płynniejsze odtwarzanie filmu.
|
|
512 Sterownik poinformuje Cię czy podwójne buforowanie jest włączone czy nie.
|
|
513 </para>
|
|
514
|
|
515 <para>
|
|
516 Podwójne buforowanie oznacza, że następna ramka Twojego filmu jest rysowana
|
|
517 w pamięci poza-ekranowej w czasie gdy obecna ramka jest wyświetlana.
|
|
518 Gdy następna ramka będzie gotowa, układ graficzny zostanie poinformowany
|
|
519 o lokalizacji nowej ramki w pamięci i po prostu sięgnie tam po dane
|
|
520 aby je wyświetlić.
|
|
521 W międzyczasie poprzedni bufor w pamięci zostanie ponownie wypełniony
|
|
522 kolejnymi danymi video.
|
|
523 </para>
|
|
524
|
|
525 <para>
|
|
526 Podwójne buforowanie może być włączane opcją
|
|
527 <option>-double</option> oraz może być wyłączane opcją
|
|
528 <option>-nodouble</option>.
|
|
529 Obecnie standardowym zachowaniem jest wyłączone podwójne buforowanie.
|
|
530 Jeśli używasz sterownika DGA wyświetlanie OSD
|
|
531 (On Screen Display - wyświetlanie na ekranie)
|
|
532 działa wyłącznie z włączonym podwójnym buforowaniem.
|
|
533 Jednakże włączenie podwójnego buforowania może zaowocować dużym spadkiem
|
|
534 szybkości (na moim K6-II+ 525 jest używane dodatkowe 20% czasu procesora!)
|
|
535 w zależności od implementacji DGA dla Twojego sprzętu.
|
|
536 </para>
|
|
537
|
|
538
|
|
539 <formalpara>
|
|
540 <title>SPRAWA SZYBKOŚCI</title>
|
|
541
|
|
542 <para>
|
|
543 Ogólnie rzecz biorąc dostęp do bufora ramki poprzez DGA powinien być
|
|
544 przynajmniej tak szybki jak podczas używania sterownika X11,
|
|
545 z dodatkową korzyścią uzyskania pełnoekranowego obrazu.
|
|
546 Procentowe wartości szybkości wyświetlane przez
|
|
547 <application>MPlayera</application> należy ostrożnie interpretować.
|
|
548 Na przykład przy korzystaniu ze sterownika X11 nie jest uwzględniany czas
|
|
549 potrzebny dla X serwera na rysowanie.
|
|
550 Podłącz terminal do portu szeregowego swojego komputera i uruchom
|
|
551 <command>top</command> aby zobaczyć co się na prawdę dzieje w Twoim komputerze.
|
|
552 </para>
|
|
553 </formalpara>
|
|
554
|
|
555 <para>
|
|
556 Generalnie przyśpieszenie przy używaniu DGA w stosunku do "normalnego"
|
|
557 używania X11 bardzo zależy od Twojej karty graficznej i od tego jak dobrze
|
|
558 zoptymalizowany jest moduł do X serwera.
|
|
559 </para>
|
|
560
|
|
561 <para>
|
|
562 Jeżeli masz wolny system, lepiej używaj 15 lub 16 bitowej
|
|
563 głębi kolorów ponieważ wymaga ona tylko połowy przepustowości pamięci
|
|
564 w porównaniu do głębi 32 bitowej.
|
|
565 </para>
|
|
566
|
|
567 <para>
|
|
568 Używanie 24 bitowej głębi jest dobrym pomysłem jeżeli
|
|
569 Twoja karta natywnie obsługuje tylko 32 bitową głębię, ponieważ 24 bitowa głębia
|
|
570 przesyła 25% mniej danych w porównaniu do w pełni 32 bitowego trybu.
|
|
571 </para>
|
|
572
|
|
573 <para>
|
|
574 Widziałem pewne pliki AVI odtwarzane na Pentium MMX 266.
|
|
575 Na AMD K6-2 powinno działać od 400MHz.
|
|
576 </para>
|
|
577
|
|
578
|
|
579 <formalpara>
|
|
580 <title>ZNANE BŁĘDY</title>
|
|
581
|
|
582 <para>
|
|
583 Według niektórych deweloperów XFree DGA jest niezłą bestią.
|
|
584 Mówią oni, że lepiej go nie używać, ponieważ jego implementacja nie zawsze
|
|
585 jest bezbłędna dla każdego sterownika XFree.
|
|
586 </para>
|
|
587 </formalpara>
|
|
588
|
|
589 <itemizedlist>
|
|
590 <listitem><simpara>
|
|
591 Istnieje błąd związany z XFree 4.0.3 i sterownikiem <filename>nv.o</filename>
|
|
592 objawiający się dziwnymi kolorami
|
|
593 </simpara></listitem>
|
|
594 <listitem><simpara>
|
|
595 Sterowniki ATI wymagają wielokrotnego przełączania trybu po użyciu DGA.
|
|
596 </simpara></listitem>
|
|
597 <listitem><simpara>
|
|
598 Niektóre sterowniki po prostu nie wracają do normalnej rozdzielczości(użyj
|
|
599 <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>Keypad +</keycap> oraz
|
|
600 <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>Keypad -</keycap>
|
|
601 aby przełączać się ręcznie).
|
|
602 </simpara></listitem>
|
|
603 <listitem><simpara>
|
|
604 Niektóre sterowniki wyświetlają dziwne kolory.
|
|
605 </simpara></listitem>
|
|
606 <listitem><simpara>
|
|
607 Niektóre sterowniki kłamią na temat rozmiaru pamięci,
|
|
608 którą mapują na przestrzeń adresową procesu.
|
|
609 Poprzez to vo_dga nie będzie używać podwójnego buforowania (SIS?).
|
|
610 </simpara></listitem>
|
|
611 <listitem><simpara>
|
|
612 Niektóre sterowniki nie zwracają żadnego poprawnego trybu.
|
|
613 W tym wypadku sterownik DGA się wywali mówiąc Ci o bezsensownym
|
|
614 trybie 100000x100000 (lub podobnym).
|
|
615 </simpara></listitem>
|
|
616 <listitem><simpara>
|
|
617 OSD działa tylko z włączonym podwójnym buforowaniem (w przeciwnym razie migocze).
|
|
618 </simpara></listitem>
|
|
619 </itemizedlist>
|
|
620
|
|
621 </sect4>
|
|
622 <!--</sect3>-->
|
|
623
|
|
624 <!-- ********** -->
|
|
625
|
|
626 <sect4 id="sdl">
|
|
627 <title>SDL</title>
|
|
628
|
|
629 <para>
|
|
630 <acronym>SDL</acronym> (Simple Directmedia Layer) jest w gruncie rzeczy
|
|
631 zunifikowanym interfejsem video/audio.
|
|
632 Programy, które go używają wiedzą tylko o SDL,
|
|
633 a nie o sterownikach audio lub video, których używa SDL.
|
|
634 Na przykład port Doom'a używający SDL może działać korzystając z
|
|
635 svgalib, aalib, X, fbdev i innych, musisz tylko określić (na przykład)
|
|
636 sterownik video, którego chcesz użyć.
|
|
637 Wybór następuje poprzez zmienną środowiskową <envar>SDL_VIDEODRIVER</envar>.
|
|
638 No, teoretycznie.
|
|
639 </para>
|
|
640
|
|
641 <para>
|
|
642 W <application>MPlayerze</application> używaliśmy programowego skalowania
|
|
643 sterownika SDL dla X11, dla kart/sterowników, które nie obsługują XVideo,
|
|
644 dopóki nie zrobiliśmy własnego (szybszego, lepszego) programowego skalowania.
|
|
645 Używaliśmy także jego wyjścia aalib, ale teraz mamy własny sterownik,
|
|
646 który jest wygodniejszy. Jego tryb DGA był lepszy od naszego... aż do niedawna.
|
|
647 Rozumiesz już? :)
|
|
648 </para>
|
|
649
|
|
650 <para>
|
|
651 Pomaga także z niektórymi wadliwymi sterownikami/kartami w przypadku gdy
|
|
652 odtwarzanie kuleje (nie z powodu wolnego systemu), lub gdy dźwięk jest opóźniony.
|
|
653 </para>
|
|
654
|
|
655 <para>
|
|
656 Wyjście video SDL obsługuje wyświetlanie napisów pod filmem, na czarnym pasku
|
|
657 (jeżeli obecny).
|
|
658 </para>
|
|
659
|
|
660 <variablelist>
|
|
661 <title>Istnieje wiele opcji wiersza poleceń dla SDL</title>
|
|
662 <varlistentry>
|
|
663 <term><option>-vo sdl:<replaceable>nazwa</replaceable></option></term>
|
|
664 <listitem><simpara>
|
|
665 określa sterownik video którego ma użyć SDL (np. <literal>aalib</literal>,
|
|
666 <literal>dga</literal>, <literal>x11</literal>)
|
|
667 </simpara></listitem>
|
|
668 </varlistentry>
|
|
669 <varlistentry>
|
|
670 <term><option>-ao sdl:<replaceable>nazwa</replaceable></option></term>
|
|
671 <listitem><simpara>
|
|
672 określa sterownik audio którego ma użyć SDL (np. <literal>dsp</literal>,
|
|
673 <literal>esd</literal>, <literal>arts</literal>)
|
|
674 </simpara></listitem>
|
|
675 </varlistentry>
|
|
676 <varlistentry>
|
|
677 <term><option>-noxv</option></term>
|
|
678 <listitem><simpara>
|
|
679 wyłącza sprzętowe przyśpieszanie XVideo
|
|
680 </simpara></listitem>
|
|
681 </varlistentry>
|
|
682 <varlistentry>
|
|
683 <term><option>-forcexv</option></term>
|
|
684 <listitem><simpara>
|
|
685 próbuje wymusić przyśpieszanie XVideo
|
|
686 </simpara></listitem>
|
|
687 </varlistentry>
|
|
688 </variablelist>
|
|
689
|
|
690 <table>
|
|
691 <title>Klawiszologia tylko dla SDL</title>
|
|
692 <tgroup cols="2">
|
|
693 <thead>
|
|
694 <row><entry>Klawisz</entry><entry>Akcja</entry></row>
|
|
695 </thead>
|
|
696 <tbody>
|
|
697 <row><entry><keycap>c</keycap></entry><entry>
|
|
698 poruszanie się pomiędzy dostępnymi trybami pełnoekranowymi
|
|
699 </entry></row>
|
|
700 <row><entry><keycap>n</keycap></entry><entry>
|
|
701 powraca do normalnego trybu
|
|
702 </entry></row>
|
|
703 </tbody>
|
|
704 </tgroup>
|
|
705 </table>
|
|
706
|
|
707 <itemizedlist>
|
|
708 <title>Znane błędy:</title>
|
|
709 <listitem><simpara>
|
|
710 Klawisze wciśnięte pod konsolowym sterownikiem sdl:aalib są powtarzane
|
|
711 w nieskończoność. (użyj <option>-vo aa</option>!).
|
|
712 To jest błąd w SDL. Nie mam na to wpływu (testowane z SDL 1.2.1).
|
|
713 </simpara></listitem>
|
|
714 <listitem><simpara>
|
|
715 NIE UŻYWAJ SDL z GUI (Graficznym Interfejsem Użytkownika)!
|
|
716 Nie będzie to działało tak jak powinno.
|
|
717 </simpara></listitem>
|
|
718 </itemizedlist>
|
|
719 </sect4>
|
|
720
|
|
721
|
|
722 <sect4 id="svgalib">
|
|
723 <title>SVGAlib</title>
|
|
724
|
|
725 <formalpara>
|
|
726 <title>INSTALACJA</title>
|
|
727 <para>
|
|
728 Będziesz musiał zainstalować pakiety svgalib i svgalib-devel, aby
|
|
729 <application>MPlayer</application> zbudował swój własny sterownik
|
|
730 SVGAlib (automatycznie wykrywane, lecz można wymusić).
|
|
731 Nie zapomnij przerobić <filename>/etc/vga/libvga.config</filename>, tak aby
|
|
732 svgalib współdziałało z Twoją kartą i monitorem.
|
|
733 </para>
|
|
734 </formalpara>
|
|
735
|
|
736 <note>
|
|
737 <para>
|
|
738 Nie używaj opcji <option>-fs</option> ponieważ włącza ona
|
|
739 skalowanie programowe, które jest powolne. Jeżeli naprawdę tego potrzebujesz,
|
|
740 używaj opcji <option>-sws 4</option>,
|
|
741 która produkuje obraz złej jakości, ale jest poniekąd szybsza.
|
|
742 </para>
|
|
743 </note>
|
|
744
|
|
745 <formalpara><title>OBSŁUGA EGA (4BPP)</title>
|
|
746 <para>
|
|
747 SVGAlib zawiera EGAlib i <application>MPlayer</application>
|
|
748 może wyświetlać każdy film w 16 kolorach.
|
|
749 Używalne jest to w następujących zestawieniach:
|
|
750 </para>
|
|
751 </formalpara>
|
|
752
|
|
753 <itemizedlist>
|
|
754 <listitem><simpara>
|
|
755 karta EGA z monitorem EGA: 320x200x4bpp, 640x200x4bpp, 640x350x4bpp
|
|
756 </simpara></listitem>
|
|
757 <listitem><simpara>
|
|
758 karta EGA z monitorem CGA: 320x200x4bpp, 640x200x4bpp
|
|
759 </simpara></listitem>
|
|
760 </itemizedlist>
|
|
761
|
|
762 <para>
|
|
763 bpp (bity na piksel) musi być ustawione na 4 ręcznie: <option>-bpp 4</option>
|
|
764 </para>
|
|
765
|
|
766 <para>
|
|
767 Film prawdopodobnie musi być przeskalowany tak, aby pasował do trybu EGA:
|
|
768 <screen>-vf scale=640:350</screen>
|
|
769 lub
|
|
770 <screen>-vf scale=320:200</screen>
|
|
771 </para>
|
|
772
|
|
773 <para>
|
|
774 Aby to osiągnąć potrzebujemy sięgnąć po szybką, lecz złej jakości metodę skalowania:
|
|
775 <screen>-sws 4</screen>
|
|
776 </para>
|
|
777
|
|
778 <para>
|
|
779 Możliwe, że trzeba wyłączyć automatyczną korekcję proporcji obrazu:
|
|
780 <screen>-noaspect</screen>
|
|
781 </para>
|
|
782
|
|
783 <note><para>
|
|
784 Z praktyki wiem, że najlepszą jakość obrazu na ekranach EGA można
|
|
785 osiągnąć poprzez lekkie zmniejszenie jasności:
|
|
786 <option>-vf eq=-20:0</option>. Musiałem także zmniejszyć częstotliwość
|
|
787 próbkowania, ponieważ dźwięk 44kHz był popsuty: <option>-srate 22050</option>.
|
|
788 </para></note>
|
|
789
|
|
790 <para>
|
|
791 OSD i napisy możesz wyłączyć tylko przy pomocy filtru
|
|
792 <option>expand</option>. Dokładne parametry znajdziesz na stronie man.
|
|
793 </para>
|
|
794 </sect4>
|
|
795
|
|
796
|
|
797 <sect4 id="fbdev">
|
|
798 <title>Wyjście bufora ramki (FBdev)</title>
|
|
799
|
|
800 <para>
|
|
801 <filename>./configure</filename> automatycznie wykrywa, czy zbudować
|
|
802 wyjście FBdev. Więcej informacji znajdziesz w dokumentacji bufora
|
|
803 ramki w źródłach jądra (<filename>Documentation/fb/*</filename>).
|
|
804 </para>
|
|
805
|
|
806 <para>
|
|
807 Jeżeli Twoja karta nie obsługuje standardu VBE 2.0 (starsze karty ISA/PCI,
|
|
808 takie jak S3 Trio64), lecz VBE 1.2 (lub starsze?): cóż, pozostaje VESAfb,
|
|
809 ale będziesz musiał załadować SciTech Display Doctor
|
|
810 (dawniej UniVBE) przed zabootowaniem Linuksa.
|
|
811 Użyj dyskietki startowej DOS lub czegoś innego.
|
|
812 Nie zapomnij zarejestrować swojej kopii UniVBE ;))
|
|
813 </para>
|
|
814
|
|
815 <para>
|
|
816 Wyjście FBdev przyjmuje kilka dodatkowych parametrów:
|
|
817 </para>
|
|
818
|
|
819 <variablelist>
|
|
820 <varlistentry>
|
|
821 <term><option>-fb</option></term>
|
|
822 <listitem><simpara>
|
|
823 Określa urządzanie bufora ramki, którego użyć (<filename>/dev/fb0</filename>)
|
|
824 </simpara></listitem>
|
|
825 </varlistentry>
|
|
826 <varlistentry>
|
|
827 <term><option>-fbmode</option></term>
|
|
828 <listitem><simpara>
|
|
829 Nazwa trybu do użycia (zgodnie z <filename>/etc/fb.modes</filename>)
|
|
830 </simpara></listitem>
|
|
831 </varlistentry>
|
|
832 <varlistentry>
|
|
833 <term><option>-fbmodeconfig</option></term>
|
|
834 <listitem><simpara>
|
|
835 Plik konfiguracyjny trybów (standardowo <filename>/etc/fb.modes</filename>)
|
|
836 </simpara></listitem>
|
|
837 </varlistentry>
|
|
838 <varlistentry>
|
|
839 <term><option>-monitor-hfreq</option></term>
|
|
840 <term><option>-monitor-vfreq</option></term>
|
|
841 <term><option>-monitor-dotclock</option></term>
|
|
842 <listitem><simpara>
|
|
843 <emphasis role="bold">ważne</emphasis> wartości, patrz
|
|
844 <filename>example.conf</filename>
|
|
845 </simpara></listitem>
|
|
846 </varlistentry>
|
|
847 </variablelist>
|
|
848
|
|
849 <para>
|
|
850 Jeżeli chcesz się przełączyć na określony tryb, użyj
|
|
851 <screen>
|
|
852 mplayer -vm -fbmode <replaceable>nazwa_trybu</replaceable> <replaceable>nazwa_pliku</replaceable>
|
|
853 </screen>
|
|
854 </para>
|
|
855
|
|
856 <itemizedlist>
|
|
857 <listitem><para>
|
|
858 Samo <option>-vm</option> wybierze najbardziej odpowiedni tryb z
|
|
859 <filename>/etc/fb.modes</filename>. Można użyć także wraz z opcjami
|
|
860 <option>-x</option> oraz <option>-y</option>. Opcja
|
|
861 <option>-flip</option> jest obsługiwana wyłącznie gdy format
|
|
862 (pixel format) filmu pasuje do formatu (pixel format) obrazu.
|
|
863 Zwróć uwagę na wartość bpp. Sterownik fbdev próbuje użyć bieżącej wartości,
|
|
864 chyba że użyjesz opcji <option>-bpp</option>.
|
|
865 </para></listitem>
|
|
866 <listitem><para>
|
|
867 Opcja <option>-zoom</option> nie jest obsługiwana (użyj <option>-vf scale</option>).
|
|
868 Nie możesz używać trybów 8bpp (lub mniej).
|
|
869 </para></listitem>
|
|
870 <listitem><para>
|
|
871 Możliwe, że chcesz wyłączyć kursor:
|
|
872 <screen>echo -e '\033[?25l'</screen>
|
|
873 lub
|
|
874 <screen>setterm -cursor off</screen>
|
|
875 oraz wygaszacz ekranu:
|
|
876 <screen>setterm -blank 0</screen>
|
|
877 Aby z powrotem włączyć kursor:
|
|
878 <screen>echo -e '\033[?25h'</screen>
|
|
879 lub
|
|
880 <screen>setterm -cursor on</screen>
|
|
881 </para></listitem>
|
|
882 </itemizedlist>
|
|
883
|
|
884 <note>
|
|
885 <para>
|
|
886 Zmiana trybów FBdev <emphasis>nie działa</emphasis> z buforem ramki VESA,
|
|
887 i nie proś o to, ponieważ nie jest to ograniczenie w
|
|
888 <application>MPlayerze</application>.
|
|
889 </para>
|
|
890 </note>
|
|
891 </sect4>
|
|
892
|
|
893
|
|
894 <sect4 id="mga_vid">
|
|
895 <title>Bufor ramki Matrox (mga_vid)</title>
|
|
896
|
|
897 <para>
|
|
898 Ta sekcja traktuje o obsłudze układu BES (Back-End Scaler) na kartach
|
|
899 Matrox G200/G400/G450/G550 przez sterowniku mga_vid w jądrze.
|
|
900 Jest on aktywnie rozwijany przez A'rpiego i
|
|
901 ma sprzętowy VSYNC z potrójnym buforowaniem.
|
|
902 Działa na konsoli framebuffer oraz w X.
|
|
903 </para>
|
|
904
|
|
905 <warning>
|
|
906 <para>
|
|
907 Tylko dla Linuksa! Na systemach nie-Linuksowych (testowane na FreeBSD) używaj
|
|
908 <link linkend="vidix">VIDIX</link> zamiast tego!
|
|
909 </para>
|
|
910 </warning>
|
|
911
|
|
912 <procedure>
|
|
913 <title>Instalacja</title>
|
|
914 <step><para>
|
|
915 Przed użyciem musisz skompilować <filename>mga_vid.o</filename>:
|
|
916 <screen>
|
|
917 cd drivers
|
|
918 make<!--
|
|
919 --></screen>
|
|
920 </para></step>
|
|
921 <step><para>
|
|
922 Następnie stwórz urządzenie (device) <filename>/dev/mga_vid</filename>:
|
|
923 <screen>mknod /dev/mga_vid c 178 0</screen>
|
|
924 oraz załaduj sterownik poprzez:
|
|
925 <screen>insmod mga_vid.o</screen>
|
|
926 </para></step>
|
|
927 <step><para>
|
|
928 Powinieneś sprawdzić rozmiar wykrywanej pamięci używając polecenia
|
|
929 <command>dmesg</command>.
|
|
930 Jeżeli zwracana wartość jest zła użyj opcji:
|
|
931 <option>mga_ram_size</option>
|
|
932 (najpierw <command>rmmod mga_vid</command>),
|
|
933 określ rozmiar pamięci na karcie (w MB):
|
|
934 <screen>insmod mga_vid.o mga_ram_size=16</screen>
|
|
935 </para></step>
|
|
936 <step><para>
|
|
937 Aby moduł był ładowany/usuwany automatycznie w razie potrzeby:
|
|
938 najpierw wstaw następującą linię na końcu
|
|
939 <filename>/etc/modules.conf</filename>:
|
|
940
|
|
941 <programlisting>alias char-major-178 mga_vid</programlisting>
|
|
942
|
|
943 Następnie skopiuj moduł <filename>mga_vid.o</filename>
|
|
944 we właściwe miejsce w <filename>/lib/modules/<replaceable>wersja jądra</replaceable>/<replaceable>gdzieś</replaceable></filename>.
|
|
945 </para><para>
|
|
946 Po czym uruchom
|
|
947 <screen>depmod -a</screen>
|
|
948 </para></step>
|
|
949 <step><para>
|
|
950 Teraz musisz (ponownie) skompilować <application>MPlayera</application>,
|
|
951 <filename>./configure</filename> wykryje
|
|
952 <filename>/dev/mga_vid</filename> i zbuduje sterownik "mga".
|
|
953 Używanie go w <application>MPlayerze</application> uzyskuje się poprzez <option>-vo mga</option>
|
|
954 jeżeli masz konsolę matroxfb, lub <option>-vo xmga</option> pod XFree86 3.x.x lub 4.x.x.
|
|
955 </para></step>
|
|
956 </procedure>
|
|
957
|
|
958 <para>
|
|
959 Sterownik mga_vid współpracuje z Xv.
|
|
960 </para>
|
|
961
|
|
962 <para>
|
|
963 Plik urządzenia (device file) <filename>/dev/mga_vid</filename>
|
|
964 może być odczytywany aby uzyskać pewne informacje,
|
|
965 na przykład poprzez <screen>cat /dev/mga_vid</screen>
|
|
966 i może być modyfikowany w celu zmiany jasności:
|
|
967 <screen>echo "brightness=120" > /dev/mga_vid</screen>
|
|
968 </para>
|
|
969 </sect4>
|
|
970
|
|
971
|
|
972 <sect4 id="tdfxfb" xreflabel="3Dfx YUV support (tdfxfb)">
|
|
973 <title>Obsługa 3dfx YUV</title>
|
|
974 <para>
|
|
975 Ten sterownik używa bufora ramki tdfx w jądrze aby odtwarzać filmy
|
|
976 z przyśpieszeniem YUV. Będziesz potrzebował jądra z obsługą tdfxfb.
|
|
977 Będziesz także musiał odpowiednio skompilować <application>MPlayera</application>.
|
|
978 <screen>./configure --enable-tdfxfb</screen>
|
|
979 </para>
|
|
980 </sect4>
|
|
981
|
|
982
|
|
983 <sect4 id="opengl">
|
|
984 <title>Wyjście OpenGL</title>
|
|
985
|
|
986 <para>
|
|
987 <application>MPlayer</application> obsługuje wyświetlanie filmów używając OpenGL,
|
|
988 lecz jeśli Twoja platforma/sterownik obsługuje Xv,
|
|
989 jak powinno być w przypadku PeCetów z Linuksem, używaj Xv.
|
|
990 Wydajność OpenGL jest znacząco mniejsza.
|
|
991 Jeżeli masz implementację X11 bez obsługi Xv, OpenGL jest poważną alternatywą.
|
|
992 </para>
|
|
993
|
|
994 <para>
|
|
995 Niestety nie wszystkie sterowniki to obsługują.
|
|
996 Sterowniki Utah-GLX (dla XFree86 3.3.6) obsługują to w każdej karcie.
|
|
997 Szczegóły odnośnie instalacji dostępne są na stronie
|
|
998 <ulink url="http://utah-glx.sourceforge.net"/>.
|
|
999 </para>
|
|
1000
|
|
1001 <para>
|
|
1002 XFree86(DRI) 4.0.3 i nowsze obsługują OpenGL w kartach Matrox i Radeon,
|
|
1003 4.2.0 i nowsze obsługują Rage128. Na <ulink url="http://dri.sourceforge.net"/>
|
|
1004 znajdziesz instrukcję ściągania (download) i instalacji.
|
|
1005 </para>
|
|
1006
|
|
1007 <para>
|
|
1008 Podpowiedź od jednego z naszych użytkowników: wyjście video GL może
|
|
1009 być użyte aby uzyskać wyjście TV z vsync. Będziesz musiał ustawić
|
|
1010 zmienną środowiskową (przynajmniej dla nVidia):
|
|
1011 </para>
|
|
1012
|
|
1013 <para>
|
|
1014 <command>export $__GL_SYNC_TO_VBLANK=1</command>
|
|
1015 </para>
|
|
1016
|
|
1017 </sect4>
|
|
1018
|
|
1019
|
|
1020 <sect4 id="aalib">
|
|
1021 <title>AAlib - wyświetlanie w trybie tekstowym</title>
|
|
1022
|
|
1023 <para>
|
|
1024 AAlib jest biblioteką do wyświetlania grafiki w trybie tekstowym,
|
|
1025 używając potężnego silnika renderującego ASCII. Istnieje <emphasis>wiele</emphasis>
|
|
1026 programów już ją obsługujących, takich jak Doom, Quake, etc.
|
|
1027 <application>MPlayer</application> zawiera świetnie działający sterownik.
|
|
1028 Jeżeli <filename>./configure</filename> wykryje zainstalowane aalib,
|
|
1029 zostanie zbudowany sterownik aalib libvo.
|
|
1030 </para>
|
|
1031
|
|
1032 <para>
|
|
1033 Możesz używać pewnych klawiszy w oknie AA aby zmienić opcje renderowania:
|
|
1034 </para>
|
|
1035
|
|
1036 <informaltable>
|
|
1037 <tgroup cols="2">
|
|
1038 <thead>
|
|
1039 <row><entry>Klawisz</entry><entry>Akcja</entry></row>
|
|
1040 </thead>
|
|
1041 <tbody>
|
|
1042 <row><entry><keycap>1</keycap></entry><entry>
|
|
1043 zmniejsz kontrast
|
|
1044 </entry></row>
|
|
1045 <row><entry><keycap>2</keycap></entry><entry>
|
|
1046 zwiększ kontrast
|
|
1047 </entry></row>
|
|
1048 <row><entry><keycap>3</keycap></entry><entry>
|
|
1049 zmniejsz jasność
|
|
1050 </entry></row>
|
|
1051 <row><entry><keycap>4</keycap></entry><entry>
|
|
1052 zwiększ jasność
|
|
1053 </entry></row>
|
|
1054 <row><entry><keycap>5</keycap></entry><entry>
|
|
1055 włącz/wyłącz szybkie renderowanie
|
|
1056 </entry></row>
|
|
1057 <row><entry><keycap>6</keycap></entry><entry>
|
|
1058 ustaw tryb ditheringu (brak, error distribution, Floyd Steinberg)
|
|
1059 </entry></row>
|
|
1060 <row><entry><keycap>7</keycap></entry><entry>
|
|
1061 odwróć obraz
|
|
1062 </entry></row>
|
|
1063 <row><entry><keycap>8</keycap></entry><entry>
|
|
1064 przełączanie kontroli między aa i <application>MPlayerem</application>
|
|
1065 </entry></row>
|
|
1066 </tbody>
|
|
1067 </tgroup>
|
|
1068 </informaltable>
|
|
1069
|
|
1070 <variablelist>
|
|
1071 <title>Następujące opcje mogą być użyte w wierszu poleceń:</title>
|
|
1072 <varlistentry>
|
|
1073 <term><option>-aaosdcolor=<replaceable>V</replaceable></option></term>
|
|
1074 <listitem><para>
|
|
1075 zmiana koloru OSD
|
|
1076 </para></listitem>
|
|
1077 </varlistentry>
|
|
1078 <varlistentry>
|
|
1079 <term><option>-aasubcolor=<replaceable>V</replaceable></option></term>
|
|
1080 <listitem><para>
|
|
1081 zmiana koloru napisów
|
|
1082 </para><para>
|
|
1083 gdzie <replaceable>V</replaceable> jest jednym z:
|
|
1084 <literal>0</literal> (normalny),
|
|
1085 <literal>1</literal> (ciemny),
|
|
1086 <literal>2</literal> (pogrubiony),
|
|
1087 <literal>3</literal> (pogrubiona czcionka),
|
|
1088 <literal>4</literal> (odwrócony),
|
|
1089 <literal>5</literal> (specjalny).
|
|
1090 </para></listitem>
|
|
1091 </varlistentry>
|
|
1092 </variablelist>
|
|
1093
|
|
1094 <variablelist>
|
|
1095 <title>AAlib samo w sobie ma wiele opcji. Poniżej znajduje się
|
|
1096 kilka ważniejszych:</title>
|
|
1097 <varlistentry>
|
|
1098 <term><option>-aadriver</option></term>
|
|
1099 <listitem><simpara>
|
|
1100 ustawia sugerowany sterownik aa (X11, curses, Linux)
|
|
1101 </simpara></listitem>
|
|
1102 </varlistentry>
|
|
1103 <varlistentry>
|
|
1104 <term><option>-aaextended</option></term>
|
|
1105 <listitem><simpara>
|
|
1106 używa wszystkich 256 znaków.
|
|
1107 </simpara></listitem>
|
|
1108 </varlistentry>
|
|
1109 <varlistentry>
|
|
1110 <term><option>-aaeight</option></term>
|
|
1111 <listitem><simpara>
|
|
1112 używa 8-bitowego ASCII
|
|
1113 </simpara></listitem>
|
|
1114 </varlistentry>
|
|
1115 <varlistentry>
|
|
1116 <term><option>-aahelp</option></term>
|
|
1117 <listitem><simpara>
|
|
1118 wyświetla wszystkie opcje aalib
|
|
1119 </simpara></listitem>
|
|
1120 </varlistentry>
|
|
1121 </variablelist>
|
|
1122
|
|
1123 <note>
|
|
1124 <para>
|
|
1125 Renderowanie bardzo obciąża CPU, zwłaszcza przy użyciu AA-on-X (aalib w X),
|
|
1126 a mniej zajmuje CPU na standardowej, nie-framebuffer konsoli.
|
|
1127 Użyj SVGATextMode aby ustawić duży tryb tekstowy i baw się dobrze!
|
|
1128 (drugie złącze karty Hercules wymiata:))
|
|
1129 (ale moim skromnym zdaniem możesz używać opcji
|
|
1130 <option>-vf 1bpp</option> aby dostać grafikę na hgafb:)
|
|
1131 </para>
|
|
1132 </note>
|
|
1133
|
|
1134 <para>
|
|
1135 Użyj opcji <option>-framedrop</option> jeżeli Twój komputer nie jest na tyle szybki
|
|
1136 aby wyrenderować wszystkie ramki!
|
|
1137 </para>
|
|
1138
|
|
1139 <para>
|
|
1140 Odtwarzając w terminalu osiągniesz lepszą szybkość i jakość używając sterownika Linux,
|
|
1141 a nie curses (<option>-aadriver linux</option>).
|
|
1142 Jednakże będziesz potrzebował praw zapisu na
|
|
1143 <filename>/dev/vcsa<replaceable><terminal></replaceable></filename>!
|
|
1144 Nie jest to wykrywane automatycznie przez aalib, ale vo_aa próbuje
|
|
1145 znaleźć najlepszy tryb. Spójrz na
|
|
1146 <ulink url="http://aa-project.sourceforge.net/tune"/>,
|
|
1147 jest tam więcej informacji o dostrajaniu.
|
|
1148 </para>
|
|
1149 </sect4>
|
|
1150
|
|
1151
|
|
1152 <sect4 id="vesa">
|
|
1153 <title>VESA - wyjście na VESA BIOS</title>
|
|
1154
|
|
1155 <para>
|
|
1156 Ten sterownik został stworzony jako
|
|
1157 <emphasis role="bold">ogólny sterownik</emphasis> dla jakiejkolwiek karty,
|
|
1158 która ma BIOS zgodny z VESA VBE 2.0. Inną zaletą tego sterownika jest to,
|
|
1159 ze próbuje on wymusić włączenie wyjścia TV.
|
|
1160 <citetitle>VESA BIOS EXTENSION (VBE) Version 3.0, z dnia 16 września 1998</citetitle>
|
|
1161 (Strona 70) mówi:
|
|
1162 </para>
|
|
1163
|
|
1164 <blockquote>
|
|
1165 <formalpara><title>Podwójne kontrolery (Dual-Controller Designs)</title>
|
|
1166 <para>
|
|
1167 VBE 3.0 obsługuje podwójne kontrolery zakładając, że zwykle obydwa kontrolery
|
|
1168 są dostarczane przez ten sam OEM, pod kontrolą pojedynczego BIOS ROM
|
|
1169 na karcie graficznej. Jest możliwe ukrycie przed aplikacją,
|
|
1170 że obecne są dwa kontrolery. Ograniczeniem tego jest brak możliwości
|
|
1171 równoczesnego używania niezależnych kontrolerów, ale umożliwia aplikacjom
|
|
1172 wypuszczonym przed VBE 3.0 na normalne działanie.
|
|
1173 Funkcja VBE 00h (zwróć informację o kontrolerze) zwraca połączone
|
|
1174 informacje o obydwóch kontrolerach, włącznie z połaćzoną listą
|
|
1175 dostępnych trybów.
|
|
1176 Gdy aplikacja wybiera tryb, włączany jest odpowiedni kontroler.
|
|
1177 Każda z pozostałych funkcji VBE operuje później na aktywnym kontrolerze.
|
|
1178 </para>
|
|
1179 </formalpara>
|
|
1180 </blockquote>
|
|
1181
|
|
1182 <para>
|
|
1183 Są więc szanse, że używając tego sterownika uzyskasz działające wyjście TV.
|
|
1184 (Zgaduję, że często wyjście TV jest samodzielnym układem (standalone head),
|
|
1185 lub przynajmniej samodzielnym wyjściem.)
|
|
1186 </para>
|
|
1187
|
|
1188 <itemizedlist spacing="compact">
|
|
1189 <title>ZALETY</title>
|
|
1190 <listitem><simpara>
|
|
1191 Jest szansa, że będziesz mógł oglądać filmy
|
|
1192 <emphasis role="bold">nawet, gdy Linux nie wie</emphasis> jakiego sprzętu używasz.
|
|
1193 </simpara></listitem>
|
|
1194 <listitem><simpara>
|
|
1195 Nie ma potrzeby instalowania jakichkolwiek rzeczy związanych z grafiką
|
|
1196 (takich jak X11 (aka XFree86), fbdev i tak dalej) na Twoim Linuksie.
|
|
1197 Ten sterownik można uruchamiać z <emphasis role="bold">trybu tekstowego</emphasis>.
|
|
1198 </simpara></listitem>
|
|
1199 <listitem><simpara>
|
|
1200 Jest szansa że uzyskasz <emphasis role="bold">działające wyjście TV</emphasis>.
|
|
1201 (Jest tak przynajmniej w przypadku kart ATI).
|
|
1202 </simpara></listitem>
|
|
1203 <listitem><simpara>
|
|
1204 Ten sterownik wywołuje procedurę obsługi przerwania 10h
|
|
1205 (<function>int 10h</function> handler) więc nie jest emulatorem -
|
|
1206 odwołuje się do <emphasis role="bold">rzeczywistych</emphasis> rzeczy
|
|
1207 <emphasis>rzeczywistego</emphasis> BIOSu w
|
|
1208 <emphasis>trybie rzeczywistym (real-mode)</emphasis>. (
|
|
1209 tak na prawdę to w trybie vm86, ale działa równie szybko).
|
|
1210 </simpara></listitem>
|
|
1211 <listitem><simpara>
|
|
1212 Możesz używać VIDIX, uzyskując po przez to przyśpieszone wyświetlanie video
|
|
1213 <emphasis role="bold">oraz</emphasis> wyjście TV w tym samym czasie!
|
|
1214 (Zalecane dla kart ATI.)
|
|
1215 </simpara></listitem>
|
|
1216 <listitem><simpara>
|
|
1217 Jeżeli masz VESA VBE 3.0+ i określiłeś gdzieś
|
|
1218 <option>monitor-hfreq, monitor-vfreq, monitor-dotclock</option>
|
|
1219 (w pliku konfiguracyjnym lub w wierszu poleceń) uzyskasz najwyższą możliwą
|
|
1220 częstotliwość odświeżania (Używając General Timing Formula
|
|
1221 (Ogólnej Formuły Taktowania)). Aby uzyskać tę cechę musisz określić
|
|
1222 <emphasis role="bold">wszystkie</emphasis> opcje monitora.
|
|
1223 </simpara></listitem>
|
|
1224 </itemizedlist>
|
|
1225
|
|
1226 <itemizedlist spacing="compact">
|
|
1227 <title>WADY</title>
|
|
1228 <listitem><simpara>
|
|
1229 Działa tylko na <emphasis role="bold">systemach x86</emphasis>.
|
|
1230 </simpara></listitem>
|
|
1231 <listitem><simpara>
|
|
1232 Może być używane tylko przez użytkownika
|
|
1233 <systemitem class="username">root</systemitem>.
|
|
1234 </simpara></listitem>
|
|
1235 <listitem><simpara>
|
|
1236 Obecnie jest dostępne tylko dla <emphasis role="bold">Linuksa</emphasis>.
|
|
1237 </simpara></listitem>
|
|
1238 </itemizedlist>
|
|
1239
|
|
1240 <important>
|
|
1241 <para>
|
|
1242 Nie używaj tego sterownika wraz z <emphasis role="bold">GCC 2.96</emphasis>!
|
|
1243 Nie będzie działać!
|
|
1244 </para>
|
|
1245 </important>
|
|
1246
|
|
1247 <variablelist>
|
|
1248 <title>OPCJE LINII POLECEŃ DLA VESA</title>
|
|
1249 <varlistentry>
|
|
1250 <term><option>-vo vesa:<replaceable>opts</replaceable></option></term>
|
|
1251 <listitem><simpara>
|
|
1252 obecnie rozpoznawane: <literal>dga</literal> aby wymusić tryb dga oraz
|
|
1253 <literal>nodga</literal> aby wyłączyć tryb dga. W trybie dga możesz
|
|
1254 włączyć podwójne buforowanie
|
|
1255 poprzez opcję <option>-double</option>. Informacja: możesz pominąć
|
|
1256 te parametry aby włączyć <emphasis role="bold">automatyczne wykrywanie
|
|
1257 </emphasis> trybu dga.
|
|
1258 </simpara></listitem>
|
|
1259 </varlistentry>
|
|
1260 </variablelist>
|
|
1261
|
|
1262 <itemizedlist spacing="compact">
|
|
1263 <title>ZNANE PROBLEMY I ICH OBEJŚCIA</title>
|
|
1264 <listitem><simpara>
|
|
1265 Jeżeli zainstalowałeś czcionkę <emphasis role="bold">NLS
|
|
1266 (Native Language Support - Obsługa Języka Rodzimego)</emphasis>
|
|
1267 w swoim Linuksie i używasz sterownika VESA z trybu tekstowego to po zakończeniu
|
|
1268 <application>MPlayera</application> będziesz miał załadowaną
|
|
1269 <emphasis role="bold">czcionkę ROM</emphasis> zamiast narodowej.
|
|
1270 Możesz z powrotem załadować czcionkę narodową używając na przykład narzędzia
|
|
1271 <command>setsysfont</command> z dystrybucji Mandrake.
|
|
1272 (<emphasis role="bold">Podpowiedź</emphasis>:
|
|
1273 To samo narzędzie jest używane do lokalizacji fbdev).
|
|
1274 </simpara></listitem>
|
|
1275 <listitem><simpara>
|
|
1276 Niektóre <emphasis role="bold">Linuksowe sterowniki grafiki</emphasis>
|
|
1277 nie aktualizują aktywnego <emphasis role="bold">trybu BIOS</emphasis> w pamięci DOS.
|
|
1278 Więc jeżeli masz taki problem - zawsze używaj trybu VESA tylko z
|
|
1279 <emphasis role="bold">trybu tekstowego</emphasis>.
|
|
1280 W przeciwnym wypadku tryb tekstowy (#03) i tak będzie włączany
|
|
1281 i będziesz musiał restartować komputer.
|
|
1282 </simpara></listitem>
|
|
1283 <listitem><simpara>
|
|
1284 Często po zakończeniu pracy sterownika VESA dostajesz
|
|
1285 <emphasis role="bold">czarny</emphasis> ekran.
|
|
1286 Aby przywrócić ekran do stanu oryginalnego po prostu przełącz się na
|
|
1287 inną konsolę (wciskając <keycap>Alt</keycap>+<keycap>F<x></keycap>)
|
|
1288 po czym przełącz się z powrotem na poprzednią konsolę w ten sam sposób.
|
|
1289 </simpara></listitem>
|
|
1290 <listitem><simpara>
|
|
1291 Aby uzyskać <emphasis role="bold">działające wyjście TV</emphasis>
|
|
1292 musisz mieć podłączony odbiornik TV przed włączeniem swojego PC,
|
|
1293 ponieważ video BIOS inicjalizuje się tylko podczas procedury POST
|
|
1294 </simpara></listitem>
|
|
1295 </itemizedlist>
|
|
1296 </sect4>
|
|
1297
|
|
1298
|
|
1299 <sect4 id="x11">
|
|
1300 <title>X11</title>
|
|
1301
|
|
1302 <para>
|
|
1303 Unikaj jeśli to możliwe. Wyjście na X11 (używa rozszerzenia współdzielonej pamięci)
|
|
1304 nie używa żadnego przyśpieszania sprzętowego.
|
|
1305 Obsługuje (przyśpieszane przez MMX/3DNow/SSE, lecz ciągle wolne) skalowanie programowe.
|
|
1306 Użyj opcji <option>-fs -zoom</option>.
|
|
1307 Większość kart ma obsługę sprzętowego skalowania, warto więc użyć dla nich opcji
|
|
1308 <option>-vo xv</option> lub
|
|
1309 <option>-vo xmga</option> dla kart Matrox.
|
|
1310 </para>
|
|
1311
|
|
1312 <para>
|
|
1313 Problemem jest to, że sterowniki do większości kart nie obsługują sprzętowego
|
|
1314 przyśpieszenia na wyjściu na drugi monitor (second head)/TV.
|
|
1315 W takim przypadku widać zielone/niebieskie okno zamiast filmu.
|
|
1316 To tutaj przydaje się ten sterownik, lecz potrzebujesz potężnego
|
|
1317 CPU aby używać programowego skalowania. Nie używaj programowego
|
|
1318 wyjścia SDL + skalowania, jakość obrazu jest wiele gorsza!
|
|
1319 </para>
|
|
1320
|
|
1321 <para>
|
|
1322 Skalowanie programowe jest bardzo wolne, lepiej spróbuj zmienić tryb video.
|
|
1323 Jest to bardzo proste. Spójrz na
|
|
1324 <link linkend="dga-modelines">linie trybów sekcji DGA</link>
|
|
1325 i wstaw je do swojego <filename>XF86Config</filename>.
|
|
1326
|
|
1327 <itemizedlist spacing="compact">
|
|
1328 <listitem><simpara>
|
|
1329 Jeżeli masz 4.x.x: użyj opcji <option>-vm</option>.
|
|
1330 Zmieni ona rozdzielczość na taką jaką ma twój film. Jeżeli nie:
|
|
1331 </simpara></listitem>
|
|
1332 <listitem><simpara>
|
|
1333 W XFree86 3.x.x: musisz poruszać się po dostępnych rozdzielczościach
|
|
1334 poprzez kombinacje klawiszy
|
|
1335 <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>plus</keycap>
|
|
1336 oraz
|
|
1337 <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>minus</keycap>.
|
|
1338 </simpara></listitem>
|
|
1339 </itemizedlist>
|
|
1340 </para>
|
|
1341
|
|
1342 <para>
|
|
1343 Jeżeli nie możesz znaleźć trybów, które wstawiłeś, przeszukaj komunikaty XFree86.
|
|
1344 Niektóre sterowniki nie mogą używać niskich pixelclock (częstotliwości
|
|
1345 taktowania układu RAMDAC), które są wymagane dla trybów o niskiej rozdzielczości.
|
|
1346 </para>
|
|
1347 </sect4>
|
|
1348
|
|
1349
|
|
1350 <sect4 id="vidix">
|
|
1351 <title>VIDIX</title>
|
|
1352
|
|
1353 <formalpara>
|
|
1354 <title>WSTĘP</title>
|
|
1355 <para>
|
|
1356 <acronym>VIDIX</acronym> jest skrótem od
|
|
1357 <emphasis role="bold">VID</emphasis>eo
|
|
1358 <emphasis role="bold">I</emphasis>nterface
|
|
1359 for *ni<emphasis role="bold">X</emphasis>
|
|
1360 (Interfejs VIDeo dla *niXów).
|
|
1361 VIDIX został stworzony jako interfejs dla szybkich sterowników przestrzeni
|
|
1362 użytkownika (user-space) zapewniających taką samą wydajność jak mga_vid
|
|
1363 dla kart Matrox. Jest także wysoce przenośny (portable).
|
|
1364 </para>
|
|
1365 </formalpara>
|
|
1366 <para>
|
|
1367 Ten interfejs został zaprojektowany jako próba dopasowania istniejących
|
|
1368 interfejsów przyśpieszanego video
|
|
1369 (znanych jako mga_vid, rage128_vidm radeon_vid, pm3_vid) do ustalonego schematu.
|
|
1370 Zapewnia wysokopoziomowy interfejs dla układów znanych jako BES (BackEnd Scalers)
|
|
1371 lub OV (Video Overlay - maskowanie video).
|
|
1372 Nie zapewnia on niskopoziomowego interfejsu do tworów znanych jako serwery grafiki.
|
|
1373 (nie chcę współzawodniczyć z zespołem X11 w zmienianiu trybów graficznych).
|
|
1374 Innymi słowy,
|
|
1375 głównym celem tego interfejsu jest maksymalizacja szybkości odtwarzania video.
|
|
1376 </para>
|
|
1377
|
|
1378 <itemizedlist spacing="compact">
|
|
1379 <title>ZASTOSOWANIE</title>
|
|
1380 <listitem><simpara>
|
|
1381 Możesz używać samodzielnego sterownika wyjścia video:
|
|
1382 <option>-vo xvidix</option>. Ten sterownik został stworzony jako front end
|
|
1383 do technologii VIDIX. Wymaga X serwera i może pracować tylko w X serwerze.
|
|
1384 Zwróć uwagę na to, że stosowany jest bezpośredni dostęp do sprzętu
|
|
1385 i omijany jest sterownik X, pixmapy przechowywane (cached) w pamięci karty
|
|
1386 mogą być uszkodzone. Możesz temu zapobiec ograniczając ilość używanej przez X
|
|
1387 pamięci poprzez opcję "VideoRam" w sekcji "device".
|
|
1388 Powinieneś ustawić to na rozmiar pamięci na karcie minus 4MB.
|
|
1389 Jeżeli masz mniej niż 8MB pamięci video (video RAM),
|
|
1390 możesz użyć zamiast tego opcji "XaaNoPixmapCache" w sekcji "screen".
|
|
1391 </simpara></listitem>
|
|
1392 <listitem><simpara>
|
|
1393 Istnieje konsolowy sterownik VIDIX: <option>-vo cvidix</option>.
|
|
1394 Wymaga on dla większości kart działającego i zainicjalizowanego bufora ramki
|
|
1395 (albo po prostu zapaskudzisz sobie ekran). Otrzymasz podobny efekt jak przy
|
|
1396 <option>-vo mga</option> lub <option>-vo fbdev</option>. Jednakże karty nVidia
|
|
1397 są zdolne do wyświetlania w pełni graficznego obrazu w konsoli całkowicie tekstowej.
|
|
1398 Więcej informacji znajdziesz w sekcji <link linkend="vidix-nvidia">nvidia_vid</link>.
|
|
1399 </simpara></listitem>
|
|
1400
|
|
1401 <listitem><simpara>
|
|
1402 Możesz użyć podurządzenia (subdevice) VIDIX, które zostało dodane
|
|
1403 do rozmaitych sterowników wyjścia video, takich jak:
|
|
1404 <option>-vo vesa:vidix</option>
|
|
1405 (<emphasis role="bold">tylko Linux</emphasis>)
|
|
1406 oraz <option>-vo fbdev:vidix</option>.
|
|
1407 </simpara></listitem>
|
|
1408 </itemizedlist>
|
|
1409
|
|
1410 <para>
|
|
1411 W rzeczywistości nie ma znaczenia, który sterownik wyjścia video jest używany z
|
|
1412 <emphasis role="bold">VIDIX</emphasis>.
|
|
1413 </para>
|
|
1414
|
|
1415 <itemizedlist spacing="compact">
|
|
1416 <title>WYMAGANIA</title>
|
|
1417 <listitem><simpara>
|
|
1418 Karta graficzna powinna pracować w trybie graficznym (z wyjątkiem kart nVidia
|
|
1419 z w/w sterownikiem wyjścia <option>-vo cvidix</option>).
|
|
1420 <!--do usunięcia: <emphasis role="bold">Informacja</emphasis>: Każdy może spróbować tego triku,
|
|
1421 wykomentowując zmianę trybu w sterowniku vo_vesa.-->
|
|
1422
|
|
1423 </simpara></listitem>
|
|
1424 <listitem><simpara>
|
|
1425 Sterownik wyjścia video <application>MPlayera</application> powinien znać
|
|
1426 aktywny tryb video, a także powinien być w stanie przekazać podurządzeniu
|
|
1427 VIDIX niektóre cechy serwera.
|
|
1428 </simpara></listitem>
|
|
1429 </itemizedlist>
|
|
1430
|
|
1431 <formalpara>
|
|
1432 <title>METODY UŻYWANIA</title>
|
|
1433 <para>
|
|
1434 Gdy VIDIX używany jest jako <emphasis role="bold">podurządzenie</emphasis>
|
|
1435 (<option>-vo vesa:vidix</option>) konfiguracja trybu video jest dokonywana przez
|
|
1436 urządzenie wyjścia video (w skrócie <emphasis role="bold">vo_server</emphasis>).
|
|
1437 Możesz więc przekazać <application>MPlayerowi</application>
|
|
1438 takie same ustawienia jak dla vo_server.
|
|
1439 Dodatkowo rozumie on ustawienie <option>-double</option>
|
|
1440 jako globalnie widoczny parametr.
|
|
1441 (Zalecam używanie tego ustawienia z VIDIX przynajmniej dla kart ATI).
|
|
1442 Jeżeli chodzi o <option>-vo xvidix</option>, to obecnie rozpoznaje następujące opcje
|
|
1443 <option>-fs -zoom -x -y -double</option>.
|
|
1444 </para>
|
|
1445 </formalpara>
|
|
1446 <para>
|
|
1447 Możesz także określić sterownik VIDIX jako trzeci podargument w linii poleceń:
|
|
1448
|
|
1449 <screen>
|
|
1450 mplayer -vo xvidix:mga_vid.so -fs -zoom -double <replaceable>plik.avi</replaceable>
|
|
1451 </screen>
|
|
1452 lub
|
|
1453 <screen>
|
|
1454 mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp 32 <replaceable>plik.avi
|
|
1455 </replaceable>
|
|
1456 </screen>
|
|
1457
|
|
1458 Ale jest to niebezpieczne i nie powinieneś tego robić.
|
|
1459 W tym przypadku podany sterownik zostanie wymuszony i rezultat może być
|
|
1460 nieprzewidywalny (może <emphasis role="bold">zawiesić</emphasis> Twój komputer).
|
|
1461 Powinieneś to robić TYLKO gdy jesteś całkowicie pewien, że zadziała,
|
|
1462 a <application>MPlayer</application> nie robi tego automatycznie.
|
|
1463 Proszę powiadom o tym deweloperów. Prawidłowym sposobem jest używanie VIDIX
|
|
1464 bez żadnych argumentów, aby umożliwić automatyczne wykrywanie sterownika.
|
|
1465 </para>
|
|
1466
|
|
1467 <para>
|
|
1468 VIDIX jest nową technologią i jest bardzo możliwe, że nie będzie działał
|
|
1469 na Twoim systemie. W tym przypadku jedynym rozwiązaniem jest przeportowanie go
|
|
1470 (głównie libdha). Ale jest nadzieja, że będzie działać na tych systemach,
|
|
1471 na których działa X11.
|
|
1472 </para>
|
|
1473
|
|
1474 <para>
|
|
1475 Ponieważ VIDIX wymaga bezpośredniego dostępu do sprzętu, musisz uruchamiać
|
|
1476 <application>MPlayera</application> jako root lub ustawić bit SUID na binarce
|
|
1477 <application>MPlayera</application>
|
|
1478 (<emphasis role="bold">Ostrzeżenie: Jest to zagrożenie bezpieczeństwa!</emphasis>).
|
|
1479 Alternatywnie możesz używać specjalnego modułu jądra, takiego jak ten:
|
|
1480 </para>
|
|
1481
|
|
1482 <procedure>
|
|
1483 <step><para>
|
|
1484 Ściągnij <ulink url="http://www.arava.co.il/matan/svgalib/">rozwojową wersję</ulink>
|
|
1485 svgalib (na przykład 1.9.17) <emphasis role="bold">LUB</emphasis> ściągnij
|
|
1486 <ulink url="http://www.mplayerhq.hu/~alex/svgalib_helper-1.9.17-mplayer.tar.bz2">stąd</ulink>
|
|
1487 wersję stworzoną przez Alexa specjalnie do użytku z <application>MPlayerem</application>
|
|
1488 (nie potrzebuje ona do kompilacji źródeł svgalib)
|
|
1489 </para></step>
|
|
1490 <step><para>
|
|
1491 Skompiluj moduł w katalogu <filename class="directory">svgalib_helper</filename>
|
|
1492 (jeżeli ściągnąłeś źródła ze strony svgalib to można go znaleźć wewnątrz katalogu
|
|
1493 <filename class="directory">svgalib-1.9.17/kernel/</filename>) i załaduj go (insmod).
|
|
1494 </para></step>
|
|
1495 <step><para>
|
|
1496 Aby stworzyć odpowiednie urządzenia (devices) w katalogu <filename class="directory">/dev</filename>,
|
|
1497 wykonaj jako root <screen>make device</screen> w katalogu <filename class="directory">svgalib_helper</filename>.
|
|
1498 </para></step>
|
|
1499
|
|
1500 <step><para>
|
|
1501 Przenieś katalog <filename class="directory">svgalib_helper</filename> do
|
|
1502 <filename class="directory">mplayer/main/libdha/svgalib_helper</filename>.
|
|
1503 </para></step>
|
|
1504 <step><para>
|
|
1505 Wymagane jeżeli ściągnąłeś źródła ze strony svgalib: usuń komentarz przed linią
|
|
1506 CFLAGS zawierający ciąg "svgalib_helper" z
|
|
1507 <filename class="directory">libdha/Makefile</filename>.
|
|
1508 </para></step>
|
|
1509 <step><para>
|
|
1510 Przekompiluj i zainstaluj libdha
|
|
1511 </para></step>
|
|
1512 </procedure>
|
|
1513
|
|
1514 <sect5 id="vidix-ati">
|
|
1515 <title>Karty ATI</title>
|
|
1516 <para>
|
|
1517 Obecnie większość kart ATI jest obsługiwana natywnie,
|
|
1518 od Mach64 do najnowszych Radeonów.
|
|
1519 </para>
|
|
1520
|
|
1521 <para>
|
|
1522 Są dwie skompilowanie binarki: <filename>radeon_vid</filename> dla Radeonów oraz
|
|
1523 <filename>rage128_vid</filename> dla kart Rage 128.
|
|
1524 Możesz wymusić jedną z nich lub pozwolić systemowi VIDIX na autodetekcję
|
|
1525 dostępnych sterowników.
|
|
1526 </para>
|
|
1527 </sect5>
|
|
1528
|
|
1529 <sect5 id="vidix-mga">
|
|
1530 <title>Karty Matrox</title>
|
|
1531 <para>
|
|
1532 Matrox G200, G400, G450 i G550 zgłoszono jako działające.
|
|
1533 </para>
|
|
1534
|
|
1535 <para>
|
|
1536 Sterownik obsługuje korektory (equalizery) video i powinien być prawie tak szybki jak
|
|
1537 <link linkend="mga_vid">Matrox framebuffer</link>
|
|
1538 </para>
|
|
1539 </sect5>
|
|
1540
|
|
1541 <sect5 id="vidix-trident">
|
|
1542 <title>Karty Trident</title>
|
|
1543 <para>
|
|
1544 Jest dostępny sterownik dla układu Trident Cyberblade/i1, który można znaleźć
|
|
1545 na płytach głównych VIA Epia.
|
|
1546 </para>
|
|
1547
|
|
1548 <para>
|
|
1549 Sterownik ten został napisany (i jest utrzymywany) przez
|
|
1550 <ulink url="http://www.blackfiveservices.co.uk/EPIAVidix.shtml">Alastaira M. Robinsona</ulink>
|
|
1551 </para>
|
|
1552 </sect5>
|
|
1553
|
|
1554 <sect5 id="vidix-3dlabs">
|
|
1555 <title>Karty 3DLabs</title>
|
|
1556 <para>
|
|
1557 Chociaż istnieje sterownik dla układów 3DLabs GLINT R3 oraz Permedia3,
|
|
1558 to nikt go nie testował (sprawozdania są mile widziane)
|
|
1559 </para>
|
|
1560 </sect5>
|
|
1561
|
|
1562 <sect5 id="vidix-nvidia">
|
|
1563 <title>Karty nVidia</title>
|
|
1564 <para>
|
|
1565 Dostępny jest stosunkowo nowy sterownik nVidia, działa na kartach Riva128, TNT i
|
|
1566 GeForce2. Doniesiono nam, że na innych też działa.
|
|
1567 </para>
|
|
1568
|
|
1569 <itemizedlist spacing="compact">
|
|
1570 <title>OGRANICZENIA</title>
|
|
1571 <listitem><para>
|
|
1572 Wskazane jest używanie binarnych sterowników nVidia dla X zanim użyjesz tego
|
|
1573 sterownika VIDIX. Jest to spowodowane tym, że niektóre rejestry, które muszą być zainicjalizowane
|
|
1574 nie zostały jeszcze odkryte, więc prawdopodobnie próba z otwartym sterownikiem XFree86
|
|
1575 <filename>nv.o</filename> także się nie powiedzie.
|
|
1576 </para></listitem>
|
|
1577
|
|
1578 <listitem><para>
|
|
1579 Obecnie tylko kodeki zdolne do wyjścia na przestrzeń kolorów UYVY mogą współpracować
|
|
1580 z tym sterownikiem. Niestety żaden dekoder z rodziny libavcodec się nie nadaje.
|
|
1581 Pozostają nam następujące popularne kodeki: <systemitem>cvid, divxds, xvid, divx4,
|
|
1582 wmv7, wmv8</systemitem> i kilka innych. Zauważ, że jest to tylko chwilowa niedogodność.
|
|
1583 składnie wygląda w ten sposób:
|
|
1584 <screen>
|
|
1585 mplayer -vf format=uyvy -vc divxds <replaceable>plik_divx3.avi</replaceable>
|
|
1586 </screen>
|
|
1587 </para></listitem>
|
|
1588 </itemizedlist>
|
|
1589
|
|
1590 <para>
|
|
1591 Unikalną cechą sterownika nvidia_vid jest jego zdolność do wyświetlania obrazu na
|
|
1592 <emphasis role="bold">zwykłej, czysto tekstowej konsoli</emphasis> - bez magicznych X,
|
|
1593 bufora ramki, czy czegokolwiek.
|
|
1594 W tym celu będziemy musieli użyć wyjścia video <option>cvidix</option>, jak w pokazuje
|
|
1595 poniższy przykład:
|
|
1596 <screen>
|
|
1597 mplayer -vf format=uyvy -vc divxds -vo cvidix <replaceable>przykład.avi</replaceable>
|
|
1598 </screen>
|
|
1599 </para>
|
|
1600
|
|
1601 <para>
|
|
1602 Czekamy na raporty!
|
|
1603 </para>
|
|
1604 </sect5>
|
|
1605
|
|
1606 <sect5 id="vidix-sis">
|
|
1607 <title>Karty SiS</title>
|
|
1608 <para>
|
|
1609 Jest to kod wysoce eksperymentalny. (Tak jak nvidia_vid).
|
|
1610 </para>
|
|
1611
|
|
1612 <para>
|
|
1613 Przetestowano go na SiS 650/651/740 (najczęściej używane układy w SiSowskiej
|
|
1614 wersji "Shuttle XPC")
|
|
1615 <!--It's been tested on SiS 650/651/740 (the most common chipsets used in the
|
|
1616 SiS versions of the "Shuttle XPC" barebones boxes out there)-->
|
|
1617 </para>
|
|
1618
|
|
1619 <para>
|
|
1620 Czekamy na raporty!
|
|
1621 </para>
|
|
1622 </sect5>
|
|
1623 </sect4>
|
|
1624
|
|
1625
|
|
1626
|
|
1627 <sect4 id="directfb">
|
|
1628 <title>DirectFB</title>
|
|
1629 <blockquote><para>
|
|
1630 "DirectFB jest biblioteką graficzną, która była tworzona z myślą o
|
|
1631 systemach typu embedded.
|
|
1632 Oferuje ona maksymalną przyśpieszaną sprzętowo wydajność przy minimalnym zużyciu
|
|
1633 i obciążeniu zasobów.
|
|
1634 " - cytat z <ulink url="http://www.directfb.org"/>
|
|
1635 </para></blockquote>
|
|
1636
|
|
1637 <para>Nie będę tu podawał cech DirectFB.</para>
|
|
1638
|
|
1639 <para>
|
|
1640 Chociaż <application>MPlayer</application> nie jest obsługiwany jako
|
|
1641 "dostawca video" dla DirectFB,
|
|
1642 ten sterownik wyjścia umożliwi odtwarzanie video poprzez DirectFB.
|
|
1643 Będzie ono - oczywiście - przyśpieszane.
|
|
1644 Na moim Matroksie G400 szybkość DirectFB była taka sama jak XVideo.
|
|
1645 </para>
|
|
1646
|
|
1647 <para>
|
|
1648 Zawsze próbuj używać najnowszej wersji DirectFB.
|
|
1649 Możesz używać opcji DirectFB w linii poleceń, używając opcji <option>-dfbopts</option>.
|
|
1650 Wyboru warstwy można dokonać metodą podurządzenia.
|
|
1651 Przykład: <option>-vo directfb:2</option> (standardową jest warstwa -1 : autodetekcja)
|
|
1652 </para>
|
|
1653 </sect4>
|
|
1654
|
|
1655 <sect4 id="dfbmga">
|
|
1656 <title>DirectFB/Matrox (dfbmga)</title>
|
|
1657 <para>
|
|
1658 Przeczytaj proszę główną sekcję <link linkend="directfb">DirectFB</link>
|
|
1659 lub informacje ogólne.
|
|
1660 </para>
|
|
1661
|
|
1662 <para>Ten sterownik wyjścia video włączy CRTC2
|
|
1663 (na drugim wyjściu z karty) w kartach Matrox G400/G450/G550,
|
|
1664 wyświetlając obraz <emphasis role="bold">niezależnie</emphasis>
|
|
1665 od pierwszego wyjścia z karty.
|
|
1666 </para>
|
|
1667
|
|
1668 <para>
|
|
1669 Instrukcję jak to zrobić można znaleźć w sekcji
|
|
1670 <ulink url="../../tech/directfb.txt">tech</ulink>
|
|
1671 lub bezpośrednio na
|
|
1672 <ulink url="http://www.sci.fi/~syrjala/directfb/Matrox_TV-out_README.txt">
|
|
1673 stronie domowej</ulink> Ville Syrjala.
|
|
1674 </para>
|
|
1675
|
|
1676 <note><para>
|
|
1677 Pierwszą wersją DirectFB, jaką udało nam się zmusić do pracy była 0.9.17
|
|
1678 (wadliwa, potrzebuje łatki <systemitem>surfacemanager</systemitem>
|
|
1679 z powyższego URL).
|
|
1680 W ogóle to kod CRTC2 jest w trakcie portowania do
|
|
1681 <emphasis role="bold">mga_vid</emphasis>.
|
|
1682 </para></note>
|
|
1683 </sect4>
|
|
1684 </sect3>
|
|
1685
|
|
1686 <sect3 id="mpeg_decoders">
|
|
1687 <title>Dekodery MPEG</title>
|
|
1688
|
|
1689 <sect4 id="dvb">
|
|
1690 <title>Wejście i wyjście DVB</title>
|
|
1691 <para>
|
|
1692 <application>MPlayer</application> obsługuje karty z układem Siemens DVB,
|
|
1693 od producentów takich jak Siemens, Technotrend, Galaxis czy Hauppauge.
|
|
1694 Najnowsze sterowniki DVB są dostępne na
|
|
1695 <ulink url="http://www.linuxtv.org">stronie Linux TV</ulink>.
|
|
1696 Jeżeli chcesz programowego transkodowania powinieneś dysponować procesorem
|
|
1697 o zegarem co najmniej 1GHz.
|
|
1698 </para>
|
|
1699
|
|
1700 <para>
|
|
1701 Configure powinien wykryć Twoją kartę DVB. Jeżeli tak się nie stało,
|
|
1702 możesz wymusić obsługę DVB poprzez:
|
|
1703 </para>
|
|
1704
|
|
1705 <para><screen>./configure --enable-dvb</screen></para>
|
|
1706
|
|
1707 <para>Jeżeli Twoje nagłówki 'ost' znajdują się w niestandardowym miejscu,
|
|
1708 ustaw ścieżkę poprzez</para>
|
|
1709
|
|
1710 <para><screen>./configure --with-extraincdir=<replaceable>katalog ze źródłami DVB</replaceable>/ost/include</screen></para>
|
|
1711
|
|
1712 <para>Po czym skompiluj i zainstaluj jak zwykle.</para>
|
|
1713
|
|
1714 <formalpara>
|
|
1715 <title>ZASTOSOWANIE</title>
|
|
1716 <para>
|
|
1717 Sprzętowego dekodowania (odtwarzanie standardowych plików MPEG1/2)
|
|
1718 można dokonać tą komendą:
|
|
1719 </para>
|
|
1720 </formalpara>
|
|
1721
|
|
1722 <para><screen>mplayer -ao mpegpes -vo mpegpes <replaceable>plik.mpg|vob</replaceable></screen></para>
|
|
1723
|
|
1724 <para>
|
|
1725 Programowego dekodowania oraz transkodowania różnych formatów do MPEG1
|
|
1726 można uzyskać używając polecenia takiego jak te:
|
|
1727 </para>
|
|
1728 <para><screen>
|
|
1729 mplayer -ao mpegpes -vo mpegpes <replaceable>twójplik.roz</replaceable>
|
|
1730 mplayer -ao mpegpes -vo mpegpes -vf expand <replaceable>twójplik.roz</replaceable>
|
|
1731 </screen></para>
|
|
1732
|
|
1733 <para>
|
|
1734 Zauważ, że karty DVB obsługują tylko pionową rozdzielczość równą 288 i 576 dla PAL
|
|
1735 oraz 240 i 480 dla NTSC.
|
|
1736 <emphasis role="bold">Musisz</emphasis> przeskalować obraz, dodając opcję
|
|
1737 <option>scale=szerokość:wysokość</option>,
|
|
1738 gdzie szerokość i wysokość są takie jak dla opcji <option>-vf</option>.
|
|
1739 Karty DVB akceptują różne szerokości, takie jak 720, 704, 640, 512, 480, 352 itp
|
|
1740 i dokonują sprzętowego skalowania w kierunku horyzontalnym,
|
|
1741 więc w większości przypadków nie musisz skalować horyzontalnie.
|
|
1742 Dla DivX 512x384 (format 4:3) wypróbuj:
|
|
1743 </para>
|
|
1744
|
|
1745 <para><screen>mplayer -ao mpegpes -vo mpegpes -vf scale=512:576</screen></para>
|
|
1746
|
|
1747 <para>Jeżeli masz film w formacie panoramicznym i nie chcesz go skalować
|
|
1748 do pełnej wysokości, możesz użyć filtru <option>expand=szer:wys</option>
|
|
1749 aby dodać czarne paski. Aby wyświetlić DivX 640x384, wypróbuj:
|
|
1750 </para>
|
|
1751
|
|
1752 <para><screen>mplayer -ao mpegpes -vo mpegpes -vf expand=640:576 <replaceable>plik.avi</replaceable>
|
|
1753 </screen></para>
|
|
1754
|
|
1755 <para>Jeżeli twój CPU jest za wolny na pełnowymiarowy DivX 720x576,
|
|
1756 spróbuj przeskalować w dół:</para>
|
|
1757
|
|
1758 <para><screen>mplayer -ao mpegpes -vo mpegpes -vf scale=352:576 <replaceable>plik.avi</replaceable>
|
|
1759 </screen></para>
|
|
1760
|
|
1761 <para>Jeżeli to nie poprawiło szybkości, spróbuj także pionowego
|
|
1762 skalowania w dół:</para>
|
|
1763
|
|
1764 <para><screen>mplayer -ao mpegpes -vo mpegpes -vf scale=352:288 <replaceable>plik.avi</replaceable>
|
|
1765 </screen></para>
|
|
1766
|
|
1767 <para>
|
|
1768 Dla OSD i napisów użyj cechy OSD filtru expand. Tak więc zamiast
|
|
1769 <option>expand=wys:szer</option> lub <option>expand=wys:szer:x:y</option>, użyj
|
|
1770 <option>expand=wys:szer:x:y:1</option> (piąty parametr <option>:1</option>
|
|
1771 na końcu umożliwi renderowanie (wyświetlanie) OSD).
|
|
1772 Możesz chcieć przesunąć obraz trochę w górę, aby zyskać więcej miejsca na napisy.
|
|
1773 Możesz także chcieć przesunąć napisy w górę, jeżeli znajdują się poza ekranem TV,
|
|
1774 użyj opcji <option>-subpos <0-100></option> aby to dopasować
|
|
1775 (<option>-subpos 80</option> jest dobrym wyborem).
|
|
1776 </para>
|
|
1777
|
|
1778 <para>
|
|
1779 Aby odtwarzać filmy inne niż 25fps na telewizorze PAL lub na wolnym CPU,
|
|
1780 dodaj opcję <option>-framedrop</option>.
|
|
1781 </para>
|
|
1782
|
|
1783 <para>
|
|
1784 Aby zachować proporcje plików DivX oraz otrzymać optymalne parametry skalowania
|
|
1785 (sprzętowe poziome i programowe pionowe z zachowaniem odpowiednich proporcji),
|
|
1786 użyj nowego filtru dvbscale:
|
|
1787 </para>
|
|
1788
|
|
1789 <para><screen>
|
|
1790 dla 4:3 TV: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1
|
|
1791 dla 16:9 TV: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1
|
|
1792 </screen></para>
|
|
1793
|
|
1794 <formalpara>
|
|
1795
|
|
1796 <title>Używanie karty DVB do oglądania cyfrowej TV (moduł wejścia DVB)</title>
|
|
1797 <para>
|
|
1798 Najpierw musisz przekazać parametr <literal>dvb_shutdown_timeout=0</literal>
|
|
1799 do modułu jądra <filename>dvb-core</filename> lub <application>MPlayer</application>
|
|
1800 umrze po 10 sekundach.
|
|
1801 </para>
|
|
1802 </formalpara>
|
|
1803
|
|
1804 <para>
|
|
1805 Powinieneś także mieć zainstalowane programy <command>scan</command> oraz
|
|
1806 <command>szap/tzap/czap</command>; wszystkie są w paczce ze sterownikami.
|
|
1807 </para>
|
|
1808
|
|
1809 <para>
|
|
1810 Sprawdź czy Twoje sterowniki działają prawidłowo używając programu takiego jak
|
|
1811 <ulink url="http://www.sf.net/projects/dvbtools/"><command>dvbstream</command></ulink>
|
|
1812 (jest on podstawą modułu wejścia DVB).
|
|
1813 </para>
|
|
1814
|
|
1815 <para>
|
|
1816 Teraz powinieneś skompilować plik <filename>~/.mplayer/channels.conf</filename>
|
|
1817 zgodnie ze składnią akceptowaną przez <command>szap/tzap/czap</command> lub
|
|
1818 kazać <command>scan</command> zrobić to za Ciebie.
|
|
1819 </para>
|
|
1820
|
|
1821 <para>
|
|
1822 Upewnij się, że w <filename>channels.conf</filename> masz
|
|
1823 <emphasis>tylko</emphasis> kanały niekodowane (Free to Air). W przeciwnym
|
|
1824 razie <application>MPlayer</application> zawiesi się na innych.
|
|
1825 </para>
|
|
1826
|
|
1827 <para>
|
|
1828 Aby wyświetlić pierwszy z kanałów obecnych na Twojej liście uruchom
|
|
1829 </para>
|
|
1830
|
|
1831 <screen>
|
|
1832 mplayer dvb://
|
|
1833 </screen>
|
|
1834
|
|
1835 <para>
|
|
1836 Jeżeli chcesz oglądać określony kanał, na przykład R1, uruchom
|
|
1837 </para>
|
|
1838
|
|
1839 <screen>
|
|
1840 mplayer dvb://R1
|
|
1841 </screen>
|
|
1842
|
|
1843 <para>
|
|
1844 Aby przełączać kanały używaj klawiszy <keycap>h</keycap> (następny) oraz
|
|
1845 <keycap>k</keycap> (poprzedni) lub skorzystaj z menu OSD (wymaga działającego
|
|
1846 <link linkend="subosd">podsystemu OSD</link>).
|
|
1847 </para>
|
|
1848
|
|
1849 <para>
|
|
1850 Jeżeli Twój <filename>~/.mplayer/menu.conf</filename> zawiera wpis
|
|
1851 <literal><dvbsel></literal>, taki jak ten w przykładowym pliku
|
|
1852 <filename>etc/dvb-menu.conf</filename> (którego możesz użyć do nadpisania
|
|
1853 <filename>~/.mplayer/menu.conf</filename>), w menu głównym pokaże się
|
|
1854 podmenu, które zezwoli Ci na wybór jednego kanału z obecnych w Twoim
|
|
1855 <filename>channels.conf</filename>.
|
|
1856 </para>
|
|
1857
|
|
1858 <para>
|
|
1859 Jeżeli chcesz zapisać program (audycję) na dysku użyj
|
|
1860 </para>
|
|
1861
|
|
1862 <screen>
|
|
1863 mplayer -dumpfile r1.ts -dumpstream dvb://R1
|
|
1864 </screen>
|
|
1865
|
|
1866 <para>
|
|
1867 Jeżeli chcesz nagrać go w innym formacie (przekodowując go) możesz zamiast
|
|
1868 tego użyć polecenia takiego jak
|
|
1869 </para>
|
|
1870
|
|
1871 <screen>
|
|
1872 mencoder -o r1.avi -ovc xvid -xvidencopts bitrate=800 -oac mp3lame -lameopts cbr:br=128 -pp=ci dvb://R1
|
|
1873 </screen>
|
|
1874
|
|
1875 <para>
|
|
1876 Na stronie man znajdziesz listę opcji, które możesz przekazać modułowi wejścia
|
|
1877 DVB.
|
|
1878 </para>
|
|
1879
|
|
1880
|
|
1881 <formalpara>
|
|
1882 <title>PRZYSZŁOŚĆ</title>
|
|
1883 <para>
|
|
1884 Jeżeli masz pytania lub chcesz otrzymywać przyszłe ogłoszenia,
|
|
1885 a także wziąć udział w dyskusjach na ten temat, przyłącz się do naszej
|
|
1886 listy mailingowej
|
|
1887 <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-dvb">MPlayer-DVB</ulink>.
|
|
1888 Proszę pamiętaj, że językiem listy jest angielski.
|
|
1889 </para>
|
|
1890 </formalpara>
|
|
1891
|
|
1892 <para>
|
|
1893 W przyszłości możesz się spodziewać zdolności wyświetlania OSD i napisów
|
|
1894 przy użyciu natywnej cechy OSD kart DVB, a także bardziej płynnego
|
|
1895 odtwarzania filmów innych niż 25fps oraz transkodowania w czasie rzeczywistym MPEG2 i MPEG4
|
|
1896 (częściowa dekompresja)
|
|
1897 </para>
|
|
1898 </sect4>
|
|
1899
|
|
1900 <sect4 id="dxr2">
|
|
1901 <title>DXR2</title>
|
|
1902 <para><application>MPlayer</application> obsługuje sprzętowo przyśpieszane odtwarzanie przy
|
|
1903 użyciu karty DXR2.</para>
|
|
1904 <para>
|
|
1905 Przede wszystkim będziesz potrzebował poprawnie zainstalowanych sterowników DXR2.
|
|
1906 Sterowniki i instrukcję instalacji możesz znaleźć na stronie
|
|
1907 <ulink url="http://dxr2.sourceforge.net/">Centrum zasobów DXR2 (DXR2 Resource Center)</ulink>.
|
|
1908 </para>
|
|
1909
|
|
1910 <variablelist>
|
|
1911 <title>ZASTOSOWANIE</title>
|
|
1912 <varlistentry>
|
|
1913 <term><option>-vo dxr2</option></term>
|
|
1914 <listitem><para>włącz wyjście TV</para></listitem>
|
|
1915 </varlistentry>
|
|
1916
|
|
1917 <varlistentry>
|
|
1918 <term><option>-vo dxr2:x11</option> lub <option>-vo dxr2:xv</option></term>
|
|
1919 <listitem><para>włącz wyjście Overlay w X11</para></listitem>
|
|
1920 </varlistentry>
|
|
1921
|
|
1922 <varlistentry>
|
|
1923 <term><option>-dxr2 <opcja1:opcja2:...></option></term>
|
|
1924 <listitem><para>Ta opcja używana jest do sterowania sterownikiem DXR2.</para></listitem>
|
|
1925 </varlistentry>
|
|
1926 </variablelist>
|
|
1927
|
|
1928 <para>
|
|
1929 Graficzny układ maskujący (overlay chipset) używany w DXR2 jest złej jakości,
|
|
1930 ale standardowe ustawienia powinny działać u każdego.
|
|
1931 OSD może być użyte z maską (nie na TV) poprzez rysowanie go poprzez kolor kluczowy (colorkey).
|
|
1932 Ze standardowymi ustawieniami koloru kluczowego możesz uzyskać różne rezultaty,
|
|
1933 zwykle będziesz widział kolor kluczowy dookoła znaków lub inny śmieszny efekt.
|
|
1934 Jeżeli dobrze dostosujesz ustawienia koloru kluczowego powinieneś uzyskać akceptowalne wyniki.
|
|
1935 </para>
|
|
1936
|
|
1937 <para>Listę dostępnych opcji znajdziesz na stronie man.</para>
|
|
1938 </sect4>
|
|
1939
|
|
1940 <sect4 id="dxr3">
|
|
1941 <title>DXR3/Hollywood+</title>
|
|
1942 <para>
|
|
1943 <application>MPlayer</application> obsługuje sprzętowo przyśpieszane odtwarzanie
|
|
1944 na kartach Creative DXR3 oraz Sigma Designs Hollywood Plus.
|
|
1945 Obie te karty używają układu dekodującego em8300 firmy Sigma Designs.
|
|
1946 </para>
|
|
1947
|
|
1948 <para>
|
|
1949 Przede wszystkim będziesz potrzebował poprawnie zainstalowanych sterowników DXR3/H+
|
|
1950 w wersji 0.12.0 lub nowszej.
|
|
1951 Sterowniki i instrukcję ich instalacji możesz znaleźć na stronie
|
|
1952 <ulink url="http://dxr3.sourceforge.net/">DXR3 & Hollywood Plus dla Linuksa</ulink>.
|
|
1953 <filename>configure</filename> powinno wykryć Twoją kartę automatycznie, kompilacja powinna przebiec bez problemu.
|
|
1954 </para>
|
|
1955
|
|
1956 <!-- FIXME: find a more clear presentation -->
|
|
1957 <variablelist>
|
|
1958 <title>ZASTOSOWANIE</title>
|
|
1959 <varlistentry>
|
|
1960 <term><option>-vo dxr3:prebuf:sync:norm=x:<replaceable>device</replaceable></option></term>
|
|
1961 <listitem><para>
|
|
1962 <option>overlay</option> włącza maskę zamiast wyjścia TV.
|
|
1963 Do działania wymaga poprawnie skonfigurowanych ustawień maski.
|
|
1964 Najłatwiejszym sposobem konfiguracji maski jest odpalenie autocal.
|
|
1965 Następnie uruchom <application>MPlayera</application> z wyjściem dxr3 oraz z
|
|
1966 wyłączoną maską; uruchom dxr3view.
|
|
1967 W dxr3view możesz dostrajać ustawienia maski i oglądać efekty na bieżąco,
|
|
1968 być może będzie to w przyszłości obsługiwane przez GUI <application>MPlayera</application>.
|
|
1969 Po poprawnym ustawieniu maski nie będziesz już musiał używać dxr3view.
|
|
1970 <option>prebuf</option> włącza buforowanie z wyprzedzeniem (prebuffering).
|
|
1971 Prebuffering jest możliwością układu em8300, która umożliwia przetrzymywanie w pamięci
|
|
1972 więcej niż jednej ramki video na raz. Oznacza to, że <application>MPlayer</application>,
|
|
1973 gdy uruchomiony z włączonym prebufferingiem, będzie próbował cały czas utrzymywać
|
|
1974 wypełniony bufor. Jeżeli masz wolną maszynę, <application>MPlayer</application> będzie
|
|
1975 używał prawie lub dokładnie 100% CPU. Jest to szczególnie powszechne przy odtwarzaniu
|
|
1976 czystych strumieni MPEG (takich jak DVD, SVCD itd.). <application>MPlayer</application> wypełni
|
|
1977 bufor bardzo szybko, ponieważ nie będzie musiał przekodowywać strumienia do MPEG.
|
|
1978 Z prebufferingiem odtwarzanie video jest <emphasis role="bold">dużo</emphasis>
|
|
1979 mniej wrażliwe na inne programy wykorzystujące CPU. Nie będzie gubił ramek, chyba że
|
|
1980 inne aplikacje będą wykorzystywały CPU przez dłuższy czas.
|
|
1981 Gdy uruchamiany bez prebufferingu, em839 jest o wiele bardziej wrażliwy na obciążenie
|
|
1982 CPU, włączenie opcji <option>-framedrop</option> jest więc wysoce wskazane aby
|
|
1983 uniknąć dalszej utraty synchronizacji.
|
|
1984 <option>sync</option> włączy nowy mechanizm synchronizacji (sync-engine). Jest
|
|
1985 to na razie możliwość eksperymentalna. Z włączonym sync wewnętrzny zegar em8300
|
|
1986 będzie cały czas monitorowany. Gdy zacznie się różnić od zegara <application>MPlayera</application>
|
|
1987 zostanie zresetowany, czego skutkiem będzie opuszczenie przez em8300 wszystkich opóźnionych
|
|
1988 ramek. <option>norm=x</option> ustawi normę TV dla DXR3, bez potrzeby
|
|
1989 używania zewnętrznych narzędzi, takich jak em8300setup. Poprawnymi normami są:
|
|
1990 5 = NTSC, 4 = PAL-60, 3 = PAL. Specjalnymi normami są 2 (automatyczne dostrojenie
|
|
1991 używające PAL/PAL-60) oraz 1 (automatyczne dostrojenie używające PAL/NTSC);
|
|
1992 decydują one, której normy użyć patrząc na ilość klatek na sekundę filmu.
|
|
1993 norm = 0 (standardowe) nie zmienia obecnej normy.
|
|
1994 <option><replaceable>device</replaceable></option> = numer urządzenia, którego
|
|
1995 użyć jeżeli masz więcej niż jedną kartę em8300.
|
|
1996 Każda z tych opcji może zostać opuszczona.
|
|
1997 <option>:prebuf:sync</option> spisuje się doskonale przy odtwarzaniu filmów
|
|
1998 DivX. Niektórzy miewają problemy podczas odtwarzania plików MPEG1/2 korzystając
|
|
1999 z opcji prebuf. Spróbuj najpierw bez żadnych opcji. Jeżeli będziesz miał
|
|
2000 problemy z synchronizacją lub z napisami DVD wypróbuj <option>:sync</option>.
|
|
2001 </para></listitem>
|
|
2002 </varlistentry>
|
|
2003
|
|
2004 <varlistentry>
|
|
2005 <term><option>-ao oss:/dev/em8300_ma-<replaceable>X</replaceable></option></term>
|
|
2006 <listitem><para>
|
|
2007 Ustawia wyjście audio, gdzie <replaceable>X</replaceable> jest numerem urządzenia (0
|
|
2008 jeżeli pojedyncza karta).
|
|
2009 </para></listitem>
|
|
2010 </varlistentry>
|
|
2011
|
|
2012 <varlistentry>
|
|
2013 <term><option>-aop list=resample:fout=<replaceable>xxxxx</replaceable></option></term>
|
|
2014 <listitem><para>
|
|
2015 em8300 nie potrafi odgrywać dźwięku o częstotliwości próbkowania niższej niż
|
|
2016 44100Hz. Jeżeli częstotliwość próbkowania jest niższa niż 44100Hz wybierz
|
|
2017 44100HZ lub 48000Hz w zależności, która bardziej pasuje. Na przykład jeżeli film
|
|
2018 używa 22050Hz - wybierz 44100Hz (44100 / 2 = 22050), jeżeli używa 24000Hz -
|
|
2019 wybierz 48000Hz (48000 / 2 = 24000) i tak dalej. Nie działa to z cyfrowym
|
|
2020 wyjściem audio (<option>-ac hwac3</option>).
|
|
2021 </para></listitem>
|
|
2022 </varlistentry>
|
|
2023
|
|
2024 <varlistentry>
|
|
2025 <term><option>-vf lavc/fame</option></term>
|
|
2026 <listitem><para>
|
|
2027 Aby oglądać zawartość nie-MPEG na em8300 (np. DivX lub RealVideo) będziesz
|
|
2028 musiał określić filtr video MPEG1 taki jak libavcodec (lavc) lub libfame (fame).
|
|
2029 W tej chwili lavc jest szybszy i daje lepszą jakość obrazu. Sugerowanie jest
|
|
2030 jego użycie, chyba że masz z nim problemy. Spójrz na stronę man aby
|
|
2031 uzyskać więcej informacji o <option>-vf lavc/fame</option>. Używanie lavc jest
|
|
2032 wysoce zalecane. Obecnie nie istnieje sposób ustawienia współczynnika fps dla
|
|
2033 em8300, co oznacza, że jest on zablokowany na 29.97fps. Z tego powodu jest
|
|
2034 bardzo wskazane abyś używał
|
|
2035 <option>-vf lavc=<replaceable>quality</replaceable>:25</option>. Szczególnie
|
|
2036 jeżeli używasz buforowania z wyprzedzeniem. Dlaczego 25 a nie 29.97? Cóż,
|
|
2037 przy 29.97 odtwarzanie staje się nieco skokowe. Powód tego nie jest nam znany.
|
|
2038 Jeżeli ustawisz fps pomiędzy 25 a 27 obraz stanie się stabilny. W chwili obecnej
|
|
2039 nie możemy zrobić nić poza zaakceptowaniem tego faktu.
|
|
2040 </para></listitem>
|
|
2041 </varlistentry>
|
|
2042
|
|
2043 <varlistentry>
|
|
2044 <term><option>-vf expand=-1:-1:-1:-1:1</option></term>
|
|
2045 <listitem><para>
|
|
2046 Chociaż sterownik DXR3 może wstawić jakieś OSD w obraz MPEG1/2/4, ma ono wiele
|
|
2047 niższą jakość niż tradycyjne OSD <application>MPlayera</application>,
|
|
2048 ma także liczne problemy z odświeżaniem. Powyższa linia najpierw zamieni
|
|
2049 wejściowe video na MPEG4 (jest to konieczne, przepraszamy),
|
|
2050 następnie nałoży filtr expand (rozszerzenie), który
|
|
2051 nic nie rozszerzy (-1: standard) ale doda normalne OSD do obrazu (robi to ta
|
|
2052 jedynka na końcu).
|
|
2053
|
|
2054 </para></listitem>
|
|
2055 </varlistentry>
|
|
2056
|
|
2057 <varlistentry>
|
|
2058 <term><option>-ac hwac3</option></term>
|
|
2059 <listitem><para>
|
|
2060 em8300 obsługuje odtwarzanie AC3 audio (dźwięk przestrzenny) poprzez cyfrowe
|
|
2061 wyjście karty. Spójrz na opcję <option>-ao oss</option> powyżej. Musi ona być
|
|
2062 użyta aby określić wyjście DXR3 zamiast tego z karty dźwiękowej.
|
|
2063 </para></listitem>
|
|
2064 </varlistentry>
|
|
2065 </variablelist>
|
|
2066 </sect4>
|
|
2067
|
|
2068 </sect3>
|
|
2069
|
|
2070 <sect3 id="other">
|
|
2071 <title>Inny sprzęt do wizualizacji</title>
|
|
2072
|
|
2073 <sect4 id="zr">
|
|
2074 <title>Zr</title>
|
|
2075
|
|
2076 <para>
|
|
2077 Jest to sterownik wyświetlania (<option>-vo zr</option>) dla wielu kart
|
|
2078 służących do przechwytywania/odtwarzania MJPEG (testowane z DC10+ i Buz,
|
|
2079 powinien także działać dla LML33 oraz DC10). Sterownik koduje ramkę na JPEG i
|
|
2080 wysyła ją do karty. Do konwersji na JPEG używany i wymagany jest
|
|
2081 <systemitem>libavcodec</systemitem>. Korzystając ze specjalnego trybu
|
|
2082 <emphasis>cinerama</emphasis>
|
|
2083 <!--frogu: czy mają na myśli tutaj tryb XINERAMA???-->
|
|
2084 możesz oglądać filmy w formacie panoramicznym (wide screen), zakładając że masz
|
|
2085 dwa ekrany i dwie karty MJPEG. W zależności od rozdzielczości i ustawień
|
|
2086 jakości, sterownik ten może wymagać sporo mocy CPU. Pamiętaj aby użyć
|
|
2087 <option>-framedrop</option> jeżeli Twoja maszyna jest zbyt wolna. Info: Mój AMD
|
|
2088 K6-2 350MHz jest (z <option>-framedrop</option>) całkiem wystarczający do
|
|
2089 oglądania materiałów o rozmiarach VCD, oraz przeskalowanych w dół filmów.
|
|
2090 </para>
|
|
2091
|
|
2092 <para>
|
|
2093 sterownik ten "rozmawia" ze sterownikiem jądra dostępnym na
|
|
2094 <ulink url="http://mjpeg.sourceforge.net"/>, więc najpierw musisz go uruchomić.
|
|
2095 Obecność karty MJPEG jest wykrywana automatycznie przez skrypt
|
|
2096 <filename>configure</filename>. Jeżeli autodetekcja zawiedzie, wymuś wykrywanie
|
|
2097 używając <screen>./configure --enable-zr</screen>
|
|
2098 </para>
|
|
2099 <para>
|
|
2100 Wyjście można kontrolować licznymi opcjami. Obszerny opis opcji można znaleźć na
|
|
2101 stronie man, krótki poprzez wywołanie
|
|
2102 <screen>mplayer -zrhelp</screen>
|
|
2103 </para>
|
|
2104
|
|
2105 <para>
|
|
2106 Rzeczy takie jak skalowanie i OSD (wyświetlanie na ekranie) nie są obsługiwane
|
|
2107 przez ten sterownik, ale można je uzyskać poprzez filtry video. Załóżmy, że
|
|
2108 masz film w rozdzielczości 512x272 i chciałbyś go wyświetlić na pełnym
|
|
2109 ekranie, używając swojego DC10+. Istnieją trzy główne możliwości - możesz
|
|
2110 przeskalować film do szerokości 768, 384 lub 192. Ze względu na wydajność i
|
|
2111 jakość wybrałbym przeskalowanie filmu do 384x204 używając szybkiego programowego
|
|
2112 skalowania w trybie bilinear. Polecenie wygląda w ten sposób:
|
|
2113 <screen>
|
|
2114 mplayer -vo zr -sws 0 -vf scale=384:204 <replaceable>film.avi</replaceable>
|
|
2115 </screen>
|
|
2116 </para>
|
|
2117
|
|
2118 <para>
|
|
2119 Kadrowania można dokonać filtrem <option>crop</option> albo tym
|
|
2120 sterownikiem. załóżmy, że Twój film jest zbyt szeroki aby go wyświetlić na Twoim
|
|
2121 Buz i chcesz użyć <option>-zrcrop</option>, aby uczynić film mniej szerokim.
|
|
2122 Powinieneś użyć takiego polecenia:
|
|
2123 <screen>
|
|
2124 mplayer -vo zr -zrcrop 720x320+80+0 <replaceable>benhur.avi</replaceable>
|
|
2125 </screen>
|
|
2126 </para>
|
|
2127
|
|
2128 <para>
|
|
2129 jeżeli chcesz użyć filtru <option>crop</option> to wykonaj:
|
|
2130 <screen>
|
|
2131 mplayer -vo zr -vf crop=720:320:80:0 <replaceable>benhur.avi</replaceable>
|
|
2132 </screen>
|
|
2133 </para>
|
|
2134
|
|
2135 <para>
|
|
2136 Dodatkowe wystąpienia <option>-zrcrop</option> wywołują tryb
|
|
2137 <emphasis>cinerama</emphasis>. Możesz na przykład rozdzielić obraz na kilka TV
|
|
2138 lub projektorów, uzyskując w ten sposób większy ekran. Powiedzmy, że masz dwa
|
|
2139 projektory, lewy podłączony do karty Buz na <filename>/dev/video1</filename>
|
|
2140 a prawy do DC10+ na <filename>/dev/video0</filename>. Film jest w
|
|
2141 rozdzielczości 704x288. Załóżmy także, że chcesz żeby obraz z prawego projektora
|
|
2142 był czarno-biały oraz, że ramki jpeg wyświetlane z lewego projektora były
|
|
2143 jakości 10. Aby uzyskać taki efekt powinieneś wydać takie polecenie:
|
|
2144 <screen>
|
|
2145 mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \
|
|
2146 -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 \
|
|
2147 <replaceable>film.avi</replaceable>
|
|
2148 </screen>
|
|
2149 </para>
|
|
2150
|
|
2151 <para>
|
|
2152 Jak pewnie zauważyłeś opcje przed drugim <option>-zrcrop</option> odnoszą się
|
|
2153 tylko do DC10+ a opcje po drogim <option>-zrcrop</option> odnoszą się do Buz.
|
|
2154 Ilość kart uczestniczących w <emphasis>cinerama</emphasis> ograniczona jest do
|
|
2155 czterech, więc możesz zbudować ekran (ścianę video:) 2x2.
|
|
2156 <!--frogu: 2x2 vidiwall.=ściana video??-->
|
|
2157 </para>
|
|
2158
|
|
2159 <para>
|
|
2160 Na koniec - ważna uwaga: Nie włączaj ani wyłączaj XawTV na urządzeniu
|
|
2161 odtwarzającym - zawiesisz swój komputer. W porządku jest
|
|
2162 <emphasis role="bold">NAJPIERW</emphasis> włączyć XawTV,
|
|
2163 <emphasis role="bold">NASTĘPNIE</emphasis> włączyć <application>MPlayera</application>,
|
|
2164 poczekać aż <application>MPlayer</application> zakończy działanie i
|
|
2165 <emphasis role="bold">POTEM</emphasis> wyłączyć XawTV.
|
|
2166 </para>
|
|
2167 </sect4>
|
|
2168
|
|
2169 <sect4 id="blinkenlights">
|
|
2170 <title>Blinkenlights</title>
|
|
2171 <para>
|
|
2172 Ten sterownik zdolny jest do odtwarzanie używając protokołu UDP Blinkenlights
|
|
2173 (mrugające światła - przyp. tłum.). Jeżeli nie wiesz czym jest
|
|
2174 <ulink url="http://www.blinkenlights.de/">Blinkenlights</ulink>,
|
|
2175 nie potrzebujesz tego sterownika.
|
|
2176 </para>
|
|
2177 </sect4>
|
|
2178 </sect3>
|
|
2179
|
|
2180 <sect3 id="tvout">
|
|
2181 <title>Obsługa wyjścia TV</title>
|
|
2182
|
|
2183 <sect4 id="tvout-mga-g400">
|
|
2184 <title>Karty Matrox G400</title>
|
|
2185
|
|
2186 <para>
|
|
2187 Pod Linuksem istnieją dwa sposoby uruchomienia wyjścia TV na karcie Matrox G400:
|
|
2188 </para>
|
|
2189
|
|
2190 <important>
|
|
2191 <para>
|
|
2192 instrukcje dla Matrox G450/G550 znajdują się w następnej sekcji!
|
|
2193 </para>
|
|
2194 </important>
|
|
2195
|
|
2196 <variablelist>
|
|
2197 <varlistentry>
|
|
2198 <term>XFree86</term>
|
|
2199 <listitem><para>
|
|
2200 Używając sterownika oraz modułu HAL, dostępnego na
|
|
2201 <ulink url="http://www.matrox.com">stronie Matroksa</ulink>. Będziesz miał X
|
|
2202 na TV.
|
|
2203 </para><para>
|
|
2204 <emphasis role="bold">Ten sposób nie umożliwia Ci przyśpieszanego
|
|
2205 odtwarzania</emphasis> jak pod Windowsami! Drugie wyjście ma tylko bufor
|
|
2206 ramki YUV, <emphasis>BES</emphasis> (Back End Scaler, układ skalujący YUV na
|
|
2207 kartach G200/G400/G450/G550) tam nie działa. Windowsowy sterownik jakoś to
|
|
2208 obchodzi, prawdopodobnie używając silnika (engine) 3D do powiększania, a
|
|
2209 bufora ramki YUV do wyświetlania obrazu. Jeżeli na prawdę musisz używać X,
|
|
2210 użyj opcji <option>-vo x11 -fs -zoom</option>. Ostrzegam, że będzie to
|
|
2211 <emphasis role="bold">WOLNE</emphasis> i będzie miało włączone zabezpieczenie przed
|
|
2212 kopiowaniem <emphasis role="bold">Macrovision</emphasis> (Macrovision copy protection).
|
|
2213 (możesz "obejść" Macrovision używając tego
|
|
2214 <ulink url="http://avifile.sourceforge.net/mgamacro.pl">skryptu perla</ulink>).
|
|
2215 </para></listitem>
|
|
2216 </varlistentry>
|
|
2217 <varlistentry>
|
|
2218 <term>Bufor ramki (framebuffer)</term>
|
|
2219 <listitem><para>
|
|
2220 Używając <emphasis role="bold">modułów matroxfb</emphasis> w jądrach 2.4.
|
|
2221 2.2 nie obsługują wyjścia TV, więc są do tego celu bezużyteczne. Musisz
|
|
2222 włączyć WSZYSTKIE specyficzne dla matroxfb podczas kompilacji (poza
|
|
2223 MultiHead) i skompilować je w <emphasis role="bold">moduły</emphasis>!
|
|
2224 Będziesz także potrzebował włączonego I2C.
|
|
2225 </para>
|
|
2226
|
|
2227 <procedure>
|
|
2228 <step><para>
|
|
2229 Wejdź do <filename class="directory">TVout</filename> i wpisz
|
|
2230 <command>./compile.sh</command>. Zainstaluj
|
|
2231 <filename>TVout/matroxset/matroxset</filename> w jakimś katalogu
|
|
2232 znajdującym się w zmiennej <envar>PATH</envar>.
|
|
2233 </para></step>
|
|
2234 <step><para>
|
|
2235 Jeżeli nie masz zainstalowanego <command>fbset</command>, umieść
|
|
2236 <filename>TVout/fbset/fbset</filename> gdzieś w
|
|
2237 swojej zmiennej <envar>PATH</envar>.
|
|
2238 </para></step>
|
|
2239 <step><para>
|
|
2240 Jeżeli nie masz zainstalowanego <command>con2fb</command>, umieść
|
|
2241 <filename>TVout/con2fb/con2fb</filename>gdzieś w
|
|
2242 swojej zmiennej <envar>PATH</envar>.
|
|
2243 </para></step>
|
|
2244 <step><para>
|
|
2245 Następnie wejdź do katalogu <filename class="directory">TVout/</filename>
|
|
2246 w źródłach <application>MPlayera</application> i uruchom
|
|
2247 <filename>./modules</filename> jako root. Twoja konsola tekstowa wejdzie w
|
|
2248 tryb framebuffer (nie ma odwrotu!).
|
|
2249 </para></step>
|
|
2250 <step><para>
|
|
2251 Następnie, WYEDYTUJ i uruchom skrypt <filename>./matroxtv</filename>.
|
|
2252 Ukaże Ci się bardzo proste menu. Naciśnij <keycap>2</keycap> i
|
|
2253 <keycap>Enter</keycap>. Teraz powinieneś mieć ten sam obraz na monitorze i
|
|
2254 TV. Jeżeli na obrazie TV (standardowo PAL) są jakieś paski, znaczy to, że
|
|
2255 skrypt nie był w stanie poprawnie ustawić rozdzielczości (standardowo na
|
|
2256 640x512). Wypróbuj inne rozdzielczości z menu i/lub poeksperymentuj z
|
|
2257 fbset.
|
|
2258 </para></step>
|
|
2259 <step><para>
|
|
2260 Tiaa. Następnym zadaniem będzie sprawienie aby kursor na tty1 (lub innym)
|
|
2261 zniknął oraz aby wyłączyć wygaszanie ekranu. Wykonaj następujące
|
|
2262 polecenia:
|
|
2263 <!--Tiaa :) było: Yah (od: yeah)-->
|
|
2264
|
|
2265 <screen>
|
|
2266 echo -e '\033[?25l'
|
|
2267 setterm -blank 0<!--
|
|
2268 --></screen>
|
|
2269 lub
|
|
2270 <screen>
|
|
2271 setterm -cursor off
|
|
2272 setterm -blank 0<!--
|
|
2273 --></screen>
|
|
2274
|
|
2275 Możliwe, że chcesz umieścić to w skrypcie, a także wyczyścić ekran. Aby
|
|
2276 z powrotem włączyć kursor:
|
|
2277 <screen>echo -e '\033[?25h'</screen> lub
|
|
2278 <screen>setterm -cursor on</screen>
|
|
2279 </para></step>
|
|
2280 <step><para>
|
|
2281
|
|
2282 Tiaa git. Rozpocznij odtwarzanie filmu przez:
|
|
2283 <!--Tiaa git :) było: Yeah kewl (od: yeah cool)-->
|
|
2284 <screen>
|
|
2285 mplayer -vo mga -fs -screenw 640 -screenh 512 <replaceable>nazwa_pliku</replaceable><!--
|
|
2286 --></screen>
|
|
2287
|
|
2288 (Jeżeli używasz X, przełącz się teraz na matroxfb używając np.
|
|
2289 <keycap>Ctrl</keycap>+<keycap>Alt</keycap>+<keycap>F1</keycap>.)
|
|
2290 Zmień <literal>640</literal> oraz <literal>512</literal> jeżeli chcesz
|
|
2291 ustawić inną rozdzielczość...
|
|
2292 </para></step>
|
|
2293 <step><para>
|
|
2294 <emphasis role="bold">Ciesz się ultra-szybkim ultra-bajernym wyjściem TV
|
|
2295 Matroksa (lepsze niż Xv)!</emphasis>
|
|
2296 <!-- ultra-fast ultra-featured -->
|
|
2297 </para></step>
|
|
2298 </procedure>
|
|
2299 </listitem>
|
|
2300 </varlistentry>
|
|
2301 </variablelist>
|
|
2302
|
|
2303 <formalpara>
|
|
2304 <title>Konstruowanie kabla TV-out do Matroksów</title>
|
|
2305 <para>
|
|
2306 Nikt nie bierze na siebie ŻADNEJ odpowiedzialności za zniszczenia spowodowane tą
|
|
2307 dokumentacją.
|
|
2308 </para>
|
|
2309 </formalpara>
|
|
2310
|
|
2311 <formalpara>
|
|
2312 <title>Kabel dla G400</title>
|
|
2313 <para>
|
|
2314 W złączu CRTC2 na czwartej nóżce (pin) jest sygnał composite video. Ziemia
|
|
2315 (uziemienie) jest na szóstej, siódmej i ósmej nóżce. (info dostarczone przez
|
|
2316 Balázs Rácz)
|
|
2317
|
|
2318 </para>
|
|
2319 </formalpara>
|
|
2320
|
|
2321 <formalpara>
|
|
2322 <title>Kabel dla G450</title>
|
|
2323 <para>
|
|
2324 W złączu CTRC2 na pierwszej nóżce jest sygnał composite video. Ziemia jest na
|
|
2325 piątej, szóstej, siódmej i pietnastej (5, 6, 7, 15) nóżce. (info dostarczone
|
|
2326 przez Balázs Kerekes)
|
|
2327 </para>
|
|
2328 </formalpara>
|
|
2329 </sect4>
|
|
2330
|
|
2331 <sect4 id="tv-out_matrox_g450">
|
|
2332 <title>Karty Matrox G450/G550</title>
|
|
2333 <para>
|
|
2334 Obsługa wyjścia TV dla tych kart została przedstawione dopiero niedawno i nie
|
|
2335 należy jeszcze do głównego drzewa jądra. <!--mainstream kernel-->. Z tego co
|
|
2336 wiem obecnie moduł <emphasis role="bold">mga_vid</emphasis> nie może być użyty
|
|
2337 ponieważ sterownik G450/G550 pracuje tylko w jednej konfiguracji: pierwszy układ
|
|
2338 CRTC (z wieloma możliwościami) na pierwszym ekranie (monitor) i drugi CRTC (bez
|
|
2339 <emphasis role="bold">BES</emphasis> - po objaśnienia do BES sięgnij do sekcji
|
|
2340 wyżej) na TV. W chwili obecnej możesz więc używać tylko sterownika wyjścia
|
|
2341 <emphasis>fbdev</emphasis> <application>MPlayera</application>.
|
|
2342 </para>
|
|
2343
|
|
2344 <para>
|
|
2345 Obecnie pierwszy CRTC nie może być przekierowany na drugie wyjście. Autor
|
|
2346 sterownika jądra matroxfb - Petr Vandrovec - być może zrobi obsługę tego poprzez
|
|
2347 wyświetlanie wyjścia z pierwszego CRTC na obydwa złącza jednocześnie, jak to
|
|
2348 jest w tej chwili zalecane dla G400 (-> sekcja wyżej).
|
|
2349 </para>
|
|
2350
|
|
2351 <para>
|
|
2352 Potrzebną łatkę na jądro i dokładne howto można ściągnąć z
|
|
2353 <ulink url="http://www.bglug.ca/matrox_tvout/"/>
|
|
2354 </para>
|
|
2355 </sect4>
|
|
2356
|
|
2357
|
|
2358 <sect4 id="tvout-ati">
|
|
2359 <title>karty ATI</title>
|
|
2360
|
|
2361 <formalpara>
|
|
2362 <title>WSTĘP</title>
|
|
2363 <para>
|
|
2364 Obecnie ATI nie chce wspierać pod Linuksem żadnego z układów TV-out, z powodu ich
|
|
2365 licencjonowanej technologii Macrovision.
|
|
2366 </para>
|
|
2367 </formalpara>
|
|
2368
|
|
2369 <itemizedlist>
|
|
2370 <title>STATUS KART ATI Z TV-OUT POD LINUKSEM</title>
|
|
2371 <listitem><simpara>
|
|
2372 <emphasis role="bold">ATI Mach64</emphasis>:
|
|
2373 obsługiwane przez <ulink url="http://gatos.sf.net">gatos</ulink>.
|
|
2374 </simpara></listitem>
|
|
2375 <listitem><simpara>
|
|
2376 <emphasis role="bold">ASIC Radeon VIVO</emphasis>:
|
|
2377 obsługiwane przez <ulink url="http://gatos.sf.net">gatos</ulink>.
|
|
2378 </simpara></listitem>
|
|
2379 <listitem><simpara>
|
|
2380 <emphasis role="bold">Radeon</emphasis> oraz <emphasis role="bold">Rage128</emphasis>:
|
|
2381 obsługiwane przez <application>MPlayera</application>!
|
|
2382 Sprawdź sekcje <link linkend="vesa">sterownik VESA</link> oraz
|
|
2383 <link linkend="vidix">VIDIX</link>.
|
|
2384 </simpara></listitem>
|
|
2385 <listitem><simpara>
|
|
2386 <emphasis role="bold">Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4</emphasis>:
|
|
2387 obsługiwane przez <ulink url="http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/">atitvout</ulink>.
|
|
2388 </simpara></listitem>
|
|
2389 </itemizedlist>
|
|
2390
|
|
2391 <para>
|
|
2392 Na innych kartach używaj sterownika <link linkend="vesa">VESA</link>, bez VIDIX.
|
|
2393 Potrzebny jest jednak potężny CPU.
|
|
2394 </para>
|
|
2395
|
|
2396 <para>
|
|
2397 Jedyna rzecz, którą musisz zrobić to:
|
|
2398 <emphasis role="bold">Mieć podłączony odbiornik TV przez zabootowaniem swojego
|
|
2399 PC</emphasis>, ponieważ video BIOS inicjalizuje się tylko podczas procedury POST.
|
|
2400 </para>
|
|
2401 </sect4>
|
|
2402
|
|
2403
|
|
2404 <sect4 id="tvout-voodoo">
|
|
2405 <title>Voodoo 3</title>
|
|
2406 <para>
|
|
2407 Sprawdź <ulink url="http://www.iki.fi/too/tvout-voodoo3-3000-xfree">ten URL</ulink>.
|
|
2408 </para>
|
|
2409 </sect4>
|
|
2410
|
|
2411 <sect4 id="tvout-nvidia">
|
|
2412 <title>nVidia</title>
|
|
2413 <para>
|
|
2414 Najpierw MUSISZ ściągnąć sterowniki o zamkniętych źródłach z
|
|
2415 <ulink url="http://nvidia.com"/>. Nie będę tutaj opisywał procesu instalacji i
|
|
2416 konfiguracji ponieważ nie jest to celem tej dokumentacji.
|
|
2417 </para>
|
|
2418
|
|
2419 <para>
|
|
2420 Jeżeli XFree86, XVideo i przyśpieszanie 3D już działa prawidłowo, przerób
|
|
2421 sekcję Device swojej karty w pliku <filename>XF86Config</filename> zgodnie z
|
|
2422 poniższym wzorcem (dostosuj do swojej karty/TV):
|
|
2423 <programlisting>
|
|
2424 Section "Device"
|
|
2425 Identifier "GeForce"
|
|
2426 VendorName "ASUS"
|
|
2427 BoardName "nVidia GeForce2/MX 400"
|
|
2428 Driver "nvidia"
|
|
2429 #Option "NvAGP" "1"
|
|
2430 Option "NoLogo"
|
|
2431 Option "CursorShadow" "on"
|
|
2432
|
|
2433 Option "TwinView"
|
|
2434 Option "TwinViewOrientation" "Clone"
|
|
2435 Option "MetaModes" "1024x768,640x480"
|
|
2436 Option "ConnectedMonitor" "CRT, TV"
|
|
2437 Option "TVStandard" "PAL-B"
|
|
2438 Option "TVOutFormat" "Composite"
|
|
2439
|
|
2440 EndSection
|
|
2441 </programlisting>
|
|
2442 </para>
|
|
2443
|
|
2444 <para>
|
|
2445 Oczywiście najważniejsza jest część TwinView.
|
|
2446 </para>
|
|
2447 </sect4>
|
|
2448
|
|
2449 <sect4 id="tvout-neomagic">
|
|
2450 <title>Neomagic</title>
|
|
2451 <para>
|
|
2452 Przetestowane na Toshiba Tecra 8000. Jego układ wyjścia TV jest żałosnym złomem.
|
|
2453 Unikaj tego jeżeli tylko możesz.
|
|
2454 </para>
|
|
2455 <para>
|
|
2456 Musisz używać <option>-vo vesa</option>. Testowany układ był zdolny do
|
|
2457 wyświetlania obrazu tylko w formacie (proporcjach) 1.333333, wiec musisz używać
|
|
2458 opcji <option>-x</option>, <option>-y</option> i/lub filtrów
|
|
2459 <option>-vf scale,crop,expand</option> jeżeli sprzęt nie pozwoli Ci włączyć
|
|
2460 wyjścia TV. Maksymalną rozdzielczością było 720*576 przy 16bpp.
|
|
2461 </para>
|
|
2462 <para>
|
|
2463 Znane problemy: tylko VESA, ograniczenie do 1.33333, obraz nie zawsze jest
|
|
2464 wyśrodkowany, co 10 minut film zmienia się na 4bpp i tak zostaje. Częste twarde
|
|
2465 zwisy, problemy z wyświetlaczem LCD.
|
|
2466 </para>
|
|
2467 </sect4>
|
|
2468 </sect3>
|
|
2469 </sect2>
|
|
2470
|