mirror of
https://github.com/mpv-player/mpv
synced 2024-12-16 20:05:07 +00:00
e6c46199c9
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14677 b3059339-0415-0410-9bf9-f77b7e298cf2
785 lines
27 KiB
XML
785 lines
27 KiB
XML
<?xml version="1.0" encoding="iso-8859-2"?>
|
|
<!-- synced with 1.30 -->
|
|
<sect1 id="audio">
|
|
<title>Urządzenia wyjściowe audio</title>
|
|
<sect2 id="sync">
|
|
<title>Synchronizacja Audio/Video</title>
|
|
|
|
<para>
|
|
Sterowniki kart dźwiękowych przeznaczone dla Linuksa mają problemy
|
|
związane z kompatybilnością. Dzieje się tak, ponieważ <application>MPlayer</application>
|
|
korzysta z wbudowanych właściwości <emphasis>poprawnie</emphasis> napisanych
|
|
sterowników dźwięku, które prawidłowo obsługują synchronizację audio/video.
|
|
Niestety, niektórzy autorzy sterowników nie uwzględniają tej cechy, ponieważ
|
|
nie jest ona potrzebna do odtwarzania efektów dźwiękowych i plików MP3.
|
|
</para>
|
|
|
|
<para>
|
|
Inne odtwarzacze takie jak: <ulink url="http://avifile.sf.net">aviplay</ulink>
|
|
czy <ulink url="http://xinehq.de">xine</ulink> prawdopodobnie działają
|
|
od razu z tymi sterownikami, ponieważ używają "prostych" metod synchronizacji
|
|
korzystających z wewnętrznego zegara. Testy pokazały, że ich metody nie są tak
|
|
wydajne jak <application>MPlayera</application>.
|
|
</para>
|
|
|
|
<para>
|
|
Używanie <application>MPlayera</application> z poprawnie napisanym sterownikiem
|
|
dźwięku, nigdy nie zaowocuje desynchronizacją A/V z powodu dźwięku, chyba że
|
|
odtwarzany plik został utworzony w niewłaściwy sposób lub jest popsuty
|
|
(na stronie man znajdziesz możliwe rozwiązania tego problemu).
|
|
</para>
|
|
|
|
<para>
|
|
Jeśli masz kiepski sterownik dźwięku, spróbuj użyć opcji <option>-autosync</option>.
|
|
Powinna ona rozwiązać Twój problem. Dokładniejsze informacje znajdziesz na stronie
|
|
man.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="troubleshooting">
|
|
<title>Rozwiązywanie problemów</title>
|
|
|
|
<para>Kilka uwag:</para>
|
|
<para>
|
|
Jeżeli posiadasz sterowniki ALSA w wersji 0.5, prawie zawsze konieczne będzie
|
|
użycie <option>-ao alsa5</option>, ponieważ ich kod emulacji OSS jest wadliwy i
|
|
spowoduje <emphasis role="bold">błąd <application>MPlayera</application></emphasis>
|
|
wyświetlając komunikat o treści podobnej do tej:
|
|
<screen>
|
|
DEMUXER: Za dużo (945 w 8390980 bajtach) pakietów video w buforze!
|
|
(DEMUXER: Too many (945 in 8390980 bytes) video packets in the buffer!)<!--
|
|
--></screen>
|
|
</para>
|
|
<para>
|
|
Jeśli dźwięk przerywany jest krótkimi trzaskami podczas odtwarzania z CD-ROMu,
|
|
włącz odmaskowywanie przerwań, tak jak opisano to w rozdziale dotyczącym
|
|
<link linkend="drives">CD-ROMu</link>.
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="af">
|
|
<title>Filtry audio</title>
|
|
<para>
|
|
Filtry dźwiękowe pozwalają na zmianę właściwości danych audio zanim dźwięk dotrze do
|
|
karty. Ich uruchamianie i wyłączanie odbywa się przeważnie automatycznie,
|
|
można to jednak zmienić. Filtry włączane są wtedy, gdy cechy dźwięku
|
|
różnią się od tych wymaganych przez urządzenie audio, w przeciwnym wypadku
|
|
procedura ta jest pomijana. Opcja <option>-af filter1,filter2,...</option>
|
|
używana jest do nadpisania automatycznych ustawień lub do zastosowania
|
|
dodatkowych. Kolejność stosowania filtrów uzależniona jest od kolejności
|
|
w ciągu oddzielonych od siebie przecinkami wartości.
|
|
</para>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>mplayer -af resample,pan <replaceable>film.avi</replaceable></screen>
|
|
uruchomi dźwięk poprzez filtr zmieniający częstotliwość próbkowania (resample filter)
|
|
a następnie poprzez filtr pan. Zauważ, że lista nie może zawierać żadnych spacji,
|
|
inaczej zostanie błędnie zinterpretowana przez program.
|
|
</para>
|
|
|
|
<para>
|
|
Filtry często posiadają opcje zmieniające ich zachowanie. Są one dokładniej
|
|
opisane w sekcji poniżej. Jeżeli pominie się parametry, to filtr uruchomi się
|
|
z ustawieniami domyślnymi. Poniżej przedstawiony jest przykład, jak używać
|
|
filtrów wraz z ich opcjami:
|
|
<screen>
|
|
mplayer -af resample=11025,pan=1:0.5:0.5 -channels 1 -srate 11025 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
ustawi częstotliwość wyjściową filtru zmieniającego próbkowanie (resample filter)
|
|
na 11025Hz i zmiksuje dźwięk do jednego kanału używając filtru pan.
|
|
</para>
|
|
|
|
<para>
|
|
Ogólną kontrolę nad warstwą filtrów daje opcja <option>-af-adv</option>.
|
|
Zawiera ona dwie dodatkowe opcje:
|
|
</para>
|
|
|
|
<para>
|
|
<option>force</option> jest polem bitowym, które określa jak filtry
|
|
są stosowane i jakiej optymalizacji prędkości/dokładności używają:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>0</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów i optymalizuj względem szybkości procesora.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>1</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów i optymalizuj tak, aby osiągnąć największą
|
|
prędkość.
|
|
<emphasis>Uwaga:</emphasis> Niektóre możliwości filtrów audio mogą nie zadziałać i
|
|
jakość dźwięku spadnie.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>2</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów i optymalizuj pod kątem jak największej
|
|
jakości.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>3</option></term>
|
|
<listitem><para>
|
|
Nie używaj automatycznego stosowania filtrów i nie optymalizuj.
|
|
<emphasis>Uwaga:</emphasis> Jeśli używasz tego ustawienia, możliwe jest
|
|
wystąpienie błędów podczas działania <application>MPlayera</application> i jego zakończenie.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>4</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów (tak jak dla 0), jednak użyj obliczeń
|
|
zmiennoprzecinkowych, jeśli to możliwe.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>5</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów (tak jak dla 1), jednak użyj obliczeń
|
|
zmiennoprzecinkowych, jeśli to możliwe.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>6</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów (tak jak dla 2), jednak użyj obliczeń
|
|
zmiennoprzecinkowych, jeśli to możliwe.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>7</option></term>
|
|
<listitem><para>
|
|
Użyj automatycznego stosowania filtrów (tak jak dla 3), jednak użyj obliczeń
|
|
zmiennoprzecinkowych, jeśli to możliwe.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
<option>list</option> jest aliasem dla opcji -af.
|
|
</para>
|
|
|
|
<para>
|
|
Na zachowanie warstwy filtrów wpływają również niżej podane, standardowe opcje:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-v</option></term>
|
|
<listitem><para>
|
|
Zwiększa poziom "gadatliwości" i sprawia, że większość filtrów drukuje dodatkowe
|
|
komunikaty.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-channels</option></term>
|
|
<listitem><para>
|
|
Ustawia liczbę kanałów wyjściowych, których ma używać Twoja karta.
|
|
Ma ona również wpływ na liczbę kanałów, które są dekodowane z
|
|
nośnika danych. Jeśli zawiera on mniej kanałów, filtr kanałów (channels filter)
|
|
zostanie automatycznie użyty (zobacz poniżej). Przekierowywanie kanałów będzie
|
|
ustawione domyślnie.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-srate</option></term>
|
|
<listitem><para>
|
|
Ustawia częstotliwość próbkowania, której ma używać Twoja karta
|
|
(oczywiście karty mają swoje ograniczenia). Jeżeli poziom próbkowania Twojej
|
|
karty różni się od tego stosowanego w nośniku, zostanie włączony filtr zmieniający
|
|
próbkowanie (resample filter, zobacz poniżej), aby zniwelować różnice.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-format</option></term>
|
|
<listitem><para>
|
|
Ustawia format próbki pomiędzy filtrem audio a kartą dźwiękową.
|
|
Jeżeli żądany format próbki dla karty jest inny niż format zawierający się w nośniku,
|
|
zostanie zastosowany filtr formatu (format filter, zobacz poniżej), aby zniwelować
|
|
różnice.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<sect2 id="af_resample">
|
|
<title>Zmniejszenie/Zwiększenie częstotliwości próbkowania (Up/Downsampling)</title>
|
|
|
|
<para>
|
|
<application>MPlayer</application> w pełni obsługuje zmniejszanie/zwiększanie
|
|
częstotliwości (up/downsampling) poprzez filtr zmieniający częstotliwość
|
|
próbkowania - <option>resample</option> filter. Może on być użyty, jeżeli
|
|
masz stałą częstotliwość na karcie, albo jeżeli nie jest ona w stanie obsłużyć
|
|
więcej niż 44.1kHz. Filtr jest automatycznie uruchamiany, jeżeli jest to
|
|
konieczne, ale może również zostać włączony z poziomu linii poleceń.
|
|
Ma on trzy opcje:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>srate <8000-192000></option></term>
|
|
<listitem><para>
|
|
jest to liczba całkowita, używana do określenia wyjściowej częstotliwości
|
|
próbkowania w Hz. Przyjmuje wartości z zakresu od 8kHz do 192kHz. Jeżeli
|
|
częstotliwość wejściowa i wyjściowa są takie same albo jeżeli ten parametr
|
|
jest pominięty, filtr jest wyłączany. Wysoka częstotliwość przeważnie zwiększa
|
|
jakość dźwięku, szczególnie jeżeli filtr jest użyty wraz z innymi.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>sloppy</option></term>
|
|
<listitem><para>
|
|
jest dodatkowym parametrem binarnym, który pozwala na małą różnicę między
|
|
częstotliwością wyjściową a tą podaną przez <option>srate</option>. Opcja
|
|
ta może zostać użyta jeżeli początek odtwarzania jest bardzo wolny. Jest
|
|
standardowo uruchomiony.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
<term><option>type <0-2></option></term>
|
|
<listitem><para>
|
|
jest dodatkową liczbą całkowitą z przedziału od <literal>0</literal>
|
|
do <literal>2</literal>, która wybiera metodę zmiany częstotliwości
|
|
próbkowania. Tutaj <literal>0</literal> przedstawia interpolację liniową
|
|
(linear interpolation), <literal>1</literal> reprezentuje metodę wielofazowego
|
|
przetwarzania banku filtrów (poly-phase filter-bank processing) przy użyciu
|
|
obliczeń całkowitoliczbowych, <literal>2</literal> do zmiany częstotliwości za
|
|
pomocą wielofazowego przetwarzania banku filtrów (poly-phase filter-bank processing)
|
|
i obliczeń zmiennoprzecinkowych. Interpolacja liniowa (linear interpolation)
|
|
jest wyjątkowo szybka, jednak pogarsza jakość dźwięku szczególnie przy zwiększaniu
|
|
częstotliwości (upsampling). Najlepszą jakość daje <literal>2</literal>,
|
|
ale metoda ta wymaga największej mocy obliczeniowej.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>Przykład:
|
|
<screen>mplayer -af resample=44100:0:0</screen>
|
|
ustawi częstotliwość wyjściową filtru zmieniającego częstotliwość próbkowania
|
|
(resample filter) na 44100Hz używając przy tym dokładnego skalowania częstotliwości
|
|
wyjściowej oraz interpolacji liniowej (linear interpolation).
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_channels">
|
|
<title>Zmiana liczby kanałów</title>
|
|
<para>
|
|
Filtr kanałów (<option>channels</option> filter) można użyć w celu dodania
|
|
lub usunięcia kanałów, można go także użyć do kopiowania lub przekierowywania kanałów.
|
|
Jest on automatycznie włączony, jeżeli wyjście warstwy audio filtrów różni się
|
|
od wejściowego lub jeśli zażądano jego uruchomienia. Filtr wyłącza się sam,
|
|
jeżeli nie jest używany. Liczba parametrów jest dynamiczna:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>nch <1-6></option></term>
|
|
<listitem><para>
|
|
jest to liczba całkowita z zakresu od <literal>1</literal> do <literal>6</literal>,
|
|
która ustawia liczbę kanałów wejściowych. Ta opcja jest wymagana.
|
|
Nie podanie jej spowoduje błąd uruchamiania (runtime error) programu.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>nr <1-6></option></term>
|
|
<listitem><para>
|
|
jest to liczba całkowita z zakresu od <literal>1</literal> do <literal>6</literal>,
|
|
która używana jest do określenia liczby dróg przekierowania. Parametr ten jest
|
|
opcjonalny. Jeżeli jest pominięty, stosowane jest domyślne przekierowanie.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>od1:do1:od2:do2:od3:do3...</option></term>
|
|
<listitem><para>
|
|
to pary liczb pomiędzy <literal>0</literal> a <literal>5</literal>, które
|
|
określają gdzie poszczególne kanały mają być przekierowywane.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Jeżeli podana jest tylko opcja <option>nch</option>, filtr używa domyślnego
|
|
przekierowywanie, które działa następująco: Jeśli liczba kanałów wyjściowych jest
|
|
większa niż wejściowych, tworzone są puste kanały (w przypadku miksowania z mono
|
|
do stereo, kanał mono jest powtarzany w obu kanałach wyjściowych). Jeżeli liczba
|
|
kanałów wyjściowych jest mniejsza niż wejściowych, nadmiarowe kanały są usuwane.
|
|
</para>
|
|
|
|
<para>
|
|
Przykład 1:
|
|
<screen>
|
|
mplayer -af channels=4:4:0:1:1:0:2:2:3:3 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
zmieni liczbę kanałów na 4 i ustawi 4 drogi przekierowywania, które zamieniają
|
|
kanał 1 z 0, a 2 i 3 pozostawiają bez zmian. Zauważ, że jeżeli odtwarzany był
|
|
nośnik zawierające 2 kanały, to kanały 2 i 3 będą puste, ale 0 i 1 nadal będą
|
|
zamienione.
|
|
</para>
|
|
|
|
<para>
|
|
Przykład 2:
|
|
<screen>
|
|
mplayer -af channels=6:4:0:0:0:1:0:2:0:3 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
zmieni liczbę kanałów na 6 i ustawi 4 drogi przekierowywania, które skopiują
|
|
kanał 0 do 0 i 3. Kanały 4 i 5 będą puste.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_format">
|
|
<title>Konwerter formatu próbek (sample format converter)</title>
|
|
<para>
|
|
Filtr formatu (<option>format</option> filter) przekształca jedne formaty
|
|
próbek w inne. Jest uruchamiany automatycznie, jeśli tylko jest wymagany przez
|
|
kartę lub inny filtr dźwiękowy.
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>bps <numer></option></term>
|
|
<listitem><para>
|
|
może mieć wartość <literal>1</literal>, <literal>2</literal> lub
|
|
<literal>4</literal>, określa liczbę bajtów przypadającą na próbkę. Parametr
|
|
ten jest wymagany. Nie podanie go spowoduje błąd uruchamiania (runtime error).
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>f <format></option></term>
|
|
<listitem><para>
|
|
jest ciągiem znaków określającym format próbki. Ciąg jest kombinacją:
|
|
<option>alaw</option>, <option>mulaw</option> lub
|
|
<option>imaadpcm</option>, <option>float</option> lub <option>int</option>,
|
|
<option>unsigned</option> lub <option>signed</option>, <option>le</option> lub
|
|
<option>be</option> (little- lub big-endian). Opcja ta jest wymagana. Jej nie
|
|
podanie, spowoduje błąd podczas uruchamiania (runtime error).
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>
|
|
mplayer -af format=4:float <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
ustawi format wyjściowy na 4 bajty danych zmiennoprzecinkowych przypadających na próbkę.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_delay">
|
|
<title>Opóźnienie (delay)</title>
|
|
<para>
|
|
Filtr opóźniający (<option>delay</option> filter) opóźnia dźwięk zmierzający do
|
|
głośników, tak żeby strumienie dźwiękowe z różnych kanałów dotarły do nich
|
|
jednocześnie. Jest to użyteczne, jeżeli masz więcej niż 2 głośniki. Filtr
|
|
ma kilka opcji:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>d1:d2:d3...</option></term>
|
|
<listitem><para>
|
|
są liczbami rzeczywistymi określającymi opóźnienie w milisekundach,
|
|
które powinno być zastosowane do każdego kanału. Minimalna wartość to 0ms a
|
|
maksymalna to 1000ms.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Aby obliczyć opóźnienie dla poszczególnych kanałów, wykonaj następuje czynności:
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Oblicz odległość od głośników do pozycji słuchacza (w metrach), to da Ci
|
|
wartości od s1 do s5 (dla systemu 5.1). Nie ma sensu brać pod uwagę
|
|
subwoofera (i tak nie usłyszysz różnicy).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Odejmij odległość od s1 do s5 od odległości maksymalnej tzn.
|
|
s[i] = max(s) - s[i]; i = 1...5
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Oblicz opóźnienia w następujący sposób
|
|
d[i] = 1000*s[i]/342; i = 1...5
|
|
</para></listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>
|
|
mplayer -af delay=10.5:10.5:0:0:7:0 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
opóźni lewy i prawy przedni głośnik o 10.5ms, dwa tylne i subwoofer o 0ms a
|
|
centralny o 7ms.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="af_volume">
|
|
<title>Programowa regulacja głośności (software volume control)</title>
|
|
|
|
<para>Programowa regulacja głośności (software volume control) jest obsługiwana
|
|
poprzez filtr głośności (<option>volume</option> filter). Używaj go ostrożnie,
|
|
gdyż może obniżyć stosunek sygnału do szumu. W większości wypadków
|
|
najlepszym rozwiązaniem jest ustawienie miksera PCM na maksymalną wartość, wyłączenie
|
|
filtru i regulacja głośności poziomem głośności ogólnej miksera. Jeżeli Twoja karta
|
|
ma cyfrowy mikser PCM zamiast analogowego i zauważysz przekłamania, użyj miksera
|
|
MASTER. Jeżeli do komputera podłączony jest zewnętrzny wzmacniacz
|
|
(co zazwyczaj ma miejsce), poziom hałasu może zostać zredukowany poprzez
|
|
dostrojenie głównego poziomu głośności (master level) i pokrętła głośności,
|
|
dopóki syczenie w tle nie ustanie. Filtr ma dwie opcje:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>v <-200 - +60></option></term>
|
|
<listitem><para>
|
|
jest liczbą rzeczywistą pomiędzy <literal>-200</literal> a
|
|
<literal>+60</literal>, która przedstawia poziom głośności w dB. Domyślny
|
|
poziom to 0dB.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>c</option></term>
|
|
<listitem><para>
|
|
jest binarną wartością która włącza lub wyłącza miękkie obcinanie (soft-clipping).
|
|
Miękkie obcinanie (soft-clipping) może sprawić, że dźwięk będzie łagodniejszy,
|
|
jeżeli wysokie poziomy dźwięku są użyte. Uaktywnij tę opcję, jeżeli moc
|
|
głośników jest zbyt niska. Zwróć uwagę, że ta metoda powoduje przekłamania
|
|
i powinna być używana tylko w ostateczności.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>mplayer -af volume=10.1:0 <replaceable>film.avi</replaceable></screen>
|
|
wzmocni dźwięk o 10.1dB i zastosuje metodę twardego obcinania (hard-clip), jeżeli
|
|
poziom dźwięku jest za wysoki.
|
|
</para>
|
|
|
|
<para>
|
|
Ten filtr ma drugą właściwość: Mierzy ogólny, maksymalny poziom dźwięku i wypisuje go
|
|
po zakończeniu <application>MPlayera</application>. Oszacowana głośność może być
|
|
użyta do ustawienia poziomu dźwięku w <application>MEncoderze</application> tak,
|
|
żeby maksymalny zasięg dynamiczny był możliwy do osiągnięcia.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_equalizer">
|
|
<title>Korektor (equalizer)</title>
|
|
<para>
|
|
Filtr korektora (<option>equalizer</option> filter) to 10 oktawowy korektor graficzny
|
|
zaimplementowany przy pomocy 10 filtrów pasmowych IIR.
|
|
Oznacza to, że działa bez względu na format odtwarzanego dźwięku. Środkowe
|
|
częstotliwości dla tych 10 pasm to:
|
|
</para>
|
|
|
|
<informaltable>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Numer pasma</entry><entry>Częstotliwość środkowa</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row><entry>0</entry><entry>31.25 Hz</entry></row>
|
|
<row><entry>1</entry><entry>62.50 Hz</entry></row>
|
|
<row><entry>2</entry><entry>125.0 Hz</entry></row>
|
|
<row><entry>3</entry><entry>250.0 Hz</entry></row>
|
|
<row><entry>4</entry><entry>500.0 Hz</entry></row>
|
|
<row><entry>5</entry><entry>1.000 kHz</entry></row>
|
|
<row><entry>6</entry><entry>2.000 kHz</entry></row>
|
|
<row><entry>7</entry><entry>4.000 kHz</entry></row>
|
|
<row><entry>8</entry><entry>8.000 kHz</entry></row>
|
|
<row><entry>9</entry><entry>16.00 kHz</entry></row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>
|
|
Jeżeli częstotliwość próbkowania odtwarzanego dźwięku jest niższa niż środkowa
|
|
częstotliwość dla odpowiedniego pasma, to jest ono wyłączane. Znanym błędem
|
|
jest to, że właściwości dla najwyższego pasma nie są całkowicie symetryczne,
|
|
jeżeli częstotliwość próbki jest zbliżona do częstotliwości środkowej danego pasma.
|
|
Można obejść ten problem zwiększając jej częstotliwość (up-sampling), zanim ta
|
|
dotrze do filtru korektora (equalizer filter).
|
|
</para>
|
|
|
|
<para>
|
|
Filtr ma 10 parametrów:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>g1:g2:g3...g10</option></term>
|
|
<listitem><para>
|
|
są liczbami rzeczywistymi z przedziału od <literal>-12</literal> do
|
|
<literal>+12</literal>, określającymi przyrost dB dla każdego pasma częstotliwości.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>
|
|
mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
wzmocni dźwięk w wyższych i niższych zakresach częstotliwości, wyciszając go
|
|
prawie całkowicie około 1kHz.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_panning">
|
|
<title>Filtr pan (panning filter)</title>
|
|
<para>
|
|
Użyj filtru pan (<option>pan</option> filter), żeby dowolnie miksować kanały. Najprościej
|
|
tłumacząc jest to połączenie programowej regulacji głośności (software volume control) i
|
|
filtru kanałów (channels filter). Istnieją dla niego 2 podstawowe zastosowania:
|
|
</para>
|
|
|
|
<orderedlist>
|
|
<listitem><para>
|
|
Miksowanie wielu kanałów w mniejszą liczbę, na przykład stereo do mono.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Zmienianie "szerokości" centralnego głośnika w systemie przestrzennym.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
|
|
<para>
|
|
Filtr jest trudny w użyciu i będzie wymagał zastosowania żmudnej metody prób i błędów,
|
|
zanim zostanie osiągnięty oczekiwany rezultat. Liczba parametrów filtru zależy od
|
|
liczby kanałów:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>nch <1-6></option></term>
|
|
<listitem><para>
|
|
jest liczbą całkowitą z przedziału od <literal>1</literal> do <literal>6</literal> i
|
|
jest używana w celu określenia liczby kanałów wyjściowych. Opcja ta jest wymagana.
|
|
Nie podanie jej spowoduje błąd uruchamiania (runtime error).
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>l00:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...</option></term>
|
|
<listitem><para>
|
|
są liczbami rzeczywistymi z przedziału od <literal>0</literal> do
|
|
<literal>1</literal>. <option>l[i][j]</option> ustala ile procent kanału wejściowego j
|
|
ma być zmiksowanych do kanału wyjściowego i.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład 1:
|
|
<screen>
|
|
mplayer -af pan=1:0.5:0.5 -channels 1 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
zmiksuje kanały ze stereo do mono.
|
|
</para>
|
|
|
|
<para>
|
|
Przykład 2:
|
|
<screen>
|
|
mplayer -af pan=3:1:0:1:0.5:0.5 -channels 3 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
da 3 kanał wyjściowy, zostawiając 0 i 1 nietknięte i miksując kanały 0 i 1
|
|
do 2 kanału wyjściowego (który może być na przykład wysłany do subwoofera).
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_sub">
|
|
<title>Subwoofer</title>
|
|
<para>
|
|
Filtr subwoofera (<option>sub</option> filter) dodaje kanał subwoofera do strumienia
|
|
audio. Dane audio użyte do stworzenia tego kanału są średnią dźwięku w 0 i 1 kanale. Dźwięk
|
|
wynikowy zostanie poddany działaniu dolnoprzepustowego filtru Butterwortha czwartego rzędu
|
|
(4th order Butterworth filter) z domyślną częstotliwością graniczną na poziomie 60Hz i
|
|
dodany do oddzielnego kanału w strumieniu audio.
|
|
Uwaga: Wyłącz ten filtr, jeżeli odtwarzasz DVD z dźwiękiem w systemie Dolby Digital 5.1,
|
|
w przeciwnym wypadku, jego działanie zakłóci dźwięk subwoofera. Filtr ma 2 parametry:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>fc <20-300></option></term>
|
|
<listitem><para>
|
|
jest opcjonalną liczbą rzeczywistą, używaną do określenia wartości
|
|
częstotliwości granicznej w Hz. Prawidłowy zakres wynosi od 20Hz do 300Hz. Dla
|
|
uzyskania najlepszego rezultatu, spróbuj ustawić ją na jak najniższą. Wzbogaci to
|
|
doświadczenia płynące z używania dźwięku stereo i w systemie przestrzennym. Domyślną
|
|
wartością jest 60Hz.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>ch <0-5></option></term>
|
|
<listitem><para>
|
|
jest opcjonalną liczbą całkowitą pomiędzy <literal>0</literal> a
|
|
<literal>5</literal>, która określa numer kanału, do którego ma zostać wysłany
|
|
dźwięk subwoofera. Domyślnym jest <literal>5</literal>. Zauważ, że liczbą kanałów
|
|
zwiększy się do <replaceable>ch</replaceable>, jeżeli zajdzie taka potrzeba.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>
|
|
mplayer -af sub=100:4 -channels 5 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
doda kanał subwoofera z częstotliwością graniczną równą 100Hz do 4 kanału wyjściowego.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_surround">
|
|
<title>Dekoder dźwięku przestrzennego (Surround-sound decoder)</title>
|
|
<para>
|
|
Macierzowo zakodowany dźwięk przestrzenny, może być zdekodowany filtrem przestrzennym
|
|
(<option>surround</option> filter). Dolby Surround jest przykładem
|
|
formatu zakodowanego macierzowo. Wiele plików zawierających 2 kanały audio,
|
|
w rzeczywistości zawiera dźwięk przestrzenny zakodowany w tym systemie. Aby użyć
|
|
tego filtru potrzebujesz karty z obsługą przynajmniej 4 kanałów. Filtr
|
|
posiada jedną opcję:
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>d <0-1000></option></term>
|
|
<listitem><para>
|
|
jest opcjonalną liczbą rzeczywistą pomiędzy <literal>0</literal> a
|
|
<literal>1000</literal>, używaną do ustawienia opóźnienia w ms dla tylnych głośników.
|
|
Opóźnienie powinno być ustawione w następujący sposób: jeśli d1 to odległość od
|
|
pozycji słuchacza do przednich głośników a d2 to odległość od tylnych głośników,
|
|
to opóźnienie d powinno być ustawione na 15ms, jeżeli d1 <= d2 i 15 + 5*(d1-d2)
|
|
jeżeli d1 > d2. Domyślna wartość dla d to 20ms.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>
|
|
mplayer -af surround=15 -channels 4 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
doda dźwięk przestrzenny dekodując dźwięk dla tylnych głośników z opóźnieniem 15ms.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_export">
|
|
<title>Audio Exporter</title>
|
|
<para>
|
|
Ten filtr audio eksportuje nadchodzący sygnał do innych procesów,
|
|
używając mapowania pamięci (<literal>mmap()</literal>).
|
|
Zmapowane obszary zawierają nagłówek:
|
|
|
|
<programlisting>
|
|
int nch /*ilość kanałów*/
|
|
int size /*rozmiar bufora*/
|
|
unsigned long long counter /*Używany do zachowania synchronizacji,
|
|
aktualizowany za każdym razem kiedy
|
|
eksportowane są nowe dane.*/
|
|
</programlisting>
|
|
Reszta to 16-bitowe dane (bez przeplotu).
|
|
</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>mmapped_file</option></term>
|
|
<listitem><para>
|
|
Plik, do którego chcesz eksportować. Domyślnie jest to
|
|
<filename>~/.mplayer/mplayer-af_export</filename>.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>nsamples</option></term>
|
|
<listitem><para>
|
|
Ilość próbek przypadających na kanał. Domyślnie jest to <literal>512</literal>.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Przykład:
|
|
<screen>
|
|
mplayer -af export=/tmp/mplayer-af_export:1024 <replaceable>film.avi</replaceable>
|
|
</screen>
|
|
wyeksportuje 1024 próbek na kanał do <filename>/tmp/mplayer-af_export</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_extrastereo">
|
|
<title>Extrastereo</title>
|
|
|
|
<para>
|
|
Ten filtr dźwięku zwiększa (liniowo) różnicę między lewym a prawym kanałem
|
|
(tak jak wtyczka extrastereo dla <application>XMMSa</application>)
|
|
dodając efekt "przekazu na żywo" do odtwarzania.
|
|
Ma on jeden parametr:</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>mul</option></term>
|
|
<listitem><para>
|
|
to współczynnik różnicy wyrażony liczbą rzeczywistą (domyślna wartość to
|
|
<literal>2.5</literal>). Jeśli podasz mu wartość <literal>0.0</literal>, dźwięk będzie
|
|
odtwarzany w trybie mono (średnia z dwóch kanałów). Jeśli natomiast
|
|
ustawisz go na <literal>1.0</literal>, dźwięk pozostamie niezmieniony,
|
|
a jeśli na <literal>-1.0</literal>, lewy kanał z prawym zostaną zamienione.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
<para>
|
|
Sposób użycia:
|
|
<screen>
|
|
mplayer -af extrastereo <replaceable>media.avi</replaceable>
|
|
mplayer -af extrastereo=3.45 <replaceable>media.avi</replaceable><!--
|
|
+--></screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="af_volnorm">
|
|
<title>Volume normalizer</title>
|
|
|
|
<para>
|
|
Ten filtr audio maksymalnie zwiększa głośność, nie wprowadzając przy tym
|
|
szumów.
|
|
</para>
|
|
|
|
<para>
|
|
Sposób użycia:
|
|
<screen>mplayer -af volnorm <replaceable>media.avi</replaceable></screen>
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|