8.4. Inny sprzęt do wizualizacji

8.4.1. Zr

Jest to sterownik wyświetlania (-vo zr) dla wielu kart służących do przechwytywania/odtwarzania MJPEG (testowane z DC10+ i Buz, powinien także działać dla LML33 oraz DC10). Sterownik koduje ramkę na JPEG i wysyła ją do karty. Do konwersji na JPEG używany i wymagany jest libavcodec. Korzystając ze specjalnego trybu cinerama możesz oglądać filmy w formacie panoramicznym (wide screen), zakładając że masz dwa ekrany i dwie karty MJPEG. W zależności od rozdzielczości i ustawień jakości, sterownik ten może wymagać sporo mocy CPU. Pamiętaj, aby użyć -framedrop, jeżeli Twoja maszyna jest zbyt wolna. Info: Mój AMD K6-2 350MHz jest (z -framedrop) całkiem wystarczający do oglądania materiałów o rozmiarach VCD, oraz przeskalowanych w dół filmów.

Sterownik ten "rozmawia" ze sterownikiem jądra dostępnym na http://mjpeg.sf.net, musisz więc go najpierw uruchomić. Obecność karty MJPEG jest wykrywana automatycznie przez skrypt configure. Jeżeli autodetekcja zawiedzie, wymuś wykrywanie używając

./configure --enable-zr

Wyjście można kontrolować licznymi opcjami. Obszerny opis opcji można znaleźć na stronie man, krótki poprzez wywołanie

mplayer -zrhelp

Rzeczy takie, jak skalowanie i OSD (wyświetlanie na ekranie) nie są obsługiwane przez ten sterownik, ale można je uzyskać poprzez filtry video. Załóżmy, że masz film w rozdzielczości 512x272 i chciałbyś go wyświetlić na pełnym ekranie, używając swojego DC10+. Istnieją trzy główne możliwości - możesz przeskalować film do szerokości 768, 384 lub 192. Ze względu na wydajność i jakość, wybrałbym przeskalowanie filmu do 384x204 używając szybkiego programowego skalowania w trybie bilinear. Polecenie wygląda w ten sposób:

mplayer -vo zr -sws 0 -vf scale=384:204 film.avi

Kadrowania można dokonać filtrem crop albo tym sterownikiem. Załóżmy, że Twój film jest zbyt szeroki, aby go wyświetlić na Twoim Buz i chcesz użyć -zrcrop, aby uczynić film mniej szerokim. Powinieneś użyć takiego polecenia:

mplayer -vo zr -zrcrop 720x320+80+0 benhur.avi

Jeżeli chcesz użyć filtru crop, wykonaj:

mplayer -vo zr -vf crop=720:320:80:0 benhur.avi

Dodatkowe wystąpienia -zrcrop wywołują tryb cinerama. Możesz na przykład rozdzielić obraz na kilka TV lub projektorów, uzyskując w ten sposób większy ekran. Powiedzmy, że masz dwa projektory, lewy podłączony do karty Buz na /dev/video1 a prawy do DC10+ na /dev/video0. Film jest w rozdzielczości 704x288. Załóżmy także, że chcesz, aby obraz z prawego projektora był czarno-biały oraz aby ramki jpeg wyświetlane z lewego projektora były jakości 10. Aby uzyskać taki efekt powinieneś wydać następujące polecenie:

mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \
          -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 \
          film.avi

Jak pewnie zauważyłeś, opcje przed drugim -zrcrop odnoszą się tylko do DC10+, a opcje po drugim -zrcrop odnoszą się do Buz. Ilość kart uczestniczących w cinerama ograniczona jest do czterech, więc możesz zbudować ekran (ścianę video:) 2x2.

Na koniec - ważna uwaga: Nie włączaj ani nie wyłączaj XawTV na urządzeniu odtwarzającym w trakcie odtwarzania - zawiesisz swój komputer. Można natomiast NAJPIERW włączyć XawTV, NASTĘPNIE włączyć MPlayera, poczekać, aż MPlayer zakończy działanie i POTEM wyłączyć XawTV.

8.4.2. Blinkenlights

Ten sterownik zdolny jest do odtwarzanie używając protokołu UDP Blinkenlights (mrugające światła - przyp. tłum.). Jeżeli nie wiesz, czym jest Blinkenlights lub jego następca - Arcade, dowiedz się. Pomimo, że prawdopodobnie jest to najrzadziej używane wyjście video, z pewnością jest najfajniejszym jakie MPlayer ma do zaoferowania. Po prostu pooglądaj kilka dokumentacyjnych filmów Blinkenlights. Na filmie Arcade możesz zobaczyć sterownik wyjściowy Blinkenlights w akcji w 00:07:50.