<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r21741 -->
<!-- Opiekun: brak (poprzednio Paszczi) -->
<chapter id="install">
<title>Instalacja</title>

<para>
Przewodnik szybkiej instalacji znajdziesz w pliku <filename>README</filename>.
Proszę, najpierw go przeczytaj, a później wróć do tego dokumentu
po mrożące krew w żyłach szczegóły.
</para>

<para>
W tym rozdziale zostaniesz przeprowadzony przez proces kompilacji
i konfiguracji <application>MPlayera</application>. Nie będzie to łatwe,
ale niekoniecznie też musi być trudne. Jeżeli zauważysz zachowanie inne niż
tutaj opisane, proszę poszukaj w dokumentacji, a na pewno znajdziesz
odpowiedzi.
</para>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="softreq">
<title>Wymagane oprogramowanie</title>

<itemizedlist>
<listitem><para>
  <emphasis role="bold">binutils</emphasis> - zalecana jest wersja
  <emphasis role="bold">2.11.x</emphasis>.
</para></listitem>
<listitem><para>
  <emphasis role="bold">gcc</emphasis> - zalecanymi wersjami są 2.95 i 3.4+.
  Wiadomo, że 2.96 i 3.0.x generują wadliwy kod, 3.1 i 3.2 również miały problemy,
  3.3 niewielkie.
  Na PowerPC używaj 4.x+.
</para></listitem>
<listitem><para>
  <emphasis role="bold">XFree86</emphasis> - sugerowaną wersją jest
  4.3 lub nowsza.
  Upewnij się, że są zainstalowane również <emphasis role="bold">pakiety rozwojowe</emphasis>,
  w przeciwnym wypadku nie zadziała.
  X'y nie są absolutnie niezbędne,
  niektóre sterowniki wyjścia video działają bez nich.
</para></listitem>
<listitem><para>
  <emphasis role="bold">make</emphasis> - sugerowaną wersją jest 3.79.x lub
  nowsza. Żeby zbudować dokumentację XML potrzebujesz przynajmniej 3.80.
</para></listitem>
<listitem><para>
  <emphasis role="bold">FreeType</emphasis> - opcjonalna, wymagana by mieć
  czcionkę do OSD i napisów. Wymagana jest przynajmniej wersja 2.0.9.
</para></listitem>
<listitem><para>
  <emphasis role="bold">libjpeg</emphasis> - opcjonalny koder/dekoder JPEG,
  wymagany przez wyjście video JPEG i do dekodowania filmów MJPEG
</para></listitem>
<listitem><para>
  <emphasis role="bold">libpng</emphasis> - domyślny i zalecany koder/dekoder (M)PNG,
  wymagany przez GUI i wyjście video PNG
</para></listitem>
<listitem><para>
  <emphasis role="bold">lame</emphasis> - zalecana jest wersja 3.90 lub
  późniejsza, wymagana do zakodowania dźwięku MP3 przez
  <application>MEncodera</application>.
</para></listitem>
<listitem><para>
  <emphasis role="bold">zlib</emphasis> - zalecana, wymagana dla skompresowanych
  nagłówków MOV i obsługi PNG.
</para></listitem>
<listitem><para>
  <emphasis role="bold"><ulink url="http://www.live555.com/mplayer/">LIVE555 Streaming Media</ulink></emphasis>
  - opcjonalna, wymagana do odtwarzania niektórych strumieni RTSP/RTP.
</para></listitem>
<listitem><para>
  <emphasis role="bold">directfb</emphasis> - opcjonalna, używaj 0.9.13 lub
  nowszej.
</para></listitem>
<listitem><para>
  <emphasis role="bold">cdparanoia</emphasis> - opcjonalna, do obsługi CDDA.
</para></listitem>
<listitem><para>
  <emphasis role="bold">libxmms</emphasis> - opcjonalna, do obsługi wtyczek wejściowych
  XMMS. Wymagana jest przynajmniej wersja 1.2.7.
</para></listitem>
<listitem><para>
  <emphasis role="bold">libsmb</emphasis> - opcjonalna, do obsługi sieci przez smb.
</para></listitem>
<listitem><para>
  <emphasis role="bold">ALSA</emphasis> - opcjonalna, do obsługi wyjścia dźwięku
  przez ALSA. Wymagana jest przynajmniej wersja 0.9.0rc4.
</para></listitem>
</itemizedlist>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="features">
<title>Możliwości</title>

<itemizedlist>
<listitem><para>
  Zdecyduj czy potrzebujesz GUI. Jeśli tak, przeczytaj rozdział
  <link linkend="gui">GUI</link> przed kompilacją.
