Sunday 12 March 2017

HTPC - KODI aneb kterak si postavit multimediální centrum, které přehraje všechno

Kolik času jsem strávil na Alze, Amazonu, Ebayi a jinde hledajíc DVD a později Blu-Ray přehrávač, jenž by mimo tato fyzická média přehrál i jiné "obskurní" formáty videí, která jsem si za svůj internetový život nasyslil. A protože poslední dobou se čím dál tím více nechávám strhnout touto moderní vlnou fyzičnosti (DVDčka a Blu-Raye kupujeme po hrstech), bylo nalezení ideálního přehrávače "všeho" stále aktuálnější. Na tzv. stream videa typu Amazon, Hulu, Vudu, Netflix a já nevím jak se všechny ty paznehty jmenují, házím z vysoka bobek, protože dodnes tyto šunky nenabízí stažení filmu v nějakém rozumném formátu, jenž je přehratelný také jinde, než na nějakém dedikovaném zařízení, které ten či onen poskytovatel nabízí. A ne, čumět na filmy přes český internet opravdu nebudu. Kdyby mi těsně před koncem nějakého dobrého snímku kleklo připojení, rozsekal bych vzteky televizi, případně monitor a se zuřivostí pitbulla bych ze zdi vyrval onen nebohý kabel, který by za nic určitě nemohl.

Hledání a zkoumání bylo dlouhé. Ale přineslo své ovoce!

LC-1350mi - Mini ITX

PLUS

Kodi

Krabička o velikosti 65 x 220 x 210 mm, Mini-ITX deska, Intel procesor s nízkou spotřebou, pasivní chlazení - zapnete a neslyšíte vůbec nic! Pokud samozřejmě nemáte v mechanice nějaký disk. ;)

Největším oříškem bylo Kodi (dříve XBMC), resp. multimediální software, který by byl nenáročný a zároveň by přehrál všechno. Dlouho jsem laboroval s verzí Openelec, což je v podstatě samotný operační systém navržený tak, aby na něm co nejefektivněji běželo zmiňované Kodi. Pokud uživatel nepotřebuje DVD, Blu-Ray mechaniku, pak by byla Openelec jasná volba. Nicméně vývojáři Openelecu (a svým způsobem i sami vývojáři Kodi) jedou směrem pryč od fyzických médií, takže přehrávání disků je většinou jedno velké peklo. Verze dostupné uživatelům nabízí jakýsi pošramocený přehrávač, který spoustu DVDček sice přehraje, ale po několika kapitolách přehrávaní spadne a můj ticket na Openelec fóru visí už přes rok bez známky reakce. Proto jsem Openelec opustil a vydal se cestou tzv. "nočních" verzí (nightly builds) programu Kodi. A tady jsem patrně našel svatý grál!


Krok 1. - Mint Linux

Někde jsem četl, že linuxí distribuce na bázi Debianu nejsou pro Kodi to nejlepší, ale z vlastní zkušenosti mohu potvrdit, že jsem žádné zápory zatím nenašel. Mint linux je nenáročný operační systém na bázi Ubuntu, resp. Debianu. Instalace je poměrně jednoduchá, viz odkaz výše. Předpoklad je samozřejmě nějaký ten hardware, ale to je v podstatě na uvážení uživatele. Já mám výše zmíněný case LC-1350mi - Mini ITX, základní deska s integrovaným procesorem AsRock N3150-ITX, 4GB RAM, Blu-Ray mechanika Panasonic Matshita BD-UJ160, pevný disk Faytech SSD SATA 3Gb/s 64 GB a externí HDD 3TB.


Krok 2. - Noční vývojářská verze Kodi

Následující kroky jsem několikrát za poslední týdny vyzkoušel a vždy fungovaly, nicméně je dosti pravděpodobné, že se architektura, resp. software časem změní a fungovat to nebude. Pokud byste chtěli dle tohoto návodu Kodi instalovat a nešlo vám to, dejte vědět. Ještě než spustíme "to černé cosi" (příkazový řádek), je třeba z repositáře nainstalovat program Git.

