2012-12-10

Raspberry PI + XBMC

Po uruchomieniu jedną z pierwszych rzeczy była próba instalacji XBMC.


Źródło: xbmc.org

Jak już wspomniałem TUTAJ- jako system można po prostu wykorzystać Xbian i mieć wszystko gotowe.
Po instalacji (defaultowy user xbian:raspberry) odpala się xbian-config (podobny do rasp-config), dzięki któremu łatwo i szybko możemy skonfigurować podstawowe elementy. Co ciekawe od razu zaimplementowana jest biblioteka libcec, która umożliwia obsługę xbmc za pomocą standardowego pilota do TV (obsługa przez hdmi)

W razie czego szybka weryfikacja:
# cec-client -l
Found devices: 1
device:              1
com port:            RPI
firmware version:    1
type:                Raspberry Pi
i możemy używać xbmc bez użycia klawiatury czy myszy.

Ale przetestowałem to również na Raspianie i muszę powiedzieć że też się da.

Przyda się kilka dodatkowych bibliotek 
sudo apt-get install libplist1 libmicrohttpd10 libtinyxml2.6.2 libyajl2 libssh-4 liblzo2-2 libfribidi0 liblockdev1 
Następnie ściągamy paczki przygotowane przez niejakiego Christopha - autora strony: 


Przy okazji wspomnę - że można pójść łatwiejszą drogą - udostępniony tu jest bowiem obraz iso gotowego systemu z zainstalowanymi już paczkami. Dobra robota :)
Co ważne jest tu również wspomniana wyżej paczka libcec, która instaluje się i działa bez problemu.

Instalując z paczek (przynajmniej w aktualnej wersji) jest problem z uruchomieniem xbmc. Brakuje bowiem biblioteki:
ldd /usr/lib/xbmc/xbmc.bin
(..)
libtag.so.1 => not found
(..)
mimo zainstalowanej paczki taglib

po weryfikacji paczki
dpkg -L taglib
widać że biblioteki są zainstalowane w /usr/local/lib

Więc albo dodajemy ten katalog jako źródło bibliotek albo (mniej profesjonalnie)
for i in `ls`; do sudo ln -s /usr/local/lib/$i /usr/lib/$i; done
i na koniec
cd /usr/lib
ln -s libtag.so.1.12.0 libtag.so.1
Pamiętamy, że uruchamiamy aplikację przez :
sudo /usr/lib/xbmc/xbmc.bin
UPDATE:
Po wszystkim na stronie autora znalazłem również rozwiązanie problemu. W sumie niemal takie same LINK

Na instalację XBMC jest też inny sposób - opisany TUTAJ - ale jeszcze go nie testowałem.

Oczywiście należy również dobrać odpowiednio ilość pamięci dla GPU - wg zaleceń należy przydzielić 128 MB - czyli zostanie 384 MB pamięci RAM do wykorzystania na system. Można to ustawić np przez raspi-config.

Tak więc wszystko działa ok - jednakże trzeba przyznać, że wolniej niż np na Xbianie.

Jeszcze tylko dodam, że (niezależnie od dystrybucji) warto w xbmc skonfigurować repozytorium fusion. Więcej szczegółów tutaj:
http://www.xbmchub.com/blog/2012/04/24/fusion-easy-addon-installation-for-xbmc/

Źródło: twimg.com


YES! I'm so gooood ;)

6 komentarzy:

  1. Hej, bardzo fajny blog :)
    Może masz pomysł czemu mi CEC nie działa?
    Próbowałem na dwóch telewizorach, dwóch różnych kablach, dwóch systemach (xbian i raspbian+xbmc) :(

    OdpowiedzUsuń
    Odpowiedzi
    1. Cześć,

      po pierwsze (znów) przepraszam za czas odpowiedzi. Od teraz spróbuję się poprawić.

      po drugie - dziękuję za opinię :)

      jeśli chodzi o CEC to ciężko stwierdzić...
      daj znać czy widać coś w logach albo dmesg?

      dmesg | grep -i cec
      cat /var/log/syslog | grep -i cec

      a także co pokazuje komenda
      cec-client -l
      ?

      jest to bardzo dziwne jeśli spróbowałeś wymienić wszystkie komponenty. Słyszałem o takim przypadku ale był to wadliwy kabel HDMI - ale jak rozumiem o tym kablu piszesz apropos swoich prób ("dwóch różnych kablach")...

      jeszcze zostaje do spróbowania system Raspbmc ale na Xbian wszystko powinno działać poprawnie.

      pozdrawiam

      Usuń
  2. cec-client -l daje:

    Found devices: 1

    device: 1
    com port: RPI
    firmware version: 1
    type: Raspberry Pi



    dmesg | grep -i cec
    cat /var/log/syslog | grep -i cec
    Nie znajduje nic...
    Całego sysloga to raczej nie będę wklejał, ale zaraz sam go dokładniej przejrzę :)

    Tak w ogóle to podłączyłem już odbiornik ir (tsop...) wg. Twojego wpisu, więc problem niedziałającego cec udało się ominąć, ale nadal mnie to ciekawi...

    Jeden telewizor (samsung UE32EH5020) podobno nie ma cec, ale drugi (lg 22LH2000) wydaje mi się, że ma (smplink). Tyle tylko, że czytałem, że na lg jest problem z działaniem...

    PS. Ja też przepraszam, że dopiero odpowiadam, ale jak zawsze jak coś ważnego to zasypie mnie jakimiś mało ważnymi mailami i zanim się dogrzebię to trochę się schodzi... :D

    OdpowiedzUsuń
  3. No nie musisz przepraszać :)
    Dobrze, że się udało z odbiornikiem.

    Ale faktycznie wygląda to jak problem ze strony TV.

    Jeszcze spróbowałbym wykonać komendę cec-client bez parametru. Tam nieraz można wyczytać czy jest komunikacja.

    Pozdrawiam

    OdpowiedzUsuń
  4. witam serdecznie, to już drugi manual, w którym jest odniesienie do linka http://selfprogramming.bplaced.net/?page=downloads. Ten link jednak nie działa, w związku z czym prosiłabym o pomoc. Zainstalowałam gotowy xbmc na raspbianie z http://www.memetic.org/pre-compiled-xbmc-for-raspbian/ jednak nie działa cec.

    Z góry dziękuję za sugeste
    Pozdrawiam

    OdpowiedzUsuń
    Odpowiedzi
    1. Przy czym zainstalowałam libcec z githuba

      sudo apt-get install udev liblockdev1 autoconf automake libtool gcc liblockdev1-dev git
      git clone git://github.com/Pulse-Eight/libcec.git
      cd libcec
      ./bootstrap
      ./configure --enable-rpi --with-rpi-include-path=/opt/vc/include --with-rpi-lib-path=/opt/vc/lib --libdir=/usr/lib/arm-linux-gnueabihf --includedir=/usr/include --bindir=/usr/bin
      make
      sudo make install

      Usuń