W artykule tym chciałbym przedstawić praktyczne rozwiązanie,
które niewątpliwie może się przydać każdemu. Mianowicie, ostatnio dostałem
od kumpla zadanie polegające na takim skonfigurowaniu FreeBSD aby posłużył
za funkcjonalny "odtwarzacz DVD", który miałby wyświetlać reklamy
na telebimie przez 24h na dobę (pliki .mpeg i .avi). Pisząc funkcjonalny mam na myśli
taką konfigurację systemu i Xsów, która wymaga od użytkownika tylko
uruchomienie komputera, reszta ma być robiona automatycznie, czyli automatyczne
logowanie, automatyczne odpalenie Xsów oraz automatyczne odpalenie odtwarzacza
z playlistą i pętlą (ciągłe powtarzanie playlisty).
Menedżer okien i odtwarzacz.
Nasz przykład opiera się na użytkowniku root. Z góry zakładam,
że mamy już zainstalowane Xsy i poprawnie skonfigurowaną kartę graficzną
oraz monitor. Teraz przystąpimy do zainstalowania menedżera okien. Ja
preferuje WindowMakera i FluxBoxa (są dość małe i szybkie, do
tego zastosowania zupełnie wystarczą). W przykładzie zainstalujemy fluxbox-0.1.14_2:
# cd /usr/ports/x11-wm/fluxbox
# make install
Instalujemy również odtwarzacz. Rozsądnym posunięciem będzie
zainstalowanie MPlayera. Wraz z nim powinny się również zainstalować
różne kodeki.
# cd /usr/ports/multimedia/mplayer
# make install
Teraz skonfigurujemy automatyczne uruchamianie naszego
odtwarzacza wraz z menedżerem okien fluxbox. Nasz MPlayer będzie:
- odtwarzał filmy z playlisty, która będzie zapisana w pliku lista (w pliku
tym podajemy ścieżki do naszych plików filmowych),
- uruchamiał się w trybie pełnoekranowym (/root/.mplayer/config),
- nasza playlista będzie nieskończenie powtarzana (-loop 0).
Edytujemy plik .xinitrc, powinien wyglądać tak jak
poniżej:
# vi /root/.xinitrc
mplayer -loop 0 -playlist lista &
fluxbox |
Plik /root/.mplayer/config powinien zawierać poniższe
opcje:
Teraz dopisujemy do skryptów startowych naszej powłoki
uruchamianie Xsów. W tym celu edytujemy plik /root/.cshrc i na końcu
pliku wpisujemy:
I już w tym momencie po wylogowaniu i ponownym zalogowaniu na
konto root powinniśmy spowodować automatyczne uruchomienie się Xsów wraz z
odtwarzaczem MPlayer, który powinien zacząć odtwarzać filmy wymienione w
pliku lista.
Automatyczne logowanie do systemu.
Spróbujemy skonfigurować nasz system tak aby automatycznie
zalogował się na konto root po uruchomieniu komputera bez konieczności
wpisywania loginu i hasła (wkońcu oto nam właśnie w tym przykładzie
chodzi).
Zacznijmy od edycji pliku /etc/ttys i zamieńmy linijkę
ttyv0 "/usr/libexec/getty Pc" cons25 on secure |
na taki wpis
ttyv0 "/usr/libexec/getty autologin" cons25 on secure |
Następnie w pliku /etc/gettytab sprawdzamy czy mamy
poniższą linijkę, jeżeli nie to dodajemy ją
autologin|al.9600: \
:al=root:tc=std.9600: |
Zapiszmy zmiany w plikach i zrestartujmy komputer. Jeżeli po
uruchomieniu system automatycznie nas zaloguje na roota i automatycznie uruchomi
okna to jest już duży sukces. Pozostaje nam tylko podłączyć telewizor (lub
telebim).
Jeżeli chcemy zalogować się na innego usera niż root wystarczy zmienić nazwę
usera w pliku, którego wycinek jest powyżej (al=root zmnień np. na al=arti).
Telewizor i TV-OUT w karcie graficznej.
Aby powyższy efekt osiągnąć na telewizorze musimy posiadać
odpowiedni kabel, który połączy nam telewizor z naszą kartą graficzną
(nasza konfiguracja opiera się na kartach NVIDIA GeForce - działa bez
problemu). Aby poprawnie skonfigurować Xsy do pracy z telewizorem niezbędne będzie
zainstalowanie sterowników nvidii z portów.
# cd /usr/ports/x11/nvidia-driver
# make install
Również nasze jądro wymaga dodatkowych opcji. Jeżeli ich
jeszcze nie mamy, dodajemy je i kompilujemy jądro.
options USER_LDT
options SYSVSHM |
Teraz edytujemy plik /boot/loader.conf i dopisujemy
opcje odpowiedzialne za ładowanie sterowników nvidii przy każdym starcie
systemu.
# vi /boot/loader.conf
agp_load="YES"
linux_load="YES"
nvidia_load="YES" |
Pozostaje teraz tylko edycja naszego configa od Xsów i
dopisanie odpowiednich sekcji dotyczących obsługi naszego telewizora.
# vi /usr/X11R6/etc/X11/XFree86Config
Section "Module"
Load "bitmap"
Load "extmod"
Load "dbe"
Load "type1"
Load "glx"
Load "freetype"
EndSectionSection "Monitor"
Identifier
"telewizor"
HorixSync 30 - 50
VertRefresh 60
EndSection
Section "Screen"
Identifier "screen_tv"
Device
"NVIDIA"
Monitor
"telewizor"
DefaultPath 16
Option "TVStandard" "PAL-B"
Option "ConnectedMonitor" "TV"
SubSection "Dispaly"
Depth
16
Modes
"800x600" "640x480"
ViewPort
0 0
EndSubSection
EndSection
Section "Device"
Identifier "NVIDIA"
Driver "nvidia"
Option "NvAgp" "2"
EndSection
|
Aby nasze Xsy uruchamiały się od razu na telewizorze a nie
na monitorze zmieniamy w pliku /root/.cshrc wpis startx na
startx -- :1 -screen screen_tv |
Restartujemy teraz komputer i mamy (tak jak wcześniej zakładałem)
w pełni funkcjonalne narzędzie pozwalające na ciągłe wyświetlanie plików
filmowych bez jakiej kolwiek ingerencji użytkownika (tylko uruchamiamy
komputer). Doskonale nadaje się do wyświetlania reklam albo do puszczania
teledysków.
Życzę milej zabawy.
Podziękowania.
Chciałbym serdecznie podziękować Oleczkowi z www.bsdguru.org
za pomoc w rozwiązywaniu powyższych problemów.
Autor: Artur Kulda
arti(at)bsd4u.org
Powyższy artykuł został udostępniony na zasadach Licencji BSD |
Re: Telewizor, automatyczne logowanie do Dodane przez arti w dniu - 2003-11-19 15:38:52 | Informacje nadesłane od użytkownika "broch" cytat: "Plik /root/.mplayer/config powinien zawierać poniższe opcje: vo=x11" vo=x11 <- to jest akceleracja software'owa jeśli instalujesz sterowniki nvidii to linia powinna wyglądać: vo=xv <- akceleracja hardware'owa Ponieważ piszesz o konfiguracji kernel, może warto wspomnieć o opcjach sysctl: hw.nvidia.registry.EnableAGPFW=1 hw.nvidia.registry.EnableVia4x=1 <- dla płyty VIA hw.nvidia.registry.EnableAGPSBA=1 <- może spowodować niestabilność systemu, ale ja nie miałem nigdy żadnych kłopotów Jeśli ktoś będzie chciał zrobić "screenshot" z filmem w okienku, wówczas należy zwolnić mplayer: czasowo należy zamienić: vo=xv na vo=x11 Mała uwaga: radzę zajrzeć na koniec pliku ~/.mplayer/config... bez tego mplayer nie będzie działał (cytat z autora: i_did_not_RTFM_carefully_enough...) Generalnie, artykuł jest bardzo interesujący"
|
Tylko zarejestrowani użytkownicy mogą pisać komentarze. Prosze zaloguj się i dodaj komentarz. Powered by AkoComment! |