Po úspěšné instalaci Gitu můžeme otevřít terminál a začít házet příkazy! :)

Stáhneme aktuální balík XBMC z gitu do složky kodi:
git clone git://github.com/xbmc/xbmc.git kodi

Přidáme XMBC repositář:
sudo add-apt-repository ppa:team-xbmc/xbmc-nightly
a aktualizujeme
sudo apt-get update

Nainstalujeme balíčky potřebné ke kompilaci Kodi:
sudo apt-get build-dep kodi

Vlezeme do složky kodi, vytvoříme adresář pro výstupní instalaci a zároveň do něj skočíme:
cd kodi && mkdir kodi-build && cd kodi-build

Spustíme kompilaci:
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
cmake --build . -- VERBOSE=1
Tyto dva příkazy budou docela dlouho trvat, takže trpělivost!

Až bude hotovo, můžeme vyzkoušet, zda byla kompilace úspěšná:
./kodi.bin
Pokud se vám Kodi spustilo, jste na dobré cestě. ;)

Dokončete instalaci:
sudo make install

Gratuluji, máte nyní multimediální zařízení, které přehraje 99% video formátů!


Krok 3. - Zprovoznění přehrávání Blu-Ray disků

Blu-Ray je vůbec taková zajímavá kapitola. Formát Blu-Ray patří pod značku Sony a přehrávání pod linuxem není oficiálně podporováno. V některých zemích může jít dokonce o porušení licenčních ujednání, resp. o porušení zákona. Proto není přehrávání Blu-Raye na linuxích distribucích předinstalováno a uživatel se s tím musí trochu poprat. Pro Kodi se použije knihovna z programu MakeMKV. Zde je postup:

Jste-li stále v terminálu ve složce kodi, tak tam klidně zůstaňte. ;)
Stáhněte balíčky potřebné pro MakeMKV:
wget http://www.makemkv.com/download/makemkv-bin-1.10.4.tar.gz
wget http://www.makemkv.com/download/makemkv-oss-1.10.4.tar.gz
Rozbalte je:
tar -xvf makemkv-bin-1.10.4.tar.gz
tar -xvf makemkv-oss-1.10.4.tar.gz

Stáhněte potřebné balíčky pro kompilaci:
sudo apt-get install build-essential pkg-config libc6-dev libssl-dev libexpat1-dev libavcodec-dev libgl1-mesa-dev libqt4-dev

Vlezte do makemkv-oss-1.10.4 adresáře a zkompilujte:
cd makemkv-oss-1.10.4
./configure
make
sudo make install 

Nyní do adresáře makemkv-bin-1.10.4:
make
Následuje spousta povídání o tom, že souhlasíte a nebudete mít problém s tím, až vám zamaskované komando vletí do bytu za účelem konfiskace nebezpečného zařízení s linuxem, který přehrává Blu-Raye. Na konci povídání stiskněte q a potom napište yes.
Dokončete instalaci:
sudo make install

Nyní vytvoříme odkazy na knihovny, které umožní přehrávání Blu-Raye.
Odinstalujte knihovnu libaacs0:
sudo apt-get remove libaacs0
Vytvořte symbolické odkazy:
cd /usr/lib
sudo ln -s libmmbd.so.0 libaacs.so.0
sudo ln -s libmmbd.so.0 libbdplus.so.0

Gratuluji! Váš linux nyní umí přehrávat Blu-Ray filmy! :)

Nyní ještě  může přijít na řadu automatické spuštění Kodi po zapnutí počítače, ale to už jsou uživatelské libůstky, které si může každý nastavit, jak chce.

Použité zdroje:

https://kodi.tv
https://github.com/xbmc/xbmc
http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224
http://www.makemkv.com/forum2/viewtopic.php?f=3&t=7009