Przegląd odtwarzaczy filmów dla AmigaOS 4

październik 2005

Dla AmigaOS 3.x istnieje sporo odtwarzaczy animacji, czasami lepszych, czasami gorszych. Rywalizacja trwała długo, jednak ostatecznie wykształtowało się trzech liderów AMP, Frogger i MooVid. Warto też wspomnieć o programie Riva, który jest przeznaczony dla Amig z procesorem 68k. Z tej czwórki na placu boju pozostały tylko natywne AMP i Moovid, niestety autor Froggera (Elf) oddał walkowerem walkę o dominację na polu playerów dla AmigaOS 4. Natomiast autor odtwarzacza Riva (Stephen Fellner), postanowił napisać zupełnie nowego, działającego natywnie DvPlayera. Do walki stanął też inny nowy konkurent, znany dotąd głównie w środowisku linuxowym MPlayer.

AmiDog's Movie Player 2

AMP 2 (pobierz) to odtwarzacz autorstwa znanego głównie z tworzenia amigowych emulatorów Mathiasa "AmiDoga" Roslunda. Wersja dla AmigaOS 4 niestety prawie niczym nie różni się od leciwej już wersji WOS-owej. Skutek jest taki, że użyteczność tego programu jest dziś znikoma. Właściwie znakomicie sprawuje się tylko jako odtwarzacz plików MPEG/VCD. Jeśli chodzi o odtwarzanie AVI to możliwości AMPa kończą się na DivX 3, w którym już prawie nikt dziś nie koduje filmów. Player ten ma jednak kilka zalet, którymi wyróżnia się spośród konkurencji, np. absolutnie nie ma dla niego żadnej różnicy czy film wyświetlany jest na ekranie o głębi kolorów 8, 16 czy 32-bit (potrafi także pracować na kościach AGA). Podsumowując - aby AMP mógł dogonić konkurencję Mathias będzie musiał trochę jeszcze nad nim popracować. Przede wszystkim dodać nowe kodeki. Być może jednak autor pójdzie w zupełnie innym kierunku - kiedyś pisał na Amigaworld.net, że pracuje nad playerem dla starych formatów ANIM i YAFA (nie wiadomo jednak, czy ma być to zupełnie nowy program, czy też zwiększone zostaną możliwości AMPa).

Plusy:

Minusy:

MooVid

Systemowy player napisany przez Laszlo Turoka. W przeciwieństwie do AMPa tu od razu widać postęp w porównaniu do poprzednich wersji. Program świetnie radzi sobie ze wszystkimi odmianami DivXów i Xvidów - korzysta z systemowej biblioteki avcodec.library. Niestety jest kapryśny jeśli chodzi ilość bitów ekranu na jakim odtwarzany ma być film. Powiedzmy sobie szczerze - MooVid działa dobrze tylko na ekranach 16-bitowych, w 32-bitach zawiesza się, podobnie czyni w trybach 8-bitowych. Wyjątkiem są filmy MOV, jednak te pokazuje wówczas w trybie "greyscale". Minusem programu jest też na pewno brak GUI pozwalającego edytować preferencje (trzeba posługiwać się parametrami w ikonce lub w CLI/skrypcie) oraz brak jakiejkolwiek dokumentacji. Program po prostu siedzi sobie jako niepozorny pliczek w C i zapewne gdyby nie informacja, że wchodził w skład drugiego uaktualnienia systemu, nie zorientowałbym się szybko, że doszedł mi jakiś nowy player. Natomiast niewątpliwym plusem MooVida jest fakt, że posiada GUI z poręcznym suwaczkiem, zarówno w trybie okienkowym jak i pełnoekranowym (szkoda tylko, że nie można w trakcie odtwarzania zmieniać tego trybu). Filmy w formacie MPEG nie są obsługiwane (wsparcie dla dźwięku MPEG w filmach AVI jednak jest). Podsumowując - program na pewno dużo bardziej "dzisiejszy" od AMPa, ma również kilka wad, ale należy pamiętać, że jest to wersja beta (1.7 - OS4 Native).

Plusy:

Minusy:

MPlayer

