mirror of https://github.com/mpv-player/mpv
1855 lines
70 KiB
XML
1855 lines
70 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- synced with r21748 -->
|
|
<!-- Opiekun: emdej -->
|
|
<chapter id="usage">
|
|
<title>Sposób użycia</title>
|
|
|
|
<sect1 id="commandline">
|
|
<title>Wiersz poleceń</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> używa skomplikowanego drzewa odtwarzania.
|
|
Składa się ono z opcji globalnych podanych na początku, na przykład:
|
|
<screen>mplayer -vfm 5</screen>
|
|
i opcji podanych po nazwach plików, które stosują się jedynie do podanego
|
|
pliku/URLa/czegokolwiek, na przykład:
|
|
<screen>
|
|
mplayer -vfm 5 <replaceable>film1.avi</replaceable> <replaceable>film2.avi</replaceable> -vfm 4
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Możesz pogrupować nazwy plików/URLe za pomocą <literal>{</literal> oraz
|
|
<literal>}</literal>. Przydaje się to przy opcji <option>-loop</option>:
|
|
<screen>mplayer { 1.avi -loop 2 2.avi } -loop 3</screen>
|
|
Powyższe polecenie odtworzy pliki w kolejności: 1, 1, 2, 1, 1, 2, 1, 1, 2.
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie pliku:
|
|
<synopsis>
|
|
<command>mplayer</command><!--
|
|
--> [<replaceable>opcje</replaceable>]<!--
|
|
--> [<replaceable>ścieżka</replaceable>/]<replaceable>nazwa_pliku</replaceable>
|
|
</synopsis>
|
|
</para>
|
|
|
|
<para>
|
|
Kolejny sposób na odtworzenie pliku:
|
|
<synopsis>
|
|
<command>mplayer</command><!--
|
|
--> [<replaceable>opcje</replaceable>]<!--
|
|
--> <replaceable>file:///zakodowana-ścieżka-uri</replaceable>
|
|
</synopsis>
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie większej ilości plików:
|
|
<synopsis>
|
|
<command>mplayer</command><!--
|
|
--> [<replaceable>opcje domyślne</replaceable>]<!--
|
|
--> [<replaceable>ścieżka</replaceable>/]<replaceable>plik1</replaceable><!--
|
|
--> [<replaceable>opcje dla pliku1</replaceable>]<!--
|
|
--> <replaceable>plik2</replaceable><!--
|
|
--> [<replaceable>opcje dla pliku2</replaceable>] ...
|
|
</synopsis>
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie VCD:
|
|
<synopsis>
|
|
<command>mplayer</command> [<replaceable>opcje</replaceable>]<!--
|
|
--> vcd://<replaceable>numer_ścieżki</replaceable><!--
|
|
--> [-cdrom-device <replaceable>/dev/cdrom</replaceable>]
|
|
</synopsis>
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie DVD:
|
|
<synopsis>
|
|
<command>mplayer</command> [<replaceable>opcje</replaceable>]<!--
|
|
--> dvd://<replaceable>numer_tytułu</replaceable><!--
|
|
--> [-dvd-device <replaceable>/dev/dvd</replaceable>]
|
|
</synopsis>
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie z WWW:
|
|
<synopsis>
|
|
<command>mplayer</command> [<replaceable>opcje</replaceable>]<!--
|
|
--> http://<replaceable>strona.com/plik.asf</replaceable>
|
|
</synopsis>
|
|
(można użyć również playlist)
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie z RTSP:
|
|
<synopsis>
|
|
<command>mplayer</command> [<replaceable>opcje</replaceable>]<!--
|
|
--> rtsp://<replaceable>serwer.przyklad.com/nazwa_strumienia</replaceable>
|
|
</synopsis>
|
|
</para>
|
|
|
|
<para>
|
|
Przykłady:
|
|
<screen>
|
|
mplayer -vo x11 <replaceable>/mnt/Films/Contact/contact2.mpg</replaceable>
|
|
mplayer vcd://<replaceable>2</replaceable> -cdrom-device <replaceable>/dev/hdc</replaceable>
|
|
mplayer -afm 3 <replaceable>/mnt/DVDtrailers/alien4.vob</replaceable>
|
|
mplayer dvd://<replaceable>1</replaceable> -dvd-device <replaceable>/dev/hdc</replaceable>
|
|
mplayer -abs 65536 -delay -0.4 -nobps <replaceable>~/movies/test.avi</replaceable><!--
|
|
--></screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="subosd">
|
|
<title>Napisy i OSD</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> może wyświetlać napisy podczas odtwarzania
|
|
filmu. Obecnie obsługiwane są następujące formaty:
|
|
<itemizedlist>
|
|
<listitem><para>VOBsub</para></listitem>
|
|
<listitem><para>OGM</para></listitem>
|
|
<listitem><para>CC (closed caption)</para></listitem>
|
|
<listitem><para>MicroDVD</para></listitem>
|
|
<listitem><para>SubRip</para></listitem>
|
|
<listitem><para>SubViewer</para></listitem>
|
|
<listitem><para>Sami</para></listitem>
|
|
<listitem><para>VPlayer</para></listitem>
|
|
<listitem><para>RT</para></listitem>
|
|
<listitem><para>SSA</para></listitem>
|
|
<listitem><para>PJS (Phoenix Japanimation Society)</para></listitem>
|
|
<listitem><para>MPsub</para></listitem>
|
|
<listitem><para>AQTitle</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="http://unicorn.us.com/jacosub/">JACOsub</ulink></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<para>
|
|
<application>MPlayer</application> może zrzucić wyżej wymienione formaty napisów
|
|
(<emphasis role="bold">poza pierwszymi trzema</emphasis>) do następujących formatów,
|
|
jeśli podasz odpowiednią opcję:
|
|
<itemizedlist>
|
|
<listitem><para>MPsub: <option>-dumpmpsub</option></para></listitem>
|
|
<listitem><para>SubRip: <option>-dumpsrtsub</option></para></listitem>
|
|
<listitem><para>MicroDVD: <option>-dumpmicrodvdsub</option></para></listitem>
|
|
<listitem><para>JACOsub: <option>-dumpjacosub</option></para></listitem>
|
|
<listitem><para>Sami: <option>-dumpsami</option></para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
|
|
<para>
|
|
<application>MEncoder</application> może zrzucić napisy DVD do formatu
|
|
<link linkend="menc-feat-extractsub">VOBsub</link>.
|
|
</para>
|
|
|
|
<para>
|
|
Opcje wiersza poleceń różnią się nieco dla poszczególnych formatów:
|
|
</para>
|
|
|
|
<formalpara>
|
|
<title>Format VOBsub</title>
|
|
<para>
|
|
Napisy VOBsub składają się z dużego (kilkumegabajtowego) pliku <filename>.SUB</filename>
|
|
i opcjonalnych plików <filename>.IDX</filename> i/lub <filename>.IFO</filename>.
|
|
Jeżeli masz takie pliki, jak
|
|
<filename><replaceable>przykład.sub</replaceable></filename>,
|
|
<filename><replaceable>przykład.ifo</replaceable></filename> (opcjonalne),
|
|
<filename><replaceable>przykład.idx</replaceable></filename> -
|
|
musisz przekazać <application>MPlayerowi</application> opcje
|
|
<option>-vobsub przykład [-vobsubid <replaceable>id</replaceable>]</option>
|
|
(pełna ścieżka jest opcjonalna). Parametr <option>-vobsubid</option> jest, jak
|
|
<option>-sid</option> dla DVD - przy jego pomocy możesz wybierać pomiędzy ścieżkami napisów
|
|
(różne języki). Jeżeli opcja <option>-vobsubid</option> jest pominięta,
|
|
<application>MPlayer</application> spróbuje użyć języka podanego przez parametr
|
|
<option>-slang</option> i powróci do <systemitem>langidx</systemitem>
|
|
zawartego w pliku<filename>.IDX</filename>, żeby ustawić język napisów. Jeżeli to
|
|
zakończy się niepowodzeniem, napisy nie będą wyświetlane.
|
|
</para>
|
|
</formalpara>
|
|
|
|
<formalpara>
|
|
<title>Inne formaty napisów</title>
|
|
<para>
|
|
Inne formaty składają się z pojedynczego pliku tekstowego zawierającego przedział
|
|
czasowy, rozmieszczenie i sam tekst. Sposób użycia: Jeżeli masz taki plik, jak
|
|
<filename><replaceable>przykład.txt</replaceable></filename>,
|
|
musisz przekazać opcję <option>-sub
|
|
<replaceable>przykład.txt</replaceable></option> (pełna ścieżka jest opcjonalna).
|
|
</para>
|
|
</formalpara>
|
|
|
|
<variablelist>
|
|
<title>Dopasowywanie czasu wyświetlania i położenia napisów:</title>
|
|
<varlistentry>
|
|
<term><option>-subdelay <replaceable>sek</replaceable></option></term>
|
|
<listitem><para>
|
|
Opóźnia wyświetlanie napisów o <option><replaceable>sek</replaceable></option> sekund.
|
|
Może być liczbą ujemną. Wartość jest dodawana do licznika czasu filmu.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-subfps <replaceable>ILOŚĆ</replaceable></option></term>
|
|
<listitem><para>
|
|
Określa ilość klatek na sekundę pliku z napisami (liczba rzeczywista).
|
|
</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><option>-subpos <replaceable>0-100</replaceable></option></term>
|
|
<listitem><para>
|
|
Określa położenie napisów.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Jeżeli podczas używania napisów w formacie MicroDVD zauważysz rosnące opóźnienie
|
|
między nimi a filmem, to prawdopodobnie ilość klatek na sekundę filmu różni się
|
|
od wartości, do której zostały przystosowane napisy.
|
|
Zauważ, że format ten korzysta z bezwzględnych numerów klatek do wyświetlania
|
|
napisów w odpowiednim momencie, ale nie zawiera w sobie informacji o wartości fps,
|
|
dlatego powinieneś skorzystać z opcji <option>-subfps</option>.
|
|
Jeżeli chciałbyś trwale rozwiązać ten problem, musisz ręcznie zmienić
|
|
wartość framerate pliku z napisami.
|
|
<application>MPlayer</application> może zrobić to za ciebie:
|
|
|
|
<screen>
|
|
mplayer -dumpmicrodvdsub -fps <replaceable>fps_napisów</replaceable> -subfps <replaceable>fps_filmu</replaceable> \
|
|
-sub <replaceable>zbiór_z_napisami</replaceable> <replaceable>atrapa.avi</replaceable>
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
O napisach DVD przeczytasz w rozdziale <link linkend="dvd">DVD</link>.
|
|
</para>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="control">
|
|
<title>Sterowanie</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> posiada w pełni konfigurowalną, opartą na
|
|
komendach warstwę sterowania, która pozwala na sterowanie
|
|
<application>MPlayerem</application> za pomocą klawiatury, myszki, joysticka lub
|
|
zdalnego sterowania (za pomocą LIRC). Zajrzyj na stronę man w celu przejrzenia
|
|
pełnej listy skrótów klawiszowych.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="ctrl-cfg">
|
|
<title>Konfiguracja sterowania</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> pozwala Ci przypisać dowolny klawisz/przycisk
|
|
do dowolnego polecenia za pomocą prostego pliku konfiguracyjnego. Składnia tego
|
|
pliku to nazwa klawisza, po której znajduje się komenda. Domyślny plik
|
|
konfiguracyjny znajduje się w <filename>$HOME/.mplayer/input.conf</filename>, ale
|
|
można podać także inny za pomocą opcji
|
|
<option>-input <replaceable>plik</replaceable></option>
|
|
(ścieżki względne są względem <filename>$HOME/.mplayer</filename>).
|
|
</para>
|
|
|
|
<para>
|
|
Możesz uzyskać pełną listę obsługiwanych klawiszy uruchamiając
|
|
<command>mplayer -input keylist</command>
|
|
i pełną listę dostępnych komend za pomocą
|
|
<command>mplayer -input cmdlist</command>.
|
|
</para>
|
|
|
|
<example id="input_control_file">
|
|
<title>Przykładowy plik konfiguracji sterowania</title>
|
|
<programlisting>
|
|
##
|
|
## Plik konfiguracji sterowania MPlayera
|
|
##
|
|
|
|
RIGHT seek +10
|
|
LEFT seek -10
|
|
- audio_delay 0.100
|
|
+ audio_delay -0.100
|
|
q quit
|
|
> pt_step 1
|
|
< pt_step -1
|
|
ENTER pt_step 1 1<!--
|
|
--></programlisting>
|
|
</example>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="lirc">
|
|
<title>Sterowanie poprzez LIRC</title>
|
|
|
|
<para>
|
|
Linux Infrared Remote Control - użyj łatwego do własnoręcznego zbudowania
|
|
odbiornika podczerwieni i (prawie) dowolnego pilota zdalnego sterowania i
|
|
steruj nim swoim Linuksem!
|
|
Więcej informacji na <ulink url="http://www.lirc.org">stronie domowej LIRC</ulink>.
|
|
</para>
|
|
|
|
<para>
|
|
Jeśli zainstalowałeś pakiet LIRC, <filename>configure</filename> automatycznie go
|
|
wykryje. Jeśli wszystko pójdzie dobrze, <application>MPlayer</application>
|
|
wypisze przy starcie "<systemitem>Setting up LIRC support...</systemitem>".
|
|
Jeśli wystąpi błąd, powiadomi Cię o tym. Jeśli nic nie powie Ci na
|
|
temat LIRC, to znaczy, że jego obsługa nie została wkompilowana. Proste :-)
|
|
</para>
|
|
|
|
<para>
|
|
Nazwa aplikacji dla <application>MPlayer</application> to - niespodzianka -
|
|
<filename>mplayer</filename>. Możesz używać dowolnych komend
|
|
<application>MPlayera</application>, a nawet podać więcej niż jedną
|
|
komendę na raz oddzielając je za pomocą <literal>\n</literal>.
|
|
Nie zapomnij o włączeniu flagi repeat w <filename>.lircrc</filename> jeśli
|
|
ma to sens (skoki, głośność itp). To jest fragment przykładowego
|
|
<filename>.lircrc</filename>:
|
|
</para>
|
|
|
|
<programlisting>
|
|
begin
|
|
button = VOLUME_PLUS
|
|
prog = mplayer
|
|
config = volume 1
|
|
repeat = 1
|
|
end
|
|
|
|
begin
|
|
button = VOLUME_MINUS
|
|
prog = mplayer
|
|
config = volume -1
|
|
repeat = 1
|
|
end
|
|
|
|
begin
|
|
button = CD_PLAY
|
|
prog = mplayer
|
|
config = pause
|
|
end
|
|
|
|
begin
|
|
button = CD_STOP
|
|
prog = mplayer
|
|
config = seek 0 1\npause
|
|
end<!--
|
|
--></programlisting>
|
|
|
|
<para>
|
|
Jeśli nie lubisz standardowej lokalizacji pliku lirc-config
|
|
(<filename>~/.lircrc</filename>), użyj opcji <option>-lircconf
|
|
<replaceable>nazwa_pliku</replaceable></option> by podać inny plik.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="slave-mode">
|
|
<title>Tryb sługi</title>
|
|
|
|
<para>
|
|
Tryb sługi pozwala Ci na utworzenie prostej nakładki na
|
|
<application>MPlayera</application>. Po uruchomieniu z opcją
|
|
<option>-slave</option> <application>MPlayer</application> będzie czytał
|
|
ze standardowego wejścia komendy oddzielone znakami nowego wiersza (\n).
|
|
Komendy zostały udokumentowane w pliku
|
|
<ulink url="../../tech/slave.txt">slave.txt</ulink>
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="streaming">
|
|
<title>Strumieniowanie z sieci i potoków</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> potrafi odtwarzać pliki z sieci, używając
|
|
protokołów HTTP, FTP, MMS lub RTSP/RTP.
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie następuje przez proste podanie URLa w wierszu poleceń.
|
|
<application>MPlayer</application> zwraca również uwagę na zmienną środowiskową
|
|
<envar>http_proxy</envar> i używa proxy jeśli jest to możliwe. Korzystanie
|
|
z proxy może być również wymuszone za pomocą:
|
|
<screen>
|
|
mplayer <replaceable>http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/strumien.asf</replaceable>
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
<application>MPlayer</application> potrafi również czytać ze standardowego wejścia
|
|
(<emphasis>nie</emphasis> z nazwanych potoków). Może to być wykorzystane np. do
|
|
odtwarzania poprzez FTP:
|
|
<screen>i
|
|
wget <replaceable>ftp://micorsops.com/cokolwiek.avi</replaceable> -O - | mplayer -
|
|
</screen>
|
|
</para>
|
|
|
|
<note><para>
|
|
Zalecane jest również włączenie <option>-cache</option> przy odtwarzaniu
|
|
z sieci:
|
|
<screen>
|
|
wget <replaceable>ftp://micorsops.com/cokolwiek.avi</replaceable> -O - | mplayer -cache 8192 -
|
|
</screen>
|
|
</para></note>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="streaming-save">
|
|
<title>Zapisywanie strumieniowanej zawartości</title>
|
|
|
|
<para>
|
|
Jak już uda Ci się zmusić <application>MPlayera</application> do odtwarzania
|
|
Twojego ulubionego strumienia internetowego, możesz użyć opcji
|
|
<option>-dumpstream</option> aby zapisać strumień do pliku.
|
|
Na przykład:
|
|
<screen>
|
|
mplayer <replaceable>http://217.71.208.37:8006</replaceable> -dumpstream -dumpfile <replaceable>strumien.asf</replaceable>
|
|
</screen>
|
|
zapisze zawartość strumieniowaną z
|
|
<replaceable>http://217.71.208.37:8006</replaceable> do pliku
|
|
<replaceable>stream.asf</replaceable>.
|
|
Działa to ze wszystkimi protokołami obsługiwanymi przez
|
|
<application>MPlayera</application>, jak MMS, RSTP itd.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="mpst" xreflabel="Remote streams">
|
|
<title>Strumienie zdalne</title>
|
|
|
|
<para>
|
|
Strumienie zdalne pozwalają na dostęp do większości strumieni obsługiwanych
|
|
przez <application>MPlayera</application> ze zdalnego hosta. Głównym celem tej
|
|
funkcji jest umożliwienie bezpośredniego korzystania z napędu CD lub DVD innego
|
|
komputera w sieci (pod warunkiem posiadania odpowiedniej przepustowości).
|
|
Niestety niektóre typy strumieni (aktualnie TV oraz MF) nie są dostępne zdalnie,
|
|
gdyż są zaimplementowane na poziomie demultipleksera. Jest to przykre w
|
|
przypadku MF, gdyż TV i tak by wymagało szalonej przepustowości.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="compile_mpst_server">
|
|
<title>Kompilacja serwera</title>
|
|
|
|
<para>
|
|
Po kompilacji <application>MPlayera</application> wejdź do katalogu
|
|
<filename>TOOLS/netstream</filename> i wpisz <application>make</application>
|
|
by zbudować program serwera. Możesz wtedy skopiować program
|
|
<application>nestream</application> do odpowiedniego miejsca w Twoim
|
|
systemie (przeważnie <filename class="directory">/usr/local/bin</filename>
|
|
pod Linuksem).
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="use_mpst">
|
|
<title>Używanie strumieni zdalnych</title>
|
|
|
|
<para>
|
|
Najpierw musisz uruchomić serwer na komputerze, do którego masz zamiar mieć
|
|
dostęp zdalny. Aktualnie serwer jest bardzo podstawowy i nie ma żadnych
|
|
argumentów wiersza poleceń, więc po prostu wpisz <filename>netstream</filename>.
|
|
Teraz możesz np. odtworzyć drugą ścieżkę VCD na serwerze za pomocą:
|
|
<screen>
|
|
mplayer -cache 5000 <replaceable>mpst://nazwa_serwera/vcd://2</replaceable>
|
|
</screen>
|
|
Masz również dostęp do plików na tym serwerze:
|
|
<screen>
|
|
mplayer -cache 5000 <replaceable>mpst://nazwa_serwera//usr/local/movies/lol.avi</replaceable>
|
|
</screen>
|
|
Zauważ, że ścieżki, które nie zaczynają się na "/" będą względne do katalogu,
|
|
w którym uruchomiono serwer. Opcja <option>-cache</option> nie jest wymagana,
|
|
lecz bardzo zalecana.
|
|
</para>
|
|
|
|
<para>
|
|
Miej na uwadze to, że aktualnie serwer nie ma żadnych zabezpieczeń. Nie narzekaj
|
|
więc na liczne nadużycia, które są przez to możliwe. Zamiast tego wyślij jakąś
|
|
(dobrą) łatkę, by stał się lepszy lub napisz swój własny serwer.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="drives">
|
|
<title>Napędy CD/DVD</title>
|
|
|
|
<para>
|
|
Nowoczesne napędy CD-ROM osiągają bardzo duże prędkości. Niektóre z nich są
|
|
dodatkowo zdolne do pracy przy zredukowanych prędkościach. Oto kilka powodów,
|
|
dla których powinniśmy zastanowić się czy nie należy zredukować prędkości
|
|
naszego napędu:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Istnieją doniesienia o błędach odczytu przy dużych prędkościach, szczególnie
|
|
podczas używania uszkodzonych bądź wadliwie wytłoczonych/nagranych płyt CD.
|
|
Redukcja prędkości odczytu może uchronić nas przed utratą danych w takich
|
|
przypadkach.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Wiele napędów CD jest dokuczliwie głośnych. Redukcja prędkości może zmniejszyć
|
|
natężenie hałasu.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="drives_linux">
|
|
<title>Linux</title>
|
|
|
|
<para>
|
|
Możesz zredukować prędkość napędu CD z interfejsem IDE korzystając
|
|
z <command>hdparm</command>, <command>setcd</command> lub
|
|
<command>cdctl</command>.
|
|
Działają one w następujący sposób:
|
|
<screen>hdparm -E <replaceable>[prędkość]</replaceable> <replaceable>[urządzenie cdrom]</replaceable></screen>
|
|
<screen>setcd -x <replaceable>[prędkość]</replaceable> <replaceable>[urządzenie cdrom]</replaceable></screen>
|
|
<screen>cdctl -bS <replaceable>[speed]</replaceable></screen>
|
|
</para>
|
|
|
|
<para>
|
|
Jeśli używasz emulacji SCSI, możesz musieć zastosować ustawienia do prawdziwego
|
|
urządzenia IDE a nie emulowanego SCSI.
|
|
</para>
|
|
|
|
<para>
|
|
Jeżeli masz uprawnienia roota, to pomóc może także następująca komenda:
|
|
<screen>echo file_readahead:2000000 > /proc/ide/<replaceable>[urządzenie cdrom]</replaceable>/settings</screen>
|
|
</para>
|
|
|
|
|
|
<para>
|
|
Ustawiamy w ten sposób wielkość bufora odczytu na 2MB, co pomaga przy odczycie
|
|
porysowanych płyt. Jeżeli ustawimy zbyt dużą wielkość tego bufora, napęd będzie
|
|
stale rozkręcał się i zwalniał, co spowoduje bardzo znaczny spadek wydajności.
|
|
Zaleca się również dostrojenie napędu CD-ROM przy użyciu
|
|
<command>hdparm</command>:
|
|
<screen>hdparm -d1 -a8 -u1 <replaceable>[urządzenie cdrom]</replaceable></screen>
|
|
</para>
|
|
|
|
<para>
|
|
Włączamy w ten sposób dostęp DMA do dysku, czytanie z wyprzedzeniem i
|
|
odmaskowanie IRQ (IRQ unmasking) (więcej przeczytasz na stronach man do
|
|
<command>hdparm</command>)
|
|
</para>
|
|
|
|
<para>
|
|
Proszę sprawdzić
|
|
"<filename>/proc/ide/<replaceable>[urządzenie cdrom]</replaceable>/settings</filename>"
|
|
by dostroić swój napędu CD-ROM.
|
|
</para>
|
|
|
|
<para>
|
|
Dla napędów SCSI nie istnieje jednolity sposób ustawiawiania tych parametrów
|
|
(jeżeli znasz jakiś to napisz nam o nim). Istnieje narzędzie które działa z
|
|
<ulink url="http://das.ist.org/~georg/">napędami SCSI Plextor</ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="drives_freebsd">
|
|
<title>FreeBSD</title>
|
|
|
|
<para>Prędkość:
|
|
<screen>
|
|
cdcontrol [-f <replaceable>urządzenie</replaceable>] speed <replaceable>[prędkość]</replaceable>
|
|
</screen>
|
|
</para>
|
|
|
|
<para>DMA:
|
|
<screen>
|
|
sysctl hw.ata.atapi_dma=1
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="dvd">
|
|
<title>Odtwarzanie DVD</title>
|
|
|
|
<para>
|
|
Aby poznać pełną listę dostępnych opcji, proszę przeczytać odpowiednie strony
|
|
man. Składnia do odtwarzania standardowego DVD jest następująca:
|
|
<screen>
|
|
mplayer dvd://<replaceable><ścieżka></replaceable> [-dvd-device <replaceable><urządzenie></replaceable>]
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>mplayer dvd://1 -dvd-device /dev/hdc</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Jeśli skompilowałeś <application>MPlayera</application> z obsługą dvdnav,
|
|
składnia jest taka sama, tylko musisz użyć dvdnav:// zamiast dvd://.
|
|
</para>
|
|
|
|
<para>
|
|
Domyślnym urządzeniem (device) DVD jest <filename>/dev/dvd</filename>. Jeżeli
|
|
Twoje ustawienia są inne, stwórz odpowiedni symlink lub ustaw odpowiednie
|
|
urządzenie (device) w linii polecenia korzystając z opcji
|
|
<option>-dvd-device</option>.
|
|
</para>
|
|
|
|
<para>
|
|
<application>MPlayer</application> używa <systemitem>libdvdread</systemitem>
|
|
oraz <systemitem>libdvdcss</systemitem> do odtwarzania i dekodowania DVD.
|
|
Te dwie biblioteki są zawarte
|
|
w głównym drzewie źródłowym <application>MPlayera</application>, nie trzeba
|
|
instalować ich osobno.
|
|
Możesz też użyć systemowych wersji tych bibliotek, ale nie jest to zalecane,
|
|
ponieważ może spowodować błędy, niekompatybilności bibliotek oraz zmniejszenie
|
|
prędkości.
|
|
</para>
|
|
|
|
<note><para>
|
|
Jeśli występują problemy z dekodowaniem DVD, spróbuj wyłączyć supermount lub
|
|
inne tego typu usługi. Niektóre napędy RPC-2 mogą również wymagać ustawienia
|
|
kodu regionu DVD.
|
|
</para></note>
|
|
|
|
<formalpara>
|
|
<title>Struktura dysku DVD</title>
|
|
<para>
|
|
Dyski DVD mają po 2048 bajtów na sektor z ECC/CRC. Zwykle posiadają system
|
|
plików UDF na pojedynczej ścieżce zawierającej różnorakie pliki (małe pliki .IFO
|
|
i .BUK oraz duże (1GB) pliki .VOB).
|
|
Są one rzeczywistymi plikami i mogą być kopiowane/odtwarzane z podmontowanego
|
|
systemu plików niezakodowanego DVD.
|
|
</para>
|
|
</formalpara>
|
|
|
|
<para>
|
|
Pliki .IFO zawierają informacje nawigacyjne filmu (mapa
|
|
rozdziałów/tytułów/kątów kamery, tablica języków, itp) i są konieczne do
|
|
odczytu i interpretacji zawartości pliku .VOB (filmu).
|
|
Pliki .BUK są kopiami zapasowymi plików .IFO.
|
|
Używają <emphasis role="bold">sektorów</emphasis> wszędzie, więc aby
|
|
zaimplementować nawigację na DVD lub rozszyfrować zawartość, należy używać
|
|
adresowania sektorów dysku w trybie raw.
|
|
</para>
|
|
|
|
<para>
|
|
Z tego powodu obsługa DVD wymaga
|
|
dostępu do urządzenia w trybie raw bazującym na sektorach. Niestety wymagane
|
|
jest (pod Linuksem) posiadanie uprawnień roota aby móc korzystać z sektorowego
|
|
adresowania pliku.
|
|
Dlatego też nie w ogóle używamy sterownika systemu plików pochodzącego
|
|
z jądra, ale reimplementujemy to w przestrzeni użytkownika.
|
|
Zajmuje się tym biblioteka <systemitem>libdvdread</systemitem> 0.9.x.
|
|
Sterownik
|
|
systemu plików UDF zawarty w jądrze nie jest wymagany ponieważ wspomniane
|
|
biblioteki zawierają własny, wbudowany sterownik systemu plików UDF. DVD nie
|
|
musi być podmontowany, bowiem używany jest jedynie dostęp w trybie raw.
|
|
</para>
|
|
|
|
<para>
|
|
Czasami <filename>/dev/dvd</filename> nie może być czytany przez użytkowników,
|
|
zatem autorzy <systemitem>libdvdread</systemitem> zaimplementowali warstwę
|
|
emulacji, która tłumaczy adresowanie sektorowe na nazwy plików i offsety, aby
|
|
emulować dostęp w trybie raw na podmontowanym systemie plików albo nawet na
|
|
twardym dysku.
|
|
</para>
|
|
|
|
<para>
|
|
<systemitem>libdvdread</systemitem> równie dobrze akceptuje miejsce
|
|
podmontowania (mountpoint) jak i nazwę urządzenia przy dostępie w trybie raw i
|
|
sprawdza <filename>/proc/mounts</filename> w celu odnalezienia odpowiedniej
|
|
nazwy urządzenia (device). Zostało to napisane z myślą o systemie Solaris, gdzie
|
|
nazwy urządzeń są przydzielane automatycznie.
|
|
</para>
|
|
|
|
<formalpara>
|
|
<title>Deszyfrowanie DVD</title>
|
|
<para>
|
|
Do deszyfrowania DVD jest używana biblioteka
|
|
<systemitem>libdvdcss</systemitem>. Metoda jej działania może być określona
|
|
poprzez zmienna środowiskową <envar>DVDCSS_METHOD</envar>,
|
|
co jest dokładniej opisane na stronie man.
|
|
</para>
|
|
</formalpara>
|
|
|
|
<para>
|
|
Napędy DVD RPC-1 zabezpieczają ustawienia regionu jedynie poprzez
|
|
oprogramowanie. Napędy RPC-2 mają sprzętowe zabezpieczenie, które pozwala na co
|
|
najwyżej 5 zmian. Jeżeli posiadamy napęd DVD RPC-2 wymagana/zalecana jest
|
|
aktualizacja firmware'u do RPC-1.
|
|
Nowe wersje firmware'ów można znaleźć w internecie.
|
|
Poszukiwania radzimy rozpocząć od
|
|
<ulink url="http://forum.rpc-1.com/dl_all.php">forum firmware'ów</ulink>.
|
|
Jeżeli nie ma tam nowej wersji firmware'u dla naszego urządzenia, użyj
|
|
<ulink url="http://linvdr.org/projects/regionset/">regionset tool
|
|
(narzędzia do zmiany regionów)</ulink> aby ustawić kod regionu na swoim napędzie
|
|
DVD (pod Linuksem). <emphasis role="bold">Ostrzeżenie</emphasis>: Możesz
|
|
ustawić region tylko 5 razy.
|
|
</para>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="vcd">
|
|
<title>Odtwarzanie VCD</title>
|
|
|
|
<para>
|
|
Pełna lista dostępnych opcji znajduje się na stronie man. Składnia dla
|
|
standardowego Video CD (VCD) jest następująca:
|
|
<screen>mplayer vcd://<replaceable><ścieżka></replaceable> [-cdrom-device <replaceable><urządzenie></replaceable>]</screen>
|
|
Przykład:
|
|
<screen>mplayer vcd://2 -cdrom-device /dev/hdc</screen>
|
|
Domyślnym urządzeniem VCD jest <filename>/dev/cdrom</filename>. Jeśli
|
|
Twoje ustawienia są inne, utwórz dowiązanie symboliczne
|
|
lub podaj prawidłowe urządzenie w linii poleceń za pomocą opcji
|
|
<option>-cdrom-device</option>
|
|
</para>
|
|
|
|
<note><para>
|
|
Przynajmniej napędy CD-ROM SCSI firmy Plextor i niektóre modele Toshiby
|
|
mają beznadziejną wydajność przy odczycie VCD. Jest to spowodowane
|
|
niekompletną implementacją <systemitem>ioctl</systemitem>'a CDROMREADRAW dla
|
|
tych urządzeń. Jeśli masz jakieś pojęcie o programowaniu SCSI,
|
|
<ulink url="../../tech/patches.txt">pomóż nam</ulink> zaimplementować ogólną
|
|
obsługę SCSI dla VCD.
|
|
</para></note>
|
|
|
|
<para>
|
|
W międzyczasie możesz wyciągać dane z VCD za pomocą
|
|
<ulink url="http://ftp.ntut.edu.tw/ftp/OS/Linux/packages/X/viewers/readvcd/">readvcd</ulink>
|
|
i odtwarzać plik wynikowy za pomocą <application>MPlayera</application>
|
|
</para>
|
|
|
|
<formalpara>
|
|
<title>Struktura VCD</title>
|
|
<para>
|
|
Video CD (VCD) składa się z sektorów CD-ROM XA, tzn. ścieżek CD-ROM
|
|
mode 2 form 1 i form 2:
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Pierwsza ścieżka jest w formacie mode 2 form 2, który oznacza użycie korekcji
|
|
błędów L2. Ścieżka ta zawiera system plików ISO-9660 o gęstości 2048
|
|
bajtów/sektor. Ten system plików z kolei zawiera metainformacje VCD, a także
|
|
nieruchome klatki, często używane w menu. Segmenty MPEG dla menu mogą także
|
|
być składowane w tejże pierwszej ścieżce, ale MPEGi muszą być podzielone na
|
|
kawałki po 150 sektorów. System plików ISO-9660 może zawierać inne pliki bądź
|
|
programy, niekonieczne dla eksploatacji VCD.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Druga i pozostałe ścieżki są zwykle ścieżkami video MPEG typu raw o gęstości
|
|
2324 bajtów/sektor, zawierającymi jeden pakiet danych MGEG PS na sektor.
|
|
Ścieżki te są w formacje mode 2 form 1, więc przechowują one więcej danych na
|
|
sektor, w zamian za słabszą korekcję błędów. Możliwe są też ścieżki CD-DA na
|
|
VCD poza pierwszą ścieżką. Niektóre systemy operacyjne używają pewnych
|
|
trików aby ścieżki nie zawierające systemu plików ISO-9660 były widoczne
|
|
w systemie plików. W pozostałych systemach, jak na przykład w systemie
|
|
GNU/Linux, nie ma takiej możliwości (jeszcze). W takim przypadku dane MPEG
|
|
<emphasis role="bold">nie mogą być montowane</emphasis>.
|
|
Jako że większość filmów znajduje się na tego typu ścieżce,
|
|
powinieneś spróbować na początek opcji <option>vcd://2</option>.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Istnieją również płyty VCD bez pierwszej ścieżki (pojedyncza ścieżka i
|
|
brak systemu plików w ogóle). Je również da się odtwarzać, ale nie da
|
|
się ich montować.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Definicja standardu Video CD, nazywana "Białą Księgą" Phillipsa,
|
|
generalnie nie jest dostępna online, musi być zakupiona u Phillipsa.
|
|
Bardziej szczegółowe informacje na temat Video CD można znaleźć na
|
|
<ulink url="http://www.vcdimager.org/pub/vcdimager/manuals/0.7/vcdimager.html#SEC4">stronie dokumentacji vcdimagera</ulink>.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
</formalpara>
|
|
|
|
<formalpara>
|
|
<title>O plikach .DAT</title>
|
|
<para>
|
|
Plik o rozmiarze ok. 600 MB widoczny na pierwszej ścieżce zamontowanego VCD
|
|
nie jest prawdziwym plikiem ! Jest on tzw. bramką ISO, utworzoną by
|
|
Windows mógł obsługiwać takie ścieżki (Windows w ogóle nie zezwala aplikacjom
|
|
na dostęp do urządzeń w trybie raw). Pod Linuksem nie możesz kopiować ani
|
|
odtwarzać tych plików (zawierają "śmieci"). Pod Windows jest to możliwe, gdyż
|
|
jego sterownik iso9660 symuluje odczyt ścieżek w trybie raw za pomocą tego
|
|
pliku. By móc odtwarzać pliki .DAT, musisz mieć sterownik do jądra, który
|
|
dostarczany jest z linuksową wersją PowerDVD. Posiada on zmodyfikowany sterownik
|
|
systemu plików iso9660 (<filename>vcdfs/isofs-2.4.X.o</filename>), który jest w
|
|
stanie symulować odczyt ścieżek w trybie raw za pomocą pliku .DAT. Jeśli
|
|
podmontujesz płytę używając ich sterownika, możesz kopiować, a nawet odtwarzać
|
|
pliki .DAT za pomocą <application>MPlayera</application>. Ale nie będzie to
|
|
działało za pomocą standardowego sterownika iso9660 dostarczonego z jądrem
|
|
Linuksa! Zamiast tego użyj opcji <option>vcd://</option>. Alternatywą dla
|
|
kopiowania VCD jest nowy sterownik:
|
|
<ulink url="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</ulink> (nie jest
|
|
częścią oficjalnego jądra), który wyświetla sesje CD jako pliki obrazów, oraz
|
|
<ulink url="http://cdrdao.sf.net/">cdrdao</ulink>, program do zgrywania
|
|
płyt CD bit po bicie.
|
|
</para>
|
|
</formalpara>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="edl" xreflabel="Edit Decision Lists (EDL)">
|
|
<title>Decyzyjne Listy Edycji (Edit Decision Lists - EDL)</title>
|
|
|
|
<para>
|
|
Decyzyjna lista edycji (EDL) pozwala na automatyczne omijanie, bądź wyciszanie
|
|
fragmentów filmów podczas ich odtwarzania, na podstawie pliku konfiguracji EDL
|
|
dla danego filmu.
|
|
</para>
|
|
|
|
<para>
|
|
Funkcja ta jest użyteczna dla osób, które zechcą obejrzeć film w "przyjaznym
|
|
dla rodziny" trybie. Możesz usunąć z filmu przemoc, przekleństwa, Jar-Jar
|
|
Binksa, zgodnie z własnymi preferencjami. Ponadto istnieją także inne
|
|
zastosowania, jak automatyczne pomijanie reklam w oglądanych filmach.
|
|
</para>
|
|
|
|
<para>
|
|
Format pliku EDL jest raczej "goły". Używana jest struktura z pojedynczym
|
|
poleceniem w wierszu, w którym określone jest co należy zrobić (skip/mute),
|
|
oraz kiedy (używając opóźnienia w sekundach).
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="edl_using">
|
|
<title>Używanie pliku EDL</title>
|
|
|
|
<para>
|
|
Użyj podczas uruchamiania <application>MPlayera</application> flagi
|
|
<option>-edl <nazwa pliku></option> z nazwą pliku EDL, który ma być
|
|
zastosowany do filmu.
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="edl_making">
|
|
<title>Tworzenie pliku EDL</title>
|
|
|
|
<para>
|
|
Aktualny format pliku EDL jest następujący:
|
|
<programlisting>[sekunda początkowa] [sekunda końcowa] [akcja]</programlisting>
|
|
gdzie liczby odpowiadające sekundom nie muszą być całkowite, zaś akcja może
|
|
przyjmować wartość <literal>0</literal> dla pominięcia bądź
|
|
<literal>1</literal> dla wyciszenia.
|
|
Na przykład:
|
|
<programlisting>
|
|
5.3 7.1 0
|
|
15 16.7 1
|
|
420 422 0
|
|
</programlisting>
|
|
Oznacza to pominięcie filmu między 5,3 sekundą, a 7,1 sekundą filmu, następnie
|
|
wyciszenie od 15-tej sekundy do 16,7 sekundy i wreszcie pominięcie filmu
|
|
pomiędzy 420 a 422 sekundą Akcje te są wykonywane, gdy licznik czasu filmu
|
|
osiągnie zadeklarowaną wartość.
|
|
</para>
|
|
|
|
<para>
|
|
Aby stworzyć plik EDL, będący punktem wyjścia do dalszej edycji, użyj flagi
|
|
<option>-edlout <nazwa pliku></option>.
|
|
Następnie, podczas odtwarzania filmu, naciśnij <keycap>i</keycap>, aby oznaczyć
|
|
początek i koniec bloku do pominięcia.
|
|
Odpowiedni wpis zostanie automatycznie utworzony w pliku.
|
|
Wtedy możesz wrócić do edycji i "dostrajania" wygenerowanego pliku EDL,
|
|
w którym możesz także zmienić domyślne pomijanie bloku na wyciszanie.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="advaudio" xreflabel="Advanced Audio">
|
|
<title>Zaawansowane audio</title>
|
|
|
|
<sect2 id="advaudio-surround">
|
|
<title>Dźwięk przestrzenny/wielokanałowy</title>
|
|
|
|
<sect3 id="advaudio-surround-DVD">
|
|
<title>DVDs</title>
|
|
|
|
<para>
|
|
Większość płyt DVD, a także wiele innych plików, zawiera dźwięk przestrzenny.
|
|
<application>MPlayer</application> obsługuje dźwięk przestrzenny, ale opcja ta
|
|
nie jest domyślnie włączona, ponieważ sprzęt przeznaczony dla zwykłego stereo
|
|
jest znacznie bedziej popularny. Aby odtworzyć plik zawierający więcej niż dwa
|
|
kanały audio, użyj opcji <option>-channels</option>.
|
|
Na przykład, aby odtworzyć DVD z audio 5.1:
|
|
<screen>mplayer dvd://1 -channels 6</screen>
|
|
Zauważmy, że mimo nazwy "5.1", używanych jest 6 kanałów.
|
|
Jeżeli posiadasz sprzęt pozwalający na odtwarzanie dźwięku przestrzennego możesz
|
|
bezpiecznie wpisać <option>channels</option> do swojego pliku konfiguracyjnego
|
|
<application>MPlayera</application> (<filename>~/.mplayer/config</filename>).
|
|
Przykładowo, aby domyślnie włączyć efekt kwadrofonii, należy dodać wiersz:
|
|
<programlisting>channels=4</programlisting>
|
|
Od tego momentu, <application>MPlayer</application> będzie odtwarzał cztery
|
|
kanały audio, zawsze gdy będą one dostępne.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-surround-stereoinfour">
|
|
<title>Odtwarzanie plików stereo przy użyciu czterech głośników</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> standardowo nie duplikuje kanałów, ani nie
|
|
robi tego większość sterowników audio. Jeżeli chcesz zrobić to ręcznie:
|
|
<screen>mplayer <replaceable>filename</replaceable> -af channels=2:2:0:1:0:0</screen>
|
|
Zobacz sekcję o
|
|
<link linkend="advaudio-channels-copying">kopiowaniu kanałów</link>,
|
|
jest tam wyjaśnienie tego polecenia.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-surround-passthrough">
|
|
<title>Przekazywanie AC3/DTS</title>
|
|
|
|
<para>
|
|
Dźwięk przestrzenny na płytach DVD zazwyczaj kodowany jest w formacie AC3
|
|
(Dolby Digital) lub DTS (Digital Theater System). Część współczesnego sprzętu
|
|
audio jest w stanie dekodować te formaty.
|
|
<application>MPlayer</application> może zostać skonfigurowany, aby przekazywał
|
|
dane audio bez ich dekodowania. Rozwiązanie takie będzie działało tylko, jeżeli
|
|
posiadasz w swojej karcie muzycznej złącze S/PDIF (Sony/Philips Digital Interface).
|
|
</para>
|
|
|
|
<para>
|
|
Jeżeli twój sprzęt audio potrafi dekodować zarówno AC3 jak i DTS, możesz
|
|
bezpiecznie włączyć przekazywanie dla obu formatów. W przeciwnym razie, tylko
|
|
dla tego formatu, który jest obsługiwany przez Twój sprzęt.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<title>Aby włączyć przekazywanie z wiersza poleceń:</title>
|
|
<listitem><para>
|
|
dla AC3 użyj <option>-ac hwac3</option>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
dla DTS użyj <option>-ac hwdts</option>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
dla AC3 i DTS użyj <option>-afm hwac3</option>
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<itemizedlist>
|
|
<title>Aby włączyć przekazywanie w pliku konfiguracyjnym
|
|
<application>MPlayera</application>: </title>
|
|
<listitem><para>
|
|
dla AC3 użyj <option>ac=hwac3,</option>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
dla DTS użyj <option>ac=hwdts,</option>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
dla AC3 i DTS użyj <option>afm=hwac3</option>
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
Zauważ, że na końcu opcji <option>ac=hwac3,</option> oraz
|
|
<option>ac=hwdts,</option> są przecinki. Powodują one, że
|
|
<application>MPlayer</application> będzie używał standardowych kodeków, które
|
|
są normalnie używane podczas odtwarzania plików, które nie posiadają dźwięku
|
|
AC3 ani DTS.
|
|
Opcja <option>afm=hwac3</option> nie wymaga przecinka,
|
|
samo podanie rodziny kodeków powoduje że <application>MPlayer</application>
|
|
wypróbuje inne gdy będzie musiał.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="hwmpa-surround-passthrough">
|
|
<title>Przekazywanie dźwięku MPEG</title>
|
|
|
|
<para>
|
|
Cyfrowe transmisje TV (takie jak DVB czy ATSC), także niektóre płyty DVDs
|
|
zazwyczaj zawierają strumienie audio w formacie MPEG (zazwyczaj MP2).
|
|
Część sprzętowych dekoderów MPEG, takich jak pełnofunkcjonalne karty DVB, oraz
|
|
adaptery DXR2, potrafi natywnie dekodować ten format.
|
|
<application>MPlayer</application> może zostać tak skonfigurowany, aby przekazywać
|
|
dane audio bez ich dekodowania.
|
|
</para>
|
|
|
|
<para>
|
|
Aby użyć tego sposobu dekodowania:
|
|
<screen> mplayer -ac hwmpa </screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-surround-matrix">
|
|
<title>Dźwięk zakodowany macierzowo</title>
|
|
|
|
<para>
|
|
<emphasis>***TODO***</emphasis>
|
|
</para>
|
|
|
|
<para>
|
|
Ta sekcja musi dopiero zostać napisana i nie może zostać ukończona zanim
|
|
ktoś nie dostarczy przykładowych plików do testów. Jeżeli posiadasz jakieś
|
|
pliki audio zakodowane macierzowo (matrix-encoded), wiesz kto je posiada lub
|
|
wiesz cokolwiek co mogłoby być pomocne, wyślij proszę informację na listę
|
|
mailingową
|
|
<ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-docs">MPlayer-DOCS</ulink>
|
|
W temacie podaj "[matrix-encoded audio]".
|
|
</para>
|
|
|
|
<para>
|
|
Jeżeli nie nadejdą żadne wiadomości, ta sekcja zostanie usunięta.
|
|
</para>
|
|
|
|
<para>
|
|
Przydatne linki:
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<ulink url="http://electronics.howstuffworks.com/surround-sound5.htm">http://electronics.howstuffworks.com/surround-sound5.htm</ulink>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="http://www.extremetech.com/article2/0,1697,1016875,00.asp">http://www.extremetech.com/article2/0,1697,1016875,00.asp</ulink>
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-surround-hrtf">
|
|
<title>Emulacja przestrzeni w słuchawkach</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> posiada filtr HRTF (Head Related Transfer
|
|
Function) bazujący na <ulink url="http://sound.media.mit.edu/KEMAR.html">projekcie MIT</ulink>,
|
|
w ramach którego wykonane zostały pomiary z mikrofonów zamontowanych na głowie
|
|
ludzkiego manekina.
|
|
</para>
|
|
|
|
<para>
|
|
Chociaż nie jest możliwe dokładne zasymulowanie systemu dźwięku przestrzennego,
|
|
filtr HRTF zawarty w <application>MPlayerze</application> powoduje bardziej
|
|
przestrzenne zanurzenie w dźwięku przy użyciu 2-kanałowych słuchawek.
|
|
Standardowy procedura po prostu łączy wszystkie kanały w dwa. <option>hrtf</option>,
|
|
obok łączenia kanałów, generuje także subtelne echa, nieznacznie zwiększa
|
|
separację kanałów stereo, a także zmienia głośność niektórych częstotliwości.
|
|
To, czy dźwięk HRTF brzmi lepiej, może zależeć od źródła dźwięku oraz gustu
|
|
słuchacza, ale z pewnością jest on warty wypróbowania.
|
|
</para>
|
|
|
|
<para>
|
|
Odtwarzanie DVD z HRTF:
|
|
<screen>mplayer dvd://1 -channels 6 -af hrtf</screen>
|
|
</para>
|
|
|
|
<para>
|
|
<option>hrtf</option> działa poprawnie tylko przy 5 i 6 kanałach. Opcja ta wymaga
|
|
także audio próbkowanego z częstotliwością 48kHz. Audio na płytach DVD jest już
|
|
próbkowane 48kHz, lecz jeżeli chcesz odtworzyć plik z innym próbkowaniem i opcją
|
|
<option>hrtf</option>, musisz dokonać jego przepróbkowania tego pliku:
|
|
<screen>
|
|
mplayer <replaceable>filename</replaceable> -channels 6 -af resample=48000,hrtf
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-surround-troubleshooting">
|
|
<title>Rozwiązywanie problemów</title>
|
|
|
|
<para>
|
|
Jeżeli nie słyszysz żadnych dźwięków, sprawdź ustawienia miksera przy pomocy
|
|
stosownego programu, takiego jak <application>alsamixer</application>;
|
|
niejednokrotnie wyjścia audio są domyślnie wyciszone lub ich głośność jest ustawiona
|
|
na zero.
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="advaudio-channels">
|
|
<title>Manipulowanie kanałami</title>
|
|
|
|
<sect3 id="advaudio-channels-general">
|
|
<title>Ogólne informacje</title>
|
|
|
|
<para>
|
|
Niestety nie ma żadnego standardu opisującego w jaki sposób kanały są uporządkowane.
|
|
Poniższe porządki przedstawiają te używane przez AC3, które są dość typowe. Spróbuj
|
|
ich i sprawdź czy odpowiednie źródła dźwięku się zgadzają. Kanały są numerowane od 0.
|
|
|
|
<orderedlist spacing="compact">
|
|
<title>mono</title>
|
|
<listitem override="0"><para>środkowy</para></listitem>
|
|
</orderedlist>
|
|
|
|
<orderedlist spacing="compact">
|
|
<title>stereo</title>
|
|
<listitem override="0"><para>lewy</para></listitem>
|
|
<listitem><para>prawy</para></listitem>
|
|
</orderedlist>
|
|
|
|
<orderedlist spacing="compact">
|
|
<title>kwadrofonia</title>
|
|
<listitem override="0"><para>lewy przedni</para></listitem>
|
|
<listitem><para>prawy przedni</para></listitem>
|
|
<listitem><para>lewy tylny</para></listitem>
|
|
<listitem><para>prawy tylny</para></listitem>
|
|
</orderedlist>
|
|
|
|
<orderedlist spacing="compact">
|
|
<title>surround 4.0</title>
|
|
<listitem override="0"><para>lewy przedni</para></listitem>
|
|
<listitem><para>prawy przedni</para></listitem>
|
|
<listitem><para>środkowy tylny</para></listitem>
|
|
<listitem><para>środkowy przedni</para></listitem>
|
|
</orderedlist>
|
|
|
|
<orderedlist spacing="compact">
|
|
<title>surround 5.0</title>
|
|
<listitem override="0"><para>lewy przedni</para></listitem>
|
|
<listitem><para>prawy przedni</para></listitem>
|
|
<listitem><para>lewy tylny</para></listitem>
|
|
<listitem><para>prawy tylny</para></listitem>
|
|
<listitem><para>środkowy przedni</para></listitem>
|
|
</orderedlist>
|
|
|
|
<orderedlist spacing="compact">
|
|
<title>surround 5.1</title>
|
|
<listitem override="0"><para>lewy przedni</para></listitem>
|
|
<listitem><para>prawy przedni</para></listitem>
|
|
<listitem><para>lewy tylny</para></listitem>
|
|
<listitem><para>prawy tylny</para></listitem>
|
|
<listitem><para>środkowy przedni</para></listitem>
|
|
<listitem><para>subwoofer (głośnik niskotonowy)</para></listitem>
|
|
</orderedlist>
|
|
</para>
|
|
|
|
<para>
|
|
Opcja <option>-channels</option> jest używana w celu określenia liczby kanałów
|
|
dekodowanego audio. Niektóre kodeki audio wykorzystują tę liczbę aby zdecydować
|
|
czy konieczne jest zmniejszenie liczby kanałów poprzez miksowanie.
|
|
Zauważ, że ustawienie tej opcji nie jest równoważne z ustawieniem liczby
|
|
wyjściowych kanałów. Przykładowo, używając opcji <option>-channels 4</option>
|
|
aby odtworzyć plik stereo MP3, otrzymamy 2 kanały wyjściowe, bowiem kodek MP3
|
|
nie potrafi spreparować dodatkowych kanałów.
|
|
</para>
|
|
|
|
<para>
|
|
Filtr audio <option>channels</option> może być użyty aby stworzyć lub usunąć kanały,
|
|
co może być przydatne przy określaniu liczy kanałów przesyłanych do karty muzycznej.
|
|
Aby dowiedzieć się więcej, zobacz kolejne sekcje.
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-channels-mono">
|
|
<title>Odtwarzanie dźwięku mono przy użyciu dwóch głośników</title>
|
|
|
|
<para>
|
|
Dźwięk mono brzmi znacznie lepiej, gdy jest odtwarzany przy użyciu dwóch
|
|
głośników - szczególnie gdy używamy słuchawek. Pliki audio, które posiadają
|
|
tylko jeden kanał audio są automatycznie odtwarzane przy użyciu obu głośników;
|
|
niestety większość plików mono jest zakodowana jako dźwięk stereo, gdzie jeden
|
|
kanał jest wyciszony. Najłatwiejszą i najbardziej niezawodną metodą pozwalającą
|
|
na odtworzenie dźwięku przy użyciu obu głośników jest użycie filtru
|
|
<option>extrastereo</option>:
|
|
<screen>mplayer <replaceable>filename</replaceable> -af extrastereo=0</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Metoda ta uśrednia oba kanały, co skutkuje zmniejszeniu głośności każdego z kanałów
|
|
o połowę względem oryginału. W następnej sekcji zawarto przykłady innych metod rozwiązania
|
|
tego problemu bez zmniejszania głośności; niestety są one bardziej skomplikowanego
|
|
i wymagają różnych opcji w zależności od kanału, który zawiera dane.
|
|
Jeżeli na prawdę potrzebujesz utrzymać głośność, możliwe że łatwiej będzie odpowiednio
|
|
dopasować głośność przy użyciu filtru <option>volume</option>. Na przykład:
|
|
<screen>mplayer <replaceable>filename</replaceable> -af extrastereo=0,volume=5</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-channels-copying">
|
|
<title>Kopiowanie i przesuwanie kanałów</title>
|
|
|
|
<para>
|
|
Filtr <option>channels</option> potrafi przesunąć dowolny jeden lub wszystkie kanały.
|
|
Ustawienie wszystkich podopcji filtru <option>channels</option> może być
|
|
skomplikowane i wymaga nieco uwagi.
|
|
|
|
<orderedlist spacing="compact">
|
|
<listitem><para>
|
|
Zdecyduj ile wyjściowych kanałów audio potrzebujesz. Oto pierwsza podopcja.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Policz ile przesunięć kanałów zamierzasz wykonać. To jest druga podopcja.
|
|
Każdy kanał może być przesunięty do kilku różnych kanałów w tym samym czasie,
|
|
ale pamiętaj, że gdy przesuniesz kanał (również gdy tylko do jednego kanału
|
|
docelowego), źródło zostanie opróżnione, chyba że inny kanał zostanie tam
|
|
przesunięty. Aby skopiować kanał, pozostawiając źródło nietknięte, po prostu
|
|
przesuń kanał zarówno do miejsca kopiowania, jak i do źródła. Na przykład:
|
|
<programlisting>
|
|
kanał 2 --> kanał 3
|
|
kanał 2 --> kanał 2<!--
|
|
--></programlisting>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Wypisz kopie kanałów jako pary subopcji. Pamiętaj, że pierwszy kanał ma numer
|
|
0, drugi 1 itd. Kolejność subopcji nie jest istotna tak długo, ale muszą one
|
|
być pogrupowane w pary typu
|
|
<replaceable>źródło:cel</replaceable>.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
</para>
|
|
|
|
<bridgehead>Przykład: jeden kanał w dwóch głośnikach</bridgehead>
|
|
<para>
|
|
Oto przykład innej metody odtwarzania jednego kanału w dwóch głośnikach.
|
|
Załóżmy, że lewy kanał ma być odtwarzany, a prawy ma zostać pominięty.
|
|
Zgodnie z krokami opisanymi powyżej:
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Aby dostarczyć dźwięk do każdego z dwóch głośników, pierwsza opcja musi mieć
|
|
wartość "2".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Lewy kanał musi zostać przesunięty do prawego kanału oraz lewego, aby nie
|
|
został on pusty. Sumaryczna liczba przesunięć to dwa, zatem druga opcja to
|
|
również "2".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Aby przesunąć lewy kanał (kanał 0) do kanału prawego (kanał 1), para subopcji
|
|
musi byc "0:1", "0:0" przesunie lewy kanał do siebie.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
Po połączeniu wszystkiego razem otrzymamy:
|
|
<screen>
|
|
mplayer <replaceable>filename</replaceable> -af channels=2:2:0:1:0:0
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Przewaga tego przykładu nad opcją <option>extrastereo</option> jest taka, że
|
|
głośność każdego z kanałów wyjściowych pozostanie taka sama jak kanału źródłowego.
|
|
Wadą jest, że podopcje muszą zostać zmienione na "2:2:1:0:1:1", gdy dźwięk zawiera
|
|
kanał prawy. Ponadto trudniej to zapamiętać i wpisać.
|
|
</para>
|
|
|
|
<bridgehead>Przykład: lewy kanał w obu głośnikach (skrót)</bridgehead>
|
|
<para>
|
|
Istnieje znacznie łatwiejsza metoda na użycie filtru <option>channels</option> w
|
|
celu odtworzenia lewego kanału w dwóch głośnikach:
|
|
<screen>mplayer <replaceable>filename</replaceable> -af channels=1</screen>
|
|
Drugi kanał jest pomijany, a pierwszy jest pozostawiany, bez dodatkowych podopcji.
|
|
Sterowniki kart muzycznych automatycznie odtwarzają jednokanałowy dźwięk wykorzystując
|
|
oba głośniki. Oczywiście zadziała to tylko, gdy pożądanym kanałem jest kanał lewy.
|
|
</para>
|
|
|
|
<bridgehead>Przykład: kopiowanie kanałów przednich do kanałów tylnych</bridgehead>
|
|
<para>
|
|
Kolejną typową operacją jest kopiowanie kanałów przednich i odtwarzanie ich
|
|
z tylnych głośników zestawu kwadrofonicznego.
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Potrzebujemy czterech kanałów wyjściowych, więc pierwsza podopcja to "4".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Każdy z przednich kanałów musi zostać przesunięty do odpowiedniego kanału
|
|
tylnego oraz do siebie. W sumie użyte będą cztery przesunięcia, więc druga
|
|
opcja to "4".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Lewy przedni kanał (kanał 0) musi zostać przesunięty do lewego tylnego (kanał
|
|
2): "0:2". Lewy przedni musi być także przesunięty do siebie: "0:0". Prawy
|
|
przedni (kanał 1) musi zostać przesunięty do prawego tylnego (kanał 3): "1:3"
|
|
oraz do siebie: "1:1".
|
|
</para></listitem>
|
|
</orderedlist>
|
|
Po połączeniu wszystkich podopcji otrzymujemy:
|
|
<screen>
|
|
mplayer <replaceable>filename</replaceable> -af channels=4:4:0:2:0:0:1:3:1:1
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
|
|
|
|
<sect3 id="advaudio-channels-mixing">
|
|
<title>Miksowanie kanałów</title>
|
|
|
|
<para>
|
|
Filtr <option>pan</option> potrafi zmiksować kanały w określonych przez
|
|
użytkownika proporcjach. Pozwala to na wykonanie wszystkiego tego co potrafi
|
|
filtr <option>channels</option> i wiele więcej. Niestety podopcje są tutaj
|
|
znacznie bardziej skomplikowane.
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Zdecyduj z iloma kanałami chcesz pracować. Aby to określić możesz potrzebować
|
|
użyć <option>-channels</option> i/lub <option>-af channels</option>.
|
|
Późniejsze przykłady pokażą kiedy użyć którego.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Zdecyduj ile kanałów ma zostać wprowadzonych do <option>pan</option> (dalsze
|
|
dekodowane kanały zostaną porzucone). To jest pierwsza podopcja. Kontroluje
|
|
ona także liczbę kanałów używanych jako wyjście.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
Pozostałe podopcje określają jak dużą część danego kanału zmiksować do kanału
|
|
docelowego. To jest najbardziej skomplikowana część. Aby sprostać temu
|
|
zadaniu, podzielmy podopcje na kilka grup, po jednej dla każdego kanału
|
|
wyjściowego. Każda podopcja w zbiorze odpowiada pojedynczemu kanałowi
|
|
wejściowemu. Liczba, którą podasz odpowiada części kanału wejściowego, która
|
|
zostanie zmiksowana w kanale wyjściowym.
|
|
</para>
|
|
<para>
|
|
<option>pan</option> akceptuje wartości od 0 do 512, co odpowiada wartościom
|
|
od 0% do 51200% oryginalnej głośności. Bądź ostrożny używając wartości
|
|
większych od 1. Może to spowodować nie tylko bardzo duże zwiększenie
|
|
głośności, ale także, jeżeli przekroczysz zakres swojej karty muzycznej,
|
|
możesz usłyszeć okropne trzaski. Jeżeli chcesz, możesz stosować po filtrze
|
|
<option>pan</option> dopisać <option>,volume</option>, co włączy obcinanie
|
|
głośności, jednak najlepiej używać na tyle małych wartości parametrów
|
|
<option>pan</option>, aby przycinanie nie było potrzebne.
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
</para>
|
|
|
|
<bridgehead>Przykład: jeden kanał w dwóch głośnikach</bridgehead>
|
|
<para>
|
|
Oto jeszcze jeden przykład, jak odtworzyć lewy kanał w dwóch głośnikach.
|
|
Postępując zgodnie z krokami opisanymi powyżej:
|
|
<orderedlist>
|
|
<listitem><para>
|
|
<option>pan</option> powinien używać dwóch kanałów wyjściowych, więc pierwsza
|
|
podopcja to "2".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ponieważ mamy dwa kanały wejściowe, będziemy mieli dwie grupy podopcji.
|
|
Ponieważ używane są również dwa kanały wyjściowe, w każdej grupie będą po dwie
|
|
podopcje. Lewy kanał z pliku powinien zostać skopiowany z pełną głośnością
|
|
do nowych kanału: lewego i prawego. W związku z tym, pierwsza grupa podopcji
|
|
to "1:1". Prawy kanał powinien zostać pominięty, zatem druga grupa to "0:0".
|
|
Wszelkie zera na końcu listy podopcji mogą zostać pominięte, ale dla
|
|
przejrzystości przykładu, pozostawimy je.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
Po złączeniu wszystkich podopcji otrzymamy:
|
|
<screen>mplayer <replaceable>filename</replaceable> -af pan=2:1:1:0:0</screen>
|
|
Jeżeli pożądanym kanałem jest prawy, a nie lewy, podopcje zmienią się na
|
|
"2:0:0:1:1".
|
|
</para>
|
|
|
|
|
|
<bridgehead>Przykład: lewy kanał w dwóch głośnikach (skrót)</bridgehead>
|
|
<para>
|
|
Podobnie jak przy użyciu <option>channels</option>, istnieje skrót działający
|
|
tylko z lewym kanałem:
|
|
<screen>mplayer <replaceable>filename</replaceable> -af pan=1:1</screen>
|
|
Jeżeli <option>pan</option> posiada tylko jeden kanał wejściowy (pozostałe kanały
|
|
są pomijane), potrzebna jest tylko jedna grupa podopcji z jedną podopcją, która
|
|
oznacza, że jedyny kanał będzie zawierał 100% siebie.
|
|
</para>
|
|
|
|
<bridgehead>Przykład: zmniejszanie liczy kanałów w 6-kanałowym PCM</bridgehead>
|
|
<para>
|
|
Dekoder 6-kanałowego PCM zawarty w <application>MPlayerze</application> nie potrafi
|
|
zmniejszać liczby kanałów przez miksowanie. Oto metoda dokonania tego przy użyciu
|
|
opcji <option>pan</option>:
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Liczba kanałów wyjściowych to 2, więc pierwsza podopcja to "2".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Jako, że mamy 6 kanałów wejściowych, musimy użyć sześciu grup opcji.
|
|
Na szczęście, ponieważ interesują nas tylko dwa pierwsze kanały, możemy
|
|
użyć tylko dwóch grup opcji; pozostałe cztery grupy mogą zostać pominięte.
|
|
Pamiętaj, że nie wszystkie wielokanałowe pliki audio mają tę samą kolejność
|
|
kanałów. Poniższy przykład pokazuje zmniejszanie liczby kanałów w pliku, w którym
|
|
kolejność kanałów jest taka, jak w AC3 5.1:
|
|
<programlisting>
|
|
0 - lewy przedni
|
|
1 - prawy przedni
|
|
2 - lewy tylny
|
|
3 - prawy tylny
|
|
4 - środkowy przedni
|
|
5 - subwoofer (głośnik niskotonowy)<!--
|
|
--></programlisting>
|
|
Pierwsza grupa podopcji zawiera kolejne wartości oryginalnej głośności lewego
|
|
przedniego kanału, które powinny być dostarczone do odpowiednich kanałów
|
|
wyjściowych: "1:0". Prawy przedni kanał powinien zostać przeniesiony do
|
|
prawego wyjściowego: "0:1". Analogicznie dla kanałów tylnych: "1:0" i "0:1".
|
|
Kanał środkowy powinien zostać przeniesiony do obu kanałów wyjściowych z połową
|
|
głośności: "0.5:0.5", zaś kanał głośnika niskotonowego powinien być słyszalny
|
|
w obu kanałach wyjściowych z pełną głośnością: "1:1".
|
|
</para></listitem>
|
|
</orderedlist>
|
|
Połącz wszystko razem, a otrzymasz:
|
|
<screen>
|
|
mplayer <replaceable>6-channel.wav</replaceable> -af pan=2:1:0:0:1:1:0:0:1:0.5:0.5:1:1
|
|
</screen>
|
|
Przedstawione powyżej głośności są tylko przybliżonym przykładem. Nie czuj się
|
|
nimi skrępowany i zmieniaj je zgodnie ze swoim uznaniem.
|
|
</para>
|
|
|
|
<bridgehead>Przykład: Odtwarzanie audio 5.1 przy pomocy dużych głośników, bez subwoofera</bridgehead>
|
|
<para>
|
|
Jeżeli posiadasz parę dużych przednich głośników, możesz nie mieć ochoty
|
|
tracić pieniędzy na dodatkowy głośnik niskotonowy, tylko po to, aby mieć
|
|
kompletny system 5.1. Jeżeli użyjesz opcji <option>-channels 5</option>,
|
|
przekażesz do lib52 informację, że ma dekodować audio 5.1 dla systemu 5.0.
|
|
Tym sposobem kanał głośnika niskotonowego zostanie po prostu pominięty.
|
|
Jeżeli chcesz rozdzielić kanał subwoofera samodzielnie, musisz dokonać ręcznego
|
|
zmiksowania przy użyciu <option>pan</option>:
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Jako, że <option>pan</option> musi analizować wszystkie 6 kanałów,
|
|
podaj opcję <option>-channels 6</option>, aby liba52 zdekodował je wszystkie.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Ponieważ <option>pan</option> będzie używał pięciu kanałów wyjściowych,
|
|
pierwsza podopcja to "5".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Sześć kanałów wejściowych i pięć wyjściowych oznacza 6 grup po 5 podopcji.
|
|
<itemizedlist spacing="compact">
|
|
<listitem><para>
|
|
Lewy przedni kanał replikuje samego siebie:
|
|
"1:0:0:0:0"
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Identycznie dla prawego przedniego kanału:
|
|
"0:1:0:0:0"
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Tak samo dla lewego tylnego:
|
|
"0:0:1:0:0"
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Oraz tak samo dla prawego tylnego:
|
|
"0:0:0:1:0"
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Środkowy też:
|
|
"0:0:0:0:1"
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Teraz musimy zdecydować, co zrobić z subwooferem. Na przykład możemy
|
|
podzielić go po połowie na lewy przedni i prawy przedni:
|
|
"0.5:0.5:0:0:0"
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para></listitem>
|
|
</orderedlist>
|
|
Po połączeniu wszystkich opcji otrzymasz:
|
|
<screen>
|
|
mplayer <replaceable>dvd://1</replaceable> -channels 6 -af pan=5:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0.5:0.5:0:0:0
|
|
</screen>
|
|
</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="advaudio-volume">
|
|
<title>Programowa regulacja głośności</title>
|
|
|
|
<para>
|
|
Niekóre ścieżki audio są zbyt ciche aby można ich komfortowo słuchać bez
|
|
wzmocnienia. Staje się to problemem, gdy Twój sprzęt audio nie potrafi wzmacniać
|
|
sygnału. Opcja <option>-softvol</option> instruuje <application>MPlayera</application>,
|
|
aby ten używał wewnętrznego miksera. Możesz wtedy używać klawiszy strojenia
|
|
głośności (domyślnie <keycap>9</keycap> i <keycap>0</keycap>), aby uzyskać
|
|
większe poziomy głośności. Pamiętaj, że nie omija to miksera Twojej karty
|
|
muzycznej; <application>MPlayer</application> zwiększa tylko głośność sygnału
|
|
przed przesłaniem go do Twojej karty.
|
|
Poniższy przykład może być dobrym początkiem:
|
|
<screen>
|
|
mplayer <replaceable>cichy-plik</replaceable> -softvol -softvol-max 300
|
|
</screen>
|
|
Opcja <option>-softvol-max</option> określa maksymalny dozwolony poziom głośności,
|
|
jako procent głośności oryginalnej. Przykładowo, <option>-softvol-max 200</option>
|
|
pozwoli na maksymalne zwiększenie głośności do 200% głośności oryginalnej.
|
|
Można bezpiecznie używać dużych parametrów <option>-softvol-max</option>;
|
|
większa głośność nie zostanie użyta, jeżeli nie zwiększysz jej przy pomocy
|
|
klawiszy regulacji głośności. Jedyną wadą stosowania większych wartości jest to,
|
|
że, ponieważ <application>MPlayer</application> ustala głośność jako procent
|
|
głośności maksymalnej, nie będziesz w stanie precyzyjnie kontrolować głośności
|
|
przy pomocy klawiszy regulacji głośności. Użyj mniejszych wartości parametrów
|
|
<option>-softvol-max</option> i/lub dodaj opcję <option>-volstep 1</option>
|
|
aby uzyskać większą precyzję.
|
|
</para>
|
|
|
|
<para>
|
|
Opcja <option>-softvol</option> działa poprzez kontrolę filtru
|
|
<option>volume</option>. Jeżeli chcesz odtwarzać plik z określoną głośnością,
|
|
możesz podać opcję dla <option>volume</option> ręcznie:
|
|
<screen>mplayer <replaceable>cichy-plik</replaceable> -af volume=10</screen>
|
|
Pozwoli to na odtworzenie pliku z 10-decybelowym wzmocnieniem. Bądź ostrożny
|
|
używając filtru <option>volume</option> - ustawiając zbyt dużą głośność możesz
|
|
łatwo uszkodzić swój słuch. Zaczynaj od małych wartości i stopniowo zwiększaj je
|
|
aż do uzyskania pożądanej głośności. Ponadto, jeżeli podasz zbyt dużą wartość,
|
|
filtr <option>volume</option> może musieć przyciąć głośność, aby nie przesłać
|
|
do karty muzycznej danych spoza akceptowalnego przez nią zakresu; będzie to
|
|
powodować zniekształcenia dźwięku.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="tv-input" xreflabel="TV input">
|
|
<title>Wejście TV</title>
|
|
|
|
<para>
|
|
Sekcja ta opisuje jak <emphasis role="bold">oglądać/nagrywać obraz
|
|
za pomocą tunera TV kompatybilnego z V4L</emphasis>. Zajrzyj do strony man
|
|
by zobaczyć opis opcji TV i klawiszy sterujących.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="tv-compilation">
|
|
<title>Kompilacja</title>
|
|
|
|
<procedure>
|
|
<step><para>
|
|
Najpierw musisz przekompilować. <filename>./configure</filename> wykryje
|
|
automatycznie nagłówki jądra związane z V4L i obecność urządzeń
|
|
<filename>/dev/video*</filename>. Jeśli istnieją, obsługa TV zostanie
|
|
wbudowana (zobacz wynik działania <filename>./configure</filename>).
|
|
</para></step>
|
|
<step><para>
|
|
Upewnij się, że Twój tuner działa z innymi programami do obsługi TV pod
|
|
Linuksem, na przykład <application>XawTV</application>.
|
|
</para></step>
|
|
</procedure>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="tv-tips">
|
|
<title>Wskazówki użytkowania</title>
|
|
|
|
<para>
|
|
Kompletna lista opcji dostępna jest na stronie man.
|
|
Tu jest tylko kilka wskazówek:
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Używaj opcji <option>channels</option>. Przykład:
|
|
<screen>-tv channels=26-MTV1,23-TV2</screen>
|
|
Wyjaśnienie: Jeśli użyjesz tej opcji, dostępne będą tylko kanały 23 i 26 oraz
|
|
przy zmianie kanału pojawi się ładny napis na OSD, wyświetlający jego nazwę.
|
|
Odstępy w nazwie kanału muszą zostać zastąpione znakiem "_".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Używaj rozsądnych rozmiarów obrazu. Rozmiary obrazu wynikowego powinny
|
|
być podzielne przez 16.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
Jeśli nagrywasz obraz video o pionowej rozdzielczości większej niż połowa
|
|
rozdzielczości pełnej (np. 288 dla PAL lub 240 dla NTSC), wtedy 'ramki'
|
|
które otrzymasz będą tak naprawdę parami poprzeplatanych (interleaved) pól.
|
|
W zależności od tego, co chcesz zrobić ze strumieniem video, możesz go
|
|
zostawić w takiej formie, użyć destrukcyjnego usuwania przeplotu
|
|
(deinterlacing), albo rozdzielić pary na pojedyncze pola.
|
|
</para>
|
|
<para>
|
|
W przeciwnym wypadku dostaniesz film, który jest zniekształcony w trakcie
|
|
scen o dużej dynamice, a wskazana szybkość transmisji (bitrate)
|
|
prawdopodobnie nie będzie nawet mogła być utrzymana przez kontroler szybkości
|
|
(bitrate controller), ponieważ artefakty przeplotu tworzą duże ilości
|
|
szczegółów, a co za tym idzie, potrzebują dużej przepustowości. Możesz
|
|
włączyć usuwanie przeplotu za pomocą opcji <option>-vf pp=TYP_DEINT</option>.
|
|
Zwykle <option>pp=lb</option> spisuje się dobrze, ale to kwestia gustu.
|
|
Poczytaj o innych algorytmach usuwania przeplotu na stronie man i zacznij
|
|
eksperymentować.
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
Usuwaj "martwe miejsca". Kiedy nagrywasz video, są pewnie miejsca przy
|
|
brzegach, które są zazwyczaj czarne lub zawierają szum.
|
|
Jak się łatwo domyślić, niepotrzebnie zużywają sporo przepustowości
|
|
(dokładniej, to nie same czarne miejsca, lecz ostre przejścia pomiędzy
|
|
czarnym kolorem i jaśniejszym obrazem video, ale nie jest to akurat takie
|
|
ważne). Zanim zaczniesz nagrywać, ustaw argumenty opcji <option>crop</option>
|
|
by wyciąć wszystkie "śmieci" na brzegach.
|
|
Oczywiście nie zapomnij o utrzymaniu prawidłowych wymiarów obrazu.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Uważaj na obciążenie CPU. Przez większość czasu Nie powinno ono przekroczyć
|
|
granicy 90%.
|
|
Jeśli masz duży bufor nagrywania, <application>MEncoder</application> może
|
|
przetrwać przeciążenie przez najwyżej kilka sekund i nic więcej.
|
|
Lepiej więc wyłączyć wszystkie trójwymiarowe wygaszacze OpenGL i inne tego
|
|
typu bajery.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Nie mieszaj z zegarem systemowym. <application>MEncoder</application>
|
|
korzysta z niego do synchronizacji A/V. Jeśli zmodyfikujesz zegar systemowy
|
|
(zwłaszcza wstecz), <application>MEncoder</application> się pogubi i utraci
|
|
klatki. Jest to bardzo ważna sprawa jeśli jesteś podpięty do sieci i używasz
|
|
do synchronizacji czasu różnych programów typu NTP. Musisz wyłączyć NTP
|
|
w trakcie nagrywania, jeśli chcesz, by było ono przeprowadzone niezawodnie.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Nie zmieniaj opcji <option>outfmt</option>, chyba, że wiesz co robisz lub
|
|
Twoja karta/sterownik naprawdę nie obsługuje ustawienia domyślnego
|
|
(przestrzeń kolorów YV12). W poprzednich wersjach
|
|
<application>MPlayera</application>/<application>MEncodera</application>
|
|
konieczne było podanie formatu wyjścia.
|
|
Ten problem powinien być rozwiązany w aktualnych wydaniach i opcja
|
|
<option>outfmt</option> nie jest już wymagana, a ustawienie domyślne powinno
|
|
pasować każdemu. Na przykład, jeśli nagrywasz do formatu DivX używając
|
|
<systemitem class="library">libavcodec</systemitem> i podasz opcję
|
|
<option>outfmt=RGB24</option> aby zwiększyć jakość nagrywanego obrazu,
|
|
zostanie on i tak później z powrotem przekonwertowany do YV12, więc jedyne,
|
|
co osiągniesz, to ogromna strata mocy obliczeniowej.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
By użyć przestrzeni kolorów I420 (<option>outfmt=i420</option>), musisz dodać
|
|
opcję <option>-vc rawi420</option> z powodu konfliktu fourcc z kodekiem Intel
|
|
Indeo.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Jest kilka sposobów na nagrywanie audio. Możesz nagrywać dźwięk za pomocą
|
|
Twojej karty dźwiękowej korzystając z zewnętrznego kabla pomiędzy kartą video
|
|
i wejściem liniowym lub korzystając z wbudowanego w układ bt878 przetwornika
|
|
ADC. W tym drugim przypadku musisz załadować sterownik
|
|
<emphasis role="bold">btaudio</emphasis>. Przeczytaj plik
|
|
<filename>linux/Documentation/sound/btaudio</filename> (w drzewie jądra,
|
|
a nie <application>MPlayera</application>) by dowiedzieć się jak korzystać
|
|
z tego sterownika.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Jeśli <application>MEncoder</application> nie może otworzyć urządzenia
|
|
dźwiękowego, upewnij się, że jest ono rzeczywiście dostępne. Zdarzają się
|
|
problemy z serwerami dźwięku typu aRts (KDE) lub ESD (GNOME). Jeśli masz
|
|
kartę full-duplex (prawie wszystkie przyzwoite karty dostępne obecnie
|
|
obsługują tę funkcję) i korzystasz z KDE, spróbuj zaznaczyć opcję "Działanie
|
|
w pełni dupleksowe" ("full duplex") w konfiguracji serwera dźwięku.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
</sect2>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect2 id="tv-examples">
|
|
<title>Przykłady</title>
|
|
|
|
<informalexample><para>
|
|
Puste wyjście, do AAlib :)
|
|
<screen>
|
|
mplayer -tv driver=dummy:width=640:height=480 -vo aa tv://
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<informalexample><para>
|
|
Wejście ze standardowego V4L:
|
|
<screen>
|
|
mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<informalexample><para>
|
|
Bardziej skomplikowany przykład. Każe on <application>MEncoderowi</application>
|
|
nagrać pełen obraz PAL, wykadrować go i usunąć przeplot korzystając z algorytmu
|
|
liniowego zlewania (linear blend). Audio jest kompresowane ze stałą
|
|
szybkością równą 64kbps, przy użyciu kodeka LAME. To ustawienie jest
|
|
dobre do nagrywania filmów.
|
|
<screen>
|
|
mencoder -tv driver=v4l:width=768:height=576 -oac mp3lame -lameopts cbr:br=64 \
|
|
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \
|
|
-vf crop=720:544:24:16,pp=lb -o <replaceable>wyjscie.avi</replaceable> tv://
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<informalexample><para>
|
|
Ten przykład dodatkowo przeskaluje obraz do 384x288 i skompresuje video
|
|
z szybkością 350kbps w trybie wysokiej jakości. Opcja <option>vqmax</option>
|
|
uwalnia kwantyzator i pozwala kompresorowi video na osiągnięcie tak
|
|
niskiej szybkości nawet kosztem jakości obrazu. Może być to używane do
|
|
nagrywania długich seriali TV, kiedy jakość obrazu nie jest tak ważna.
|
|
<screen>
|
|
mencoder -tv driver=v4l:width=768:height=576 \
|
|
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
|
|
-oac mp3lame -lameopts cbr:br=48 -sws 1 -o <replaceable>wyjscie.avi</replaceable> \
|
|
-vf crop=720:540:24:18,pp=lb,scale=384:288 tv://
|
|
</screen>
|
|
Jest również możliwe podanie mniejszych wymiarów obrazu w opcji
|
|
<option>-tv</option> i pominięcie programowego skalowania, ale to podejście
|
|
wykorzystuje maksymalną ilość dostępnych informacji i jest trochę bardziej
|
|
odporne na szum.
|
|
Układy bt878, ze względu na ograniczenia sprzętowe, mogą stosować
|
|
uśrednianie pikseli jedynie w kierunku poziomym.
|
|
</para></informalexample>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
|
|
|
|
|
|
<sect1 id="radio">
|
|
<title>Radio</title>
|
|
|
|
<sect2 id="radio-input" xreflabel="Słuchanie radia">
|
|
<title>Słuchanie radia</title>
|
|
|
|
<para>
|
|
Ten rozdział opisuje jak włączyć możliwość słuchania radia przy użyciu tunera
|
|
radiowego kompatybilnego z V4L. Opis opcji i sterowania klawiaturą znajduje się
|
|
na stronie man.
|
|
</para>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect3 id="radio-compilation">
|
|
<title>Kompilacja</title>
|
|
|
|
<procedure>
|
|
<step><para>
|
|
Najpierw, musisz przekompilować <application>MPlayera</application> używając
|
|
<filename>./configure</filename> z opcją <option>--enable-radio</option>
|
|
i (jeśli chcesz móc przechwytywać radio)
|
|
<option>--enable-radio-capture</option>.
|
|
</para></step>
|
|
<step><para>
|
|
Upewnij się że Twój tuner działa z innym oprogramowaniem do radia w Linuksie,
|
|
na przykład z <application>XawTV</application>.
|
|
</para></step>
|
|
</procedure>
|
|
</sect3>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect3 id="radio-tips">
|
|
<title>Rady przy stosowaniu</title>
|
|
|
|
<para>
|
|
Pełna lista opcji jest dostępna na stronie man.
|
|
Tu jest tylko kilka porad:
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Używaj opcji <option>channels</option>. Na przykład:
|
|
<screen>-radio channels=104.4-Sibir,103.9-Maximum</screen>
|
|
Wyjaśnienie: Przy użyciu tej opcji dostępne będą tylko stacje na
|
|
częstotliwościach 104.4 i 103.9. Przy przełączaniu kanału OSD będzie
|
|
wyświetlać nazwę kanału. Spacje w nazwie kanału muszą zostać zastąpione przez
|
|
znak "_".
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Jest kilka metod przechwytywania audio. Możesz przechwytywać dźwięk albo
|
|
korzystając ze swojej karty dźwiękowej i zewnętrznego kabelka łączącego kartę
|
|
video z wejściem dźwięku, albo używając wbudowanego w chip saa7134 konwertera
|
|
ADC. W tym drugim przypadku, musisz załadować sterownik
|
|
<systemitem>saa7134-alsa</systemitem> lub <systemitem>saa7134-oss</systemitem>.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Do przechwytywania dźwięku nie można użyć
|
|
<application>MEncodera</application>, ponieważ wymaga on do działania
|
|
strumienia video. Możesz więc albo użyć <application>arecord</application>
|
|
z projektu ALSA albo opcji <option>-ao pcm:file=file.wav</option>.
|
|
W tym drugim przypadku nie będziesz słyszał dźwięku
|
|
(chyba że masz kabelek do line-in i wyłączyłeś jego wyciszenie).
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
</sect3>
|
|
|
|
<!-- ********** -->
|
|
|
|
<sect3 id="radio-examples">
|
|
<title>Przykłady</title>
|
|
|
|
<informalexample><para>
|
|
Wejście ze standardowego V4L (przy użyciu kabelka line-in, bez przechwytywania):
|
|
<screen>
|
|
mplayer radio://104.4
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<informalexample><para>
|
|
Wejście ze standardowego V4L (przy użyciu kabelka line-in, bez przechwytywania,
|
|
interface V4Lv1):
|
|
<screen>
|
|
mplayer -radio driver=v4l radio://104.4
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<informalexample><para>
|
|
Odtwarzanie drugiego kanału z listy:
|
|
<screen>
|
|
mplayer -radio channels=104.4=Sibir,103.9=Maximm radio://2
|
|
</screen>
|
|
</para></informalexample>
|
|
|
|
<informalexample><para>
|
|
Przesyłanie dźwięku szyną PCI z wewnętrznego konwertera ADC na karcie radiowej.
|
|
W tym przykładzie tuner jest używany jako druga karta dźwiękowa (urządzenia
|
|
alsa hw:1,0). Dla kart opartych na saa7134 musi być załadowany moduł
|
|
<systemitem>saa7134-alsa</systemitem> lub <systemitem>saa7134-oss</systemitem>.
|
|
<screen>
|
|
mplayer -rawaudio rate=32000 radio://2/capture \
|
|
-radio adevice=hw=1.0:arate=32000:channels=104.4=Sibir,103.9=Maximm
|
|
</screen>
|
|
<note><para>
|
|
Jeśli używasz nazw urządzeń ALSA dwukropki muszą być zastąpione
|
|
znakami równości a przecinki kropkami.
|
|
</para></note>
|
|
</para>
|
|
</informalexample>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
</chapter>
|