</para></listitem>
<listitem><para>
  Jeżeli chcesz zainstalować <application>MEncodera</application>
  (naszego wspaniałego enkodera do wszelkich celów), przeczytaj sekcję
  <link linkend="mencoder"><application>MEncoder</application></link>.
</para></listitem>
<listitem><para>
  Jeżeli masz <emphasis role="bold">tuner TV</emphasis> kompatybilny z V4L
  i chcesz oglądać/przechwytywać i kodować filmy przy pomocy
  <application>MPlayera</application>,
  przeczytaj rozdział <link linkend="tv-input">wejście TV</link>.
</para></listitem>
<listitem><para>
  Jeżeli masz <emphasis role="bold">tuner radiowy</emphasis> kompatybilny z V4L
  i chcesz słuchać i zapisywać dźwięk przy pomocy
  <application>MPlayera</application>,
  przeczytaj rozdział <link linkend="radio">radio</link>.
</para></listitem>
<listitem><para>
  Dostępne jest miłe, gotowe do użycia
  <emphasis role="bold">Menu OSD</emphasis>.
  Przeczytaj rozdział <link linkend="subosd">menu OSD</link>.
</para></listitem>
</itemizedlist>

<para>
Potem skompiluj <application>MPlayera</application>:
<screen>
./configure
make
make install
</screen>
</para>

<para>
W tym momencie <application>MPlayer</application> jest już gotowy do użycia.
Katalog <filename class="directory">$PREFIX/share/mplayer</filename>
zawiera plik <filename>codecs.conf</filename>, który informuje program o
wszystkich, dostępnych kodekach i ich możliwościach. Plik ten potrzebny Ci
będzie tylko wtedy, jeżeli będziesz chciał zmodyfikować jego ustawienia, jako że
plik wykonywalny zawiera go już w sobie. Sprawdź czy masz
<filename>codecs.conf</filename> ze starych wersji
<application>MPlayera</application> w swoim katalogu domowym
(<filename>~/.mplayer/codecs.conf</filename>) i usuń go.
</para>

<para>
Zauważ, że jeżeli masz <filename>codecs.conf</filename> w
<filename>~/.mplayer/</filename>, wbudowany i systemowy
<filename>codecs.conf</filename> będą całkowicie zignorowane.
Nie rób tak, chyba że chcesz pobawić się z ustawieniami wewnętrznymi
<application>MPlayera</application>, ponieważ może to spowodować wiele
problemów. Jeżeli chcesz zmienić kolejność szukania kodeków, skorzystaj
z opcji <option>-vc</option>, <option>-ac</option>, <option>-vfm</option>
lub <option>-afm</option> w wierszu poleceń, lub w Twoim pliku konfiguracyjnym
(sprawdź stronę man).
</para>

<para>
Użytkownicy Debiana mogą sobie zbudować paczkę .deb, jest
to bardzo proste. Wykonaj
<screen>fakeroot debian/rules binary</screen>
w głównym katalogu <application>MPlayera</application>. Przeczytaj rozdział
<link linkend="debian">paczki Debiana</link>, aby uzyskać więcej informacji.
</para>

<para>
<emphasis role="bold">Zawsze przejrzyj wyniki</emphasis>
<filename>./configure</filename> i plik
<filename>config.log</filename>, zawierają one informacje o tym, co będzie zbudowane,
a co nie. Możesz również obejrzeć pliki
<filename>config.h</filename> i <filename>config.mak</filename>.
Jeżeli masz zainstalowane jakieś biblioteki, ale nie są one wykrywane przez
<filename>./configure</filename>, sprawdź czy masz również odpowiednie
pliki nagłówkowe (przeważnie pakiety -dev) i ich wersje się zgadzają. Plik
<filename>config.log</filename> zazwyczaj powie Ci, czego brakuje.
</para>

<para>
Chociaż nie jest to konieczne, czcionki powinny być zainstalowane, żebyś mógł
korzystać z OSD i napisów. Zalecana jest instalacja czcionki TTF i ustawienie
<application>MPlayera</application> tak, żeby z niej korzystał. Przeczytaj
rozdział <link linkend="subosd">Napisy i OSD</link> dla uzyskania bardziej
szczegółowych informacji.
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="gui">
<title>A co z GUI?</title>

