HTPC Część 3 – Instalacja XBMC
W trzeciej części przechodzimy do sedna budowania domowego centrum rozrywki. Xbmc umożliwi nam oglądanie filmów, słuchanie muzyki czy przeglądanie zasobów youtube’a.
Cel: Instalacja xbmc, konfiguracja karty graficznej i sterowników do pilota
Wymagania:
1. Laptop z wifi
1. Instalacja xbmc
Łączymy się do sieci wifi skonfigurowanej w poprzedniej części. Następnie nawiązujemy połączenie ssh do naszego serwera. Jeśli używamy linuksowego systemu operacyjnego wystarczy uruchomić konsolę i wydać polecenie:
ssh root@10.50.100.1
Do połączenie ssh z poziomu systemu Windows będzie potrzebny dodatkowy program np.: putty.
Ok, dodajemy do pliku /etc/apt/sources.list repozytoria debian multimedia, w których znajdują się paczki z xbmc.
deb http://www.deb-multimedia.org squeeze main non-free
Przy okazji dodajmy opcję „contrib” oraz „non-free” do pozostałych repozytoriów – będą konieczne przy instalacji sterowników do karty graficznej. Cały plik powinien prezentować się następująco:
deb http://ftp.pl.debian.org/debian/ squeeze main contrib non-free deb-src http://ftp.pl.debian.org/debian/ squeeze main contrib non-free deb http://security.debian.org/ squeeze/updates main contrib non-free deb-src http://security.debian.org/ squeeze/updates main contrib non-free deb http://www.deb-multimedia.org squeeze main non-free
Aktualizujemy informacje o pakietach:
root@htpc1:~# apt-get update
Polecenie zgłosi błąd ponieważ nie mamy zainstalowanego klucza repozytoriów – musimy go dodać:
root@htpc1:~# apt-get install deb-multimedia-keyring
Potwierdzamy instalację i ponownie aktualizujemy listę pakietów:
root@htpc1:~# apt-get update
Instalujemy właściwe pakiety:
root@htpc1:~# apt-get install xbmc-standalone xinit
Następnie instalujemy paczki ze sterownikami:
root@htpc1:~# apt-get install nvidia-kernel-2.6-vserver-amd64 nvidia-vdpau-driver nvidia-glx nvidia-kernel-dkms
Od razu edytujemy/tworzymy plik /etc/X11/xorg.conf z następującą zawartością:
Section "Files" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" HorizSync 28.0 - 33.0 VertRefresh 43.0 - 72.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "TwinView" "1" #Option "TwinViewXineramaInfoOrder" "CRT-0" Option "TwinViewXineramaInfoOrder" "DFP-0" Option "metamodes" "CRT: nvidia-auto-select +0+0, DFP: nvidia-auto-select +0+0" SubSection "Display" Depth 24 EndSubSection EndSection Section "Module" Load "glx" EndSection
Dodajemy użytkownika systemowego xbmc:
root@htpc1:~# useradd -r xbmc
Tworzymy katalog domowy i nadajemy uprawnienia:
root@htpc1:~# mkdir /home/xbmc && chown xbmc:xbmc /home/xbmc && chmod 750 /home/xbmc
W katalogu /home/xbmc tworzymy plik „.profile”:
if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi ## uruchomienie xow /usr/bin/startx -- exit
Tworzymy kolejny plik w katalogu użytkownika xbmc – „.xinitrc”:
#!/bin/bash exec /usr/bin/xbmc --standalone
Nadajemy plikowi uprawnienia z możliwością wykonania:
root@htpc1:~# chmod 755 /home/xbmc/.xinitrc
Teraz wystarczy już tylko dodać wpisy do pliku /etc/inittab aby zapewnić uruchomienie xbmc przy starcie. Dodatkowo jeśli xbmc „wyłoży się” zostanie automatycznie uruchomiony ponownie. Do tego celu potrzebujemy jeszcze jeden pakiet – mingetty. Standardowo, instalujemy go poleceniem:
root@htpc1:~# apt-get install mingetty
Na koniec edytujemy plik /etc/inittab, szukamy linii:
1:2345:respawn:/sbin/getty 38400 tty1
Wstawiamy przed nią znak „#” i dodajemy nową linię:
1:2345:respawn:/sbin/mingetty --autologin xbmc tty1
Na koniec restartujemy nasz serwer. Po ponownym uruchomieniu przełączamy TV na wejście HDMI. Xbmc powinno zostać uruchomione.
Jeśli wykorzystujemy kabel hdmi do odtwarzania dźwięku na głośnikach telewizora to konieczne jest wyłączenie wyciszenia na wyjściu S/PDIF – bez tego dźwięk nie będzie działać. Do tego celu będziemy potrzebować programu alsamixer.
root@htpc1:~# apt-get install alsa-utils
Uruchamiamy program alsamixer:
root@htpc1:~# alsamixer
Ustawiamy jak na zrzucie ekranu. Sterujemy strzałkami klawiatury. Wyciszenie włączamy/wyłączamy klawiszem „m”.
2. Sterowniki do pilota oraz bluetooth.
Pobieramy paczkę ze strony:
„http://code.google.com/p/zester/downloads/detail?name=asus-at3iont-i-deluxe-dkms_1.0.1_all.deb&can=2&q=” lub z mojego serwera: http://blog.ezrodlo.pl/archeo/asus-at3iont-i-deluxe-dkms_1.0.1_all.deb
Przed instalacją WARTO sprawdzić sumę kontrolną poleceniem shasum i md5sum. Polecenia powinny zwrócić następujące wyniki:
SHASUM: 82b9854a8dfd9985bc9e74b0615c41180f19ac0f asus-at3iont-i-deluxe-dkms_1.0.1_all.deb MD5SUM: 9c3646405fb4758e2eba19220e138eba asus-at3iont-i-deluxe-dkms_1.0.1_all.deb
Przed instalacją instalujemy nagłówki dla aktualnego jądra linuksa:
root@htpc1:~# apt-get install linux-headers-2.6-vserver-amd64
Instalujemy paczkę ze sterownikami. Wchodzimy do katalogu gdzie została zapisana i wydajemy polecenie:
root@htpc1:~# dpkg -i asus-at3iont-i-deluxe-dkms_1.0.1_all.deb
Jeśli wszystko pójdzie ok, powinny zostać zbudowane moduły ath3k.ko i hid-philips-asus.ko.
Dodatkowo, po każdej aktualizacji jądra linuksa moduły te zostaną automatycznie przebudowane.
Do pliku /etc/rc.local (przed linią „exit 0″ ) dodajemy:
sh /usr/src/asus-at3iont-i-deluxe-1.0.1/drivers/hid-philips-asus/load-module.sh
Pozostaje jeszcze dopracować mapowania klawiszy pilota. Edytujemy plik /usr/src/asus-at3iont-i-deluxe-1.0.1/drivers/hid-philips-asus/mappings.h, usuwamy zawartość i wklejamy:
/*************************************************** * Button mappings * * Change the key values according to linux/input.h * and then rebuild the driver ***************************************************/ /* Power button */ #define BUTTON_POWER KEY_MUTE /* Play, rewind, forward buttons */ #define BUTTON_REWIND KEY_REWIND #define BUTTON_PLAYPAUSE KEY_PLAYPAUSE #define BUTTON_FORWARD KEY_FASTFORWARD /* Previous, stop, next buttons */ #define BUTTON_PREVIOUS KEY_PREVIOUS #define BUTTON_STOP KEY_STOP #define BUTTON_NEXT KEY_NEXT /* Volume buttons */ #define BUTTON_MUTE KEY_MUTE #define BUTTON_VOLUMEUP KEY_VOLUMEUP #define BUTTON_VOLUMEDOWN KEY_VOLUMEDOWN /* Arrow buttons */ #define BUTTON_RIGHT KEY_RIGHT #define BUTTON_LEFT KEY_LEFT #define BUTTON_DOWN KEY_DOWN #define BUTTON_UP KEY_UP /* OK button */ /*#define BUTTON_OK KEY_OK */ #define BUTTON_OK KEY_ENTER /* Back button */ #define BUTTON_BACK KEY_BACKSPACE /* Special buttons from left to right counter clockwise*/ #define BUTTON_HOME KEY_ESC #define BUTTON_WINDOWS KEY_I #define BUTTON_RADIO KEY_O #define BUTTON_MUSIC KEY_C #define BUTTON_DTS KEY_SUBTITLE #define BUTTON_TRANQUIL KEY_INFO #define BUTTON_FULLSCREEN KEY_ZOOM /* Middle special button */ #define BUTTON_HOMETHEATER KEY_MENU
Jak widzicie zastąpiłem BUTTON_POWER funkcją KEY_MUTE. Korzystając z pilota łatwo wyłączyć cały serwer. W moim przypadku jest to zbędne ponieważ serwer działa w trybie 24/7.
Na koniec musimy jeszcze raz przebudować moduły:
root@htpc1:~# dpkg-reconfigure asus-at3iont-i-deluxe-dkms
Restartujemy serwer po raz ostatni. Po ponownym uruchomieniu klawisze pilota powinny działać poprawnie.
Skoro pilot działa poprawnie to czytelnikowi pozostawiam „wyklikanie” w ustawieniach xbmc ustawienia wyjścia audio.
Powiązane wpisy:
W: debian, HTPC · Opisany jako: debian instalacja xbmc, debian xbmc, htpc debian, htpc linux, instalacja xbmc, nvidia
na 6 kwietnia, 2012 w 15:12
Stały link
Dla XBMC 11 zmieniła się troche klawiszologia (może zmieniła się wcześniej ale dopiero po przesiadce na 11’ke ją odczułem). Proponuję poniższa sekcje klawiszy specjalnych:
#define BUTTON_HOME KEY_ESC
#define BUTTON_WINDOWS KEY_I
#define BUTTON_RADIO KEY_M
#define BUTTON_MUSIC KEY_C
#define BUTTON_DTS KEY_L
#define BUTTON_TRANQUIL KEY_O
#define BUTTON_FULLSCREEN KEY_Z
na 6 kwietnia, 2012 w 17:28
Stały link
Hej, jeszcze nie aktualizowałem xbmc i szczerze powiedziawszy nie pamiętam kiedy ostatnio raz używałem :)
Dzięki za informacje, przyda się przy aktualizacji :)
na 6 sierpnia, 2013 w 01:26
Stały link
brakuje jeszcze:
adduser xbmc video
adduser xbmc audio
na 10 sierpnia, 2013 w 13:46
Stały link
i jeszcze do dekompresji mp3:
aptitude install libmad0