MPlayer zdecydowanie lideruje pod względem ilości obsługiwanych formatów. Obsługuje praktycznie wszystkie odmiany DivX oraz Xvid, niestraszne są mu pliki MPEG, czy też filmy zapisane na DVD. Z popularniejszych formatów nie łapie jedynie WMV 9. Program nie ma też najmniejszych problemów z wyświetlaniem napisów do filmów. Radzi sobie z praktycznie wszystkimi formatami napisów (w najnowszej wersji standardowo wyświetlane są one w kolorze białym). Amigowy port, za którym stoi Andrea Palmatč, jest stale rozwijany i z wersji na wersję coraz lepszy. Duże możliwości programu idą niestety w parze z dosyć dużym zapotrzebowaniem na moc procesora, na G4 933MHz bywają chwile kiedy program potrafi zając procesor w ponad 90%. MPlayer doczekał się bardzo ładnego i funkcjonalnego GUI pozwalającego edytować preferencje programu. Niestety sam odtwarzacz jak na razie nie posiada żadnego GUI. Podczas trwania filmu bez względu na to czy jest on puszczany w oknie czy na własnym ekranie, wszystkie operacje możemy wykonywać tylko korzystając z klawiatury (dostępna jest ściągawka z podstawowych klawiszy). MPlayer radzi sobie świetnie na ekranach 16 i 32-bit, natomiast nie potrafi wyświetlać filmu w 8-bitach. Podsumowując - pomimo kilku wad, zdecydowany lider wśród amigowych odtwarzaczy, szczególnie dla ludzi z mocniejszym sprzętem.

Plusy:

Minusy:

DvPlayer

DvPlayer to zupełnie nowy program Stephena Fellnera (autora znakomitej dla 68k Rivy). Podobnie jak MooVid korzysta on ze stale aktualizowanej biblioteki avcodec.library, która bazuje na tych samych kodekach co MPlayer. Dodatkowo możliwości biblioteki mogą być poszerzane zewnętrznymi pluginami umieszczanymi w katalogu libs:avcodecs (ostatnio np. pojawił się dca.codec, dekodujący format DTS z plików MPEG 2). Cechą charakterystyczną DvPlayera jest nowoczesny system skórek, dzięki któremu GUI programu może wyglądać bardzo różnie (skórki mogą być zmieniane "w locie", w trakcie odtwarzania filmu). Dołączony program DvSkinTool wraz z dokumentacją i przykładami pozwala na szybkie stworzenie nowej skórki w oparciu o naszą grafikę w formacie PNG. Skórka nie musi udostępniać wszystkich funkcji - podczas jej tworzenia sami decydujemy, które funkcje będą dostępne w GUI. Wszystkie funkcje znajdziemy zawsze w górnym menu, w którym można dokonać także konfiguracji playera. Oczywiście dostępne są one także spod klawiatury. Na początku 2004 roku Stephen Fellner podpisał NDA i stał się jednym z developerów w Hyperionie pracujących nad nową wersją AmigaOS. Ta ścisła współpraca autora DvPlayera z Hyperionem i stałe testowanie programu przez sporą grupę systemowych betatesterów zaowocowała ogromną stabilnością i szybkością działania. Testowaliśmy program (testowali go także uczestnicy spotkań GGUA) w różnych ekstremalnych warunkach. Na przykład wyjęcie płyty podczas odtwarzania powoduje pojawienie się dobrze znanego nam wszystkim amigowego requestera, a po załadowaniu płyty film rusza dalej - w przypadku MPlayera taka operacja kończy się zupełnym przerwaniem odtwarzania. Również zajętość procesora jest nieporównywalnie mniejsza niż w przypadku MPlayera - co widać podczas odtwarzania wielu filmów na raz, a także podczas odtwarzania DVD. Bez jednostki Altivec i overlaya na 750GX 800 MHz o DVD pod obecną wolną wersją MPlayera można zapomnieć, a DvPlayer z tym samym filmem radzi sobie znakomicie. Odtwarzacz Stephena Fellnera posiada niestety także kilka wad. Przede wszystkim nie obsługuje na razie napisów (można jednak wybrać ścieżkę audio dla DVD), a także kodowanych filmów DVD. Program nie jest jednak ukończony. Oprócz tych dwóch spraw docelowo planowana jest także możliwość integracji DvPlayera z nową wersją przeglądarki IBrowse.