<para>
GUI wymaga biblioteki GTK 1.2.x lub GTK 2.0 (nie jest w pełni w GTK, ale jego
panele są). Skórki przechowywane są w formacie PNG, tak więc musi być
zainstalowane GTK, <systemitem class="library">libpng</systemitem>
(i ich pakiety rozwojowe, zazwyczaj nazwane
<systemitem class="library">gtk-dev</systemitem> i
<systemitem class="library">libpng-dev</systemitem>).
Możesz go zbudować podając opcję <option>--enable-gui</option> skryptowi
<filename>./configure</filename>. Aby skorzystać z trybu GUI, musisz wywołać
polecenie <command>gmplayer</command>.
</para>

<para>
Jako że <application>MPlayer</application> nie zawiera żadnej skórki, musisz
je ściągnąć, jeżeli chcesz używać GUI. Sprawdź
<ulink url="http://www.mplayerhq.hu/dload.html">stronę z zasobami do pobrania</ulink>.
Skórki powinny być rozpakowane do katalogu dostępnego dla wszystkich
(<filename class="directory">$PREFIX/share/mplayer/skins</filename>) lub do
<filename class="directory">$HOME/.mplayer/skins</filename>.
<application>MPlayer</application> sprawdza je w poszukiwaniu
folderu nazwanego <filename class="directory">default</filename>, ale
możesz użyć opcji <option>-skin <replaceable>nowaskórka</replaceable></option>
lub wpisać do pliku konfiguracyjnego <literal>skin=nowaskórka</literal>, aby
program korzystał ze skórki w katalogu
<filename class="directory">*/skins/nowaskórka</filename>.
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="fonts-osd">
<title>Czcionki i OSD</title>

<para>
Musisz powiedzieć <application>MPlayerowi</application> której czcionki ma
używać, by móc cieszyć się OSD i napisami. Działa dowolna czcionka TrueType
lub specjalne czcionki bitmapowe. Jednakże zalecane są czcionki TrueType,
ponieważ wyglądają o wiele lepiej, mogą być prawidłowo przeskalowane do
wielkości filmu i lepiej sobie radzą z różnymi sposobami kodowania.
</para>

<!-- ********** -->

<sect2 id="truetype-fonts">
<title>Czcionki TrueType</title>

<para>
Są dwa sposoby na skłonienie czcionek TrueType do działania. Pierwszy to
podanie w wierszu poleceń pliku z czcionką TrueType przy pomocy opcji
<option>-font</option>.
Ta opcja jest też dobrym kandydatem do włożenie w plik konfiguracyjny
(szczegóły na stronie man).
Drugi to stworzenie dowiązania symbolicznego (symlink) o nazwie
<filename>subfont.ttf</filename> wskazującego na wybraną czcionkę.
Albo
<screen>
ln -s <replaceable>/ścieżka/do/przykładowej_czcionki.ttf</replaceable> ~/.mplayer/subfont.ttf
</screen>
dla każdego użytkownika osobno, albo ogólnosystemowe:
<screen>
ln -s <replaceable>/ścieżka/do/przykładowej_czcionki.ttf</replaceable> $PREFIX/share/mplayer/subfont.ttf
</screen>
</para>

<para>
Jeśli <application>MPlayer</application> był skompilowany z obsługą
<systemitem class="library">fontconfig</systemitem>, te metody nie zadziałają,
zamiast tego <option>-font</option> oczekuje nazwy czcionki według
<systemitem class="library">fontconfig</systemitem> i domyślnie bierze
czcionkę sans-serif.
Przykład:
<screen>
mplayer -font <replaceable>'Bitstream Vera Sans'</replaceable> <replaceable>anime.mkv</replaceable>
</screen>
</para>

<para>
Żeby zobaczyć jakie czcionki zna
<systemitem class="library">fontconfig</systemitem>, użyj
<command>fc-list</command>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="bitmap-fonts">
<title>Czcionki bitmapowe</title>

<para>
Jeśli z jakiegoś powodu chcesz lub musisz użyć czcionek bitmapowych, ściągnij
zestaw z naszej strony domowej. Możesz wybierać spośród rozmaitych
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/fonts/">czcionek ISO</ulink>
oraz zestawów czcionek
<ulink url="http://www.mplayerhq.hu/MPlayer/contrib/fonts/">stworzonych przez użytkowników</ulink>
w rozmaitych kodowaniach.
</para>

<para>
Rozpakuj ściągnięty plik do katalogu
<filename class="directory">~/.mplayer</filename> lub
<filename class="directory">$PREFIX/share/mplayer</filename>.
Potem przemianuj lub stwórz dowiązanie symboliczne jednego z rozpakowanych
katalogów na nazwę
<filename class="directory">font</filename>, na przykład:
<screen>
ln -s <replaceable>~/.mplayer/arial-24</replaceable> ~/.mplayer/font
</screen>
<screen>
ln -s <replaceable>$PREFIX/share/mplayer/arial-24</replaceable> $PREFIX/share/mplayer/font
</screen>
</para>

