Synology jako databáze pro Kodi

Tuto možnost pravděpodobně nevyužijete, pokud používáte XBMC/Kodi na jednom počítači, ale jsou dvě místa, kde se taková možnost hodí. Jednou je, když máte v rodině víc počítačů, na kterém Kodi používáte – potom máte synchronizované filmy a seriály, které už máte shlédnuté a také se vám na jednom místě ukládají náhledy. A potom mi přijde smysluplné, když máte Kodi na malině nebo jiné krabičce, aby databáze běžela na serveru, zvlášť, když jsou obě zařízení na gigabitu.

První krok se hodí i pro samotné použití Synology jako fileserveru pro Kodi – nastavit sdílené složky. Proto na ovládacím panelu Sdílená složka vyberte složku, kterou má Kodi vidět (třeba video) a zvolte upravit. Zvolte záložku Oprávnění NFS (network file system) a dejte Vytvořit.

V části Název hostitele zadejte buď adresu počítače/krabičky s Kodi (třeba 192.168.1.10) nebo, pokud chcete NFS povolit pro celou domácí síť, použijte masku (třeba 192.168.1.*). V části „squash“ vyberte „Mapovat všechny uživatele na admin“ – je to poslední možnost a bez ní vám to nebude fungovat. Následně zaškrtněte všechny možnosti dole a klepněte na OK.

screenshot-2016-09-11-23-23-41

Takto nastavte všechny sdílené složky.

Já jsem udělal ještě jednu věc – vytvořil jsem si uživatele „Malina“, aby všechny přístupy z Kodi byly přes tohoto uživatele. Potom je třeba tomuto uživateli v případě sídlených složek udělit práva na záložce Oprávnění.

Vytvoření databáze a nastavení oprávnění

Pro nastavení databáze na Synology potřebujete nainstalovat dva balíčky – samotnou databázi MariaDB a webové rozhraní phpMyAdmin, který si ještě doinstaluje PHP pro svůj běh.

Následně se přihlaste do databáze přes phpMyAdmin (admin heslo je ve výchozím stavu prázdné, případně se dá resetovat přes nastavení MariaDB) a jako první nastavte oprávnění na záložce Privilegies (Uživatelské účty).

Jednak si zde nastavte nové admin heslo, aby nezůstalo prázdné, jednak přidejte nového uživatele – já jsem opět použil „Malina“ a zadal heslo. V části název počítače můžete zadat IP adresu Kodi, ale není to nutné.

Důležitý bod – uprostřed je nastavení oprávnění, kde zašrktněte „Zaškrtnout vše“ (Check All) a máte hotovo, úplně dole potvrďte vytvoření. Nic dalšího už v databázi dělat nemusíte, vše si Kodi nakonfiguruje samo.

Připojení k databázi

Nyní nastává trochu wibbly wobbly, timey wimey stuff – musíte vytvořit soubor a ten nahrát na vhodné místo. Soubor se jmenuje advacedsettings.xml a vypadá takto:

<advancedsettings>
 <videodatabase>
  <type>mysql</type>
       <host>192.168.1.10</host>
       <port>3306</port>
       <user>Malina</user>
       <pass>******</pass>
    </videodatabase>
    <musicdatabase>
       <type>mysql</type>
       <host>192.168.1.10</host>
       <port>3306</port>
       <user>Malina</user>
       <pass>*****</pass>
    </musicdatabase>
 <videolibrary>
 <importwatchedstate>true</importwatchedstate>
 <importresumepoint>true</importresumepoint>
 </videolibrary>
 <pathsubstitution>
 <substitute>
 <from>special://masterprofile/Thumbnails/</from>
 <to>nfs://192.168.1.10/volume1/video/Thumbnails/</to>
 </substitute>
 </pathsubstitution>
</advancedsettings>

Uzly <videodatabase> a <musicdatabase> říkáte, kde se nachází databáze <host>, jaký je uživatel <user> a jaké má heslo <pass>. V části <videolibrary> říkáte, jestli chcete do knihovny přenést informaci o shlédnutých a rozkoukaných videích.

A konečně <substitute> říká, že náhledové obrázky si má kody ukládat na síťovém serveru – k tomu účelu je dobré na serveru vyhradit jednu složku – například jak mám já na Kodi ve složce video složka Thumbnails.

Zbývá jediné – takovýto soubor nahrát do Kodi a restartovat. Já jsem si do Kodi doplnil pár dalších řádek:

 <video>
   <excludefromscan>
     <regexp>@eaDir</regexp>
     <regexp>@EADIR</regexp>
   </excludefromscan>
   <excludefromlisting>
     <regexp>@eaDir</regexp>
     <regexp>@EADIR</regexp>
   </excludefromlisting>
 </video>

Protože Synology vytváří řadu neviditelných složek, nechcete, aby je Kodi procházelo, ale ignorovalo – takto je můžete snadno vynechat z vyhledávání. Můžete sem doplnit i další pravidla.

Druhý doplněk je:

<network>
   <buffermode>1</buffermode>
</network>

Tímto říkáte, jak má Kodi bufferovat provoz ze sítě. K tomuto nastavení jsem dospěl, když Kodi při přehrávání hudby mělo mikrodropouty a já ho takto donutil všechno cachovat.

Výsledné xml vypadá takto:

<advancedsettings>
 <video>
 <excludefromscan>
 <regexp>@eaDir</regexp>
 <regexp>@EADIR</regexp>
 </excludefromscan>
 <excludefromlisting>
 <regexp>@eaDir</regexp>
 <regexp>@EADIR</regexp>
 </excludefromlisting>
 </video>
 <audio>
 <excludefromscan>
 <regexp>@eaDir</regexp>
 <regexp>@EADIR</regexp>
 </excludefromscan>
 <excludefromlisting>
 <regexp>@eaDir</regexp>
 <regexp>@EADIR</regexp>
 </excludefromlisting>
 </audio>
 <videodatabase>
  <type>mysql</type>
       <host>192.168.1.10</host>
       <port>3306</port>
       <user>Malina</user>
       <pass>****</pass>
    </videodatabase>
    <musicdatabase>
       <type>mysql</type>
       <host>192.168.1.10</host>
       <port>3306</port>
       <user>Malina</user>
       <pass>****</pass>
    </musicdatabase>
 <videolibrary>
 <importwatchedstate>true</importwatchedstate>
 <importresumepoint>true</importresumepoint>
 </videolibrary>
 <pathsubstitution>
 <substitute>
 <from>special://masterprofile/Thumbnails/</from>
 <to>nfs://192.168.1.10/volume1/video/Thumbnails/</to>
 </substitute>
 </pathsubstitution>
 <network>
 <buffermode>1</buffermode>
 </network>
</advancedsettings>

A kam s ním? Třeba pro Windows do složky:

c:\users\[USERNAME]\appdata\roaming\Kodi\userdata

Pro OSMC na RapsberryPi:

\home\osmc\.kodi\userdata

Nyní tedy restartovat a počkat, než si Kodi databázi vytvoří. U dalších počítačů už se Kodi jenom připojí a bude databázi využívat.

(Všechny verze Kodi musí být stejné, jinak to nebude fungovat. Pokud upgradujete Kodi, po upgradu se upgradujete také databáze, i když se může stát že upgrade neproběhne správně – potom stačí se přihlásti přes phpMyAdmin, smazat nové tabulky a nechat upgrade databáze proběhnout ještě jednou.)

Napište komentář