Zanim przejdziemy do plusów i minusów należy wspomnieć o tym, że DvPlayer jako jedyny spośród wszystkich opisywanych programów jest płatny (wersja DEMO ma spore ograniczenia, m.in. odtwarzanie filmu tylko przez 7 minut). Przy czym w skład finalnej wersji AmigaOS 4.0 wejdzie w pełni funkcjonalna wersja SE, odtwarzająca MPEG/VCD/DVD (dla plików AVI uzupełnieniem będzie systemowy MooVid). Fakt, że program jest płatny w polskich warunkach może być uznany za minus, w rzeczywistości jednak rozwiązanie to wydaje się być właściwe (mobilizujące autora do pracy). Opłata dla osób z Zachodu jest bowiem symboliczna (zwłaszcza, że w zamian będą otrzymywać wszystkie kolejne wersje DvPlayera), co potwierdza spore zainteresowanie rejestracją na Zachodnich portalach.

Plusy:

Minusy:

Zajętość procesora

1. Micro Amiga One PowerPC G3 750GX 800MHz bez Alvitec - DivX 640x272, Radeon 7000 bez overlaya

DvPlayer 0.49
MooVid 1.7 - OS4 Native beta
AMP2-BETA (040705)
MPlayer - 1.0pre7.005

2. Amiga One PowerPC G4 7455 933MHz - DivX 640x304, Radeon 7500 bez overlaya

DvPlayer 0.49 + Alvitec
DvPlayer 0.49
MooVid 1.7 - OS4 Native beta
AMP2-BETA (040705)
MPlayer - 1.0pre7.005 + Alvitec

W całym artykule nie wspomnieliśmy nic o działaniu odtwarzaczy w trybie overlay. Tryb ten po trzeciej aktualizacji AmigaOS 4.0 Pre-release jest bowiem dostępny tylko dla kart graficznych Voodoo. Jak tylko ukaże się finalna wersja 4.0 systemu AmigaOS, z nowymi sterownikami dla Radeona zawierającymi obsługę overlaya, ten tekst zostanie uzupełniony.

Aktualizacja - odtwarzacze i overlay

listopad 2007

Wraz z finalną wersja systemu AmigaOS 4, pojawiła się możliwość pracy w trybie overlay na kartach Radeon. Zgodnie ze złożoną obietnicą postaram się opisać jaki miało to wpływ na amigowe odtwarzacze filmów.

AMP

Program całkowicie stoi w rozwoju od dłuższego czasu. Niemniej tryb overlay, który był zaimplementowany w tym odtwarzaczu jeszcze za czasów WOSowych "prawie" działa. Piszę prawie, bo chociaż można swobodnie skalować okno i chociaż spada o około 10 procent zużycie procesora, to jednak najważniejszy czynnik czyli jakość obrazu niestety nie pozwala na oglądanie filmów. W trybie overlay na ekranie obserwujemy coś w rodzaju negatywu, gdzie odcienie czerni są zastąpione zielenią. Program aktualnie nadaje się więc tylko do użytku przy wyłączonym trybie overlay, ale i tu lata zapuszczenia sprawiły, że nie jest on w pełni dostosowany do najnowszej wersji systemu. O ile da się obejrzeć bez zbędnych perturbacji animację, o tyle już po zakończeniu pracy AMPa, system ulega zamrożeniu (u mnie system się nie zamraża - przyp. Szymon).

MooVid

Tu sytuacja jest jeszcze gorsza. Aby zmusić program do działania pod aktualną wersją systemu trzeba podmienić avcodec.library na starszą (ostatnia wersja, z którą program współpracuje to 51.30). Można sobie przygotować następujący skrypt dla IconX:

remlib avcodec.library >NIL:
loadlib scieżka_dostępu/avcodec.library >NIL:
c:moovid >NIL: ahi windowplay dither=overlay
remlib avcodec.library >NIL:

Komendy remlib i loadlib dostępne są na Aminecie.

Overlay działa prawidłowo, jednak program już od 2,5 roku się nie rozwija, miał to być podstawowy odtwarzacz systemowy, tymczasem wydaje się, że po drugim uaktualnieniu deweloperzy postawili na DvPlayera.

MPlayer

