view DOCS/pl/video.html @ 10440:890f35b31edd

SSE os support detection for windows
author faust3
date Sat, 19 Jul 2003 12:25:18 +0000
parents bbf6f508a343
children
line wrap: on
line source

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>

<HEAD>
  <TITLE>Wideo - MPlayer - Odtwarzacz filmów dla Linuksa</TITLE>
  <LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
</HEAD>

<BODY>


<H3><A NAME="video">2.3.1 Urządzenia wyjścia Wideo</A></H3>


<H4><A NAME="mtrr">2.3.1.1 Ustawianie MTRR</A></H4>

<P>Jest bardzo sugerowane, by sprawdzić, czy rejestry MTRR są ustawione właściwie,
gdyż mogą one dużo zwiększyć wydajność.</P>

<P>Wykonaj '<CODE>cat /proc/mtrr</CODE>':</P>

<P><CODE>
  --($:~)-- cat /proc/mtrr<BR>
  reg00: base=0xe4000000 (3648MB), size=  16MB: write-combining, count=9<BR>
  reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1</CODE></P>

<P>To prawda, pokazuje mojego Matrox G400 z 16Mb pamięci. Wykonałem to z
   XFree 4.x.x , z ustawionymi automatycznie rejestrami MTRR.</P>

<P>Jeśli nic nie działa, powinienieś wykonać to ręcznie. Najpierw musisz odnaleść adres bazowy.
   Możesz to zrobić na 3 sposoby:</P>