<para>
Czcionki powinny mieć odpowiedni plik <filename>font.desc</filename>, który
przypisuje pozycje czcionek unicode na właściwą stronę kodową napisów.
Innym rozwiązaniem jest mieć napisy zakodowane w UTF-8 i używać opcji
<option>-utf8</option> albo nazwać plik z napisami tak samo jak film, ale z
rozszerzeniem <filename>.utf</filename>
i mieć go w tym samym katalogu co film.
</para>
</sect2>

<!-- ********** -->

<sect2 id="osdmenu">
<title>Menu OSD</title>

<para>
<application>MPlayer</application>
ma całkowicie definiowalny Interfejs Menu OSD.
</para>

<note><para>
Menu Ustawienia nie jest jeszcze ZAIMPLEMENTOWANE!
</para></note>

<orderedlist>
<title>Instalacja</title>
<listitem><para>
  skompiluj <application>MPlayera</application> z opcją
  <option>--enable-menu</option> dla skryptu <filename>./configure</filename>
</para></listitem>
<listitem><para>
  upewnij się, że masz zainstalowaną czcionkę OSD
</para></listitem>
<listitem><para>
  skopiuj plik <filename>etc/menu.conf</filename> do Twojego katalogu
  <filename class="directory">.mplayer</filename>
</para></listitem>
<listitem><para>
  skopiuj plik <filename>etc/input.conf</filename> do Twojego katalogu
  <filename class="directory">.mplayer</filename> lub do ogólnosystemowego
  katalogu z konfiguracją <application>MPlayera</application> (domyślnie:
  <filename class="directory">/usr/local/etc/mplayer</filename>)
</para></listitem>
<listitem><para>
  sprawdź i ewentualnie przerób plik <filename>input.conf</filename>,
  aby określić funkcje klawiszy (wszystko jest tam opisane).
</para></listitem>
<listitem><para>
  uruchom <application>MPlayera</application> przykładową komendą:
  <screen>mplayer -menu <replaceable>plik.avi</replaceable></screen>
</para></listitem>
<listitem><para>
  wciśnij dowolny klawisz, który wcześniej zdefiniowałeś
</para></listitem>
</orderedlist>

</sect2>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="codec-installation">
<title>Codec installation</title>

<!-- ********** -->

<sect2 id="xvid">
<title>Xvid</title>

<para>
<ulink url="http://www.xvid.org">Xvid</ulink> jest wolnym, kompatybilnym
z MPEG-4 ASP, kodekiem video z możliwościami kodowania dwuprzebiegowego
i pełną obsługą MPEG-4 ASP.
Zauważ, że Xvid nie jest konieczny do odtwarzania video zakodowanego przy
pomocy Xvid. Domyślnie używana jest biblioteka
<systemitem class="library">libavcodec</systemitem>, bo jest szybsza.
</para>

<procedure>
<title>Instalacja <systemitem class="library">Xvid</systemitem></title>
<para>
  Jak większość otwartego oporgramowania dostępny jest w dwóch wersjach:
  <ulink url="http://www.xvid.org/downloads.html">oficjalnych wydań</ulink>
  i wersji CVS.
  Wersja CVS jest zazwyczaj wystarczająco stablina by jej używać, jako że
  zazwyczaj ma poprawki do błędów występujących w wydaniach.
  Tak należy nakłonić <systemitem class="library">Xvid</systemitem> CVS do
  pracy z <application>MEncoderem</application> (będziesz potrzebował
  przenajmniej <application>autoconf</application> 2.50,
  <application>automake</application> i <application>libtool</application>):
</para>
<step><para>
  <screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</screen>
</para></step>
<step><para>
  <screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</screen>
</para></step>
<step><para>
  <screen>cd xvidcore/build/generic</screen>
</para></step>
<step><para>
  <screen>./bootstrap.sh</screen>
</para></step>
<step><para>
  <screen>./configure</screen>
  Możesz potrzebować dodać jakieś opcje (przejrzyj wyjście
  polecenia <command>./configure --help</command>)
</para></step>
<step><para>
  <screen>make &amp;&amp; make install</screen>
</para></step>
<step><para>
  Przekompiluj <application>MPlayera</application>.
</para></step>
</procedure>
</sect2>

<!-- ********** -->

<sect2 id="x264">
<title><systemitem class="library">x264</systemitem></title>

