W zasadzie nie ma to żadnego związku z formatem skórki, ale powinieneś wiedzieć, że MPlayer nie posiada wbudowanej skórki, w związku z tym co najmniej jedna skórka musi być zainstalowana, aby była możliwość używania GUI.
Skórki są szukane w następujących katalogach (w kolejności):
$(DATADIR)/Skin/
$(PREFIX)/share/mplayer/Skin/
~/.mplayer/Skin/
Zauważ, że pierwsza ścieżka może się różnić w zależności od sposobu w jaki MPlayer był skonfigurowany (zobacz argumenty --prefix oraz --datadir w skrypcie configure).
Każda skórka jest instalowana w swoim własnym katalogu, w jednym z katalogów wyżej wymienionych, na przykład:
$(PREFIX)/share/mplayer/Skin/default/
Obrazki muszą być w formacie PNG truecolor (24 lub 32 bpp).
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.
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.
W chwili obecnej mamy trzy okna, które można ozdobić: okno główne (main window), okno ekranu (subwindow), panel odtwarzania (playbar), menu skórki (skin menu) (które może być aktywowane prawym przyciskiem myszy).
Okno główne i/lub panel odtwarzania 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: przyciski, potencjometry (suwaki) i etykiety. Dla każdego elementu musisz określić ich pozycję oraz rozmiar.
Przycisk ma trzy stany (wciśnięty, zwolniony, nieaktywny), zatem jego obrazki muszą być podzielone na trzy części w pionie. Zobacz sekcję button, by dowiedzieć się więcej.
Potencjometr (suwak) (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 hpotmeter oraz potmeter, by dowiedzieć się więcej.
Etykiety są nieco specyficzne: Znaki potrzebne do ich narysowania są pobierane z pliku graficznego, a znaki umieszczone w pliku graficznym są opisane przez plik opisu czcionek. 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ą razem zestaw czcionek). Zobacz dlabel oraz slabel, by dowiedzieć się więcej.
Wszystkie obrazki mogą być całkowicie przezroczyste - tak, jak to opisano w sekcji formaty plików graficznych. 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.
Okno ekranu 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 :-)) Uwaga: przezroczystość nie jest tutaj dostępna.
Menu skórki 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ść).
Wpis w menu jest określony przez jego pozycję oraz rozmiar na obrazku (zobacz sekcję menu skórki by dowiedzieć się więcej).
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ą sygnałów (zdarzeń). Dla tych elementów musisz zdefiniować sygnały, które mają być generowane podczas ich kliknięcia.
Potrzebne są następujące pliki podczas tworzenia skórki:
Plik konfiguracyjny o nazwie skin, 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.
Plik graficzny tła w oknie głównym.
Obrazki dla elementów w głównym oknie (zawierające jeden lub więcej plików opisu czcionek, potrzebnych do rysowania etykiet).
Obrazek wyświetlany w oknie ekranu (opcjonalnie)
Dwa obrazki dla menu skórki (potrzebne są tylko wtedy, gdy chcesz tworzyć takie menu).
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 .fnt ).