<UL>
  <LI>ze startowego komunikatu X11, na przykład:
    <P><CODE>(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000<BR>
    (--) SVGA: Linear framebuffer at 0xD8000000</CODE></P></LI>
  <LI>z /proc/pci (użyj polecenia lspci -v):
    <P>
    <CODE>01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525</CODE>
    <CODE>Memory at d8000000 (32-bit, prefetchable)</CODE>
    </P></LI>
  <LI>z komunikatu sterownika jądra mga_vid (użyj <CODE>dmesg</CODE>):
    <P><CODE>mga_mem_base = d8000000</CODE></P></LI>
</UL>

<P>Następnie wyszukaj rozmiar pamięci. Jest to bardzo łatwe, wystarczy, że przekonwertujesz rozmiar pamięci
   wideo do liczby heksadecymalnej, lub po prostu użyjesz poniższej tabeli:</P>

<TABLE BORDER=0>
  <TR><TD>&nbsp;&nbsp;</TD><TD>1 MB</TD><TD WIDTH="10%"></TD><TD>0x100000</TD></TR>
  <TR><TD></TD><TD>2 MB</TD><TD></TD><TD>0x200000</TD></TR>
  <TR><TD></TD><TD>4 MB</TD><TD></TD><TD>0x400000</TD></TR>
  <TR><TD></TD><TD>8 MB</TD><TD></TD><TD>0x800000</TD></TR>
  <TR><TD></TD><TD>16 MB</TD><TD></TD><TD>0x1000000</TD></TR>
  <TR><TD></TD><TD>32 MB</TD><TD></TD><TD>0x2000000</TD></TR>
</TABLE>


<P>Znasz już adres bazowy i rozmiar pamięci, więc zabierz się do ustawień!
   Na przykład, dla powyższej karty Matrox (bazowy=0xd8000000) z 32MB ramu
   (rozmiar=0x2000000) wystarczy, że uruchomisz:</P>

<P><CODE>&nbsp;&nbsp;echo "base=0xd8000000 size=0x2000000 type=write-combining" &gt;| /proc/mtrr</CODE></P>

<P>Nie wszystkie procesory wspierają MTRRy. Na przykład starsze K6-2 [około 266Mhz,
   stepping 0] nie wspierają MTRR, ale stepping 12 już tak ('<CODE>cat /proc/cpuinfo</CODE>'
   by to sprawdzić').</P>

<H4><A NAME="normal">2.3.1.2 Wyjścia wideo dla tradycyjnych kary graficznych</A></H4>

<H4><A NAME="xv">2.3.1.2.1 Xv</A></H4>

<P>Pod XFree86 4.0.2, lub nowszymi, możesz używać sprzętowej procedury YUV twojej karty
   używając rozszerzenia XVideo. Używa tego opcja '-vo xv'. Także sterownik ten wspiera
   modyfikowanie jasności/kontrastu/hue/itp (chyba, że używasz starego, wolnego kodeka DirectShow
   DivX, który wspiera to wszędzie), zobacz stronę manuala.</P>
   
   <P>Żeby wykonać tą czynność, powinienieś sprawdzić następujące rzeczy:</P>

<UL>
  <LI>Czy używasz XFree86 4.0.2 lub nowszego (poprzednie wersje nie zawierają XVideo)</LI>
  <LI>Czy twoja karta obecnie wspiera akcelerację sprzętową (nowoczesne karty tak)</LI>
  <LI>XSerwer ładuje rozszerzenie XVideo, jest to coś w stylu:

    <P><CODE>&nbsp;&nbsp;(II) Loading extension XVideo</CODE></P>

    <P>w /var/log/XFree86.0.log</P>

    <P>INFORMACJA: to ładuje tylko rozszerzenia XFree86. W poprawnej instalacji zawsze
       to ładuje, ale nie oznacza, że wsparcie XVideo _karty_ jest załadowane!</P>
  </LI>
  <LI>Twoja karta posiada wsparcie Xv pod Linuksem. By to sprawdzić, spróbuj 'xvinfo', jest
      to partia dystrybucjii XFree86. Powinno wyświetlić długi tekst, podobny do tego :
  <PRE>
	X-Video Extension version 2.2
	screen #0
	  Adaptor #0: "Savage Streams Engine"
	    number of ports: 1
	    port base: 43
	    operations supported: PutImage
	    supported visuals:
	      depth 16, visualID 0x22
	      depth 16, visualID 0x23
	    number of attributes: 5
	(...)
	    Number of image formats: 7
	      id: 0x32595559 (YUY2)
	        guid: 59555932-0000-0010-8000-00aa00389b71
	        bits per pixel: 16
	        number of planes: 1
	        type: YUV (packed)
	      id: 0x32315659 (YV12)
	        guid: 59563132-0000-0010-8000-00aa00389b71
	        bits per pixel: 12
	        number of planes: 3
	        type: YUV (planar)
	(...itd...)
  </PRE>
    <P>Musi wspierać pakiet YUY2 i format płaskich pikseli YV12, by mógłbyć używany z
       MPlayerem</P>
  </LI>
  <LI>I na końcu sprawdź, czy został skompilowany z obsługą 'xv'.
      ./configure wyświetli to.</LI>
</UL>


<H4><A NAME="xv_3dfx">2.3.1.2.1.1 Karty 3dfx</A></H4>

<P>Starsze karty 3dfx znane były z problemów z akceleracją XVideo,
   nie wspierały obydwu YUY2 lub YV12. Sprawdź, czy posiadasz XFree86
   w wersjii 4.2.0 lub nowszej, które pracują dobrze z YV12 i YUY2. Poprzednie wersje,
   włączając 4.1.0 <B>wywalały się przy YV12</B>!
   Jeśli twoje doznania dają dziwne efekty przy użytku -vo xv, spróbuj SDL (posiada także XVideo)
   i zobacz, jeśli pomaga. Sprawdź sekcję <A HREF="#sdl">SDL</A>po szczegóły.</P>


<P><B>LUB</B>, wypróbuj nowego sterownika -vo tdfxfb! Zobacz sekcję
  <A HREF="#tdfxfb">tdfxfb</A>.</P>


<H4><A NAME="xv_s3">2.3.1.2.1.2 Karty S3</A></H4>

<P>S3 Savage3D powinny pracować dobrze, ale dla Savage4, użyj XFree86 w wersji 4.0.3
   lub nowszej (w przypadku problemów z obrazem spróbuj 16bpp). Również dla S3 Virge... istnieje wsparcie
   dla xv, lecz karta sama w sobie jest bardzo wolna, lepiej będzie więc jak ją sprzedaż.</P>

<P><B>INFORMACJA</B>: nie jest obecnie jasne, które modele Savage nie posiadają
      wsparcia YV12 i konwertacji przez sterownik (wolne). Jeśli podejrzeważ o to
      twoją kartę, pobierz najnowsze sterowniki lub uprzejmie spytaj na liście mailingowej  
      mplayer-users o sterownik włączający  MMX/3DNow.</P>


<H4><A NAME="xv_nvidia">2.3.1.2.1.3 Karty nVidia</A></H4>

<P>nVidia nie jest najlepszym wyborem dla Linuksa (według NVidii, 
   <A HREF="users_against_developers.html#nvidia">nie jest to prawdą</A>).. Będziesz potrzebował
   binarnych, zamkniętych (bez kodu źródłowego) sterowników nVidia,  dostępnych na stronie nVidii.
   Standardowe sterowniki XFree86 nie wspierają XVideo dla tych kard, należnych do zamkniętego
   kodu/specyfikacji nVidii.</P>

<P>O ile wiem ostatnie sterowniki XFree86 zawierają wsparcie XVideo dla Geforce 2 i 3.</P>

<P>Karty Riva128 nie posiadają wsparcia XVideo również ze sterownikami nvidia :(
   Skargi do NVidii.</P>


<H4><A NAME="xv_ati">2.3.1.2.1.4 Karty ATI </A></H4>

<UL>
  <LI><A HREF="http://gatos.sourceforge.net">Sterowniki GATOS</A> (których powninieneś
  używać, chyba że masz Rage128 lub Radeona) posiadają domyślnie włączone VSYNC. Oznacza to,
  że prędkość dekodowania (!) jest zsynchronizowana z tempem odświeżania monitora. Jeśli
  odtwarzanie zdaje się być wolne, spróbuj wyłączyć w jakiś sposób VSYNC, albo ustaw tempo odświeżania do
  n*(ilość fpsów w filmie) Hz.</LI>
  <LI>Radeon VE - obecnie tylko XFree86 CVS posiada sterowniki do tych kart, wersja 4.1.0 nie.
  I nie ma wsparcia dla wyjścia TV. Oczywiście za pomocą <B>MPlayera</B> możesz uzyskać
  <B>zakcelerowane</B> wyświetlanie, z/lub bez <B>wyjścia TV</B>. Nie są potrzebne żadne
  biblioteki lub X. Czytaj sekcję  <A HREF="#vidix">VIDIX</A></LI>
</UL>


<H4><A NAME="xv_neomagic">2.3.1.2.1.5 Karty NeoMagic</A></H4>

<P>Karty te mogą być znalezione w dużej ilości laptopów. Niestety sterowniki w
  X 4.2.0 nie potrafią wykonać Xv, ale mamy dla ciebie zmodyfikowane sterowniki zdolne do Xv.
  <A HREF="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neomagic_drv.o.4.2.0.bz2">Ściągnij stąd</A>.
  Sterownik dostarczony został przez Stefana Seyfrieda.</P>

<P>By udostępnić odtwarzanie DVD zadowalająco, zmień XF86Config tak jak niżej:</P>

<P>Section "Device"<BR>
  &nbsp; &nbsp; <I>[...]</I><BR>
  &nbsp; &nbsp; Driver "neomagic"<BR>
  &nbsp; &nbsp; <B>Option "OverlayMem" "829440"</B><BR>
  &nbsp; &nbsp; <I>[...]</I><BR>
  EndSection</P>


<H4><A NAME="xv_trident">2.3.1.2.1.6 Karty Trident</A></H4>

<P>Jeśli chcesz używać Xv z kartą Trident, bądź pewnien, że nie pracuje ona
  z 4.1.0, zainstaluj XFree 4.2.0. W 4.2.0 dodano wsparcie dla pełnoekranowego xv 
  wspieranego przez kartę Cyberblade XP.</P>


<H4><A NAME="xv_powervr">2.3.1.2.1.7 Karty Kyro/PowerVR</A></H4>

<P>Jeśli chcesz używać Xv z kartami bazyjącymi na Kyro (na przykład Hercules Prophet
  4000XT), powninieneś pobrać sterowniki ze
  <A HREF="http://www.powervr.com/">strony PowerVR</A>.</P>


<H4><A NAME="dga">2.3.1.2.2 DGA</A></H4>


<H4>WSTĘP</H4>

<P>Dokumant ten ma na celu wyjaśnić w kilku słowach, czym jest ogólnie DGA i
   co sterowniki wyjścia wideo DGA mogą zrobić dla mplayera (i czego nie mogą).</P>


<H4>CZYM JEST DGA</H4>

<P>DGA jest skrótem od Direct Graphics Access (bezpośredni dostęp graficzny)
   i oznacza to dla programu obejście X-Serwera i bezpośrednią modyfikację 
   pamięci framebuffera. Technicznie rzecz mówiąc, dzieje się to przez mapowanie 
   pamięci framebuffera w zakresie pamięci twojego procesu.
   Zezwalane jest to przez jądro tylko jeśli posiadasz uprawnienia superużytkownika.
   Możesz je otrzymać przez zalogowanie się jako roota, albo ustawiając bit suida 
   na pliku wykonalnym mplayera (<B>nie sugerowane</B>).</P>

<P>Istnieją dwie wersje DGA: DGA1 używane jest przez XFree 3.x.x i DGA2 wprowadzone
   z 4.0.1.</P>

<P>DGA1 dostarcza tylo bezpośredni dostęp framebuffera, jak opisano wyżej. By
   przełączać rozdzielczość sygnału wideo, musisz polegać na rozszerzeniu
   VidMode.</P>

<P>DGA2 łączy cechy rozszerzenia XVidMode, a także zezwala na przełączanie 
   głębi wyświetlania. Możesz więc, choć podstawowo uruchamiasz XSerwer w głębi 32-bitowej,
   przełączyć do głębi 15-bitowej i na odwrót.</P>

<P>DGA posiada jednak pewne wady. Jak widac jest trochę zależny od chipu graficznego,
   jakiego używasz i od implementacji sterowników wideo XServera, które sterują chipem.
   Więc nie działa on na wszystkich systemach</P>


<H4>INSTALACJA WSPARCIA DGA DLA MPLAYERA</H4>

<P>Najpierw sprawdź, czy rozszerzenie DGA zostało załadowane przez serwer X, 
   zajrzyj do /var/log/XFree86.0.log:</P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;<CODE>(II) Loading extension XFree86-DGA</CODE></P>

<P>Spójrz, XFree86 4.0.x lub wyższe jest BARDZO REKOMENDOWANE!
   Sterownik DGA MPlayera automatycznie wykrywana przez ./configure, ale możesz wymysić
   go przez --enable-dga</P>

<P>Jeśli sterownik nie może przełączyć do mniejszej rozdzielczości, eksperymantuj z
   przełączaniem -vm (tylko z X 3.3.x), -fs, -bpp, -zoom, by znaleść tryb wideo, który zgadza się
   z filmem. Nie ma obecnie prawidłowego konwertera :(</P>

<P>Zostań ROOTEM. DGA wymaga dostępu roota, by móc zapisywać bezpośrednio do pamięci.
   Jeśli zamierzasz uruchamiać go jako użytkownik, zainstaluj MPlayera z SUID roota:</P>

<P><CODE>
  &nbsp;&nbsp;&nbsp;&nbsp;chown root /usr/local/bin/mplayer<BR>
  &nbsp;&nbsp;&nbsp;&nbsp;chmod 750 /usr/local/bin/mplayer<BR>
  &nbsp;&nbsp;&nbsp;&nbsp;chmod +s /usr/local/bin/mplayer</CODE></P>

<P>Teraz będzie także pracował jako zwykły użytkownik.</P>

<BLOCKQUOTE>
  <B>Ostrzeżenie: ryzyko bezpieczeństwa</B><BR>
  Jest to <B>duże</B> ryzyko bezpieczeństwa! <B>Nigdy</B> nie rób tego na serwerach, lub komputerach,
  które są dostępne dla więcej ludzi niż tylko ciebie, ponieważ mogą oni zdobyć prawa roota
  poprzez suida mplayera.
</BLOCKQUOTE>

<P>Teraz użyj opcji <CODE>-vo dga</CODE> i już (mam nadzieję :))!
  Powinieneś spróbować także opcji <CODE>-vo sdl:dga</CODE>. 
  Jest trochę szybsza.</P>


<H4><A NAME="dga_modelines">PRZEŁĄCZANIE ROZDZIELCZOŚCI</A></H4>

<P>Sterowniki DGA pozwalają na przełączenia rozdzielczości sygnału wyjściowego.
   Unikają one wykonywania (wolnego) skalowania sprzętowego i w tym samym czasie
   zapewniają pełnoekranowy obraz. Idealne wyjście, jeśli chciałeś przełączyć do
   ścisłej rozdzielczości (wykluczając zaszczytny stosynek) danych wideo, ale XSerwer
   zezwala tylko na przełączanie do zdefiniowanych wcześniej rozdzielczości w
   <CODE>/etc/X11/XF86Config</CODE> (<CODE>/etc/X11/XF86Config-4</CODE> odnośnie 
   XFree 4.0.X).
<P>Tamte zdefiniowane są przez tak zwane linie trybów i zależne są od zdolności
   twojego sprzętu wideo. Serwer X skanuje ten plik konfiguracyjny podczas startu,
   i wyłącza linie trybów nieodpowiednie dla towjego sprzętu.
   Możesz sprawdzić, które tryby znajdują się w logach X11. Znajdziesz je w:
   <CODE>/var/log/XFree86.0.log</CODE>.</P>

<P>Wpisy te znane są z poprawnej pracy z chipem Riva128 chip, używającego 
  modułów X serwera <CODE>nv.o</CODE>.</P>

<PRE>
  Section "Modes"
    Identifier    "Modes[0]"
    Modeline	"800x600"  40     800 840 968 1056  600 601 605 628
    Modeline	"712x600"  35.0   712 740 850 900   400 410 412 425
    Modeline	"640x480"  25.175 640 664 760 800   480 491 493 525
    Modeline 	"400x300"  20     400 416 480 528   300 301 303 314 Doublescan
    Modeline	"352x288"  25.10  352 368 416 432   288 296 290 310
    Modeline	"352x240"  15.750 352 368 416 432   240 244 246 262 Doublescan
    Modeline	"320x240"  12.588 320 336 384 400   240 245 246 262 Doublescan
  EndSection
</PRE>


<H4>DGA &amp; MPLAYER</H4>

<P>DGA jest używany w dwóch miejscach w MPlayerze: Sterowniki SDL
   mogą być użyte przez niego (-vo sdl:dga) w wewnątrz sterownika DGA (-vo dga).
   Rzeczy, które powiedziałem wyżej są zarówno prawdą; w następującej sekcji wyjaśnię
   Jak sterownik DGA pracuje z MPlayerem.</P>


<H4>CECHY</H4>

<P>Serownik DGA wywoływany jest przez określenie -vo dga z lini poleceń.
  Standardowe zachowanie przełącza do rozdzielczości zestawiając oryginalną
  rozdzielczość wideo najbliższą z możliwych.
  Rozmyślnie ignoruje przełączanie -vm i -fs (włączając przełączanie trybów
  wideo i pełny ekran) - zawsze próbuje pokryć tyle obszaru twojego ekranu,
  jak to możliwe, poprzez przełączanie trybu wideo, w ten sposób powstrzymuje
  użycie pojedynczego okresu twojego CPU do skalowania obrazu.
  Jeżeli nie lubisz trybu, jego wybór możesz wymysić przez określenie -x i -y.
  Dostarczaną przez opcję -v, sterownik DGA wyświetli, spośród wielu innych
  rzeczy, listę wszystkich wspieranych rozdzielczości przez twój obecny plik
  konfiguracyjny XF86-Config.
  Posiadając DGA2 możesz także wymusić użycie określonej głębi, używając do
  tego opcji -bpp. Poprawne głębie to 15, 16, 24 i 32. Zależy od twojego sprzętu,
  czy są one wspierane lub czy (możliwe, że wolne) konwersja została wykonana.</P>


<P>Jeśli jesteś na tyle szczęściażem, że posiadasz dosyć miejsca, by umieścić
   cały obraz, sterownik DGA użyje podwójnego buforowania, który daje bardziej 
   wygładzone odtwarzanie filmu.
   Zostaniesz poinformowany, czy podówjne buforowanie jest włączone, czy też nie.</P>

<P>Podówjne buforowanie oznacza, że kiedy następna klatka twojego wideo jest przetwarzana
   gdzieś w pamięci, obecna klatka jest wyświatlana. Kidy następna klatka jest gotowa
   chip graficzny trzyma tylko miejsce w pamięci nowej klatki i po prostu dane przechodzą
   do wyświetlenia stamtąd.
   W tym czasie inny bufor w pamięci zostanie zajęty ponownie nowymi danymi wideo.</P>

<P>Podówjne buforowanie może zostać włączone porzez użycie opcji -double i wyłączone przez
   -nodouble. Obecnie domyślna opcja wyłącza podówjne buforowanie.
   Kiedy jest używany sterownik DGA, wyświatlanie na ekranie (ang. on screen display (OSD))
   pracuje tytlko przy włączonym podówjnym buforowaniu. Jednak włączenie podówjnego buforowania
   może odbić się na spadku prędkości (na moim K6-II+ 525 używał dodatkowo 20% czasu CPU!)
   w zależności od implementacji DGA dla twojego sprzętu.</P>


<H4>WYNIKI PRĘDKOŚCI</H4>

<P>Ogólnie powiedziawszy, dostęp bufora klatki DGA powinno być przynajmniej
   szybkie używając starownika X11 w dodatku z korzyścią otrzymywaniu pełnoekranowego obrazu.
   Procentopwa wartość prędkości wyświatlana przez MPlayera, powinna być traktowana z
   ostrożnością, bo na przykład ze sterownikiem X11 nie zawierają one czasu użytego przez
   Serwer X wymagany do aktualnego przetwarzania. Sprawdź więc co dzieje się na twoim komputerze.</P>

<P>Ogólnie rzecz biorąc, osiągnięte przyśpieszenie poprzez użycie DGA wbrew 'normalnego'
   użycia X11, wysoko zależne jest do twojej karty graficznej oraz jak dobrze
   zoptymalizowane są moduły X-Serwera.</P>

<P>Używanie głębi 24 bitowej jest równie dobrym pomysłem jeśli twoje karta własnoręcznie 
   ubsługuje 32 bitową głębię, ponieważ odstępuje ona 25% mniej danych w porównaniu do 
   trybu 32/32.</P>

<P>Widziałem niektóre pliki avi odtwarzane już na Pentium MMX 266. Procesory AMD K6-2 
   mogły by pracować na 400 MHZ i wyższych.</P>


<H4>ZNANE BŁĘDY</H4>

<P>Jak przyznają niektórzy deweloperzy XFree, DGA jest jak nieokiełznana bestia.
   Mówią, że lepiej go nie używać. Jego implementacja nie zawsze jest idealna 
   ze wszystkimi sterownikami dla XFree.</P>

<UL>
  <LI>z XFree 4.0.3 i nv.o pojawiają się błędy rozdzielczości w dziwnych kolorach.</LI>
  <LI>Sterowniki ATI wymagają przełączenia do trybu poprzedniego więcej niż raz po użytku DGA.</LI>
  <LI>Niektóre sterownikipo prostu zawodzą podczas powracania do normalnej rozdzielczości
      (użyj Ctrl-Alt-Keypad +, do przywrócenia ręcznego).</LI>
  <LI>Niektóre sterowniki wyświetlają dziwne kolory</LI>
  <LI>Niektóre sterowniki nie podają poprawnnie zużycia pamięci ich mapy w przestrzeni adresów
      procesu, przez co vo_dga nie może użyć podwójnego buforowania (SIS?)</LI>
  <LI>Niektóre steroiwniki zdaje się zawodzą przy zgłaszaniu pojedynczych poprawnych trybów. 
      W tym przypadku sterownik DGA wykolei się powiadamiając cię o niedorzecznym trybie
      100000x100000 lub podobnym...</LI>
   <LI>OSD działa tylko przy włączonym podwójnym buforowaniu (lub jego odpowiednikach).</LI>
</UL>


<H4><A NAME="sdl">2.3.1.2.3 SDL</A></H4>

<P>SDL (Simple Directmedia Layer) jest głownie interfejsem wideo/audio.
  Programy wykorzystujące go wiedzą tylko o SDLu, i nic z których sterownikach 
  audio lub wideo aktulanlnie korzysta. Na przykład port Dooma używający SDL 
  potrafi wystartować na svgalib, aalib, X, fbdev, i innych, musisz tylko mieć określone 
  (na przykład) sterowniki wideo używane ze środowiskiem
  SDL_VIDEODRIVER. No to na tyle teorii</P>

<P>Z MPlayerem używamy sterowników X11 ze zdolnością sprzętowego skalowania dla kart/sterowników,
  które nie wspierają XVideo, aż stworzymy nasz własny (szybszy, wygodniejszy) skalownik sprzętowy.
  Także używamy jego wyjścia aalib, ale teraz posiadamy własny, który jest wygodniejszy. Jego tryb DGA
  był lepszy od maszego, do niedawna. Pobrać go natychmiast? :)</P>

<P>Pomaga także z niektórymi dziurawymi starownikami/kartami jeśli wideo jest skokowe
  (nie chodzi o problem z wolnym systemem), lub jeśli audio się opuźnia.</P>

<P>Wyjścia wideo SDL wspiera wyświetlanie napisów pod filmem, na czarnym pasku 
   (jeśli ten występuje).</P>

<P><B>Istnieją różne opcje linii poleceń dla SDLa:</B></P>
<DL>
  <DT><CODE>-vo sdl:name</CODE></DT>
  <DD>określa, który sterownik wideo sdl użyć (tj. aalib, dga, x11)</DD>

  <DT><CODE>-ao sdl:name</CODE></DT>
  <DD>określa, który sterownik audio sdl użyć(ie. dsp, esd, arts)</DD>

  <DT><CODE>-noxv</CODE></DT>
  <DD>wyłącza sprzętową akcelerację Xvideo</DD>

  <DT><CODE>-forcexv</CODE></DT>
  <DD>próbuje wymusić akcelerację Xvideo</DD>
</DL>

<TABLE BORDER=0>
  <TR><TD COLSPAN=4><P><B>Klucze SDL:</B></P></TD></TR>
  <TR><TD></TD><TD><CODE>F</CODE></TD><TD></TD><TD>przełącza w tryb pełnoekranowy/okna</TD></TR>
  <TR><TD></TD><TD><CODE>C</CODE></TD><TD></TD><TD>obraca dostępnymi trybami pełnegoekranowymi</TD></TR>
  <TR><TD></TD><TD><CODE>W/S</CODE></TD><TD></TD><TD>mapowanie dla * i / (kontrola miksera)</TD></TR>
</TABLE>

<H4>ZNANE BŁĘDY</H4>

<UL>
  <LI>Klucze wciśnięte pod sterownamiem konsoli sdl:aalib zapętlają się. Nie mogę tego zmienić. (testowane na SDL 1.2.1).</LI>
  <LI>NIE UŻYWAJ SLD z GUI! Nie będzie chciało z nim współpracować jak powinno.</LI>
</UL>


<H4><A NAME="svgalib">2.3.1.2.4 SVGAlib</A></H4>

<H4>INSTALACJA</H4>

<P>Oczywiście będziesz musiał zainstalować svgalib i jego pakiety, żeby MPlayer
   zbudował jego sterownik SVGAlib (automatycznie wykryty, ale może być wymuszony),
   i nie zapomnij wyedytować /etc/vga/libvga.config w dostosowaniu do twojej 
   karty &amp; monitora.</P>

<H4>INFORMACJE</H4>

<P>Pamiętaj, żeby nie używać przełączenia -fs, odkąd przerzuca ono wywołanie
  sprzętowego skalera i jest obecnie wolne. Jeśli naprawdę tego potrzebujesz użyj 
  opcji <CODE>-sws 4</CODE>, która powoduje pogorszenie jakości, jednak jest poniekąd 
  szybsza.</P>

<H4>WSPARCIE EGA (4BPP)</H4>

<P>SVGAlib załącza EGAlib, a MPlayer posiada możliwość wyświetlania różnych filmów
  w 16 kolorach, tak jest zdalny do użytku w następujących ustawieniach:</P>

<UL>
  <LI>EGA card with EGA monitor: 320x200x4bpp, 640x200x4bpp, 640x350x4bpp</LI>
  <LI>EGA card with CGA monitor: 320x200x4bpp, 640x200x4bpp</LI>
</UL>

<P>Bpp (bits per pixel - ilość bitów na piksel) wartość musi być ustawiona ręcznie na 4:<BR>
  &nbsp;&nbsp;<CODE>-bpp 4</CODE><BR>
  Film prawdopodobnie będzie trzeba zmniejszyć, by dopasować się do trybu:<BR>
  &nbsp;&nbsp;<CODE>-vf scale=640:350</CODE> lub<BR>
  &nbsp;&nbsp;<CODE>-vf scale=320:200</CODE><BR>
  Do tego potrzebujemy szybkiego, ale w kiepskiej jakośći skalowania:<BR>
  &nbsp;&nbsp;<CODE>-sws 4</CODE><BR>
  Może automatyczną korękcję stosunku potrzeba wyłączyć:<BR>
  &nbsp;&nbsp;<CODE>-noaspect</CODE></P>

<P><B>INFORMACJA:</B> według moich eksperymantów, najlepasza jakość obrazu na ekranach EGA 
  można osiągnąć poprzez średnie obniżenie jasności: <CODE>-vf
  eq=-20:0</CODE>. Często wymaga to także niskiego próbkowania audio na moim sprzęcie,
  ponieważ dźwięk popsuł się na 44kHz: <CODE>-srate 22050</CODE>.</P>

<P>Możesz włączyć OSD i napisy tylko z filtrem <CODE>expand</CODE>, 
  zajrzyj do manuala, po dokładne parametry.</P>


<H4><A NAME="fbdev">2.3.1.2.5 Wyjście Framebuffera (FBdev)</A></H4>

<P>Czy do zbudowania obiektu FBdev jest on automatycznie wykryty 
   podczas ./configure. Czytaj dokomentację framebuffera w źródłach 
   jądra (Documentation/fb/*) dla informacji.</P>

<P>Jeśli twoja karta nie wspiera standardu VBE 2.0 (starsze karty ISA/PCI,
   takie jak S3 Trio64), tylko VBE 1.2 (lub starszy?) :
   Więc, VESAfb pozostaje dostępnym, ale potrzebujesz załadować SciTech 
   Display Doctor (wcześniej UniVBE) przed butowaniem Linuksa. Użyj dyskietek 
   butujących DOSa lub czegokolwiek innego.
   I nie zapomnij zarejestrować swojego UniVBE ;))</P>

<P>Wyjście FBdev przyjmuje niektóre dodatkowe parametry ponad inne:</P>

<DL>
  <DT><CODE>-fb</CODE></DT>
  <DD>określ, które urządzienie framebuffer ma zostać użyte(/dev/fb0)</DD>

  <DT><CODE>-fbmode</CODE></DT>
  <DD>nazwa trybu, który ma być użyty (zgodnie z /etc/fb.modes)</DD>

  <DT><CODE>-fbmodeconfig</CODE></DT>
  <DD>plik konfiguracyjny trybów (domyślnie /etc/fb.modes)</DD>

  <DT><CODE>-monitor_hfreq</CODE></DT>
  <DT><CODE>-monitor_vfreq</CODE></DT>
  <DT><CODE>-monitor_dotclock</CODE></DT>
  <DD><STRONG>Ważne</STRONG> wartości, zajrzyj do <CODE>example.conf</CODE></DD>
</DL>

<P>Jeśli zamierzasz ustawić określony tryb, użyj</P>

<P><CODE>&nbsp;&nbsp;&nbsp;&nbsp;mplayer -vm -fbmode (NazwaTrybu) nazwa_pliku</CODE></P>

<UL>
  <LI><B>-vm</B> jedynie wybierze najbardziej odpowiadający tryb z /etc/fb.modes.
      Może także zostać użyte razem z opcjami -x i -y. Opcja -flip wspierana 
      jest tylko jeżeli format pikseli filmu pasuje do formatu plkseli trybu wideo.
      Zwróć uwagę na wartość bpp, sterownik fbdev próbuje użyć obecnej, a jeśli 
      określiłeś opcję -bpp, tej.</LI>
  <LI>opcja <B>-zoom</B> nie jest wspierana (sprzętowe skalowanie jest wolne). 
      Nie jest wspierana opcja -fs.
      Możesz użyć trybu 8bpp (lub niższego).</LI>
  <LI>możliwe, że chcesz wyłączyć kursor: <CODE>echo -e
    '\033[?25l'</CODE> lub <CODE>setterm -cursor off</CODE><BR>
    i wygaszacz ekranu: <CODE>setterm -blank 0</CODE><BR>
    Aby przywrócić kursor: <CODE>echo -e '\033[?25h'</CODE>
    lub <CODE>setterm -cursor on</CODE></LI>
</UL>

<P>INFORMACJA: przełączanie trybów wideo FBdev _nie współpracuje_ z 
   framebuffer VESA, i nie pytaj o niego, odkiedy nie jest to ograniczenie 
   MPlayera.</P>


<H4><A NAME="mga_vid">2.3.1.2.6 Framebuffer Matroksa (mga_vid)</A></H4>

<P>Sekcja ta jest odnośnie wsparcia Mtrox G200/G400/G450/G550 BES (Back-End Scaler)
   sterowników jądra mga_vid. Jest one czynnie rozwijane przeze mnie (A'rpi),
   i posiada ono wsparcie sprzętowe VSYNC z potrójnym buforowaniem. Działa zarówno 
   w konsoli z framebufferem i pod X.</P>

<P><B>INFORMACJA</B>: Jest tak tylko na Linuksie! Na systemach nie-linuksowych (testowane na FreeBSD),
  możesz użyć wzamian <A HREF="#vidix">VIDIX</A>!</P>

<P><B>Instalacja:</B></P>
<OL>
  <LI>Aby ich używać, musisz najpierw skompilować mga_vid.o:
    <P><CODE>cd drivers<BR>
      make</CODE></P></LI>
  <LI>Następnie stwórz urządzenie <CODE>/dev/mga_vid</CODE>:
    <P><CODE>mknod /dev/mga_vid c 178 0</CODE></P>
    <P>i załaduj muduły za pomocą</P>
    <P><CODE>insmod mga_vid.o</CODE></P></LI>
  <LI>Powinienieś zweryfikowac detekcję wielkości pamięci, używając polecenia <CODE>dmesg</CODE>. 
    Jeśli jest błędna użyj opcji <CODE>mga_ram_size</CODE> (najpierw <CODE>rmmod mga_vid</CODE>),
    by określić rozmiar pamięci w MB:
    <P><CODE>insmod mga_vid.o mga_ram_size=16</CODE></P></LI>
  <LI>Aby utworzyć go automatycznie ładowanym/wyładowywanym kiedy potrzebujesz, 
  najpierw dodaj następującą linię na końcu  <CODE>/etc/modules.conf</CODE>:
    <P><CODE>alias char-major-178 mga_vid</CODE></P>
    <P>Następnie skopiuj moduł <CODE>mga_vid.o</CODE> do odpowiedniego miejsca w 
    <CODE>/lib/modules/&lt;wersja jądra&gt;/coś</CODE>.</P>
    <P>I uruchom</P>
    <P><CODE>depmod -a</CODE></P></LI>
  <LI>Teraz musisz (prze)kompilować MPlayera, <CODE>configure</CODE> wykryje 
    <CODE>/dev/mga_vid</CODE> i zbuduje sterowniki 'mga'. Wykorzystuje się je w MPlayerze
    przez <CODE>-vo mga</CODE>, jeśli posiadasz konsolę matroxfb, 
    lub <CODE>-vo xmga</CODE> pod XFree86 3.x.x, albo 4.x.x.</LI>
</OL>

<P>Współpraca sterowników mga_vid z Xv.</P>

<P>Plik urządzenia <CODE>/dev/mga_vid</CODE> może być czytany (np.: przez
  <CODE>cat /dev/mga_vid</CODE>) dla jakiś informacji 
  i zapisany dla zmiany jasności:
  <CODE>echo "brightness=120" > /dev/mga_vid</CODE></P>


<H4><A NAME="tdfxfb">2.3.1.2.7 Wsparcie 3dfx YUV (tdfxfb)</A></H4>

<P>Sterownik ten używa urządzenia framebuffer starownika jądra tdfx,
   by odtwarzać filmy z akceleracją YUV.
   Będziesz potrzebował jądra ze wsparciem tdfxfb, i rekompilacji z
   <CODE>./configure --enable-tdfxfb</CODE></P>

<H4><A NAME="opengl">2.3.1.2.8 Wyjście OpenGL</A></H4>

<P>MPlayer wspiera wyświetlanie filmów, używając do tego OpenGL lecz jeśli twoja 
  platforma/sterownik wspiera xv jak powinienno być na PeCecie z Linuksem, użyj zamiast 
  tego xv, OpenGL jest znacząco gorszy. Jeśli posiadasz implemantację X11 
  bez wsparcia xv, OpenGL  jest możliwą alternatywą.</P>

<P>Niestety nie wszystkie sterowniki zapewniają tę cechę. Sterowniki Utah-GLX
  (dla XFree86 3.3.6) wspierają ją dla wszystkich kart. Odwiedź
  <A HREF="http://utah-glx.sourceforge.net">http://utah-glx.sourceforge.net</A>
  po detale i informację jak je instalować.</P>

<P>XFree86(DRI) 4.0.3 lub późniejsze wspierają OpenGL z kartami Matrox i Radeon,
  4.2.0 lub późniejsze wspierają Rage128. Zajrzyj na
  <A HREF="http://dri.sourceforge.net">http://dri.sourceforge.net</A>,
  pobrać i zapoznać się z instrukcją instalacji.</P>


<H4><A NAME="aalib">2.3.1.2.9 AAlib - wyświatlanie w trybnie tekstowtym</A></H4>

<P><B>AAlib</B> jest biblioteką do wyświetlania grafiki w trybie tekstowym, 
  używając pełnej renderacji ASCII.
  Istnieje wiele programów, które to wspierają, tak jak np. Doom,
  Quake, itp. MPlayer zawiera dla niego bardzo wygodny sterownik.
  Jeśli ./configure wykrywa zainstalowane aalib, sterownik aalib libvo 
  zostanie zbudowany.</P>


<TABLE BORDER=0>
  <TR><TD COLSPAN=4><P><B>Możesz użyć różnych kluczy w oknie AA, by zmienać opcje renderowania:</B></P></TD></TR>
  <TR><TD>&nbsp;&nbsp;</TD><TD><CODE>1</CODE></TD><TD>&nbsp;&nbsp;</TD><TD>zmniejsz kontrast</TD></TR>
  <TR><TD></TD><TD><CODE>2</CODE></TD><TD></TD><TD>zwiększ kontrast</TD></TR>
  <TR><TD></TD><TD><CODE>3</CODE></TD><TD></TD><TD>zmniejsz jasność</TD></TR>
  <TR><TD></TD><TD><CODE>4</CODE></TD><TD></TD><TD>zwiększ jasność</TD></TR>
  <TR><TD></TD><TD><CODE>5</CODE></TD><TD></TD><TD>włącz/wyłącz szybsze renderowanie</TD></TR>
  <TR><TD></TD><TD><CODE>6</CODE></TD><TD></TD><TD>ustaw tryb rozpraszania (none, error distribution, floyd steinberg)</TD></TR>
  <TR><TD></TD><TD><CODE>7</CODE></TD><TD></TD><TD>odwróc obraz</TD></TR>
  <TR><TD></TD><TD><CODE>a</CODE></TD><TD></TD><TD>przełącz między kontrolą aa i MPlayera)</TD></TR>
</TABLE>

<P><B>Możesz użyć następujących opcji linii poleceń::</B></P>
<DL>
  <DT><CODE>-aaosdcolor=V</CODE></DT>
  <DD>zmień kolor OSD</DD>
  
  <DT><CODE>-aasubcolor=V</CODE></DT>
  <DD>zmień kolor napisów
    <P><I>gdzie V może być: (0/narmalny, 1/czarny, 2/pogrubione, 3/gruba czcionka, 
    4/odwrotny, 5/specialny)</I></P></DD>
</DL>

<P><B>AAlib samo w sobie dostarcza ogromną liczbę opcjii.
    Niżej znajdują się najważniejsze:</B></P>
<DL>
  <DT><CODE>-aadriver</CODE></DT>
  <DD>ustaw sugerowany sterownik aa (X11, curses, linux)</DD>

  <DT><CODE>-aaextended</CODE></DT>
  <DD>użyj wszystkich 256 znaków</DD>

  <DT><CODE>-aaeight</CODE></DT>
  <DD>użyj 8-bitowego ASCII</DD>

  <DT><CODE>-aahelp</CODE></DT>
  <DD>wyświetl wszytskie opcje aalib</DD>
</DL>

<P>INFORMACJA: renderowanie bardzo intensywnie obciąza CPU, w szczególności 
   kiedy używa AA-on-X (aalib na X), i najmniej obciąza CPU na standardowej konsoli
   bez framebuffera. Uzyj SVGATextMode, by ustawić duży tryb tekstowy, a następnie ciesz się!
   (dodatkowa głowica kard Hercules :)) (ale w moiej skromniej opinii, możesz użyć opcji 
   <CODE>-vf 1bpp</CODE>, by otrzymać grafikę na hgafb:)</P>

<P>Użyj opcji <CODE>-framedrop</CODE>, jeśli twój komputer nie posiada wystarczającej
  prędkości do renderowania wszystkich klatek!</P>

<P> Odtwarzając w terminalu, otrzymasz lepszą prędkość i jakość, używając sterowników 
   linuksa, nie curses (<CODE>-aadriver linux</CODE>). Ale dlatego potrzebujesz praw zapisu do 
   <CODE>/dev/vcsa&lt;terminal&gt;</CODE>. Nie jest one automatycznie wykrywane przez aalib, 
   ale vo_aa próbuje znaleść najlepszy tryb. Zobacz
  <A HREF="http://aa-project.sourceforge.net/tune/">http://aa-project.sourceforge.net/tune/</A>,
   by wspomódz wyniki tuningu.</P>


<H4><A NAME="vesa">2.3.1.2.10 VESA - wyjście na VESA BIOS</A></H4>

<P>Sterownik ten został zaprojektowany i wprowadzony jako <b>ogólny sterownik</b>
   dla kard, które mają BIOS kompatybilny z VESA VBE 2.0+. Inną zaletą tego sterownika, 
   jest to, że próbuje on wymusić wyjście TV.<BR>
   <b>VESA BIOS EXTENSION (VBE) Version 3.0 Data: 16 wrzesień, 1998</b> (Strona 70)
   mówi:</P>

<BLOCKQUOTE>
  <B>Projekty Dual-Controller</B><BR>
  VBE 3.0 wspiera projekt dual-controller przypuszczając, że poniważ obydwa 
  kontrolery są typowo zapewniane przez ten sam OEM, pod kontrolą pojedynczego
  na tych samych kartach graficznych. jest możliwe ukrycie faktu, że dwa kontrolery
  rzeczywiście są prezentowane z aplikacji. Posiada to ograniczenia w powstrzymywaniu 
  równoczesnym użyciu niezależnych kontrolerów, ale pozwala zwolnionym aplikacjom
  przed VBE 3.0 by działać normalnie. Funkcja VBE Function 00h 
  (Powrót Informacji Kontrolera) zwraca połączone informacje obydwu kontrolerów,
  włączając połączone listy dostępnych trybów.
  Kiedy aplikacja wybiera tryb, właściwy kontroler jest aktywowany.
  Każda z pozostawia funkcii VBE, później działa na aktywnym kontrolerze.
</BLOCKQUOTE>

<P>Więc masz szansę na pracę na wyjściu TV dzięku użyciu tego sterownika.<BR>
   (Przypuszczam, że wyjście TV-out często jest niezależnym nagłówiem lub
   przynajmniej niezależnym wyjściem.)</P>

<H4>ZALETY</H4>

<UL>
  <LI>Masz szansę oglądać filmy <B>jeśli Linux również nie widzi</B> twojego
      sprzętu graficznego.</LI>
  <LI>Nie potrzebujesz instalowania jakiś graficznych programów na twoim Linuksie 
      (jak X11 (aka XFree86), fbdev). Te sterowniki mogą być uruchamiane z 
      <B>trybu tekstowego</B>.</LI>
  <LI>Masz okazję na <B>prace na wyjściu TV</B>. (Znane przynajmniej dla kart ATI).</LI>
  <LI>Sterowniki te wywołują finkcje obsługi <b>int 10h</b>, w ten sposób nie emuluje -
   wywołuje <b>prawdziwe</b> rzeczy <b>prawdziwego</b> BIOSu w <b>prawdziwym</b>-trybie. 
   (Znakomicie - w trybie vm86).</LI>
  <LI>Możesz używać z nim VIDIX, co daje akcelerację wyświetlania wideo 
     <B>I</B> wyjście TV w tym samym czasie! (zalecane dla kart ATI)</LI>
  <LI>Jeśli posiadasz VESA VBE 3.0+, i masz gdzieś określone <CODE>monitor_hfreq</CODE>,
    <CODE>monitor_vfreq</CODE>, <CODE>monitor_dotclock</CODE> (plik konfiguracyjny 
    lub linia poleceń) otrzymasz najwyższe z możliwych tempo odświeżania. Używa 
    Ogólnej Formóły Taktowania. By aktywować tą cechę, musisz określić <B>wszystkie</B>
    opcje twojego monitora.</LI>
</UL>

<H4>WADY</H4>

<UL>
  <LI>Współpracuje tylko na <B>sysemach x86</B>.</LI>
  <LI>Może być użyty tylko przez <B>ROOTA</B>.</LI>
  <LI>Obecnie dostępny jest tylko dla <B>Linuksa</B>.</LI>
</UL>

<P>Nie używaj tych sterowników z <B>GCC 2.96</B>! Nie chcą działać!</P>

<H4>OPCJE LINII POLECEŃ DOSTĘPNE DLA VESA</H4>
<DL>
  <DT><CODE>-vo vesa:opts</CODE></DT>
  <DD>obecnie rozpoznane: <B>dga</B>, by wymusić tryb dga i 
     <b>nodga</b>, by wyłączuć tryb dga. W trybie dga możesz włączyć podwójne buforowanie 
     przez opcję <CODE>-double</CODE>. Informacja: możesz pominąć te paramerty włączając
    <B>autodetekcję</B> trybu dga.</DD>
</DL>

<H4>ZNANE BŁĄĘDY</H4>

<UL>
  <LI>Jeśli zainstalowałeś czcionki <B>NLS</B> na swoim Linuksie i uruchamiasz 
      sterownik VESA z trybu tekstowego, to po zakończeniu mplayera masz załadowane
      <B>czcionki ROM</B> zamiast narodowych. Możesz załadowac czcionki narodowe
      ponownie używając narzędzia <B><I>setsysfont</I></> np. z dystrybucji Mandrake.
      (<B>Napomknięcie</B>: Niektóre narzędzia są użyte do lokalizacji fbdev).</LI>
  <LI>Niektóre <B>sterowniki graficzne Linuksa</B> nie aktualizuja <B>trybu BIOS</B> 
      w pamięci DOS. Więc jeśli masz podobny problem - zawsze używaj sterowników 
      VESA tylko z <B>trybu tekstowego</B>. W przeciwnym razie tryb tekstowy (#03)
      zostanie tak, czy inaczej aktywowany i będziesz musiał restartować
      komputer.</LI>
  <LI>Często po przerwaniu sterowników VESA dostajesz <B>czarny ekran</b>. 
      By przywrócić twój ekran do pierwotnego stanu - po prostu przełącz 
      na inną konsolę (przez wciśnięcie <B>Alt-Fx</B>), a następnie powróć
      na swoją poprzednią konsolę tym samym sposobem.</LI>
  <LI>By otrzymać <B>dziające wyjście TV</B> musisz posiadać wtyczkę łącznika TV, 
      zanim butujesz swojego PeCeTa, ponieważ BIOS wideo inicjalizuję się tylko 
      raz podczas procedyry POST.</LI>
</UL>


<H4><A NAME="x11">2.3.1.2.11 X11</A></H4>

<P>Jęśli jest to możliwe to unikaj go. Wyjście na X11 (używające rozszerzenia 
   dzielonej pamięci), jest bez żadnej akceleracji sprzętowej. Wspiera 
   (MMX/3DNow/SSE akcelerację, ale nadal pozostaje wolne skalowanie sprzętowe, 
   użyj opcji <CODE>-fs -zoom</CODE>. Wiele kart posiada wsparcie skalowania
   sprzętowego, użyj do tego wyjścia <CODE>-vo xv</CODE> lub <CODE>-vo xmga</CODE> 
   dla Matroksów.</P>

<P>Problem jest taki, że wiele sterowników kart nie posiada wsparcia sprzętowej
   akceleracji na drugiej głowicy/TV. W tych przypadkach widzisz zielone/niebieskie 
   okno zamiast filmu. Występuje to w przypadku, kiedy twoje sterowniki są poręczne,
   lecz wymagają silnego CPU, by użyć sprzętowe skalowanie. Nie używaj sprzętowgo 
   wyjścia+skalowania sterowników SDL, posiadają gorszą jakość obrazu!</P>

<P>Sprzętowe skalowanie jest bardzo wolne, lepiej jak zamiast tego spróbujesz 
   zmienić tryb wideo. Jest to bardzo proste. Zobacz <A HREF="#dga_modelines">
   sekcję lini trybów DGA</A> i wstaw je do twojego XF86Config.</P>

<UL>
  <LI>Jeśli posiadasz XFree86 4.x.x - użyj opcji <CODE>-vm</CODE>. Zmieni ona 
      rozdzielczość do wymiarów filmu. Jeśli nie posiadasz:</LI>
  <LI>Z XFree86 3.x.x - możesz przełączać między dostępnymi rozdzialczościami 
      używając do tego klawiszy <B>CTRL-ALT-plus</B> i <B>minus</B>.</LI>
</UL>

<P>Jeżeli nie możesz znaleść trybów, które wstawiłeś, przejrzyj wyjście XFree86.
   Niektóre sterowniki nie portafią użyć niskich pixelclocków, które są wymagane 
   do niskich trybów rozdzielczości wideo.</P>


<H4><A NAME="vidix">2.3.1.2.12 VIDIX</A></H4>

<H4>WSTĘP</H4>

<P>VIDIX jest skrótem od <B>VID</B>eo <B>I</B>nterface for *ni<B>X</B> (Interfejs wideo dla *niksów).
  Został zaprojektowany i wydany jako interfejs dla szybkich sterowników przestrzeni 
  użytkownika dostarczających takie wrażenia wideo, jak mga_vid dla kart Matrox. 
  Jest także przenośny.</P>

<P>Interfejs ten został zaprojektowany jako próba przystosowanaia istniejących
   interfejsów akceleracji wideo (znanych jako mga_vid, rage128_vid, radeon_vid, pm3_vid) do
   stałego schematu. Dostarcza on wysokopoziomowych interfajsów do chipów, znanych
   jako BES (BackEnd scalers) lub OV (Video Overlays). Nie dostarcza niskopoziompwych
   interfejsów do rzeczy znanych jako serwery graficzne. (Nie chcę konkurować z
   zespołem X11 w przełączaniu trybów graficznych). Głównym celem tego interfejsu
   jest zapewnianie maksymalnej prędkości odtwarzania wideo.</P>

<H4>UŻYCIE</H4>

<UL>
  <LI>Możesz używać niezależnych sterowników wyjścia wideo: <CODE>-vo xvidix</CODE><BR>
    Ten sterownik był rozwijany jako frontend X11 do technologii VIDIX.
    Wymaga X serwera i może pracować tylko pod nim. Zwróć uwagę, że jako ma bezpośredni
    dostęp do sprzętu i omija sterowniki X, piksmapy przechowywane w pamięci karty 
    graficznej mogą być uszkodzone.
    Możesz temu zaradzić poprzez ograniczanie ilości pamięci wideo wżytej przez X z 
    opcją "VideoRam" w sekcji urządzenia pliku XF86Config. Powinieneś ustawić na ilość 
    pamięci zainstalowanej na twojej karcie minus 4MB. Jeśli posiadasz mniej niż 8MB pamięci
    wideo, możesz zamiast tego użycj opcji "XaaNoPixmapCache" w sekcji Screen (ekran).</LI>
  <LI>Możesz używać podurządzenia VIDIX które zostało zastosowane do rozmaitych sterowników
      wideo, takich jak:<BR>
    <CODE>-vo vesa:vidix</CODE> (<B>tylko Linux</B>) oraz <CODE>-vo fbdev:vidix</CODE></LI>
</UL>

Rzeczywiście nie ma to znaczenia, który sterownik wyjścia jest używany przez <B>VIDIX</B>.

<H4>WYMAGANIA</H4>

<UL>
  <LI>Karta grafiki powinna być w trybie graficznym (napisałem <B>powinna</B>, ponieważ
      testawałem ją w trybie tekstowym - i pracuje ale ma okropne wyjście ;) Użyj do
      tego AAlib).<BR>
    <I>Informacja: Każdy może próbowac tych trików, po przez komentowanie przełączania
       w sterownik vo_vesa.</I></LI>
  <LI>Sterowniki wyjścia MPlayera powinny znać aktywny tryb wideo i być w stanie
      przekazać podurządzeniu VIDIX cechy charakteru wideo serwera.</LI>
</UL>

<H4>METODY UŻYCIA</H4>

<P>Kiedy VIDIX is używany jako <B>podurządzenie</B> (<CODE>-vo vesa:vidix</CODE>), to
   konfiguracja trybu wideo jest ustawiona przez urzadzenie wyjścia wideo
   (<B>vo_server</B> w skrócie). Dlatego też możesz przekazywać z linii poleceń
   MPlayera te same klucze, co dla vo_server. W dodatku rozumie klucze
   <CODE>-double</CODE>, jako globalnie widoczne parametry. (Proponuje używać
   tego klucza z VIDIX na ostatnich kartach ATI).<BR>
   Jako dla <CODE>-vo xvidix</CODE>: obacnie uznaje następujące opcje:
   <CODE>-fs -zoom -x -y -double</CODE>.</P>

<P>Możesz także określić bezpośrednoi sterownik VIDIX jako trzeci podargument
   w linii poleceń:<BR>
  <BR>
  &nbsp;&nbsp;<code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
    file.avi</code><BR>
  lub<BR>
  &nbsp;&nbsp;<code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp
    32 file.avi</code><BR>
  <BR>
  Ale jest to niebezpieczne i nie powinienieś tego robić. W tym wypadku podany sterownik
  zostanie wymuszony i skutki są nieprzewidywalne (może <b>zawiesić</b> twój komputer).
  Powinieneś tak zrobić TYLKO, jeśli jesteś absolutnie pewny, że zadziała
  i MPlayer nie zrobi tego automatycznie. Proszę zwróć się z tym do deweroperów.
  Z poprawnej strony jest możliwość użycia VIDIX bez argumkentów, by włączyć autodetekcję.</P>

<P>VIDIX jest bardzo nową technologią i jest bardzo możliwe, że na twoim systemie 
   nie działa. W tym przypadku jedynym rozwiązniem dla ciebie jest jego przełożenie
  (głownie libdha). Ale jest nadzieje, że będzie dziłał na tych systemach, gdzie X11.</P>

<P>Ponieważ VIDIX wymaga bezpośredniego dostępu do sprzętu, możesz uruchamiać go na dwa sposoby, 
  jako root lub możesz ustawić bit SUID na pliki binarnym MPlayera (<B>Ostrzeżenie: Jest to ryzyko
  związane z bezpieczeństwem!</B>). Alternatywnie możesz użyć specialnych modułów jądra, takich jak te:</P>

<OL>
  <LI>Pobierz
    <A HREF="http://www.arava.co.il/matan/svgalib/">wersję rozwijaną</A>
    svgaliba (na przykład 1.9.17),<BR>
    <B>LUB</B><BR>
    ściągnij wersję stworzoną przez Aleksa w szczególności do użytku
    MPlayerem (nie potrzebuje źródeł svgalib do kompilacji)
    <A HREF="http://www.mplayerhq.hu/~alex/svgalib_helper-1.9.17-mplayer.tar.bz2">
    stąd</A>.</LI>
  <LI>Skompiluje moduły w katalogu <CODE>svgalib_helper</CODE> (możesz je znaleść
    wewnątrz katalogu <CODE>svgalib-1.9.17/kernel/</CODE> jeśli masz pobrane źródła
    ze strony svgalib) i zainstaluj je insmodem.</LI>
  <LI>Przenieś katalog <CODE>svgalib_helper</CODE> do
    <CODE>mplayer/main/libdha/svgalib_helper</CODE>.</LI>
  <LI>Wymagane, jeśli pobrałeś źródła ze strony svgalib: Usuń komentarz przed linią CFLAGS zawierającą ciąg 
      "svgalib_helper" z <CODE>libdha/Makefile</CODE>.</LI>
  <LI>Przekompiluj i zainstaluj libdha.</LI>
</OL>


<H4><A NAME="vidix_ati">2.3.1.2.12.1 Karty ATI</A></H4>

<P>Obecnie większość kart ATI jest wspieranych, począwszy od Mach64 do najnowszych
  Radeonów.</P>

<P>Istnieją 2 skompilowane binaria: <CODE>radeon_vid</CODE> dla Radeona oraz
  <CODE>rage128_vid</CODE> dla kart Rage 128. Może wymusisz któryś bądź zezwolisz
  systemowi VIDIX automatycznie rozpoznać wszystkie gostępne sterowniki.</P>


<H4><A NAME="vidix_matrox">2.3.1.2.12.2 Karty Matrox</A></H4>

<P>Matrox G200,G400,G450 i G550 zostały zgłoszone, że działają.</P>

<P>Sterowniki wspierają equalizery wideo i powinny być bliskie szybkości jako
  <A HREF="#mga_vid">framebuffer Matroksa</A>.</P>


<H4><A NAME="vidix_trident">2.3.1.12.3 Karty Trident</A></H4>

<P>Istnieją sterowniki dostępne dla chipsetów Trident Cyberblade/i1,  które znaleść 
można na płuyach głównych VIA Epia.</P>

<P>Sterownik został napisany i jest utrzymywany przez Alastaira M. Robinsona, który 
   oferuje najnowsze starowniki do ściągnięcia z jego
  <A HREF="http://www.blackfiveservices.co.uk/EPIAVidix.shtml">strony domowej</A>.
  Sterowniki są dodane do MPlayera tylko z lekkim opuźnieniem, więc CVS powinien być 
  zawsze uaktualniany.</P>


<H4><A NAME="vidix_3dlabs">2.3.1.2.12.4 Karty 3DLabs</A></H4>

<P>Chciaż istanieją sterowniki dla chipów 3DLabs GLINT R3 oraz Permedia3, 
   nikt ich nie testował, raporty są więc mile widziane.</P>
  

<H4><A NAME="directfb">2.3.1.2.13 DirectFB</A></H4>

<P><I>"DirectFB jest graficzną biblioteką, którą zaprojektowano z przemyślanym systemem. 
       Oferuje maksymalną akcelerację przy minimalmyn zużyciu i obiciążeniu zasobów."</I>
        - cytowane z
  <A HREF="http://www.directfb.org">http://www.directfb.org</A>.</P>

<P>Wyklucze cechy DirectFB z tej sekcji.</P>

<P>Pomimo, że MPlayer nie jst utzrymany jako "dostawca wideo" w DirectFB, te 
   sterowniki wyjścia włączą odtwarzanie wideo
  output driver will enable video playback przez DirectFB. Bezie -
  oczywiści - akcelerowane, na moim Matroksie G400 prędkość DirectFB była taka sama 
  jak na XVideo.</P>

<P>Zawsze próbuj używać najnowszej wersji DirectFB. Możesz użyć opcji DirectFB 
  w linii poleceń, używając opcji <CODE>-dfbopts</CODE>.
  Warstwa selekcji może zostać określona przez metodę podurządzenia, np.: <CODE>-vo
  directfb:2</CODE> (warstwa -1 jest domyślną: autodetekcja)</P>


<H4><A NAME="dfbmga">2.3.1.2.14 DirectFB/Matrox (dfbmga)</A></H4>

<P>Proszę przeczytać <A HREF="#directfb">główną sekcję DirectFB</A> 
   po ogólne informacje.</P>

<P>Te sterowniki wyjścia włączą CRTC2 (na drugiej głowicy) na kartach
  Matrox G400/G450/G550, wyświatlając wideo <B>niezależnie</B> od pierwszej głowicy.</P>

<P>Instrukcje, co zrobić, bu to działało możesz znaleść pod 
  <A HREF="../tech/directfb.txt">sekcją techniczną</A>
  lub bezpośrednio na
  <A HREF="http://www.sci.fi/~syrjala/directfb/Matrox_TV-out_README.txt">stronie domowej</A> 
  Ville Syrjala.</P>

<P>Informacja: nie byliśmy w stanie zrobić tego, by działałowo, 
   lecz inni tak. W każdym razie, przenoszenie kodu CRTC2 do <B>mga_vid</B>
   jest w trakcie.</P>


<H4><A NAME="mpegdec">2.3.1.3 Dekodery MPEG</A></H4>

<H4><A NAME="dvb">2.3.1.3.1 DVB</A></H4>

<P>MPlayer wspiera krty z chipsetam Siemens DVB od sprzedawców takich jak
  Siemens, Technotrend, Galaxis lub Hauppauge. Ostatnie sterowniki DVB są
  dostępne na <A HREF="http://www.linuxtv.org">stronie Linux TV</A>. Jeśli chcesz 
  wykonywać programowe transkodowanie powinieneś posiadać co najmniej 1GHz CPU.</P>

<P>Configure powinien wykryć twoją kartę DVB. Jeśli tak nie zrobił, wymuś detekcję poprzez</P>

<PRE>
  ./configure --enable-dvb
</PRE>

<P>Jeśli posiadasz nagłówki ost w niestandardowej ścieżce, ustaw ją przez</P>

<PRE>
  ./configure --with-extraincdir=&lt;DVB source directory&gt;/ost/include
</PRE>

<P>Następnie skompiluj i zainstaluj, jak zazwyczaj.</P>

<H4>UŻYCIE</H4>

<P>Sprzętowe dekodowanie (odtwarzając standardowe pliki MPEG1/2) może zostać wykonane 
   z tym poleceniem:</P>

<PRE>
  mplayer -ao mpegpes -vo mpegpes file.mpg|vob
</PRE>

<P>Sprzętowe dekodowanie lub transkodowanie różnych formatów do MPEG1 może być dokonane 
   używając polecenia podobnego do:</P>

<PRE>
  mplayer -ao mpegpes -vo mpegpes yourfile.ext
  mplayer -ao mpegpes -vo mpegpes -vf expand yourfile.ext
</PRE>

<P>Zauważ, że karty DVB wspierają tylko wielkości 288 i 576 dla PAL lub 240 i 480
  dla NTSC. <B>Musisz</B> zeskalować do innych wielkości poprzez dodawanie 
  <CODE>scale=szerokość:wysokość</CODE> z szerokością i wysokością chcesz opcji
  <CODE>-vf</CODE>. Karty DVB akceptują rozmaite szerokośći, jak 720, 704,
  640, 512, 480, 352 itd i wykonują skalowanie sprzętowe w poziomym kierunku, więc 
  nie potrzebujesz skalowanie poziomego w większości wprzypadków. Dla 512x384 (stosunek
  4:3) DivX wypróbuj:</P>

<PRE>
  mplayer -ao mpegpes -vo mpegpes -vf scale=512:576
</PRE>

<P>Jeśli masz szerokoekranowy film i nie chcesz skalować go do penej wysokości,
  możesz użyć filtra <CODE>expand=s:w</CODE>, by dodać czarne bandy. Dla widoku
  640x384 DivX, spróbuj:</P>

<PRE>
  mplayer -ao mpegpes -vo mpegpes -vf expand=640:576 file.avi
</PRE>

<P>Jeśli twój CPU jest zbyt wolny dla pełnych 720x576 DivX, wypróbuj zaniżone skalowanie:</P>

<PRE>
  mplayer -ao mpegpes -vo mpegpes -vf scale=352:576 file.avi
</PRE>

<P>Jeśli prędkość się nie poprawiła, spróbuj z zaniżeniem pionowym, także:</P>

<PRE>
  mplayer -ao mpegpes -vo mpegpes -vf scale=352:288 file.avi
</PRE>

<P>Dla OSD i podpisów użyj cechy OSD filtra. Więc zamiast
  of <CODE>expand=s:w</CODE> lub <CODE>expand=s:w:x:y</CODE>, użyj
  <CODE>expand=s:w:x:y:1</CODE> (piąty parametr <CODE>:1</CODE> na końcu 
  włączy renderowanie OSD). Potrzebujesz może podnieść lekko obraz, by otzrymać większą, 
  czarną przestrzeń dla napisów. Potzrebujesz może podnieść napisy, jeśli zą poza twoim 
  ekranem TV, użyj opcji <CODE>-subpos &lt;0-100&gt;</CODE>,
  by to wyregulować (<CODE>-subpos 80</CODE> jest dobrym wyborem).</P>

<P>Żeby odtwarzać filmy, które nie mają 25 fpsów na PAL TV lub na wolnym CPU, dodaj opcję
  <CODE>-framedrop</CODE>.</P>

<P>By zachować stosunek plików DivX i otrzymać optymalne parametry skalowania
  (poziome skalowanie sprzętow oraz pionowe skalowanie programowe podczas zatrzymywania 
  poprawnego stosunku), użyj filtra dvbscale:</P>

<PRE>
for  4:3 TV: -vf dvbscale,scale=-1:0,expand=-1:576:-1:-1:1
for 16:9 TV: -vf dvbscale=1024,scale=-1:0,expand=-1:576:-1:-1:1
</PRE>

<H4>PRZYSZŁOŚĆ</H4>

<P>Jeśli masz pytania lub chcesz poznać zgłoszenia i wziąść udział w dyskusji 
   na ten temat, wstąp do naszej listy mailingowej
  <A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dvb">MPlayer-DVB</A>
  Proszę pamiętać, że lista jest w języku angielskim.</P>

<P>W przyszłości możesz spodziewać się możliwości wyświetlania OSD i napisów, używając 
   rodzimych cech OSD kart DVB, jak również bardziej płynnego odtwarzania plików posiadających 
   inną ilość klatek na sekundę, niż 25 w transkodowaniu w czasie rzeczywistym 
   pomiędy MPEG2 i MPEG4 (czściowa dekompresja).</P>


<H4><A NAME="dxr2">2.3.1.3.2 DXR2</A></H4>

<P>MPlayer wspiera sprzętową akcelerację odtwarzania z kartą Creative DXR2.</P>

<P>Najpierw będziesz potrzebował odpowiednio zainstalowanych sterowników DXR2. 
   Sterowniki i instrukcje instalacji możesz znaleść na stronie
  <A HREF="http://dxr2.sourceforge.net/">Centrum Zasobów DXR2</A>.</P>

<H4>UŻYCIE</H4>
<DL>
  <DT><CODE>-vo dxr2</CODE></DT>
  <DD>włącz wyjście TV</DD>
  <DT><CODE>-vo dxr2:x11</CODE> lub <CODE>-vo dxr2:xv</CODE></DT>
  <DD>włącz wyjście Overlay (nakładkowanie) w X11</DD>
  <DT><CODE>-dxr2 &lt;option1:option2:...&gt;</CODE></DT>
  <DD>Opcja ta jest używana do kontroli sterownika DXR2.</DD>
</DL>

<P>Chipset nakładkowania użyty w DXR2 jest dość kiepskiej jakości, lecz 
   domyślne ustawienia powinny działać dla każdego. OSD może być użytkowe z 
   nakładkowaniem (nie na TV) przez rysowanie w kolorze. Z domyślnymi ustawieniami 
   koloru, możesz otrzymać zmienne rezultaty, zazwyczaj zobaczysz kolorową obramówkę
   wokól znaku lub inny zabawny efekt. Jeśli jednak właściwie dobrałeś 
   ustawienia kolorów powiniwnieś otrzymać dość pozytywne rezultaty.</P>

<P>Proszę zajrzeć do manuala po dostępne opcje.</P>


<H4><A NAME="dxr3">2.3.1.3.3 DXR3/Hollywood+</A></H4>

<P>MPlayer wspiera sprzętową akcelerację dotwarzania z kartami Creative DXR3
  oraz Sigma Designs Hollywood Plus. Obydwie karty używają dekodera em8300 MPEG
  z Sigma Designs.</P>

<P>Na początku potrzebujesz odpowiednio zainstalowanych sterowników DXR3/H+,
  w wersji 0.12.0 lub późniejszej. Sterowniki i instrukcje instalacji możesz 
  znaleść na stronie
  the <A HREF="http://dxr3.sourceforge.net/">DXR3 &amp; Hollywood Plus dla
  Linuksa</A>. Configure powinien wykryć twoją kartę automatycznie, kompilacja powinna 
  przebiec bezproblemowo.</P>

<H4>UŻYCIE</H4>
<DL>
  <DT><CODE>-vo dxr3:prebuf:sync:norm=x:&lt;device&gt;</CODE></DT>
  <DD><CODE>overlay</CODE> aktywuje nakładkowanie zamiast wyjścia TV. Do poprawnej 
    pracy wymaga właściwie skonfigurawanego setupu. Najłatwiejszą drogą, by
    skonfigurowć nakładkowanie, jest najpierw uruchomienie autocal. Następnie
    uruchom MPayera z wyjściem dxr3 i bez włączonego nakładkowania, uruchom dxr3view.
    W dxr3view możesz ustawiać nakładkowanie i oglądać efektu w czasie rzeczywistym, 
    być może ta cecha będzie wspierana w GUI MPlayera w przyszłości. 
    Kiedy nakładkowanie ustawione jest odpowiednio, nie będziesz dłużej potrzebował 
    dxr3view.<BR>
    <CODE>prebuf</CODE> włącza prebuforowanie. Prebuforowanie jest cechą chipu
    em8300, włączającą tzrymanie więcej niż jednej klatki wideo w czasie. 
    Oznacza to, że kierdy uruchamiasz prebuforowaniem, MPlayer spróbuje zatrzymać 
    stały byfor wideo z danymi przez cały czas. Jeśli masz wolną maszynę, MPlayer 
    prawdopodobnie użyje prawie cały lub dokładnie 100% CPU. Jest to 
    wszczególności powszechne, kiedy odtwarzasz czyste strumienie MPEG
    (jak DVD, SVCD a.s.o.) od kiedy MPlayer nie miał przetwarzania go do
    MPEG użyje bardzo szybkiego zapełnianie bufora.<BR>
    Z prebuforowaniem dotwarzanie wideo <B>mniejszą</B> wrażliwość do innych 
    programów w całości wykorzystujących CPU, nie będzie przesuwał klatek,
    chyba że aplikacje wukorzystują CPU przez długi czas.<BR>
    Kiedy uruchamiasz bez probuforowania em8300 jest wrażliwszy  na ładowanie CPU,
    więc jest bardzo sugerowane, by włączyć MPlayera z opcję
    <CODE>-framedrop</CODE>, by uniknąc desynchronizacji.<BR>
    <CODE>sync</CODE> włączy nowy silnik synchronizujący. Obecnie jest to w fazie 
    eksperymentów. Z włączoną sunczegar wewnętrzny em8300 będzie monitorował przez 
    cały czas, jeśli startuje z opóźnieniem zegar z MPlayera zresetuje powodując, że
    em8300 porzucki klatki powodujące opóźnianie.<BR>
    <CODE>norm=x</CODE> ustawi normę TV karty DXR3 bez potrzeby użycia zewnętrznych 
    narzędzi, takich jak em8300setup. Poprawne normy, to 5 = NTSC, 4 = PAL-60,
    3 = PAL. Specialnymi są 2 (autodopasowanie używające PAL/PAL-60) i 1
    (autodopasowanie używające PAL/NTSC), ponieważ decydują one, którą normę użyć, 
    przez zaglądanie do tempa klatek filmu. norm = 0 (domyślna) nie zmienia obecnej 
    normy.<BR>
    <CODE>&lt;device&gt;</CODE> = numer urządzenia, które ma być użyte, jeśli posiadasz więcej, 
    niż jedną kartę em8300.<BR>
    Niektóre z tych opcji mogą zostać pominięte.<BR>
    <CODE>:prebuf:sync</CODE> zdaje się, że świetnie pracuje podczas odtwarzanie filmów DivX.
    Osoby zgłaszały problemy podczas używania opcji <CODE>prebuf</CODE> kiedy odtwarzały 
    pliki MPEG1/2. Możesz spróbować uruchomić najpierw bez żadnych opcji, jeśli masz 
    problem z synchronizacją lub problem z napisami DVD, spróbuj z <CODE>:sync</CODE>.</DD>

  <DT><CODE>-ao oss:/dev/em8300_ma-X</CODE></DT>
  <DD>Dla wyjścia audio, gdzie <CODE>X</CODE> jest numerem urządzenia (0 jeśli 
      jest jedna karta).</DD>

  <DT><CODE>-aop list=resample:fout=xxxxx</CODE></DT>
  <DD>em8300 nie może odtwarzać próbkując niżej niż 44100Hz. Jeśli próbka
    jest poniżej 44100Hz wybierz jedną z dwóch 44100Hz lub 48000Hz w zależności, która 
    jest bliższa. T.j. jeśli film używa 22050Hz użuj 44100Hz jako
    44100 / 2 = 22050, jeśli jest 24000Hz użyj 48000Hz jako 48000 / 2 = 24000 i tak dalej.
    Nie działa to z cyfromym wyjściem audio (<CODE>-ac hwac3</CODE>).</DD>

  <DT><CODE>-vf lavc/fame</CODE></DT>
  <DD><B>(AUTO-ZAMIESZCZANIE)</B> By odtwarzać zawartość plików innych MPEG na em8300 
      (t.j. DivX lub RealVideo) musiszs określić któryś z filtrów wideo MPEG1, takich jak
      libavcodec (lavc) lub libfame (fame). W tym momencie lavc jest zarówno szybki i daje 
      lepszą jakość obrazu, jest sugerowane, abyć go użych, chociaż jeśli masz z nim
      problemy. Zajrzyj do manuala po informacje odnoście <CODE>-vf lavc/fame</CODE>.<BR>
      Używanie lavc jest wielce proponowane. Obecnie nie ma sposoby na ustawienie fpsów 
      em8300 co oznacza, że wartość ta jest stała - 29.97fps. Jest sugerowane, by
      użuwać <CODE>-vf lavc=&lt;quality&gt;:25</CODE>, w szczególności, jeżeli używasz
      prebuforowania. Ale skąd 25, a nie 29.97? Więc, rzecz się ma tak, że kiedy 
      używasz 29.97 obraz staje się lekko skokowy. Uzasadnienie tego jest nam nie 
      znane. Ale kiedy ustawisz fpsy na gdzieś pomiędzy 25 i 27 obraz jest stabilny.</DD>

  <DT><CODE>-vf expand=-1:-1:-1:-1:1</CODE></DT>
  <DD>Mimo, że sterownik DXR3 potrafi umieścić OSD wewnątrz wideo MPEG1/2/4,
      posiada ono gorszą jakość, niż tradycyjne OSD MPlayera i ma problemy z 
      odświeżaniem. Powyższa linia poleceń najpierw przekonwertuje wejście wideo do MPEG4 
      (jest to wymagane prawnie, przepraszam), a następnie zastosuje rozszerzony filter,
      który nie rozszerzy niczego (-1: domyślnie), ale zastosuje normalne OSD
      na obrazkie (jest to to, co robi "1"na końcu).</DD>

  <DT><CODE>-ac hwac3</CODE></DT>
  <DD>em8300 wspiera odtwarzanie audio AC3 (dźwięk surround) przez
    cyfrowe wyjście karty audio. Zobacz powyższą opcję <CODE>-ao oss</CODE>,
    która musi być użyta do określenia wyjścia DXR3 zamiast karty dźwiękowej.</DD>
</DL>


<H4><A NAME="other">2.3.1.4 Inna sprzętowa wizualizacja</A></H4>

<H4><A NAME="zr">2.3.1.4.1 Zr</A></H4>

<P>Są to sterowniki wyświetlania (<CODE>-vo zr</CODE>) dla członków kart 
   przechwytujących/odtwarzających MJPEG (testowane na DC10+ i Buz i powinno 
   działać dla LML33  i oryginalnej DC10). Sterowniki pracują, kodując klatkę 
   do jpeg i przesyłając ją do karty. Dla kodowania jpeg <B>libavcodec</B> jest użyteczne, 
   i sugerowane is. Ze specialnym trybem <I>cinerama</I>, możesz oglądać
   filmy w obnszernym ekranie pod warunkiem, że piosiadasz dwa beamery i dwie karty MJPEG. 
   W zależności od rozdzielnczości i ustawień jakości, sterownik ten może wymagać dużo
   mocy obliczeniowej CPU, pamiętaj, by okreslić <CODE>-framedrop</CODE>
   jeśli twoja maszyna jest zbyt wolna. Informacja: Mój AMD K6-2 350MHz jest (z <CODE>
  -framedrop</CODE>) dostatecznmie wystarczający do oglądania filmów VCD o zminienionym 
  rozmiarze i z zmniejszeniem skali.</P>

<P>Sterownik ten kontaktuje się ze sterownikami jądra dostępnych na
  <A HREF="http://mjpeg.sourceforge.net">http://mjpeg.sourceforge.net</A>, więc 
  musisz zrobić je najpierw. Obecność karty MJPEG jest automatycznie wykrywana przez skrypt 
  configure, jeśli detekcje nie powiodła się, wymuś ją przez</P>

<PRE>
  ./configure --enable-zr
</PRE>

<P>Wyjście może być kontrolowane przez różne opcje, obszerne ich objaśnienie możesz
   znaleść w manualu, krótką listę opcji możesz otrzymać przez uruchomienie</P>

<PRE>
  mplayer -zrhelp
</PRE>

<P>Rzeczy, takie ja skalowanie i OSD (on screen display - wyświetlanie na ekarnie) 
   nie są utrzymywane przez ten sterownik, ale może byc to wykonane poprez filtry wideo. 
   Na przykład, przypuśćmy, że masz film z rozdzielczością <CODE>512x272</CODE>, a
   chcesz oglądać go na pełnym ekarnie na twojej DC10+. Istnieją trzy główne możliwośći,
   możesz skalowac film do szerokości <CODE>768</CODE>, <CODE>384</CODE> lub <CODE>192</CODE>. 
   W związku z quality powinienieś wybrać skalowanie do <CODE>384x204</CODE> używając szybkiego
   dwuliniowego skalowanika sprzętowego (fast bilinear). Polecenie jest takie</P>

<PRE>
  mplayer -vo zr -sws 0 -vf scale=384:204 movie.avi
</PRE>

<P>Kadrowanie może być wykonane poprzez filter <CODE>crop</CODE> i "własnoręcznie"
  przez sterownik. Przypuśćmy, że film jest zbyt szeroki, wyświeltać go na twojej
  Buz, a nie chcesz używać <CODE>-zrcrop</CODE>. By zmniejszyć film powinienieć 
  użyć następującego polecenia</P>

<PRE>
  mplayer -vo zr -zrcrop 720x320+80+0 benhur.avi
</PRE>

<P>Jeśli chcesz użyć filtra <CODE>crop</CODE>, powinieneś wykonać</P>

<PRE>
  mplayer -vo zr -vf crop=720:320:80:0 benhur.avi
</PRE>

<P>Ekstra zdarzenie <CODE>-zrcrop</CODE> wzywa tryb <I>cinerama</I>, t.j.
  możesz rozdzialić film przez rożne beamery TV, by stworzyc większy ekran. 
  Przypuśćmy, masz dwa beamery. Lewy podłączony do twojego Buz
  na <CODE>/dev/video1</CODE> i prawy podłączony do DC10+ na
  <CODE>/dev/video0</CODE>. Film ma rozdzielczość <CODE>704x288</CODE>.
  Przypuśćmy także, że chcesz prawy beamer w czarnobieli, a 
  prawy powninien mieć klatki jpeg w jakośći <CODE>10</CODE>,
  powinieneś wykonać następujące polecenie</P>

<PRE>
  mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \
          -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 movie.avi
</PRE>

<P>Widzisz, że opcje pojawiające się przed drugim <CODE>-zrcrop</CODE>
   zastosowują się tylko do DC10+, a te opcje op drugim <CODE>-zrcrop</CODE> - do Buz. 
   Maksymalna liczba kart MJPEG uczestniczących w <I>cinerama</I> to cztery, więc możesz 
   zbudować vidiwall <CODE>2x2</CODE>.</P>

<P>Końcowa ważna uwaga: Nie startuje lub nie stopuj XawTV na urządzeniu 
   odtwarzającym, podczas odtwarzania, zawiesi to twój komputer. Jest tak, jednak, 
   <B>NAJPIERW</B> wystartuj XawTV, <B>PÓŹNIEJ</B> MPlayera, poczekaj, aż
   MPlayer skończy i <B>NASTĘPNIE</B> zatrzymaj XawTV.</P>


<H4><A NAME="blinken">2.3.1.4.2 Blinkenlights</A></H4>

<P>Sterownik ten potrafi użyc protokołu Blinkenlights UDP.
   Jeśli nie wiesz, czym jest <A HREF="http://www.blinkenlights.de/">Blinkenlights</A>, 
   nie potrzebujesz tych sterowników.</P>


<H4><A NAME="tv-out">2.3.1.5 Wsparcie dla wyjścia TV</A></H4>


<H4><A NAME="tv-out_matrox">2.3.1.5.1 Karty Matrox G400</A></H4>

<P>Pod Linuksem masz dwie możliwośći, otzrymanie działającego wyjścia TV dla G400:</P>

<P><B>WAŻNE:</B> dla instrukcji wyjścia TV Matroksa G450/G550, proszę zajrzeć do 
    następnej sekcji!</P>

<UL>
  <LI><B>XFree86</B>: używając sterowników modułow HAL, dostępnych na
    <A HREF="http://www.matrox.com">stronie Matroksa</A>. Da ci to X na TV.<BR> 
    <B>Metopda ta nie daje możliwości akceleracji odtwarzania</B> jak pod Windoze! 
    Druga głowica posiada tylko framebuffer YUV framebuffer, <I>BES</I>
    (Back End Scaler, skaler YUV na kartach G200/G400/G450/G550) nie działa na nich! 
    Sterowniki Windows w jakiś sposób działają wokół tego, prawdopodobnie używając 
    silnika 3D do powiększania, i framebuffera YUV do wyświetlania powiększonego obrazu. 
    Jeśli naprawdę chcesz używac X, użyj opcji <CODE>-vo x11 -fs -zoom</CODE>, 
    lecz będzie ona <B>WOLNA</B> oraz posiada ona włączone zabezpieczenie przed kopiowaniem
    <B>Macrovision</B> (możesz obchodzić Macrovision używając 
    <A HREF="http://avifile.sourceforge.net/mgamacro.pl">tego</A> skryptu perla.</LI>
  <LI><B>Framebuffer</B>: używa <B>modułów matroxfb</B> z jądra 2.4.
    Jądro 2.2 nie posiada cechy wyjścia TV w sobie, dlatego też jest nieużyteczne 
    do tego. Możesz włączyć wszytskie określone cechy matroxfb w czasie kompilacji (oprócz
    MultiHead) i przekompilowac je w <B>moduły</B>! Będziesz potrzebował także 
    włączonego I2C.
    <OL>
      <LI>
	Wejdź do <CODE>TVout/matroxset</CODE> i wytypuj <CODE>make</CODE>. Zainstaluj
        <CODE>matroxset</CODE> gdzieś w twojej ścieżce.</LI>
      <LI>
	Jeśli nie masz zainstalowanego <CODE>fbset</CODE>, wejdź do
        <CODE>TVout/fbset</CODE> i wytypuj <CODE>make</CODE>. Zainstaluje
        <CODE>fbset</CODE> gdzieś w twojej ścieżce.</LI>
      <LI>
        Następnie wejdź do katalogu <CODE>TVout/</CODE> w źródłach MPlayera i wykonaj 
	<CODE>./modules</CODE> jako root. Twój tyrb tekstowy przejdzie do trybu 
	framebuffera (nie ma drogi powrotnej!).</LI>
      <LI>Następnie WEDYTUJ i uruchom skrypt <CODE>./matroxtv</CODE>. Zaprezentuje się jako 
        proste menu. Naciśnij <B>2</B> i <B>ENTER</B>. Teraz powinieneś mieć ten sam obraz na 
	monitorze i na TV. Jeżeli obraz TV (domyślnie PAL) ma dziwne pasy, skrypt nie był w stanie 
	ustawwić ustawić poprawnie rozdzielczości (domyślnie do 640x512). Spróbuj innych
	rozdzielczości z menu i/albo poeksperymentuj z fbset.</LI>
    </OL>

    <P>Yoh. Następnym zandaniem jest utworzenie kursora na tty1 (lub cokolwiek) wyłączonegoto,
       i wyłączebnie pustego ekranu. Urucham następujące polecenie:</P>

    <P><CODE>echo -e '\033[?25l'</CODE> or <CODE>setterm -cursor off<BR>
      setterm -blank 0</CODE></P>

    <P>Możliwe, że chcesz umieścić powyższe polecenie wewnątrz skryput, a także wyczyścić ekaran.. 
    By przywrócić kursor:<BR><CODE>echo -e '\033[?25h'</CODE>
    lub <CODE>setterm -cursor on</CODE></P>

    <P>Yeah kewl. Wystartuj odtwarzanie filmu przez <CODE>mplayer -vo mga -fs -screenw 640
    -screenh 512 &lt;filename&gt;</CODE><BR>
    (jeśli używaszX, zmień teraz do matroxfb przez np. CTRL-ALT-F1!)<BR>
    Zmień 640x512 jeśli ustawiłeś rozdzielczość do innej.<BR>
    <B>Ciesz się ultraszybkim, ultrauwydatnionym wyjściem TV Matrosa (lepsze niż Xv)!</B></P>
  </LI>
</UL>

<H4>Bodowanie kabla wyjścia TV Matroksa</H4>

<P>Nikt nie bierze odpowiedzialności i nie poręcza za uszkodzenia wynikłe z tej dokumentacji.</P>

<P><B>Kabel dla G400</B>: Czwarta końcówka złącza CRTC2 jest złożonym sygnałem wideo. Uziemienia
  to szusta, siódma i ósma końcówka. (informacje zaczerpnięte od Balázsa Rácza)</P>

<P><B>Kabel dla G450</B>: Pierwsza końcówka złącza CRTC2 jest złożonym sygnałem wideo. 
   Uziemienia to piąta, szusta, siódma i piętnasta końcówka (5, 6, 7, 15). (informacje zaczerpnięte 
   od Balázsa Kerekesa)</P>

<H4><A NAME="tv-out_matrox_g450">2.3.1.5.2 Karty Matrox G450/G550</A></H4>

<P>Wyjście tw wspierane dla tych kart zostało niedawno wprowadzone, i nie mag go jeszcze 
   w głównej gałęzi jądra. Obecnie moduł <B>mga_vid</B>jak mi wiadomo nie może być użyty, 
   ponieważ sterownik G450/G550 pracujue tylko na jednej konfiguracji: pierwszy chip CRTC 
   (z większośćią dodatków) na pierwszym wyświetlaniu (na monitorze) i drugi CRTC (nie <B>BES</B> - 
   po wyjaśnienia BES, proszę zajrzyj do powyższej sekcji G400) na TV. Więc obecnie możesz 
   użyć tylko sterowników wyjścia <I>fbdev</I> MPlayera.</P>

<P>Pierwszy CRTC obecnie nie może być przekierowany do drugiej głowicy.
   Autor sterowników jądra matroxfb - Petr Vandrovec - możliwe, że napisze wsparcie 
   do tego, prze wyświetlanie pierwszego wujścia CRTC na obydwu głowicach jednocześnie 
   obecnie proponowane dla G400, zobacz sekcję wyżej.</P>

<P>Niezbędna łata na jądro oraz szczegółowe howto można popbrać z 
   <A HREF="http://www.bglug.ca/matrox_tvout/">http://www.bglug.ca/matrox_tvout/</A></P>


<H4><A NAME="tv-out_ati">2.3.1.5.3 Karty ATI</A></H4>

<H4>WSTĘP</H4>

<P>Obecnie ATI nie chce wsparcia dla jakichkolwiek wyjść TV pod Linuksem,
   ponieważ są one licencjowane na technologi Macrovision.</P>

<H4>STATUS WYJŚĆ TV KAR ATI POD LINUKSEM</H4>

<UL>
  <LI><B>ATI Mach64</B>: Wsparte przez
    <A HREF="http://gatos.sf.net">gatos</A>.</LI>
  <LI><B>ASIC Radeon VIVO</B>: Wsparte przez
  <A HREF="http://gatos.sf.net">gatos</A>.</LI>
  <LI><B>Radeon</B> i <B>Rage128</B>: Wsparte przez MPlayer!
    Sprawdź <a href="#vesa">sterownik VESA</a> oraz sekcję 
    <A HREF="#vidix">VIDIX</A>.</LI>
  <LI><B>Rage Mobility P/M, Radeon, Rage 128, Mobility M3/M4</B>: Wsparte przez
    <A HREF="http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/">
    atitvout</A>.
</UL>

<P>Na innych kartach użyj tylko <a href="#vesa">sterownika VESA</a>, bez VIDIX. 
   Jednak silne CPU jest wymagane.</P>

<P>Jedyna rzecz, jaką musisz wykonać - <B>musisz mieć podłączone złącze TV przed
  butowaniem PeCta</B> ponieważ BIOS inicjalizuje się tylko raz podczas 
  procedury POST.</P>


<H4><A NAME="tv-out_voodoo">2.3.1.5.4 Voodoo 3</A></H4>

<P>Sprawdź <A HREF="http://www.iki.fi/too/tvout-voodoo3-3000-xfree">ten URL</A>.</P>


<H4><A NAME="tv-out_nvidia">2.3.1.5.5 nVidia</A></H4>

<P>Najpierw musisz pobrać zamknięte, binarne sterowniki z
  <A HREF="http://nvidia.com">http://nvidia.com</A>. Nie będę opisywał procesu 
  instalacji i konfiguracji, ponieważ nie jest to celem tej dokumantacji.</P>

<P>Jeżeli XFree86, XVideo oraz akceleracji 3D poprawnie pracuje,
   wyedytuj swoją sekcję Urządzenie (Device) w pliku <CODE>XF86Config</CODE>,
   według poniższego przykładu (przystosowanego do twojej karty/TV):</P>

<PRE>
Section "Device"
        Identifier      "GeForce"
        VendorName      "ASUS"   
        BoardName       "nVidia GeForce2/MX 400"
        Driver          "nvidia"
        #Option         "NvAGP" "1"
        Option          "NoLogo"   
        Option          "CursorShadow"  "on"

        Option          "TwinView"
        Option          "TwinViewOrientation" "Clone"
        Option          "MetaModes" "1024x768,640x480"
        Option          "ConnectedMonitor" "CRT, TV"  
        Option          "TVStandard" "PAL-B"
        Option          "TVOutFormat" "Composite"

EndSection
</PRE>

<P>Oczywiście najważniejszą rzeczą jest część TwinView.</P>

</BODY>
</HTML>