<para>
<ulink url="http://developers.videolan.org/x264.html"><systemitem class="library">x264</systemitem></ulink>
is a library for creating H.264 video.
<application>MPlayer</application> sources are updated whenever
an <systemitem class="library">x264</systemitem> API change
occurs, so it is always suggested to use
<application>MPlayer</application> from Subversion.
</para>

<para>
If you have a GIT client installed, the latest x264
sources can be gotten with this command:
<screen>git clone git://git.videolan.org/x264.git</screen>

Then build and install in the standard way:
<screen>./configure &amp;&amp; make &amp;&amp; make install</screen>

Now rerun <filename>./configure</filename> for
<application>MPlayer</application> to pick up
<systemitem class="library">x264</systemitem> support.
</para>
</sect2>

<!-- ********** -->

<sect2 id="amr">
<title>Kodeki AMR</title>

<para>
Kodeki mowy Adaptive Multi-Rate są używane w telefonii komórkowej
trzeciej generacji (3G).
Opis implementacji udostępniany jest przez
<ulink url="http://www.3gpp.org">The 3rd Generation Partnership Project</ulink>
(za darmo dla osób prywatnych).
</para>

<para>
Żeby uaktywnić obsługę kodeków, pobierz źródła kodeków
<ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26104-610.zip">AMR-NB</ulink> i
<ulink url="http://www.3gpp.org/ftp/Specs/latest/Rel-6/26_series/26204-600.zip">AMR-WB</ulink>,
umieść je w katalogu do którego rozpakowałeś źródła
<application>MPlayera</application> i wpisz następujące komendy:
<screen>
unzip 26104-610.zip
unzip 26104-610_ANSI_C_source_code.zip
mv c-code libavcodec/amr_float
unzip 26204-600.zip
unzip 26204-600_ANSI-C_source_code.zip
mv c-code libavcodec/amrwb_float
</screen>
Gdy już to zrobisz, kontynuuj <link linkend="features">budowanie</link>
<application>MPlayera</application> tak, jak zwykle.
</para>
</sect2>
</sect1>

<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="rtc">
<title>RTC</title>

<para>
Istnieją trzy metody synchronizacji w <application>MPlayerze</application>.

<itemizedlist>
<listitem><para>
  <emphasis role="bold">Żeby skorzystać ze starej metody</emphasis>, nie musisz
  robić nic. Używa ona <systemitem>usleep()</systemitem>, aby poprawnie
  zsynchronizować A/V z dokładnością +/- 10ms. Czasami jednak synchronizacja
  musi być jeszcze dokładniejsza.
</para></listitem>
<listitem>
  <para>
  Kod <emphasis role="bold">nowego zegara</emphasis> korzysta do tego celu
  z RTC (RealTime Clock), ponieważ jest on dokładny co do 1ms.
  Włącza się go opcją
  <option>-rtc</option>, ale wymaga odpowiednio skonfigurowanego jądra.
  Jeżeli korzystasz z jądra w wersji 2.4.19pre8 lub późniejszej, wystarczy, że
  ustawisz maksymalną częstotliwość RTC dla zwykłego użytkownika przez
  system plików <systemitem class="systemname">/proc</systemitem>.
  Użyj jednego z następujących poleceń, aby pozwolić na korzystanie z RTC
  zwykłym użytkownikom:
  <screen>echo 1024 &gt; /proc/sys/dev/rtc/max-user-freq</screen>
  <screen>sysctl dev/rtc/max-user-freq=1024</screen>
  Możesz uczynić tę zmianę trwałą  dodając ten drugi wiersz do
  <filename>/etc/sysctl.conf</filename>.
  </para>
  <para>
  Możesz zobaczyć wydajność nowego synchronizatora w wierszu stanu.
  Zarządzanie energią w BIOSach niektórych notebooków z procesorami w technologii
  speedstep nie współgra z RTC. Dźwięk i obraz mogą być niezsynchronizowane.
  Podłączenie zewnętrznego źródła energii przed włączeniem notebooka
  wydaje się pomagać.
  W niektórych zestawieniach sprzętowych (sprawdzone przy używaniu DVD bez
  obsługi DMA na płycie ALi1541) korzystanie z RTC wywołuje skokowe odtwarzanie.
  Zaleca się skorzystanie w tych przypadkach z trzeciej metody.
  </para>
</listitem>
<listitem><para>
  <emphasis role="bold">Trzeci kod zegara</emphasis> włączany jest opcją
  <option>-softsleep</option>. Ma dokładność RTC, ale z niego nie korzysta.
  Wymaga jednak większej mocy obliczeniowej procesora.
</para></listitem>
</itemizedlist>
</para>
</sect1>
</chapter>
