Mercurial > mplayer.hg
view DOCS/xml/pl/skin.xml @ 11423:dffc970f1922
FIXING A/V SYNC WHEN ENCODING, from an old mail by Rich:
http://mplayerhq.hu/pipermail/mplayer-users/2002-July/018339.html
author | diego |
---|---|
date | Mon, 10 Nov 2003 10:12:35 +0000 (2003-11-10) |
parents | 321222d19de6 |
children | 5f94bdba470f |
line wrap: on
line source
<?xml version="1.0" encoding="iso-8859-2"?> <!-- synced with 1.4 --> <appendix id="skin"> <title>Format sk�rki MPlayera</title> <para> Celem tego dokumentu jest opisanie formatu sk�rki MPlayera. Informacje zawarte tutaj mog� by� niedok�adne poniewa� <orderedlist> <listitem><para>Nie jestem tym, kt�ry pisa� GUI.</para></listitem> <listitem><para>GUI nie jest uko�czone.</para></listitem> <listitem><para>Mog� si� myli�.</para></listitem> </orderedlist> A wi�c nie b�d� zaskoczony je�li co� nie b�dzie dzia�a� tak, jak przedstawiono tutaj. </para> <para>Podzi�kowania <emphasis>Zolt�nowi Ponekkerowi</emphasis> za jego pomoc.</para> <para><emphasis>Andr�s Mohari <mayday@freemail.hu></emphasis></para> <sect1 id="skin-overview"> <title>Wst�p</title> <para> W zasadzie nie ma to �adnego zwi�zku z formatem sk�rki, ale powiniene� wiedzie�, �e MPlayer <emphasis role="bold">nie</emphasis> posiada wbudowanej sk�rki, w zwi�zku z tym <emphasis role="bold"> co najmniej jedna sk�rka musi by� zainstalowana, aby by�a mo�liwo倶 u�ywania GUI.</emphasis> </para> <sect2 id="skin-overview-directories"> <title>Katalogi</title> <para> Sk�rki s� szukane w nast�puj�cych katalogach (w kolejno�ci): <orderedlist> <listitem><para> <filename class="directory">$(DATADIR)/Skin/</filename> </para></listitem> <listitem><para> <filename class="directory">$(PREFIX)/share/mplayer/Skin/</filename> </para></listitem> <listitem><para> <filename class="directory">~/.mplayer/Skin/</filename> </para></listitem> </orderedlist> </para> <para> Zauwa�, �e pierwsza �cie�ka mo�e si� r鷽ni� w zale�no�ci od sposobu w jaki MPlayer by� skonfigurowany (zobacz argumenty <option>--prefix</option> oraz <option>--datadir</option> w skrypcie <command>configure</command>). </para> <para> Ka�da sk�rka jest instalowana w swoim w�asnym katalogu, w jednym z katalog�w wy�ej wymienionych, na przyk�ad: <screen>$(PREFIX)/share/mplayer/Skin/default/</screen> </para> </sect2> <sect2 id="skin-overview-formats"> <title>Formaty obrazk�w</title> <para>Obrazki musz� by� w formacie PNG truecolor (24 lub 32 bpp).</para> <para> W g鞄wnym oknie oraz na panelu odtwarzania (zobacz ni�ej) mo�esz u�y� obrazk�w z 'przezroczysto�ci�': obszary wype�nione kolorem #FF00FF (magenta) s� w pe�ni przezroczyste dla MPlayera. Oznacza to, �e mo�esz mie� okna o r鷽nych kszta�tach je�li Tw�j X Server posiada rozszerzenie XShape. </para> </sect2> <sect2 id="skin-overview-components"> <title>Sk�adniki sk�rki</title> <para> Sk�rki s� ca�kowicie konfigurowalne (w odr鷽nieniu od sk�rek np. Winampa/XMMS), a wi�c zale�y to od Ciebie, czy stworzysz co� wspania�ego. </para> <para> W chwili obecnej mamy trzy okna, kt�re mo�na ozdobi�: <link linkend="skin-file-main">okno g鞄wne (main window)</link>, <link linkend="skin-file-subwindow">okno ekranu (subwindow)</link>, <link linkend="skin-file-main">panel odtwarzania (playbar)</link>, <link linkend="skin-file-menu">menu sk�rki (skin menu)</link> (kt�re mo�e by� aktywowane prawym przyciskiem myszy). <itemizedlist> <listitem><para> <emphasis role="bold">Okno g鞄wne</emphasis> i/lub <emphasis role="bold">panel odtwarzania</emphasis> to miejsca, gdzie mo�na sterowa� programem MPlayer. T�em tego okna jest obrazek. R鷽ne elementy mog� (i musz�) by� umieszczone w tym oknie: <emphasis>przyciski</emphasis>, <emphasis>potencjometry</emphasis> (suwaki) i <emphasis>etykiety</emphasis>. Dla ka�dego elementu musisz okre�li� ich pozycj� oraz rozmiar. </para><para> <emphasis role="bold">Przycisk</emphasis> ma trzy stany (wci�ni�ty, zwolniony, nieaktywny) , zatem jego obrazki musz� by� podzielone na trzy cz蟠ci w pionie. Zobacz sekcj� <link linkend="skin-button">button</link>, by dowiedzie� si� wi�cej. </para><para> <emphasis role="bold">Potencjometr (suwak)</emphasis> (wykorzystywany g鞄wnie jako pasek przewijania i kontrolka g�o�no�ci/balansu) mo�e sk�ada� si� z ka�dej liczby stan�w poprzez podzielenie jego obrazka na wiele cz蟠ci, z kt�rych jedna poprzedza drug�. Zobacz <link linkend="skin-hpotmeter">hpotmeter</link> oraz <link linkend="skin-potmeter">potmeter</link>, by dowiedzie� si� wi�cej. </para><para> <emphasis role="bold">Etykiety</emphasis> s� nieco specyficzne: Znaki potrzebne do ich narysowania s� pobierane z pliku graficznego, a znaki umieszczone w pliku graficznym s� opisane przez <link linkend="skin-fonts">plik opisu czcionek</link>. Jest to plik, kt�ry za pomoc� czystego tekstu okre�la wsp鶻rz�dne x, y oraz wielko倶 ka�dego znaku umieszczonego na obrazku (plik graficzny i jego plik opisu tworz� <emphasis>razem</emphasis> zestaw czcionek). Zobacz <link linkend="skin-dlabel">dlabel</link> oraz <link linkend="skin-slabel">slabel</link>, by dowiedzie� si� wi�cej. </para> <note><para>Wszystkie obrazki mog� by� ca�kowicie przezroczyste - tak, jak to opisano w sekcji <link linkend="skin-overview-formats">formaty plik�w graficznych</link>. Je�eli X Server nie obs�uguje rozszerzenia XShape, to elementy oznaczone jako przezroczyste b�d� czarne. Je�li chcia�by� wykorzysta� tak� mo�liwo倶, szeroko倶 obrazka t�a g鞄wnego okna musi by� podzielna przez 8. </para></note> </listitem> <listitem><para> <emphasis role="bold">Okno ekranu</emphasis> to miejsce odtwarzania filmu. Mo�e ono wy�wietla� okre�lony obrazek je�li �aden film nie jest uruchomiony (to do倶 nudne mie� puste okno :-)) <emphasis role="bold">Uwaga:</emphasis> przezroczysto倶 <emphasis role="bold">nie jest</emphasis> tutaj dost�pna. </para></listitem> <listitem><para> <emphasis role="bold">Menu sk�rki</emphasis> to po prostu jeden ze sposob�w na kontrolowanie MPlayera poprzez wpisy w menu. Dwa obrazki s� wymagane dla tego menu: pierwszy z nich jest obrazkiem podstawowym, kt�ry pokazuje zwyk�y stan menu, drugi za� s�u�y do wy�wietlenia zaznaczonych obszar�w. Gdy uaktywnisz menu, zostanie pokazany pierwszy obrazek. Je�li przesuniesz mysz nad kt�ry� z jego wpis�w, w�wczas zaznaczony element jest kopiowany z drugiego obrazka w miejsce, na kt�re wskazuje kursor myszy (drugi obrazek nigdy nie jest wy�wietlany jako ca�o倶). </para><para> Wpis w menu jest okre�lony przez jego pozycj� oraz rozmiar na obrazku (zobacz sekcj� <link linkend="skin-file-menu">menu sk�rki</link> by dowiedzie� si� wi�cej). </para></listitem> </itemizedlist> </para> <para> Jedna wa�na sprawa, kt�ra nie zosta�a jeszcze powiedziana: MPlayer musi wiedzie� co zrobi� w momencie klikni�cia na przyciski, potencjometry i wpisy w menu, aby zadzia�a�y. Zosta�o to zrobione za pomoc� <link linkend="skin-gui">sygna鞄w</link> (zdarze�). Dla tych element�w musisz zdefiniowa� sygna�y, kt�re maj� by� generowane podczas ich klikni�cia. </para> </sect2> <sect2 id="skin-files"> <title>Pliki</title> <para> Potrzebne s� nast�puj�ce pliki podczas tworzenia sk�rki: <itemizedlist> <listitem><para> Plik konfiguracyjny o nazwie <link linkend="skin-file">skin</link>, m�wi�cy programowi MPlayer jak po咳czy� r鷽ne cz蟠ci sk�rki razem i co zrobi�, gdy nast�pi klikni�cie w kt�rym� obszarze okna. </para></listitem> <listitem><para> Plik graficzny t�a w oknie g鞄wnym. </para></listitem> <listitem><para> Obrazki dla element�w w g鞄wnym oknie (zawieraj�ce jeden lub wi�cej plik�w opisu czcionek, potrzebnych do rysowania etykiet). </para></listitem> <listitem><para> Obrazek wy�wietlany w oknie ekranu (opcjonalnie) </para></listitem> <listitem><para> Dwa obrazki dla menu sk�rki (potrzebne s� tylko wtedy, gdy chcesz tworzy� takie menu). </para></listitem> </itemizedlist> Za wyj�tkiem pliku konfiguracyjnego sk�rki mo�esz nazwa� wszystkie pliki tak, jak tego chcesz (ale we� pod uwag�, �e pliki opisu czcionek musz� mie� rozszerzenie <filename>.fnt</filename> ). </para> </sect2> </sect1> <sect1 id="skin-file"> <title>Plik skin</title> <para> Jak zosta�o powiedziane wcze�niej, plik ten jest plikiem konfiguruj�cym sk�rk�. Obs�uguje r鷽ne rodzaje wierszy; komentarze zaczynaj� wiersz znakiem '<literal>;</literal>' (tylko spacje i znaki tabulacji s� dopuszczone przed '<literal>;</literal>'). </para> <para> Plik podzielony jest na sekcje. Ka�da sekcja opisuje sk�rk� dla ka�dej aplikacji i ma nast�puj�c� form�: <programlisting> section = <replaceable>nazwa sekcji</replaceable> . . . end </programlisting> </para> <para> Obecnie jest tylko jedna aplikacja, a wi�c potrzebujesz tylko jedn� sekcj� 'section': nazwa tej sekcji to <emphasis role="bold">movieplayer</emphasis>. </para> <para> Wewn�trz tej sekcji ka�de z okien jest opisane przez blok nast�puj�cej postaci: <programlisting> window = <replaceable>nazwa okna</replaceable> . . . end </programlisting> </para> <para> gdzie <replaceable>nazwa okna</replaceable>mo�e by� jednym z poni�szych �a�cuch�w: <itemizedlist> <listitem><para><emphasis role="bold">main</emphasis> - dla okna g鞄wnego</para></listitem> <listitem><para><emphasis role="bold">sub</emphasis> - dla okna ekranu</para></listitem> <listitem><para><emphasis role="bold">menu</emphasis> - dla menu sk�rki</para></listitem> <listitem><para><emphasis role="bold">playbar</emphasis> - dla panelu odtwarzania</para></listitem> </itemizedlist> </para> <para> (Bloki sub i menu s� opcjonalne - nie musisz tworzy� menu czy element�w sk�rki dla okna ekranu) </para> <para> Wewn�trz bloku 'window' mo�esz definiowa� ka�dy element okna wpisuj�c linijk� tej postaci: <programlisting>item = parametr</programlisting> Gdzie <literal>item</literal> jest �a�cuchem, k�ry identyfikuje typ elementu GUI, <literal>parametr</literal> jest warto�ci� numeryczn� lub tekstow� (lub list� takich warto�ci oddzielonych od siebie znakiem przecinka). </para> <para> Z�o�enie powy�szych element�w razem tworzy plik, kt�ry wygl�da mniej wi�cej tak: <programlisting> section = movieplayer window = main ; ... elementy okna g鞄wnego ... end window = sub ; ... elementy okna ekranu ... end window = menu ; ... elementy menu sk�rki ... end window = playbar ; ... elementy panelu odtwarzania ... end end </programlisting> </para> <para> Nazwa pliku graficznego musi zosta� podana bez �adnych nazw katalog�w - obrazki s� szukane w katalogu <filename class="directory">Skin</filename>. Mo�esz (ale nie musisz) okre�li� rozszerzenia tego pliku. Je�li plik taki nie istnieje, MPlayer pr�buje wczyta� plik <filename><nazwa pliku>.<rozszerzenie></filename>, gdzie <literal>png</literal> oraz <literal>PNG</literal> s� pr�bowane jako <filename><rozszerzenie></filename> (w tej w�a�nie kolejno�ci). Pierwszy pasuj�cy plik b�dzie u�yty. </para> <para> Na koniec kilka s鞄w na temat pozycjonowania. Okno g鞄wne oraz okno ekranu mo�e zosta� umieszczone w r鷽nych naro�nikach ekranu poprzez ustawienie wsp鶻rz�dnych <literal>X</literal> i <literal>Y</literal>. <literal>0</literal> to g�ra lub lewa strona, <literal>-1</literal> to �rodek, <literal>-2</literal> to strona prawa lub d鶻, tak jak przedstawiono na poni�szej ilustracji: </para> <informalfigure> <screen> (0, 0)----(-1, 0)----(-2, 0) | | | | | | (0,-1)----(-1,-1)----(-2,-1) | | | | | | (0,-2)----(-1,-2)----(-2,-2) </screen> </informalfigure> <para> Oto przyk�ad wyja�niaj�cy to lepiej. Przypu倶my, �e masz obrazek nazwany <filename>main.png</filename>, kt�ry zosta� u�yty dla okna g鞄wnego: <programlisting>base = main, -1, -1</programlisting> MPlayer pr�buje wczyta� pliki <filename>main</filename>, <filename>main.png</filename>, <filename>main.PNG</filename>. </para> <sect2 id="skin-file-main"> <title>Okno g鞄wne i panel odtwarzania</title> <para> Poni�ej znajduje si� lista wpis�w, kt�re mog� by� u�yte w blokach '<literal>window = main</literal>'. . .'<literal>end</literal>', oraz '<literal>window = playbar</literal>' . . . '<literal>end</literal>'. </para> <variablelist> <varlistentry> <term><literal> <anchor id="skin-main-base"/>base = obrazek, X, Y </literal></term> <listitem><para> Pozwala okre�li� obrazek t�a, kt�ry b�dzie u�ywany w oknie g鞄wnym Okno b�dzie widoczne w pozycji <literal>X, Y</literal> na ekranie. Okno b�dzie wielko�ci tego obrazka. </para> <note><para>Wsp鶻rz�dne te nie dzia�aj� na razie dla okna ekranu.</para></note> <warning><para>Obszary przezroczysto�ci obrazka (kolor #FF00FF) b�d� widoczne jako czarne pod X serwerami nieposiadaj�cymi rozszerzenia XShape. Szeroko倶 obrazka musi by� podzielna przez 8.</para></warning> </listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-button"/>button = obrazek, X, Y, szeroko倶, wysoko倶, sygna� </literal></term> <listitem><para> Umieszcza przycisk o rozmiarze <literal>szeroko倶</literal> * <literal>wysoko倶</literal> w pozycji <literal>X</literal>, <literal>Y</literal>. Okre�lony <literal>sygna�</literal> jest generowany podczas klikni�cia na przycisk. Obrazek ten opisany przez <literal>obrazek</literal> musi sk�ada� si� z trzech cz蟠ci jedna pod drug� (stosownie do mo�liwych stan�w przycisku), w ten oto spos�b: </para> <informalfigure> <screen> +---------------+ | wci�ni�ty | +---------------+ | zwolniony | +---------------+ | nieaktywny | +---------------+ </screen> </informalfigure> </listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-decoration"/>decoration = enable|disable (w咳czona|wy�aczona) </literal></term> <listitem><para> W咳cza lub wy咳cza dekoracj� mened�era okna w oknie g鞄wnym. Domy�lnie jest <emphasis role="bold">wy咳czona</emphasis>. </para> <note><para>Nie dzia�a to w oknie ekranu, gdy� nie ma takiej potrzeby.</para></note> </listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-hpotmeter"/>hpotmeter = przycisk, szer_przycisku, wys_przycisku, faza, liczba_faz, domy�lny, X, Y, szeroko倶, wysoko倶, sygna� </literal></term> <listitem><para> </para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-vpotmeter"/>vpotmeter = przycisk, szer_przycisku, wys_przycisku, fazy, liczba_faz, domy�lny, X, Y, szeroko倶, wysoko倶, sygna� </literal></term> <listitem><para> Umieszcza poziomo (hpotmeter) lub pionowo (vpotmeter) suwak o rozmiarze <literal>szeroko倶</literal> * <literal>wysoko倶</literal> i pozycji <literal>X,Y</literal>. Obrazek mo�e by� podzielony na r鷽ne cz蟠ci dla r鷽nych faz suwaka (np. mo�esz mie� suwak g�o�no�ci, kt�ry w zale�no�ci od po�o�enia zmienia kolor z zielonego (minimum) na czerwony (maksimum)). <literal>hpotmeter</literal> mo�e by� przyciskiem umieszczonym poziomo. Jego parametry to: </para> <itemizedlist> <listitem><para><literal>przycisk</literal> - obrazek u�yty do przycisku (musi posiada� trzy cz蟠ci jedna pod drug� tak, jak w przypadku <link linkend="skin-button">przycisku</link>) </para></listitem> <listitem><para><literal>szer_przycisku</literal>, <literal>wys_przycisku</literal> - wielko倶 przycisku </para></listitem> <listitem><para><literal>fazy</literal> - obrazek u�ywany do okre�lenie faz dla hpotmeter. Warto倶 specjalna <literal>NULL</literal> mo�e by� u�yta je�li nie chcesz �adnego obrazka. Obrazek musi by� podzielony w pionie na <literal>fragmenty poszczeg�lnych faz</literal> tak, jak poni�ej: </para> <informalfigure> <screen> +------------+ | faza #1 | +------------+ | faza #2 | +------------+ ... +------------+ | faza #n | +------------+ </screen> </informalfigure> </listitem> <listitem><para><literal>liczba_faz</literal> - liczba faz znajduj�ca si� na obrazku z <literal>fazami</literal> </para></listitem> <listitem><para><literal>domy�lny</literal> - domy�lne ustawienie dla hpotmeter (zakres od <literal>0</literal> do <literal>100</literal>) </para></listitem> <listitem><para><literal>X</literal>, <literal>Y</literal> - pozycja dla hpotmeter </para></listitem> <listitem><para><literal>szeroko倶</literal>, <literal>wysoko倶</literal> - szeroko倶 i wysoko倶 dla <literal>hpotmeter</literal> </para></listitem> <listitem><para><literal>sygna�</literal> - sygna� generowany podczas zmiany warto�ci <literal>hpotmeter</literal> </para></listitem> </itemizedlist> </listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-potmeter"/>potmeter = fazy, liczba_faz, domy�lny, X, Y, szeroko倶, wysoko倶, sygna� </literal></term> <listitem><para> <literal>hpotmeter</literal> bez przycisku. (domy�lam si�, �e chodzi o to, aby nim kr�ci�, ale reaguje on tylko na poziome przesuwanie). Opis parametr�w znajdziesz w cz蟠ci o <link linkend="skin-hpotmeter">hpotmeter</link>. Parametr <literal>fazy</literal> mo�e mie� warto倶 <literal>NULL</literal>, ale jest to zupe�nie bezu�yteczne, gdy� nie wida� wtedy po�o�enia potencjometru. </para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-font"/>font = plik_czcionek, id_czcionki </literal></term> <listitem><para> Definiuje czcionki. <literal>plik_czcionek</literal> jest nazw� pliku opisu czcionek z rozszerzeniem <filename>.fnt</filename> (nie podawaj rozszerzenia w tym miejscu). <literal>id_czcionki</literal> jest u�ywany do wskazywania konkretnej czcionki (zobacz <link linkend="skin-dlabel">dlabel</link> oraz <link linkend="skin-slabel">slabel</link>). Mo�na zdefiniowa� do 25 czcionek. </para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-slabel"/>slabel = X, Y, id_czcionki, "tekst" </literal></term> <listitem><para> Umieszcza statyczn� etykiet� w pozycji <literal>X,Y</literal>. <literal>tekst</literal> jest wy�wietlany za pomoc� czcionek wskazywanych przez <literal>id_czcionki</literal>. Tekst jest po prostu zwyk�ym �a�cuchem znak�w (zmienne <literal>$x</literal> nie dzia�aj�), kt�re musz� by� umieszczone pomi�dzy podw�jnym cudzys�owem (a znak " nie mo�e by� cz蟠ci� tekstu). Etykieta wy�wietlana jest za pomoc� czcionek, na kt�re wskazuje <literal>id_czcionki</literal>. </para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-dlabel"/>dlabel = X, Y, d�ugo倶, wyr�wnanie, id_czcionki, "tekst" </literal></term> <listitem> <para> Umieszcza dynamiczn� etykiet� w pozycji <literal>X,Y</literal>. Etykieta jest nazywana dynamiczn� poniewa� jej tekst jest cyklicznie od�wie�any. Maksymalna d�ugo倶 etykiety okre�la parametr <literal>d�ugo倶</literal> (jej wysoko倶 okre�la wysoko倶 czcionek). Je�li tekst jest szerszy ni� zdefiniowana d�ugo倶, b�dzie on przewijany, w przeciwnym wypadku b�dzie wyr�wnany w miejscu okre�lonym przez warto倶 parametru <literal>wyr�wnanie</literal>: <literal>0</literal> oznacza do prawej, <literal>1</literal> to wy�rodkowanie, <literal>2</literal> to wyr�wnanie do lewej. </para> <para> Wy�wietlany tekst jest okre�lony przez zmienn� <literal>tekst</literal>: musi by� zawarty pomi�dzy podw�jnymi cudzys�owami (a znak " nie mo�e by� cz蟠ci� tekstu). Etykieta wy�wietlana jest za pomoc� czcionek, na kt�re wskazuje parametr <literal>id_czcionki</literal>. Mo�esz u�y� nast�puj�cych zmiennych w tek�cie: </para> <informaltable> <tgroup cols="2"> <thead> <row><entry>Zmienna</entry><entry>Znaczenie</entry></row> </thead> <tbody> <row> <entry>$1</entry> <entry>czas odtwarzania w formacie <emphasis>hh:mm:ss</emphasis></entry> </row> <row> <entry>$2</entry> <entry>czas odtwarzania w formacie <emphasis>mmmm:ss</emphasis></entry> </row> <row> <entry>$3</entry> <entry>czas odtwarzania w formacie (godziny) <emphasis>hh</emphasis></entry> </row> <row> <entry>$4</entry> <entry>czas odtwarzania w formacie (minuty) <emphasis>mm</emphasis></entry> </row> <row> <entry>$5</entry> <entry>czas odtwarzania w formacie (sekundy) <emphasis>ss</emphasis></entry> </row> <row> <entry>$6</entry> <entry>d�ugo倶 filmu w formacie <emphasis>hh:mm:ss</emphasis></entry> </row> <row> <entry>$7</entry> <entry>d�ugo倶 filmu w formacie <emphasis>mmmm:ss</emphasis></entry> </row> <row> <entry>$8</entry> <entry>d�ugo倶 filmu w formacie<emphasis>h:mm:ss</emphasis></entry> </row> <row> <entry>$v</entry> <entry>format g�o�no�ci w %<emphasis>xxx.xx</emphasis></entry> </row> <row> <entry>$V</entry> <entry>format g�o�no�ci <emphasis>xxx.xx</emphasis> format</entry> </row> <row> <entry>$b</entry> <entry>format balansu w %<emphasis>xxx.xx</emphasis></entry> </row> <row> <entry>$B</entry> <entry>format balansu <emphasis>xxx.xx</emphasis></entry> </row> <row> <entry>$$</entry> <entry>znak $</entry> </row> <row> <entry>$a</entry> <entry>oznaczenie zgodne z rodzajem typu pliku audio (nic: <literal>n</literal>, mono: <literal>m</literal>, stereo: <literal>t</literal>)</entry> </row> <row> <entry>$t</entry> <entry>numer �cie�ki (na li�cie odtwarzania)</entry> </row> <row> <entry>$o</entry> <entry>nazwa pliku</entry> </row> <row> <entry>$f</entry> <entry>nazwa pliku pisana ma�ymi literami</entry> </row> <row> <entry>$F</entry> <entry>nazwa pliku pisana wielkimi literami</entry> </row> <row> <entry>$T</entry> <entry>oznaczenie zgodne z rodzajem strumienia (plik: <literal>f</literal>, Video CD: <literal>v</literal>, DVD: <literal>d</literal>, URL: <literal>u</literal>)</entry> </row> <row> <entry>$p</entry> <entry>znak <keycap>p</keycap> (gdy film jest odtwarzany i czcionka ma znak <keycap>p</keycap>)</entry> </row> <row> <entry>$s</entry> <entry>znak <keycap>s</keycap> (gdy film jest zatrzymany i czcionka ma znak <keycap>s</keycap>)</entry> </row> <row> <entry>$e</entry> <entry>znak <keycap>e</keycap> (gdy film jest wstrzymany (pauza) i czcionka ma znak <keycap>e</keycap>) </entry> </row> <row> <entry>$x</entry> <entry>rozdzielczo倶 filmu (szeroko倶)</entry> </row> <row> <entry>$y</entry> <entry>rozdzielczo倶 filmu (wysoko倶)</entry> </row> <row> <entry>$C</entry> <entry>nazwa u�ywanego kodeka</entry> </row> </tbody> </tgroup> </informaltable> </listitem> </varlistentry> </variablelist> <note><para> Zmienne <literal>$a, $T, $p, $s</literal> oraz <literal>$e</literal> zwracaj� znaki, kt�re powinny by� wy�wietlane jako znaki specjalne (na przyk�ad <keycap>e</keycap> jest symbolem pauzy, kt�ra z regu�y wygl�da mniej wi�cej tak ||). Powiniene� mie� czcionk� dla zwyk�ych znak�w oraz osobn� czcionk� dla symboli. Zobacz sekcj� na temat <link linkend="skin-fonts-symbols">symboli</link>, by dowiedzie� si� wi�cej. </para></note> </sect2> <sect2 id="skin-file-subwindow"> <title>Okno ekranu</title> <para> Poni�sze wpisy mog� by� u�yte w bloku '<literal>window = sub</literal>' . . . '<literal>end</literal>' . </para> <variablelist> <varlistentry> <term><literal> <anchor id="skin-sub-base"/>base = obrazek, X, Y, szeroko倶, wysoko倶 </literal></term> <listitem><para> Wy�wietla obrazek w oknie. Okno b�dzie widoczne na ekranie w miejscu oznaczonym przez wsp鶻rz�dne <literal>X</literal>, <literal>Y</literal> (<literal>0,0</literal> to lewy g�rny naro�nik). Mo�esz u�y� <literal>-1</literal> dla �rodka, <literal>-2</literal> dla prawej strony (<literal>X</literal>) i do�u (<literal>Y</literal>). Okno b�dzie mie� wielko倶 obrazka. <literal>szeroko倶</literal> oraz <literal>wysoko倶</literal> oznaczaj� wielko倶 okna; s� one opcjonalne (je�li nie s� okre�lone, okno b�dzie wielko�ci takiej, jak obrazek).</para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-background"/>background = R, G, B </literal></term> <listitem><para> Pozwala ustawi� kolor t�a. Jest to u�yteczne je�li obrazek jest mniejszy ni� okno. <literal>R</literal>, <literal>G</literal> oraz <literal>B</literal> okre�laj� sk�adniki kolor�w czerwonego, zielonego i niebieskiego (ka�dy z nich jest reprezentowany przez liczb� dziesi�tn� w zakresie od 0 do 255).</para></listitem> </varlistentry> </variablelist> </sect2> <sect2 id="skin-file-menu"> <title>Menu sk�rki</title> <para> Jak wspomniano wcze�niej, menu jest wy�wietlane przy u�yciu dw�ch obrazk�w. Zwyk�e obszary menu s� pobierane z obrazka okre�lonego przez element <literal>base</literal>, podczas gdy obszary zaznaczone s� pobierane z obrazka wskazywanego przez element <literal>selected</literal>. Musisz zdefiniowa� pozycj� i rozmiar ka�dego obszaru menu poprzez element menu. </para> <para> Poni�sze wpisy mog� by� u�yte w bloku: '<literal>window = menu</literal>'. . .'<literal>end</literal>' . </para> <variablelist> <varlistentry> <term><literal> <anchor id="skin-menu-base"/>base = obrazek </literal></term> <listitem><para> Obrazek dla zwyk�ych obszar�w menu. </para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-selected"/>selected = obrazek </literal></term> <listitem><para> Obrazek pokazuj�cy w menu wszystkie zaznaczone obszary. </para></listitem> </varlistentry> <varlistentry> <term><literal> <anchor id="skin-menu"/>menu = X, Y, szeroko倶, wysoko倶, sygna� </literal></term> <listitem><para> Definiuje pozycj� i rozmiar obszar�w menu na obrazku przy pomocy <literal>X,Y</literal>. <literal>sygna�</literal> to zdarzenie wygenerowane podczas zwolnienia przycisku myszy nad obszarem. </para></listitem> </varlistentry> </variablelist> </sect2> </sect1> <sect1 id="skin-fonts"> <title>Czcionki</title> <para> Jak wspomniano w sekcji na temat fragment�w sk�rki, czcionka jest definiowana przez obrazek i plik opisuj�cy. Mo�esz umie�ci� znak gdziekolwiek na obrazku, ale miej pewno倶, �e jego pozycja i rozmiar jest podana w�a�ciwie w pliku opisuj�cym. </para> <para> Plik opisuj�cy czcionki (o rozszerzeniu <filename>.fnt</filename>) mo�e posiada� linie komentarzy zaczynaj�ce si� znakiem '<literal>;</literal>'. Plik musi zawiera� linie w postaci: <anchor id="skin-font-image"/> <programlisting>image = <replaceable>obrazek</replaceable></programlisting> Gdzie <literal><replaceable>obrazek</replaceable></literal> jest nazw� pliku graficznego, kt�ry zawiera czcionki (nie musisz dopisywa� jego rozszerzenia). <anchor id="skin-font-char"/> <programlisting>"char" = X, Y, szeroko倶, wysoko倶</programlisting> <literal>X</literal> oraz <literal>Y</literal> okre�laj� pozycj� znaku <literal>char</literal> na obrazku (<literal>0,0</literal> to g�rny lewy naro�nik). <literal>szeroko倶</literal> i <literal>wysoko倶</literal> to rozmiar znaku w pikselach. </para> <para> Przyk�ad: definiujemy znaki A, B, C przy u�yciu pliku <filename>font.png</filename>. <programlisting> ; Mo�e by� "font" zamiast "font.png". image = font.png ; Trzy znaki wystarcz� do tej demonstracji :-) "A" = 0,0, 7,13 "B" = 7,0, 7,13 "C" = 14,0, 7,13 </programlisting> </para> <sect2 id="skin-fonts-symbols"> <title>Znaki specjalne (symbole)</title> <para> Niekt�re znaki maj� specjalne znaczenie, gdy s� zwracane przez pewne zmienne u�ywane w <link linkend="skin-dlabel">dlabel</link>. Znaki te mog� by� wy�wietlane jako symbole w ten spos�b, �e np. podczas odtwarzania strumienia DVD widoczne jest �adne logo zamiast znaku '<literal>d</literal>'. </para> <para> Poni�sza tablica zawiera znaki u�ywane do wy�wietlania symboli (wymagaj� one oddzielnych czcionek). </para> <informaltable> <tgroup cols="2"> <thead> <row><entry>Znak</entry><entry>Symbol</entry></row> </thead> <tbody> <row><entry><keycap>p</keycap></entry><entry>odtwarzanie</entry></row> <row><entry><keycap>s</keycap></entry><entry>stop</entry></row> <row><entry><keycap>e</keycap></entry><entry>pauza</entry></row> <row><entry><keycap>n</keycap></entry><entry>bez d�wi�ku</entry></row> <row><entry><keycap>m</keycap></entry><entry>d�wi�k mono</entry></row> <row><entry><keycap>t</keycap></entry><entry>d�wi�k stereo</entry></row> <row><entry><keycap>f</keycap></entry><entry>strumie� z pliku</entry></row> <row><entry><keycap>v</keycap></entry><entry>strumie� z Video CD</entry></row> <row><entry><keycap>d</keycap></entry><entry>strumie� z DVD</entry></row> <row><entry><keycap>u</keycap></entry><entry>strumie� z URL</entry></row> </tbody> </tgroup> </informaltable> </sect2> </sect1> <sect1 id="skin-gui"> <title>Sygna�y GUI</title> <para> Tutaj znajduj� si� sygna�y, kt�re mog� by� generowane przez przyciski, suwaki i elementy menu. </para> <note><para> Niekt�re sygna�y mog� nie dzia�a� w oczekiwany spos�b (lub nie dzia�a� w og�le). Jak wiadomo, GUI jest jeszcze w fazie rozwoju. </para></note> <variablelist> <title>Kontrola odtwarzania :</title> <varlistentry> <term><emphasis role="bold">evNext</emphasis></term> <listitem><para> Przejd� do nast�pnej pozycji na li�cie odtwarzania. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPause</emphasis></term> <listitem><para> Tworzy prze咳cznik razem z <literal>evPlaySwitchToPause</literal>. Mog� by� u�yte do utworzenia wsp�lnego przycisku dla odtwarzania/pauzy. Oba sygna�y powinny by� powi�zane z przyciskami wy�wietlonymi w tej samej pozycji w oknie. Sygna� wstrzymuje wtedy odtwarzanie i wy�wietlanty jest obrazek dla przycisku <literal>evPlaySwitchToPause</literal> (aby zaznaczy�, �e przycisk ten mo�e by� u�yty do kontynuowania odtwarzania). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPlay</emphasis></term> <listitem><para> Rozpoczyna odtwarzanie. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPlaySwitchToPause</emphasis></term> <listitem><para> Przeciwie�stwo <literal>evPauseSwitchToPlay</literal>. Ten sygna� zaczyna odtwarzanie oraz wy�wietlenie obrazka dla przycisku <literal>evPauseSwitchToPlay</literal> (aby zaznaczy�, �e przycisk ten mo�e by� u�yty ponownie do wstrzymania odtwarzania). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPrev</emphasis></term> <listitem><para> Przejd� do poprzedniej pozycji na li�cie odtwarzania. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evStop</emphasis></term> <listitem><para> Zatrzymuje odtwarzanie. </para></listitem> </varlistentry> </variablelist> <variablelist> <title>Przewijanie:</title> <varlistentry> <term><emphasis role="bold">evBackward10sec</emphasis></term> <listitem><para> Przewija do ty�u o 10 sekund. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evBackward1min</emphasis></term> <listitem><para> Przewija do ty�u o 1 minut�. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evBackward10min</emphasis></term> <listitem><para> Przewija do ty�u o 10 minut. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evForward10sec</emphasis></term> <listitem><para> Przewija do przodu o 10 sekund. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evForward1min</emphasis></term> <listitem><para> Przewija do przodu o 1 minut�. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evForward10min</emphasis></term> <listitem><para> Przewija do przodu o 10 minut.. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evSetMoviePosition</emphasis></term> <listitem><para> Przewija do pozycji (mo�e by� wykorzystane przez suwak; u�yte s� wzgl�dne warto�ci (0-100%) suwaka). </para></listitem> </varlistentry> </variablelist> <variablelist> <title>Kontrola video:</title> <varlistentry> <term><emphasis role="bold">evDoubleSize</emphasis></term> <listitem><para> Ustawia podw�jny rozmiar okna z filmem. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evFullScreen</emphasis></term> <listitem><para> W咳cza/wy咳cza tryb pe�noekranowy. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evNormalSize</emphasis></term> <listitem><para> Ustawia typowy rozmiar okna z filmem. </para></listitem> </varlistentry> </variablelist> <variablelist> <title>Kontrola d�wi�ku:</title> <varlistentry> <term><emphasis role="bold">evDecAudioBufDelay</emphasis></term> <listitem><para> Zmniejsza op鷦nienie bufora d�wi�ku. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evDecBalance</emphasis></term> <listitem><para> Zmniejsza balans. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evDecVolume</emphasis></term> <listitem><para> Zmniejsza g�o�no倶 </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evIncAudioBufDelay</emphasis></term> <listitem><para> Zwi�ksza op鷦nienie bufora d�wi�ku. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evIncBalance</emphasis></term> <listitem><para> Zwi�ksza balans. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evIncVolume</emphasis></term> <listitem><para> Zwi�ksza g�o�no倶. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evMute</emphasis></term> <listitem><para> Wycisza/przywraca d�wi�k. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evSetBalance</emphasis></term> <listitem><para> Ustawia balans (mo�e by� u�ywane przez suwak; u�ywana jest warto倶 wzgl�dna (0-100%)). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evSetVolume</emphasis></term> <listitem><para> Ustawia g�o�no倶 (mo�e by� u�ywane przez suwak; u�ywana jest warto倶 wzgl�dna (0-100%)). </para></listitem> </varlistentry> </variablelist> <variablelist> <title>R鷽ne:</title> <varlistentry> <term><emphasis role="bold">evAbout</emphasis></term> <listitem><para> Otwiera okno "o programie". </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evDropSubtitle</emphasis></term> <listitem><para> Wy咳cza aktualnie u�ywane napisy. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evEqualizer</emphasis></term> <listitem><para> W咳cza/wy咳cza equalizer. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evExit</emphasis></term> <listitem><para> Wy咳cza program. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evIconify</emphasis></term> <listitem><para> Minimalizuje okno. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evLoad</emphasis></term> <listitem><para> Wczytuje plik (poprzez otwarcie okna przegl�darki plik�w, gdzie mo�esz wybra� plik). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evLoadPlay</emphasis></term> <listitem><para> Robi to samo co <literal>evLoad</literal>, ale zaczyna automatycznie odtwarza� zaraz po wyborze pliku. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evLoadSubtitle</emphasis></term> <listitem><para> Wczytuje plik z napisami (z przegl�darki plik�w). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evLoadAudioFile</emphasis></term> <listitem><para> Wczytuje plik d�wi�kowy (z przegl�darki plik�w). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evNone</emphasis></term> <listitem><para> Sygna� pusty - nic nie robi (mo�e za wyj�tkiem wersji z CVS:-)). </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPlayList</emphasis></term> <listitem><para> Otw�rz/zamknij okno listy odtwarzania. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPlayDVD</emphasis></term> <listitem><para> Pr�buje odczyta� p�yt� ze wskazanego czytnika DVD. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPlayVCD</emphasis></term> <listitem><para> Pr�buje odczyta� p�yt� ze wskazanego czytnika CD. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evPreferences</emphasis></term> <listitem><para> Otwiera okno z ustawieniami. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evSetAspect</emphasis></term> <listitem><para> Ustawia proporcje obrazu. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evSetURL</emphasis></term> <listitem><para> Wy�wietla okienko dialogowe URL. </para></listitem> </varlistentry> <varlistentry> <term><emphasis role="bold">evSkinBrowser</emphasis></term> <listitem><para> Otwiera okno przegl�darki sk�rek. </para></listitem> </varlistentry> </variablelist> </sect1> </appendix>