Po niezbyt optymistycznym początku tego tekstu, czas przejść do części przyjemniejszej. MPlayer to odtwarzacz, który bardzo dobrze wykorzystał nowe możliwości oferowane przez system. Zajętość procesora, która przy większych plikach divx potrafiła sięgać nawet 90%, dziś przy overlayu spadła do około 30%. To powoduje, że MPlayer już niemal dogonił najbardziej oszczędnego w tym względzie DvPlayera. Przy okazji warto dodać, że program radzi sobie już z plikami WMV 9, jak i z bardzo popularnymi za sprawą serwisu YouTube flv. Zewnętrzne GUI dołączane do poprzednich wersji programu wzbogaciło się o panel kontrolny z suwakiem przewijania oraz innymi opcjami pozwalającymi na zmianę ustawień w czasie trwania filmu, bez konieczności używania klawiatury.

CpuTempDocky MPlayer Amiga

Najnowsza wersja MPlayera to 1.0rc2 z 5 listopada 2007. Swego czasu autor amigowego portu - Andrea Palmatč zapowiedział rozpoczęcie prac nad przeniesieniem na Amigę innego czołowego odtwarzacza ze świata linuxa, programu VLC.

DvPlayer

CpuTempDocky DvPlayer Amiga

W momencie ukazania się finalnej wersji AmigaOS 4.0 swoją premierę miały też dwie wersje DvPlayera - SE wchodząca w skład systemu operacyjnego (m.in. bez możliwości odtwarzania plików avi) oraz pełna dla zarejestrowanych użytkowników tego programu. Obie te wersje doskonale wykorzystują tryb overlay, obraz jest dobrej jakości, a jego wyświetlanie tradycyjnie zabiera bardzo mało mocy procesora. Jednakże ku mojemu zaskoczeniu, przeprowadzając testy na identycznym pliku, na którym testowałem DvPlayera dwa lata temu, zauważyłem, że zużycie procesora o kilka procent wzrosło. Postanowiłem więc, wyłączyć tryb overlay i sprawdzić czy CpuTempDocky wykaże jakąś różnicę, jednak tak się nie stało. Wnioski nasuwają się więc takie, że najnowsza wersja DvPlayera jest nieco bardziej "procesorożerna" od poprzednich, a tryb overlay nie daje już tutaj oszczędności.

Mimo wszystko należy zauważyć, że jest to nadal najbardziej ekonomiczny (oczywiście nie w kwestii finansowej) program do odtwarzania plików wideo na Amidze, którego zalety szczególnie powinni docenić użytkownicy procesorów 603e (jednak i tak procesor będzie za słaby - przyp. Szymon) i 604e. Pomijając sprawę prędkości działania, trzeba też wspomnieć o lepszej obsłudze filmów DVD (otwarcie całej płyty - brak przeskoków pomiędzy VOBami) oraz o dodaniu do DvPlayera obsługi napisów, która jest na naprawdę dobrym poziomie. Możemy wybrać nie tylko font, ale również zdecydować o kolorze czy położeniu tekstów na ekranie. Piętą achillesową DvPlayera było poprawne wyświetlanie napisów w dominującym u nas standardzie cp-1250. Jednak wymiana maili między członkami ekipy eXeca a Stephenem Fellnerem zaowocowała wypracowaniem skryptu dla IconX, który wykorzystując możliwości systemowe (komendę CharsetConvert z katalogu C), konwertuje w locie pliki tekstowe ze standardu Windowsa na ISO-8859-2. Skrypt ten, o ile autor nie rozwiąże tego inaczej, będzie najprawdopodobniej dołączony do archiwum z kolejną wersją DvPlayera. Oto on:

CharsetConvert `requestfile TITLE="Select a Subtitle to load"` FROMCHARSET=windows-1250 T:napisy.txt
scieżka_dostępu/DvPlayer `requestfile TITLE="Select Movie Files to Play"` SUB=t:napisy.txt

Pomimo, że w ostatnim czasie nie pojawiały się nowe wersje tego odtwarzacza, to jednak wiadomo, iż autor nie rezygnuje z jego rozwoju. Kolejna wersja będzie na pewno zawierała obsługę (zobacz obrazek) plików WMV.

Rafał Chyła, Szymon Tomzik