Pagina1 van 1

XBMC en MySQL – Alle kamers netjes in sync!

XBMC en MySQL – Alle kamers netjes in sync!
   49

Een van de mooie dingen van XBMC is dat het een enorme hoeveelheid aan extra informatie kan bijhouden van jouw TV Series, Films, en Muziek.

XBMC laat niet alleen achtergrond info, acteurs info en aflevering info zien maar het onthoudt ook wat je al bekeken hebt en waar je gestopt bent in een film of TV aflevering zodat je later verder kunt gaan met kijken vanaf het punt waar je gestopt bent.

Het is alleen erg jammer dat … de XBMC in mijn woonkamer dat niet deelt met de XBMC in mijn slaapkamer – en dat is precies waar MySQL een handje gaat helpen.




De “Ideale” XBMC opzet …

Wat mij betreft is de ideale XBMC opzet zoiets als dit:

  • Een netwerk locatie waar je al jouw media opslaat en deelt.
    Bijvoorbeeld een NAS box (QNAP bijvoorbeeld), of een Windows doos die een folder deelt, of misschien een oude computer die Linux FreeNAS draait, etc.
  • Èèn of meer PC’s, AppleTV’s, of Raspberry Pi’s die XBMC draaien en verspreid staan door het huis.
    Ze hoeven niet eens het zelfde besturingssysteem te hebben,… als het maar precies dezelfde versies van XBMC zijn.

 

Je kunt natuurlijk ook bestanden delen op de XBMC PC’s maar in de volgende opzet komt dat met een aantal (oplosbare) complicaties. Dus in dit artikel neem ik even aan dat je dat dus niet doet en een soortgelijke opzet gebruikt als ik net voorstelde als “ideaal”.

N.b.: Dit wil overigens niet zeggen dat er geen andere, mogelijk betere, opties zijn.

Installatie van MySQL

MySQL een gratis open source database. Eigenlijk bedoelt voor server gebruik, maar ook uitstekend voor desktop gebruik – je wilt niet weten hoeveel websites rusten op deze database voor de dynamische content …

Recente veranderingen in XBMC maakt het nu mogelijk om MySQL te gebruiken voor het opslaan van informatie die dan weer gedeeld kan worden met andere XBMC PC’s. Het opzetten van MySQL is erg simpel en recht-toe-recht-aan, misschien heb je het al ergens op een van jouw PC’s staan …

Bijvoorbeeld de QNAP NAS wordt standaard geleverd met MySQL geïnstalleerd (je hoeft het alleen maar “aan” te zetten).

Hier is mijn artikel “Hoe installeer ik MySQL, Web-Server, en phpMyAdmin op een QNAP” voor de details.
MySQL is overigens voor meerder platformen beschikbaar zoals Windows, Linux en MacOS X.

Je kunt besluiten MySQL handmatig te installeren – ga naar deze link en kies het gewenste besturingssysteem (niet nodig voor een QNAP!). Ik kan echter sterk aanraden een van vele AMP (Apache MySQL PHP) pakketten te gebruiken – ze zijn meestal gratis.

Een paar voorbeelden:

  • WAMP Server voor Windows, of
  • XAMPP voor meerdere platformen zoals Windows, MacOS X en Linux of
  • MAMP voor MacOS X (OS X Server heeft standaard al MySQL geïnstalleerd)

 

Het voordeel van deze pakketten is dat het erg eenvoudig in installatie is en vaak met het pakket phpMyAdmin komt – wat het onderhouden van en spelen met MySQL veel eenvoudiger maakt via een web-browser.

Ik wil geen phpMyAdmin … 

Als je phpMyAdmin liever niet wilt gebruiken, dan moet je jezelf bekend maken met de command-line toegang tot MySQL (of een programma zoals EMS MySQL Manager, of DevArt SQL Studio aanschaffen, of bijvoorbeeld het gratis HeidiSQL gebruiken), zie de MySQL documentatie voor details m.b.t. jouw besturingssysteem. Je zult voor de volgende stappen een aantal SQL opdrachten moeten uitvoeren.

De typische toegang tot MySQL (voor de meeste systemen) is: mysql -u gebruikersnaam -p
(vervang natuurlijk gebruikersnaam met jouw werkelijke gebruikersnaam. De -p parameter zorgt ervoor dat MySQL om een wachtwoord vraagt)

Firewall 

Op bepaalde systemen kan het nodig zijn dat je in de eventuele firewall, de poort (standaard: 3306) voor MySQL moet openzetten.

Voorbereiden van de Database

XBMC Versie 

Ik ga er vanuit dat je XBMC Eden (v11) of nieuwer gebruikt!
Vanaf SVN versie R28117 en hoger, werken de ouder XBMC versies hetzelfde maar het kan zijn dat een aantal extra SQL opdrachten nodig zijn!

Upgrade naar nieuwere versies van KODI 

Wanneer je XBMC of KODI later update naar een nieuwere versie, dan zal KODI de eerste keer misschien wat trager starten.
Dat klopt ook, want KODI gaat een nieuwe database voor je aanmaken – wacht dus geduldig af!

De volgende instructies geven XBMC toegang tot de MySQL database zodat XBMC databases en tabellen kan maken en ze later kan voorzien van data.

De korte versie …

Ga naar phpMyAdmin en klik op de “SQL” tab. In de nieuwe pagina zie je een tekst veld, plak de volgende SQL opdrachten in dit veld en klik op de “Go” knop rechts onderin om ze uit te voeren:


1
2
CREATE USER 'xbmc' IDENTIFIED BY 'xbmc';
GRANT ALL ON *.* TO 'xbmc';

Wat doet dit?


CREATE USER 'xbmc' IDENTIFIED BY 'xbmc';

Losjes vertaald: Maak de gebruiker “xbmc” met het wachtwoord “xbmc

PHPMyAdmin/MySQL - Maak een database gebruiker voor XBMC aan

PHPMyAdmin/MySQL – Maak een database gebruiker voor XBMC aan

Na het uitvoeren van deze opdrachten zal PHPMyAdmin terug springen naar de PHPMyAdmin begin pagina – tenzij je natuurlijk een type fout gemaakt hebt.
Je kunt op de tab “Privileges” klikken, onder de groep “User Overview”  zul je nu de gebruiker “xbmc” vinden.

N.b.: Ik gebruikte het wachtwoord “xbmc” in dit voorbeeld (zonder aanhalingstekens, gedefinieerd na het “IDENTIFIED BY” deel). Je kunt natuurlijk, vooral als je jezelf zorgen maakt over de veiligheid, een ander wachtwoord kiezen. Gebruik dat nieuwe wachtwoord dan wel consequent in de volgende stappen.


GRANT ALL ON *.* TO 'xbmc';

Vertaald: Geef de gebruiker “xbmc” volledige toegangsrechten

Dit geeft de gebruiker “xbmc” voldoende toegangsrechten om datbases te maken en gebruiken. OK, dus vanuit een MySQL perspectief zijn we klaar …

Let Op! 

Deze instructies zijn gebaseerd op XBMC Eden (v11) of nieuwer!

Voor oudere versies kan het nodig zijn dat je de volgende SQL opdrachten uitvoert (Eden en nieuwere versies doet dit geheel automatisch):


1
2
CREATE DATABASE xbmc_video;
CREATE DATABASE xbmc_music;

Overstappen naar een nieuwere XBMC versie 

Mocht je later overstappen naar een nieuwere versie van XBMC dan zul je zien dat er iets veranderd in de databases.

Als eerst kopieert XBMC de data van jouw bestaande databases naar een nieuwe database, met dezelfde naam als de oude versie, gevold door 2 nummers. Deze nieuwe databases zullen door Eden gebruikt worden zodat je niet de oude databases verliest. Bijvoorbeeld: xbmc_music11 (oud – blijft bestaan) wordt gekopieerd naar xbmc_music18 (nieuwe – Eden gaat deze versie gebruiken). Nieuwere versies (Frodo) gebruiken een hoger nummer, etc. etc.

 

Configuratie van de XBMC PC(s)

Bestand paden consistent gebruiken … 

Zorg ervoor dat alle bronnen hetzelfde pad hanteren, op alle XBMC’s!

Voor we verder gaan met de MySQL verbinding voor onze XBMC dozen; zorg ervoor dat alle media bronnen (sources) op al de XBMC’s er hetzelfde uitzien. Als dit namelijk niet het geval is, dan ziet XBMC’s ze niet als hetzelfde en ga je informatie dubbel opslaan en zelfs informatie (zoals “gezien” of “hier ben ik gestopt”) gaan missen!

Probeer dus zoveel mogelijk een netwerk pad te hanteren – en dus niet drive letters etc.

Laten we beginnen met èèn XBMC doos. Maak notities welke bronnen je hebt gedefineerd, verander de bronnen als ze geen gebruik maken van netwerk paden – we willen dit later op de andere XBMC’s repliceren.

Een andere reden om met 1 box te beginnen is zodat je in PHPMyAdmin meteen kunt zien wat XBMC allemaal uitspookt – en het maakt oplossen van problemen een stuk eenvoudiger.

Zorg er ook voor dat jouw XBMC versie de MySQL verbinding ondersteund – huidige versies ondersteunen dit standaard.
Voor oudere versie; SVN versie R28117 en hoger kunnen dit blijkbaar aan (bron). Het beste is gewoon een actuele versie van XBMC te downloaden (XBMC Download Pagina) of een geschikte OpenElec distributie.

Stap 1: Export jouw huidge Library (optioneel)

Geheel optioneel, maar je kunt nu de bestaande info van jouw XBMC exporteren zodat je het later, nadat we een MySQL verbinding hebben, weer kunt importeren – dat kan aardig wat tijd besparen met het scannen van bestaande media.

In XBMC ga naar het “System” menu, selecteer “Settings” → “Video” waar je “Export Library” kiest.

XBMC vraagt nu of je het wilt opslaan als een enkele bestand (single file) – kies deze optie.

Na het exporteren vindt je zoiets als “xbmc_videodb_2012-01-23” …

XBMC (Eden/ v11) - System menu - Selecteer Settings

XBMC (Eden/ v11) – System menu – Selecteer Settings

XBMC (Eden/ v11) - Video menu - Export Video Library

XBMC (Eden/ v11) – Video menu – Export Video Library

Stap 2: Maak het bestand “advancedsettings.xml”

Open een simpele platte tekst editor ( Windows: Notepad of Notepad++,  MacOS X: TextWrangler Linux: VI of Nano) en plak daarin de volgende tekst nadat je het aangepast hebt voor jouw situatie:

  • Vervang 192.168.1.100 door het IP adres van jouw MySQL Server.
  • Mocht je het poort nummer van MySQL hebben veranderd, vervang dan het nummer 3306 met het poort nummer dat je gekozen had – als je geen idee hebt of niets veranderd hebt; 3306 is de standaard poort.
  • Vul de correcte gebruikersnaam in bij het tussen <user> en </user> (indien je een andere naam had gekozen)
  • Vol het correct wachtwoord in tussen <pass> en </pass> (indien je een ander wachtwoord had gekozen)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<advancedsettings>
    <videodatabase>
        <type>mysql</type>
        <host>192.168.1.100</host>
        <port>3306</port>
        <user>xbmc</user>
        <pass>xbmc</pass>
        <name>xbmc_video</name>
    </videodatabase>

    <musicdatabase>
        <type>mysql</type>
        <host>192.168.1.100</host>
        <port>3306</port>
        <user>xbmc</user>
        <pass>xbmc</pass>
        <name>xbmc_music</name>
    </musicdatabase>
</advancedsettings>

<name> niet meer nodig? 

Het blijkt dat je de tag (<name>…</name>) voor nieuwere versies van XBMC niet meer nodig is als je slechts 1 database wilt delen.

XBMC kiest zelf een naam en voegt het versie nummer van de structuur toe, b.v. “xbmc_video60” of “xbmc_video67”. Als een XBMC speler een nieuwere database structuur gebruikt, dan zal XBMC die zelf aanmaken en de data van de oude database kopieren.

Helaas maakt dit het zaakje wel een beetje onduidelijk in XBMC en de oude database wordt niet bijgehouden door de nieuwere XBMC versies – een resultaat (denk ik) van het feit dat men nog aan het experimenteren is met de structuur – jammer, dat had netter gekund.

Je kunt ook nog steeds kiezen voor meerdere databases, bijvoorbeeld een van de volwassenen en een voor de kinderen – maar er worden nog steeds meldingen gedaan van problemen als je dit doet.

Sla dit nu op als “advancedsettings.xml“.

  •  Windows XP
    Kopieer dit bestand naar “C:\Documents and Settings\<jouw gebruikersnaam>\Application Data\XBMC\userdata“.
  •  Windows Vista, 7, 8 of nieuwer
    Kopieer het bestand baar “%APPDATA%\XBMC\userdata” (je kunt dit letterlijk intypen in de Windows Verkenner).
  •  MacOS X
    In de Finder, klik de “Go” menu optie en kies “Go to Folder …“. Een venster opent zich met de vraag “Go to the folder”, plak daarin het volgende “~/Library/Application Support/XBMC/userdata” (zonder aanhalingstekens) en klik op de “Go” knop.
    Kopieer het advancedsettings.xml bestand nu naar de folder die zich net geopend heeft.
  •  Linux
    Dit bestand moet geplaatst worden in: ~/.xbmc/userdata
    Met een zogenaamde live! versie is wat moeilijker, gebruik SSH toegang, of gebruik direct op de XBMC doos CTRL+ALT+F2 voor shell toegang (gebruik CTRL-ALT-F7 om weer terug naar XBMC te gaan) en gebruik vervolgens VI of nano om de tekst handmatig in te voeren.
    Een aantal erg goede Linux distributies voor XBMC: XBMCFreakXBMC Live.
  •  OpenElec
    Een gedeelde folder kan gevonden worden in het netwerk (zoek naar de machine OPENELEC).
    De gedeelde folder heet “userdata” en je kunt het bestand advancedsettings.xml hierin kopiëren – wel even OpenElec herstarten als het kopiëren klaar is.
    OpenElec is beschikbaar voor een aantal platvormen (Linux, 1ste generatie AppleTV, Raspberry Pi, etc) waar dit allemaal hetzelfde werkt.
  •  Apple iOS device (iPad, AppleTV2, etc)
    Instructies die ik elders vond beweren (ongetest!): “/private/var/mobile/Library/Preferences/XBMC/userdata/“.
  •  CrystalBuntu / CrystalHD (AppleTV)
    Via SSH toegang (ssh atv@ip-adres) – Het pad is “/root/.xbmc/userdata” .

Stap 3: Herstart de XBMC en (optioneel) importeer de Library data

Herstart de XBMC HTPC. Als het opstarten eeuwig lijkt te duren of XBMC gedraagt zich heeeel erg sloom, controleer dan de volgende dingen:

  • Zijn IP adres, gebruikersnaam, wachtwoord, en database naam correct in advancedsettings.xml?
  • Blokkeert de server firewall of de XBMC firewall poort 3306?
  • Heb je eerder genoemde SQL opdrachten correct uitgevoerd? (toegangsrechten is een van de meest voorkomende problemen)
  • Draait MySQL op de “server”?
  • Ondersteund jouw XBMC versie MySQL verbindingen?
  • Heb je een oudere XBMC versie (Dharma) en ben je vergeten de 2 extra SQL opdrachten uit te voeren (CREATE DATABASE)?

 

Als je het volgende in phpMyAdmin ziet; nieuwe databases, tabellen etc …. dan ben je klaar om de optionele import van de geëxporteerde Library data uit te voeren (zie de stappen die je hebt uitgevoerd voor het exporteren).
phpMyAdmin - XBMC heeft tabellen aangemaakt!

phpMyAdmin – XBMC heeft tabellen aangemaakt!

Herhaal de stappen 2 en 3 (gebruik hetzelfde advancedsettings.xml bestand) voor de andere XBMC PC’s die je wilt gebruiken – het maakt niet uit of deze onder een ander besturingssysteem draaien, zoals de XBMC versies maar hetzelfde zijn!

Geen Data … 

Mocht je geen data vinden in de tabellen controleer dan de netwerk toegangsrechten tot jouw video en/of muziek bestanden!

Het Resultaat …

Op 2 verschillende XBMC machines;

  1. Op een machine draai ik Eden Beta2 onder MacOS X Lion
  2. Op de andere een “nightly build” (ook Eden) van OpenElec (Linux) op een kleine AMD E350 computer (Foxconn nt-a3500 – Nederlands review)
  3. MySQL op mijn QNAP NAS

 

Nu kan ik op beiden machines zien waar ik gestopt ben en vervolgens op de andere machine verder kijken.

 

XBMC - Machine 1 - MacOS X Eden Beta 2 pauzeerde hier ...

XBMC – Machine 1 – MacOS X Eden Beta 2 pauzeerde hier …

XBMC - Machine 2 - OpenElec (nightly build) wil hier doorgaan met kijken ...

XBMC – Machine 2 – OpenElec (nightly build) wil hier doorgaan met kijken …

Tips om problemen te voorkomen of op te lossen

We hebben nu een XBMC setup die alles netjes synchroniseerd via een MySQL database, maar je kunt nog steeds tegen kleine problemen aanlopen.

Gebruik de Debug Log!

XBMC heeft een aantal erg goede Debug opties, die ik zeker aanraad om te gebruiken bij problemen.
Meer informatie kan hier gevonden worden: XBMC Debug, XBMC Geavanceerde Debug, en XBMC advancedsettings.xml debug opties.

STANDAARD DEBUG LOG

Als je gaat debuggen moet dit altijd aanstaan:
Je kunt debuggen aanzetten in de gebruikers interface (op jouw TV): In Settings -> System -> Debugging – kun je Enable debug logging aanvinken om debuggen aan te zetten.

GEAVANCEERDE DEBUG LOG

De geavanceerde debug log genereert een hoop informatie die zeer waardevol kan zijn bij het oplossen van problemen.
Om dit te activeren moet je onderstaand voorbeeld toevoegen aan jouw advancedsettings.xml bestand, waar de waarde voor loglevel (1 in het voorbeeld) de volgende waarden kan hebben:

XBMC Debug LogLevels
 LogLevel Wat het doet …
-1  Absoluut geen debug logging.
0  (Standaard) Log alleen maar errors.
1  Geavanceerde Debug log.
2  Zelfde als 1 maar laat processor en geheugen op het scherm zien.
3  Zelfde als 2 maar logt ook SMB (Windows shares) zaken.

<advancedsettings><loglevel>1</loglevel></advancedsettings>

Een paar problemen waar ik en andere gebruikers tegen aan liepen:

  Dubbele films in de database, XBMC onthoud niet waar ik gestopt ben

Op een van de XBMC boxen gebruikte ik de server name en op de andere had ik het IP adres gebruikt – lullig, maar dat genereerde dus 2 verschillende database records voor dezelfde film!
Dit resulteerde dan ook in het niet opslaan waar ik gestopt was en of ik iets al bekeken had.

Om de een of andere reden bewaarde de ene XBMC box het pad anders dan de andere XBMC box (b.v. sbm://<servername>/path versus smb://<username>:<password>@<server>/<path>) – ook hier dus weer hetzelfde probleem.

Handmatig de sources toevoegen kan bewerkelijk zijn en is natuurlijk een recept voor fouten en verschillen.
Ik adviseer dan ook om eerst 1 XBMC box compleet in te stellen en dan de instellingen naar de andere boxen te kopiëren.

  Verschillende databases?

Ik heb hier nog geen goede oplossing voor gevonden: verschillende XBMC versies gebruiken verschillende databases, b.v. “MyVideo” en “MyVideo32”.
Dit wordt gedaan omdat XBMC en MySQL samenwerking nog steeds in ontwikkeling is en men nog steeds zaken veranderd.
Ik kan me echter meer elegante oplossingen bedenken.

  Database wordt niet gevuld – MySQL kan niet gevonden worden

Ik liep tegen dit probleem aan toen mijn XBMC boxen ingesteldt waren voor een automatisch netwerk IP adres (DHCP). XBMC was sneller met het opstarten dan het netwerk, en kon dus de MySQL server niet vinden. De oplossing (voor OpenElec althans) was een bestand “autostart.sh” aanmaken (zie onderstaand voorbeeld) en deze in de “Configfiles” share van jouw OpenElec XBMC box zetten.

Dit geeft de box een vast IP adres waardoor het netwerk veel sneller opstart.

Je moet natuurlijk wel de regels 3 (het nieuwe vaste IP adres van jouw XBMC box) en 4 (het IP adres van jouw router of modem) aanpassen.


1
2
3
4
#!/bin/sh
ifconfig eth0 up
ifconfig eth0 192.168.1.97
route add default gw 192.168.1.1

  Database  wordt niet gevuld – Permissie foutmeldingen

Een andere reden waarom er geen data in de database gezet wordt is als XBMC problemen heeft met de bestand permissies van jouw video en/of muziek bestanden. Dit zie je vrij snel in de advanced debugging. Zie hieronder voor voorbeeld fout meldingen.

Wat er gebeurt is dat XBMC wel ziet dat er bestanden en directies zijn, wat genoeg is voor het herkennen van de film of muziek, maar geen lees rechten heeft van de bestanden waardoor het niet kan bepalen wat bijvoorbeeld de code of resoluties zijn.

Problemen met toegangsrechten kunnen behoorlijk lastig zijn! Controleer de instellingen van de share die je gebruikt voor de bestanden.
Een bezoeker van Tweaking4All wist het op te lossen door alle sources te verwijderen en vervolgens alles weer handmatig (dus niet met de bestanden browser van XBMC) toetevoegen in het formaat smb://servernaam/pad/naar/video.

Omdat ik zelf niet tegen dit probleem aanliep, kan ik je alleen maar vertellen dat er meer permissie problemen zich kunnen voordoen en dat die niet allemaal op deze manier opgelost kunnen worden.  (referentie: XBMC Forum, en OpenElec Forum)


17:44:11 T:2879218784 INFO: FileSmb->Open: Unable to open file :

...

unix_err:'d' error : 'Permission denied'

...

  Vuistregels die ik zelf volg

  • Gebruiken paden consistent wanneer je in jouw sources naar een server wijst.
  • Gebruik het IP adres van de server voor jouw sources, het werkt gewoon vlotter.
  • Installeer eerst 1 XBMC box volledig en kopieer de configuratie bestanden later naar de andere XBMC boxen (reboot na kopiëren!).

 

De volgende bestanden blijken van belang:

  • advancedsettings.xml
  • sources.xml
  • passwords.xml

 

  Database sneller maken?

Voor bepaalde XBMC database versies is het gebruik van indices niet helemaal geoptimaliseerd.
Toevoegen van de volgende indices kan voor snellere toegang tot de data zorgen (bron: OpenElect configure MySQL) – gebruik dit alleen als je weet wat je doet, de database structuur van jouw XBMC versie kan namelijk afwijken!

Merk op: XBMC v12 (Frodo) heeft deze indices al!

Voor Video:
(niet van toepassing voor XBMC 12 en nieuwer)


1
2
3
ALTER TABLE movie ADD INDEX ix_idFile(idFile);
ALTER TABLE movie ADD INDEX idMovie(idMovie);
ALTER TABLE movie ADD INDEX idFile(idFile);

Voor Muziek:


1
2
3
4
5
6
7
CREATE INDEX idAlbum_idx ON song(idAlbum);
CREATE INDEX idArtist_idx ON song(idArtist);
CREATE INDEX idArtist_idx ON album(idArtist);
CREATE INDEX idArtist_idx ON exartistsong(idArtist);
CREATE INDEX idArtist_idx ON exartistalbum(idArtist);
ALTER TABLE song ADD INDEX idArtist(idArtist);
ALTER TABLE song ADD INDEX idGenre(idGenre);

  Database sneller maken: MyISAM vs InnoDB

Ik merkte dat na het upgraden naar XBMC v12 (Frodo) aanzienlijk trager reageerde op database queries dan voorgaande XBMC versies. Vooral wanneer ik een TV episode had bekeken en meteen daarna de volgende episode wilde gaan bekijken. XBMC (lees: de database) stond ineens meer dan een volle minuut vast.

Gelukkig heb ik vaker met MySQL gespeeld (werk gerelateerd), en zag de twee potentiële oorzaken:

  • De Database engine die gebruikt werd was MyISAM (performance issues).
  • De XBMC developers gebruiken zogenaamde VIEWs (echt niet aan te raden onder MySQL).

 

De VIEWs kan ik niet oplossen zonder de core van XBMC drastisch aan te passen.

We hebben echter wel controle over de database en met onderstaande SQL script (voor phpMyAdmin) worden alle tabellen omgezet naar InnoDB:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
ALTER TABLE writerlinkmovie ENGINE=InnoDB;
ALTER TABLE writerlinkepisode ENGINE=InnoDB;
ALTER TABLE version ENGINE=InnoDB;
ALTER TABLE tvshowlinkpath ENGINE=InnoDB;
ALTER TABLE tvshow ENGINE=InnoDB;
ALTER TABLE taglinks ENGINE=InnoDB;
ALTER TABLE tag ENGINE=InnoDB;
ALTER TABLE studiolinktvshow ENGINE=InnoDB;
ALTER TABLE studiolinkmusicvideo ENGINE=InnoDB;
ALTER TABLE studiolinkmovie ENGINE=InnoDB;
ALTER TABLE studio ENGINE=InnoDB;
ALTER TABLE streamdetails ENGINE=InnoDB;
ALTER TABLE stacktimes ENGINE=InnoDB;
ALTER TABLE settings ENGINE=InnoDB;
ALTER TABLE sets ENGINE=InnoDB;
ALTER TABLE seasons ENGINE=InnoDB;
ALTER TABLE path ENGINE=InnoDB;
ALTER TABLE musicvideo ENGINE=InnoDB;
ALTER TABLE movielinktvshow ENGINE=InnoDB;
ALTER TABLE movie ENGINE=InnoDB;
ALTER TABLE genrelinktvshow ENGINE=InnoDB;
ALTER TABLE genrelinkmusicvideo ENGINE=InnoDB;
ALTER TABLE genrelinkmovie ENGINE=InnoDB;
ALTER TABLE genre ENGINE=InnoDB;
ALTER TABLE files ENGINE=InnoDB;
ALTER TABLE episode ENGINE=InnoDB;
ALTER TABLE directorlinktvshow ENGINE=InnoDB;
ALTER TABLE directorlinkmusicvideo ENGINE=InnoDB;
ALTER TABLE directorlinkmovie ENGINE=InnoDB;
ALTER TABLE directorlinkepisode ENGINE=InnoDB;
ALTER TABLE countrylinkmovie ENGINE=InnoDB;
ALTER TABLE country ENGINE=InnoDB;
ALTER TABLE bookmark ENGINE=InnoDB;
ALTER TABLE artistlinkmusicvideo ENGINE=InnoDB;
ALTER TABLE art ENGINE=InnoDB;
ALTER TABLE actors ENGINE=InnoDB;
ALTER TABLE actorlinktvshow ENGINE=InnoDB;
ALTER TABLE actorlinkmovie ENGINE=InnoDB;
ALTER TABLE actorlinkepisode ENGINE=InnoDB;

Kijk wel even naar my.cnf in /etc/config voor eventuele InnoDB instellingen.
Na aanpassingen in my.cnf moet je MySQL herstarten:


/etc/init.d/mysqld.sh restart

Aanvullende bronnen van informatie

Hoewel implementatie eenvoudig is, kunnen er nog legio vragen open blijven. Kijk op onderstaande links voor meer details:

 

Veel kijk plezier met de nieuwe XBMC mogelijkheden!  

Ondersteun ons ...


Jouw ondersteuning wordt zeer gewaardeerd, en hoeft zelfs niets te kosten. Bijvoorbeeld door links naar ons te delen op social media, of andere websites.

Andere vormen kunnen ook gratis zijn (b.v. shoppen op Amazon).
Alle opbrengsten worden gebruikt voor web-hosting kosten, project hardware en software, koffie, etc.

Hartelijk dank voor wie al heeft bijgedragen!
Het is altijd geweldig om te zien hoe men mijn artikeltjes en applicaties weet te waarderen.

Merk op dat het klikken op affiliate links een kleine commissie voor ons kunnen genereren - dit wordt zeer gewaardeerd.

Reacties


Er zijn 49 reacties welke je hieronder kunt lezen.
Je kunt jouw eigen opmerkingen plaatsen m.b.v. dit formulier, of een reactie op een bestaande opmerking plaatsen door op de "Beantwoorden" knop te klikken.

  • 11 jul 2013 - 19:02 - hans Reactie Link

    UPDATE: Ik heb het “problemen oplossen” geupdate met nieuwe informatie. 

    Beantwoorden

    hans

  • 20 jul 2013 - 5:45 - hans Reactie Link

    UPDATE: MyISAM naar InnoDB procedure toegevoegd om de database nog sneller te maken. 

    Beantwoorden

    hans

    • 28 jul 2013 - 18:11 - Ton Reactie Link

      Bedankt voor je tuto :-)

      Mag ik eens vragen: als ik ISAM probeer om te zetten naar InnoDB dan start XBMC (12.2) niet meer. Los errors (:-)) zijn iets vaags met can not connect to database. Blablabla (hij heeft de log zelf al gedelete, dus ik kan ’t hier niet meer pasten). Heb jij my.cnf ook aangepast, of juist niet? Ik heb die regels daarin voor innodb wel geactiveerd, en jij zegt: “Kijk wel even naar my.cnf in /etc/config voor eventuele InnoDB instellingen”. Dus heb jij die # ook gewoon uncommented, of heb je iets anders gedaan? Groetjes :-)

      Beantwoorden

      Ton

    • 28 jul 2013 - 18:57 - hans Reactie Link

      Hi Ton!

      De errors die jij noemt hebben te maken met de database verbinding. Omzetten van ISAM naar InnoDB zou daar geen invloed op moeten hebben. Kun je de tabellen gewoon bekijken in phpMyAdmin? Zo ja, dan is er iets anders aan de hand. 

      Wat de my.cnf betreft:
      Ik heb inderdaad de “#”’s weggehaald voor de InnoDB delen. 

      Hieronder mijn my.cnf (alleen maar de regels zonder een # ervoor) van mijn QNAP:

      [client]
      port = 3306
      socket        = /tmp/mysql.sock
      [mysqld]
      port = 3306
      socket        = /tmp/mysql.sock
      skip-locking
      key_buffer = 256M
      max_allowed_packet = 48M
      table_cache = 256
      sort_buffer_size = 8M
      net_buffer_length = 16K
      read_buffer_size = 8M
      read_rnd_buffer_size = 4M
      myisam_sort_buffer_size = 64M
      server-id    = 1
      innodb_data_home_dir = /usr/local/mysql/var/
      innodb_data_file_path = ibdata1:10M:autoextend
      innodb_log_group_home_dir = /usr/local/mysql/var/
      innodb_buffer_pool_size = 64M
      innodb_additional_mem_pool_size = 32M
      [mysqldump]
      quick
      max_allowed_packet = 16M
      [mysql]
      no-auto-rehash
      [isamchk]
      key_buffer = 20M
      sort_buffer_size = 20M
      read_buffer = 2M
      write_buffer = 2M
      [myisamchk]
      key_buffer = 20M
      sort_buffer_size = 20M
      read_buffer = 2M
      write_buffer = 2M
      [mysqlhotcopy]
      interactive-timeout

      Ik heb (als ik me goed herinner) het geheugen gebruik een beetje aangepast – en daar zal vast ruimte voor verbetering in zijn, maar het werkt super snel voor mij op dit moment.

      Mocht dit allemaal het probleem niet oplossen dan hebben we echt de log file nodig.

      Welke XBMC versie gebruik je? gebruik je OpenElec? of XBMC onder Windows/Mac/Linux?

      Beantwoorden

      hans

  • 16 okt 2013 - 23:54 - juul Reactie Link

    Hi,

    Hoe kan ik onderstaand SQL script uitvoeren? Ik heb XBMC 12.2 via mijn synology lopen en dit loopt prima maar het laden van thumbs en opstarten van films gaat redelijk langzaam. Nu heb ik je artikel gelezen en ben wel erg benieuwd naar hoe ik dit script kan uitvoeren zodat alle alle tabellen omgezet worden naar InnoDB.

    Dank!

    grt juul

    Beantwoorden

    juul

    • 17 okt 2013 - 0:34 - hans Reactie Link

      Hi Juul,

      Als je bedoelt het omzetten van MyISAM naar InnoDB dan gebeurt het uitvoeren van het script in phpMyAdmin.
      Ik neem aan dat dit beschikbaar is op een Synology NAS. 

      Zodra je ingelogd bent in phpMyAdmin, klik dan de XBMC database voor movies (bv XBMC_video75).
      Klik vervolgens de SQL tab en in het venster dat opent zie je een tekst veld voor SQL commando’s. Plak het script daarin en voer het uit (de “Go” button rechts onderin).

      groetjes,
      Hans

      Beantwoorden

      hans

      • 21 okt 2013 - 23:37 - Juul Reactie Link

        Thanks, dat werkt!!Is er zoiets ook voor muziek? Het duurt wel even voordat daar alles geladen is en afspeelt.
        Grt juul

        Beantwoorden

        Juul

        • 22 okt 2013 - 4:57 - hans Reactie Link

          Hi Juul,

          Als je de databases eenmaal hebt omgezet naar InnoDB en als je de instellingen op de “server” ook hebt aangepast dan zou het inladen alleen maar de eerste keer tijd kosten. Daarna zou, als alles goed staat, het zaakje vlot moeten lopen.

          Dit werkt meteen ook voor muziek (XBMC houdt een database bij voor zowel video als muziek).

          Beantwoorden

          hans

          • 22 okt 2013 - 13:31 - Juul Reactie Link

            ok ik merk het nu. Alleen xbmc (12.2 op mac-mini) stopt er regelmatig mee….  had ik voorheen niet…

            Juul

  • 22 okt 2013 - 16:21 - Juul Reactie Link

    Probleem ligt hierbij volgens mij bij de nieuwste Aeon MQ5 skin…… Bij confluence valt xbmc niet uit.

    Beantwoorden

    Juul

    • 22 okt 2013 - 16:31 - hans Reactie Link

      Thanks Juul! Dat is nou goede info! 

      Vraag me alleen af waarom dit bij het Aeon MQ5 skin gebeurt? 

      Beantwoorden

      hans

      • 25 okt 2013 - 10:14 - Juul Reactie Link

        Probleem opgelost. Ik heb XBMC Gotham uitgeprobeerd en daarna teruggegaan naar XBMC 12.2. Door een aantal nieuwe scripts liep XBMC vast. Ik heb XBMC helemaal verwijderd en opnieuw geïnstalleerd, nu loopt het weer prima. Ik ben alleen nog niet zo tevreden over mijn Synology DS213 qua snelheid….

        Beantwoorden

        Juul

      • 25 okt 2013 - 16:41 - hans Reactie Link

        Mooi om te horen! 

        Wat de Synology betreft: Ik heb geen ervaring met Synology maar de NAS die jij hebt blijkt een ARM processor the gebruiken (volgens deze wiki althans). Hoewel ze vaak niet de vlotste CPU’s zijn, zijn ook weer niet de meest beroerde … 
        Als je zegt “snelheid” waar denk je dan aan?

        Beantwoorden

        hans

  • 25 okt 2013 - 15:30 - Meijndert Reactie Link

    Goedendag heb de tutorial doorlopen maar sync wil niet werken bij mij ,

    Kan je ook de sql server op een pc draaien terwijl je films/ series op een NAS staan ?

    Mijn vorige opstelling die niet werkte was  (huiskamerpc met sql) (Slaapkamerpc) (Zolderpc) (NAS) alles met vaste ip’s

    met show databases  zag ik dat deze goed aangemaakt waren en ierdeen mocht alles.

    Vraagjes :

    Moet ik de advancedsettings.xml ook op de pc zetten met de sqlserver ?

    Waar moet ik de library heen exporteren ?

    Moet ik via video-add files ook de dirs toevoegen aan iedere pc ?

    of moet ik alleen een import doen op iedere pc.

    Beantwoorden

    Meijndert

    • 25 okt 2013 - 17:03 - hans Reactie Link

      Hi Meijndert,

      MySQL hoeft inderdaad niet op dezelfde machine te staan als waar je de films geplaatst hebt. De machine waar je MySQL op draait hoeft niet eens toegang te hebben to de locatie waar jouw films opgeslagen staan. 

      Ik zie dat je op de huiskamer PC MySQL had draaien: let dan wel goed op dat de paden voor alle 3 de PC’s naar de NAS/Films wel hetzelfde zijn … ik liep daar zelf in het begin ook tegen aan. Dus \\huiskamerpc, \\192.168.1.1, \\gebruiker@192.168.1.1, X:\ etc worden allemaal gezien als een ander pad terwijl ze misschien precies dezelfde eindlocatie aangeven … 
      Daarom adviseer ik ook altijd om 1 PC opt zetten en als alles klaar is de configuratie bestanden naar de andere PC te kopiëren.

      • advancedsettings.xml hoeft niet op de MySQL PC te staan, tenzij je deze PC ook als XBMC doos gebruikt.
      • Ik zou eerst aan de slag gaan zonder library import. Mocht je toch willen importeren: ga naar een van de XBMC machines die is opgezet voor MySQL gebruik en importeer de Library
      • Het handmatig toevoegen van video dirs is maar 1x nodig op een van de XBMC PC. Je kunt de config files later naar de andere XBMC dozen kopiëren.
      • Import hoeft alleen maar op 1 PC gedaan te worden.
      N.b.: Als je OpenElec gebruikt (als XBMC distributie) dan is het kopieren van de configuratie bestanden super makkelijk (alle files in de \\networkshare\userdata) … 
      Groetjes,
      Hans

      Beantwoorden

      hans

      • 25 okt 2013 - 18:30 - Meijndert Reactie Link

        bedankt Hans ik ga hier even mee aan de slag allemaal schone installaties maken en dan nogmaals proberen

        Beantwoorden

        Meijndert

      • 25 okt 2013 - 18:40 - hans Reactie Link

        Geweldig! 

        Als je de PC’s overigens alleen maar voor XBMC gebruikt kan ik OpenElec sterk aanraden.

        Beantwoorden

        hans

        • 25 okt 2013 - 21:58 - Meijndert Reactie Link

          Ik gebruik deze inderdaad alleen voor XBMC misschien kan jij me dan vertellen hoe ik dat moet doen of waar ik een goede tutorial kan vinden ? Alles is Windows 7 en mijn NAS is een dlink DNS-323.

          Beantwoorden

          Meijndert

  • 26 okt 2013 - 10:22 - Meijndert Reactie Link

    Ik heb nu het volgende Bedpc met daarop xbmc en de  directories van mijn NAS gekoppeld op deze wijze \\10.10.69.69\Volume_1\TV Shows\ ( stations aanduiding T gegeven ).
    Ik zie dus nu alle tvshows boven. Wat moet ik nu nog doen op die pc ?
    Hoe moet ik nu verder want dit is inmiddels de tweede schone install en ik kom er niet uit

    Beantwoorden

    Meijndert

    • 26 okt 2013 - 15:36 - hans Reactie Link

      Hi Meijndert,

      Installatie van OpenElec is relatief eenvoudig.
      Als eerste moet je bepalen welke distributie je nodig hebt (je vindt ze hier).
      Omdat jij over PC’s praat heb je een van deze 5 nodig: 

      • ION Build – Dit is voor PC’s met een intel Atom CPU en een nVidia ION chiptset
      • FUSION Build – Dit is voor AMD E350/450 CPU’s met geïntegreerde AMD Fusion graphics
      • INTEL BUILD – Deze versie is speciaal voor computers met een Intel GMA graphics chip
      • GENERIC Build – Dit is voor alle andere PC’s
      • OSS Build – Deze is ook voor alle andere PC’s en is vol gepropt met alle mogelijke drivers (gebruik deze als de GENERIC Build niet werkt).
      Je zult dus even moeten kijken wat jouw PC aan boord heeft. 
      Vervolgens heb je een USB stick nodig (256Mb minimum) om de build op te kopiëren (uitleg hoe je dit doet vindt je hier). Dit kan uiteraard ook een CD zijn, wat handig kan zijn als je een oudere PC hebt die niet van een USB stick kan starten.
      Daarna boot je de computer waarop je OpenElec wilt hebben met de USB Stick die je net gemaakt hebt en volg je de installatie instructies.
      Na installatie zul je in jouw netwerk de OpenElec PC zien welke een share heeft met de naam “userdata“. Na configuratie van deze OpenElec installatie kun je de bestanden die je in “userdata” vindt eenvoudig naar de volgende PC kopiëren welke ook een netwerk share heeft met een “userdata” folder. Na kopiëren wel even herstarten zodat de instellingen gebruikt worden.
      Mijn advies dus: eerst 1 PC helemaal installeren en configureren. Als die PC goed werkt, installeer dan de volgende PC en kopieer de instellingen, etc.
      Hopelijk helpt je dit op weg.
      Meer info:

      Beantwoorden

      hans

  • 26 okt 2013 - 17:55 - Meijndert Reactie Link

    Hans ,

    Sorry voor zoveel vragen maar ik kan het niet uitstaan dat ik het niet werkend krijg de setup is als volgt nu

    NAS ip  10.10.69.69 de shares zijn  \\10.10.69.69\Volume_1\TV Shows\ en \\10.10.69.69\Volume_2\TV Shows\

    Huiskamer ip 10.10.69.3 WIN7 XBMC 12.2  met my sql erop  en zichtbaar twee databases myvideo15 en mymusic63

    ADD VIDEO volgens SMB \\10.10.69.69\Volume_1\TV Shows\ en \\10.10.69.69\Volume_2\TV Shows\

    Slaapkamer : 10.10.69.27 WIN7 XBMC 12.2  ADD VIDEO volgens SMB \\10.10.69.69\Volume_1\TV Shows\ en \\10.10.69.69\Volume_2\TV Shows\

    en de avancedsettings.xml ziet er zo uit en staat in de juiste dir op de slaapkamer pc.

    <advancedsettings>
        <videodatabase>
            <type>mysql</type>
            <host>10.10.69.3</host>
            <port>3306</port>
            <user>NAAM</user>
            <pass>WACHTWOORD</pass>
        </videodatabase>

        <musicdatabase>
            <type>mysql</type>
            <host>10.10.69.3</host>
            <port>3306</port>
            <user>xbmc</user>
            <pass>xbmc</pass>
        </musicdatabase>

         <videolibrary>
              <importwatchedstate>true</importwatchedstate>
         </videolibrary>
    </advancedsettings>

    Waar gaat dit fout ?

    Beantwoorden

    Meijndert

    • 26 okt 2013 - 18:30 - hans Reactie Link

      Ik denk dat het misschien een beter idee is om dit voort te zetten in het forum.
      Ik heb jouw bericht daar gekopieerd met een paar vragen/antwoorden.
      Je kunt het hier vinden: Forum discussie link.

      Beantwoorden

      hans

      • 26 okt 2013 - 20:21 - Meijndert Reactie Link

        Bedankt

        Maar ik probeer me te registreren  met Naam : Meijndert en email ****@ziggo.nl maar dan zegt de registratie ongeldige tekens en stuurd geen wachtwoord

        Beantwoorden

        Meijndert

  • 5 dec 2013 - 9:25 - Mr Pink Reactie Link

    Bedankt voor de duidelijke handleiding.

    Ik heb hier echter een vraag/bedenking over :

    Als je MySQL op je Qnap hebt draaien en je hier bv met 2 raspberry pi’s op connecteert :
    Raspberry raadt aan om de raspberry niet uit te zetten omdat deze toch maar 1W verbruikt, maar wat gebeurt er als je je Qnap met een power-schedule elke nacht automatisch uitzet ? Wat gebeurt er dan met de openstaande sql-verbindingen ? Ik denk niet dat het de gezondste situatie is om een sql-server uit te zetten terwijl er nog connecties op hangen, en anderzijds : hoe reageren de raspberry’s op een sql-server die elke dag een paar uur uitligt ?

    Beantwoorden

    Mr Pink

    • 5 dec 2013 - 17:43 - hans Reactie Link

      Goede vraag … ik zet mijn QNAP nooit uit, maar … als de QNAP uit staat en de Raspberry Pi “slaapt” dan zou dat geen probleem mogen zijn. De vraag is echter: wat gebeurt er als je de Raspberry wakker maakt? 

      Ik dacht dat de QNAP geen goede WOL (Wake-On-LAN) ondersteund, en zelfs als dat goed zou werken, dan denk ik dat de QNAP niet snel genoeg wakker is en de Raspberry Pi dus denkt dat er geen MySQL database te vinden is (b.v. OpenElec/XBMC had in het begin wat problemen dat XBMC te snel start en zelfs het starten van de netwerk verbinding niet snel genoeg was. 

      Maar … als je de QNAP op een vast tijd aan zet, ver voordat je de Raspberyy start, dan zou dit misschien goed kunnen werken omdat de RPi de MySQL nooit “gemist” heeft … ik vrees dat het een kwestie van uitproberen is 

      Beantwoorden

      hans

      • 13 dec 2013 - 13:23 - Mr Pink Reactie Link

        Na een weekje testen ben ik tot de conclusie gekomen dat je je Raspberry best even reboot nadat je Qnap is herstart of nadat je op een andere lokatie bronnen hebt toegevoegd. Het is ook beter om nieuwe media vanaf 1 snelle lokatie (bv pc/laptop) toe te voegen dan vanaf een Raspberry of iets dergelijks zodat het media-scrapen veel sneller werkt.

        ps: lijkt dit je geen leuk project : http://www.youtube.com/watch?v=YRMR8ERusYY

        Beantwoorden

        Mr Pink

        • 13 dec 2013 - 17:09 - hans Reactie Link

          Ja, de RPi is niet “de snelste”, ik heb zelf een tijdje gedacht om te kijken naar een oplossing op de QNAP die het scrapen doet. Daar weten we immers meteen wanneer een bestand toegevoegd of verwijderd wordt. Tot dusver, buiten de vraag stellen op het XBMC Forum, nog niets concreets in elkaar gezet …

          Hey, dat is mooi! 

          Ik vindt dat zeker een leuk projectje! Doet me denken aan een beter Philips Ambiance …!

          Ik ga daar vandaag eens naar kijken … mooie tip! Thanks!

          Beantwoorden

          hans

          • 13 dec 2013 - 18:06 - hans Reactie Link

            Erg mooi project – Boblight / LightPack, geweldig mooi effect en niet eens zo erg duur ($94 voor 90 LEDs).

            Wat wel jammer is:
            Als je het gebruikt op XBMC, dan werkt het dus niet voor andere apparaten zoals normale TV, XBox, PlayStation etc … ik ga eens verder kijken wat we daar aan kunnen doen  ….

            hans

  • 26 dec 2013 - 13:26 - jorg Reactie Link

    bedankt voor de handleiding…ik ben op zoek naar zoiets…maar dan net iets anders. heb helaas nog geen idee hoe het aan te pakken. hopelijk jullie wel ;-) 

    Mijn configuratie: 

    – Qnap 469L via HDMI direct verbonden met TV (werkt prima)

    – Qnap 469L via USB DAC (meridian explorer) direct verbonden met HIFI set (LINN hifi set, geeft fantastisch  geluid, vooral met FLAC hires files)

    – XBMC Eden : geïnstalleerd op Qnap. Helaas is nieuwere versie XBMC niet beschikbaar voor Qnap/HDStation (en voor zover ik begrijp gaat dat ook niet snel gebeuren).

    – Voor besturing Qnap HDStation/XBMC gebruik ik qremote en yatze (op Android telefoon). Ik luister vaak muziek en dan is yatze erg handig..daarvoor hoef ik geen monitor of TV aan te hebben.

    – alle  muziek en films staan op mijn Qnap/NAS

    Verder heb ik nog een versie van XBMC draaien op een losse PC in mijn netwerk. Die leest de muziek/films van de Qnap.

    Ik gebruik vooral de XBMC muziek functie op mijn Qnap en speel direct af op mijn hifi set. Vooral de hoge resolutie bestanden klinken geweldig (24/192).

    Wat me ondanks uren Googelen nog niet is gelukt: 

    – ik werk graag met playlists. Het maken van playlists direct op de Qnap/XBMC gaat lastig. Op mijn PC kan ik gemakelijk playlists aanmaken (bv via MP3tag of via Foobar of gewoon via XBMC op mijn PC). Maar het lukt me niet deze te lten herkennen door de XBMC versie op mijn Qnap. Hoe kan ik playlists op mijn Qnap plaatsen die ook door XBMC worden herkend?  en hoe kan ik deze dan delen bv met mijn XBMC op mijn PC?

    – Ik zie dat als ik aanpassingen doe op XBMC op mijn pc deze niet te zien zijn op mijn qnap versie (bv meest geluisterde muziek, laatst gespeeld, favorieten enz enz). Is het mogelijk dit te syncen? 

    Beantwoorden

    jorg

    • 26 dec 2013 - 17:38 - hans Reactie Link

      Hi Jorg,

      Ik heb zelf ook overwogen XBMC op de QNAP te draaien, maar door de langzame update naar nieuwere versie heb ik dat nog niet gedaan.
      Het probleem met XBMC versies is dat de database structuur per versie anders kan zijn. Dat zou kunnen verklaren waarom aanpassingen op de PC niet zichtbaar zijn op de QNAP versie. Beiden moeten precies dezelfde XBMC versie draaien. Ik gebruik zelf de OpenElec distributie, en die is niet beschikbaar voor de QNAP.

      Het kan ook zijn dat de paden op de PC net even anders zijn dan op de QNAP. Vergelijk de sources.xml file, in userdata, van beide machines.
      Ik had zelf ooit het probleem dat het pad naar een bestand op 4 manieren gedefinieerd kunnen worden:

      – smb://snapservernaam/pad/naar/video
      – smb://192.168.1.123/pad/naar/video
      – smb://gebruikersnaam:wachtwoord@snapservernaam/pad/naar/video
      – smb://gebruikersnaam:wachtwoord@192.168.1.123/pad/naar/video

      Met een Windows PC kun je dan ook nog eens gebruik maken van driveletters.

      Al deze varianten worden in de database gezien als andere files – dus als je een film bekijkt, dan wordt het record aangepast voor de paden op die machine. Maar de andere machine kijkt niet naar deze records omdat de andere machine het pad anders opgeslagen heeft.

      Zelf heb ik nog niet met playlists gewerkt, maar ik zie 2 mogelijke oorzaken:

      1. Als Playlists in MySQL staan dan heb je misschien hetzelfde probleem als de aanpassingen op de PC die niet zichtbaar zijn op de QNAP versie.
      2. PlayLists kunnen afhankelijk zijn van paden, en het kan zijn dat de paden in jouw PC net even anders zijn dan die van de QNAP.
      Het beste kun je de database openen met phpMyAdmin. Kijk voor video in de tabel “files” en voor muziek in de tabel “song”. Sorteer de tabel op filename en kijk of je dubbele vermeldingen ziet. Indien dat het geval is dan heb je waarschijnlijk te maken met het verschijnsel van verschillende paden.

      Beantwoorden

      hans

      • 28 dec 2013 - 0:16 - jorg Reactie Link

        Hi Hans,

        Bedankt voor je antwoord. Alles wordt me nu iets duidelijker…de video en muziek databases zijn aangemaakt, mysql server draait, phpmyadmin werkt prima ….maar:

        Ik ben een newby op qnap/Nas/Linux gebied. En heb werkelijk geen idee hoe de xml bestanden op de QNAP te bekijken en/of er nieuwe op te plaatsten (source/advanced). Mijn toegang tot de NAS heb ik via mijn PC/netwerk waarbij ik QTS 4
        gebruik. Dat lijkt een schil te zijn en ik krijg daarbij dus geen “root”
        toegang tot de NAS. Via file station van Qnap kan ik slechts gedeelde bestanden vinden, maar nergens de xbmc bestanden zoals source.xml. Enige tijd zoeken op het internet levert vreemd genoeg niets op…

        Enig idee hoe dat op qnap nas werkt?

        Beantwoorden

        jorg

      • 28 dec 2013 - 5:35 - hans Reactie Link

        Hi Jorg,

        De sources.xml vindt je op iedere XBMC computer in de userdata directory – ik weet niet waar ze op de QNAP staan.
        Dit bestand moet in principe dezelfde inhoud hebben voor elke machine die XBMC draait.

        In een forum vond ik een verwijzing naar 

        /share/MD0_DATA/.qpkg/XBMC/root/.xbmc/userdata/

        Je zou hier sources.xml moeten kunnen vinden.

        Merk op :
        Bepaalde XBMC distributies, zoals bijvoorbeeld OpenElec (niet voor de QNAP zelf dus!), heeft men deze directory als een netwerk share open staan, wat bewerken, kopiëren enzo stukken eenvoudiger maakt. Ik vermoed dat dit niet het geval zal zijn als je XBMC op de QNAP draait.

        Voor toegang tot de QNAP gebruikt men meestal SSH. 

        Onder Windows gebruik ik daar zelf vaak PuTTY voor (gratis),
        en onder MacOS X doe ik het vanuit “Terminal” (ssh admin@192.168.1.100 – waarbij 192.168.1.100 het IP adres van de QNAP is)

        Eenmaal ingelogd via SSH (het wachtwoord is jouw admin wachtwoord) kun je het e.e.a. in de shell doen waar je nu in zit.

        b.v. naar de directory gaan:

        cd /share/MD0_DATA/.qpkg/XBMC/root/.xbmc/userdata/

        en vervolgens de directory inhoud bekijken:

        ls

        ls (list – vergelijkbaar met het DIR commando onder MS DOS) varianten: 

        Ook verborgen bestanden laten zien:

        ls -a

        Uitgebreidere directory lijst laten zien:

        ls -l

        Uitgebreidere directory EN verborgen bestanden:

        ls -al

        Sources.cml met nano tekst-editor bewerken:

        nano sources.xml

        Tip :
        Na het bewerken van een bestand in nano, druk op CTRL+X om nano te verlaten, type “Y” en druk op ENTER om de wijzigingen op te slaan.
        Of al alles fout gaat: druk op CTRL+X, type “N” en druk op ENTER om de wijzigingen NIET op te slaan.

        Als je eerste een reserve kopie van het origineel wilt maken:

        cp sources.xml source.xml.orig

        Mocht je iets in sources.xml verknoeit hebben (kan natuurlijk gebeuren), zet dan zo het origineel terug (rm is het remove commando):

        rm sources.xml
        cp sources.xml.orig sources.xml

        Mocht je sources.xml niet handmatig willen invoeren, overweeg dan een kopie van het bestand op een van de QNAP shares te zetten.
        Ik heb b.v. een share “Download”, welke je dan vindt in “/share/MD0_DATA/Download” op de QNAP.
        Met het kopieer commando “cp” kun je dan het bestand van de share naar de userdata directory kopiëren, b.v.

        cp /share/MD0_DATA/Download/sources.xml /share//MD0_DATA/.qpkg/XBMC/root/.xbmc/userdata/

        Hopelijk helpt je dit een beetje op weg – ik weet dat de eerste stappen in Linux wat “eng” kan zijn.
        Ik volg zelf altijd de regel eerst een kopie te maken van bestanden die ik ga bewerken.

        Beantwoorden

        hans

    • 19 feb 2014 - 13:02 - marski Reactie Link

      Kijk een naar de Subsonic app voor op je Qnap jorg.

      Deze is wel afhankelijk van Java JRE en Tomcat services die je dus ook op je Qnap moet zetten.

      Hier zie je hoe-> Subsonic.

      Ik gebruik deze app voor al mijn muziek. onderweg mobiel, thuis ipad naar AV receiver met airplay maar voor de 24/192

      bestanden gebruik ik openelec omdat een utp kabel wel gewenst is…

      Beantwoorden

      marski

  • 19 feb 2014 - 11:55 - marski Reactie Link

    Om het allemaal wat minder eng te maken voor Linux\Qnap\Openelec gebruikers is Winscp voor Windows een fijne app.

    Hierin kun je ook Putty definiëren zodat vanuit Winscp ook putty kan opstarten aanspreken.

    Wel ssh verbindingen toestaan op je Qnap en Openelec machines.

    openelec standaard ssh paswwoord = openelec

    Qnap ssh standaard login = admin

    Ik heb zelf een aangepaste Qnap TS-509pro waar nu TS-809Pro firmware op staat

    met 8 * 3TB schijven en een Intel E7600 CPU met 4GB Mem CPU watercooled

    Deze Qnap heeft GEEN HDMI out en een lokale XBMC draaien is dan ook geen optie.

    De bovengeschreven handleiding werkt prima met de laatste versie van Openelec 3.2.4 (op mijn huiskamer mediacenter)

    en normale PC, laptop (met xbmc voor windows) en Ipad (xbmc voor ipad) icm een MySQL config op je Qnap.

    Ik had in het begin wel problemen dat mijn Openelec machine de MySQL versie soms niet kon benaderen na het opstarten.

    Maar de Openlec optie Wait for network before starting xbmc was de oplossing.

    Nog even uitzoeken hoe ik de posters en Fanart kan delen/aanspreken over het netwerk en dan ben ik er voorlopig wel weer klaar mee 

    Als je een goede CPU in je Qnap hebt (X86) en een beetje geheugen zorg ervoor dat je van deze Qnap apps zeker gebruikt maakt:

    – Sabnzbd+ (liefst met een payserver account)

    – Spotweb (zelf een usenet index draaien op je qnap veel nederlands!)

    – Sickbeard (1 malig TV serie toevoegen en hij download automatisch de rest of het verleden)

    – Couchpotato (Film toevoegen en zodra deze ergens op usenet/torrents staat download hij deze)

    – headphones  (muziek toevoegen en deze app gaat automatisch op zoek)

    – Transmission (altijd een torrent alternatief achter de hand)

    – Gallery3 (met je Android gallery3 app schrijf je gelijk foto’s weg naar je server ook als je onderweg bent)

    – Subsonic (Je music library fatsoenlijk taggen is geen overbodige luxe maar dan heb je ook wat!)

    En met de Anroid App NZB360 kan ik met Sabnzbd, spotweb, sickbeard en couchpotato alles beheren onderweg 

    Beantwoorden

    marski

    • 19 feb 2014 - 17:29 - hans Reactie Link

      Thanks Marski! Erg goede info!

      Ik heb zelf ook 8 * 3Tb, maar de CPU aanpassen zal wat lastiger zijn met een TS-869 Pro … 

      Wat extra geheugen betreft: ik heb ook extra geheugen geïnstalleerd, wat hekend wordt, maar het lijkt erop dat het niet gebruikt wordt … heb je hiervoor tips?

      Beantwoorden

      hans

      • 20 feb 2014 - 9:42 - Marski Reactie Link

        Hallo Hans,

        Wanneer zie je dat het herkend wordt? in de BIOS of het de AdminGui?

        Ik ben niet zo’n “BetaMan” maar ik heb al een maandje of anderhalf (voor het eerst:) de

        Beta Firmware draaien die het prima doet tot nu toe: QTS 4.1 Beta

        Ik heb er 2 * 2GB Kingston so-dimms in zitten en hij ziet 3.5Gb in de AdminGui hardware informatie.

        Het is wel slim 2 gelijke modules in je Qnap te steken. Er staat bij jou Qnap dat je maar max tot 3Gb kan gaan.

        Ik denk als jij er 2 * 2Gb inzet, je hetzelfde zou moeten zien en dus een berperking van de Qnap firmware (X86).

        Niet erg want 3,5Gb is genoeg voor mij tot nu toe:)

        Beantwoorden

        Marski

        • 20 feb 2014 - 17:50 - hans Reactie Link

          De SO-SIMM wordt netjes herkend in de webUI en in de shell en beiden geven 3Gb aan (wat i.d.d. de beperking is):

                        total         used         free       shared      buffers
            Mem: 3073224 2969612 103612 0 94308
           Swap: 530044 68052 461992
          Total: 3603268 3037664 565604

          Maar … ik zie nu dat de WebUI een vreemde weergave geeft …  de shell geeft aan dat bijna alles gebruikt wordt terwijl de WebUI zegt maar 1.2 Gb te gebruiken … so never mind haha 

          Dank je wel voor de info!

          Beantwoorden

          hans

  • 5 aug 2014 - 19:31 Reactie Link
    PingBack: www.tweaking4all.nl

    […] Ik heb een XBMC machine continue aanstaan, en in dat geval is het handig dat je het een notificatie kan sturen zodat het de database update (vooral als je de database via MySQL deelt voor verschillende XBMC machines). […]

  • 17 sep 2014 - 14:26 - Velocus Reactie Link

    Of je gebruikt Plex Media Server in combinatie met RasPi met RasPlex. 

    Beantwoorden

    Velocus

  • 28 aug 2015 - 16:59 - Forssux Reactie Link

    Hoi,

    Bedankt voor de tips met de versnelling betreffende de mysql.
    Zelf ben ik nog steeds geen overtuigde fan van het database gebeuren.
    Voeg je een film(s) toe moet je de database updaten wat tijd vraagt ….

    Je kan geen indeling maken in je structuur (man/vrouw/kinderen)

    De scraper slaat soms de bal mis ..

    Heb je nog gewerkt om de scraper op je NAS continue te laten draaien?

    Vriendelijke groeten

    Beantwoorden

    Forssux

    • 29 aug 2015 - 11:22 - hans - Auteur: Reactie Link

      Hi Forssux,

      Ik moet zeggen dat het hele database gebeuren bij erg vlot werkt. Ik kan het verschil tussen de lokale database (SQLite) die Kodi standaard gebruikt, en het gebruik van MySQL. Het is wel aan te raden (zeker als je heel veel films of TV episodes hebt) om te kiezen voor Ethernet ipv van draadloos, en dan liefst natuurlijk een 1Gbs netwerkje.

      De database heeft zeker nog wat wensen open, maar je ziet (als het goed is) dezelfde gebreken ook bij het gebruik van SQLite.

      Zo vindt ik het bijzonder irritant dat de database gekopieerd en aangepast wordt voor elke nieuwe XBMC/Kodi versie en dat de versies onderling niet compatible zijn. Beetje slordig, maar dat zal wel te maken hebben met de niet stilstaande ontwikkeling van de database tabellen (zowel lokaal als op de server).

      Een andere lastige kant (ook dit geld weer voor lokaal en netwerk database) is dat het verplaatsen van bestanden met de nodige ellende komt, en omdat de database nooit echt goed opgeruimd wordt, blijf je dan onnodige duplicaten houden of bestanden die niet meer bestaan. Gelukkig doe ik dat niet vaak.

      Indeling maken zou misschien kunnen d.m.v. profielen die je in Kodi schijnt te kunnen gebruiken – maar daar heb ik nog niet mee gespeeld (bij gebrek aan vrouw en kinderen). Het zou zo ook mooi zijn als men kon aangeven wie wat bekeken heeft.

      Wat de scraper betreft: ik heb daar nog geen problemen mee gehad, maar ik moet dan wel zeggen dat ik het scrapen door SickBeard/SickRage voor TV shows doe, en voor films gebruik ik handmatig ViMedia Manager (voor de Mac), dus daar kan al weinig fout gaan.

      Voor een headless Kodi heb ik wel rond gekeken en gevraagd, maar tot nog toe nog geen oplossing gezien. Ik gebruik dan ook een Amazon Fire TV (Android doosje) die continue aanstaat. Beetje maf en energie verspilling.
      Ik overweeg nu om een Amazon Fire TV Stick te gaan gebruiken. Deze kan de voeding van de QNAP pakken en is lekker klein zodat het naast de QNAP kan blijven liggen. Maar … eigenlijk is dat te zot voor woorden natuurlijk … 
      Zodra ik daar een goede oplossing voor heb dan zal ik die zeker hier posten! 

      Beantwoorden

      hans

    • 29 aug 2015 - 11:58 - hans - Auteur: Reactie Link

      Dacht net: toch even opzoeken of er vooruit gang zit in het headless draaien van Kodi/XBMC op de QNAP (of een andere NAS), en nu zie ik in een announcement van Kodi dat dit mogelijk is. Zie deze Kodi link en dit bijbehoren forum draadje.

      Ik ga eens kijken wat we daarmee kunnen doen ….

      Beantwoorden

      hans

    • 29 aug 2015 - 12:24 - hans - Auteur: Reactie Link

      Blijkt dat Kodi well headless kan draaien maar dat het nog wel in de kinderschoenen staat … 
      Ben zelf niet zo happig op dit soort experimenten op m’n NAS, dus ik blijf nog (steeds) even wachten tot het echt door Kodi goed ondersteund wordt of dat er een goede QPKG beschikbaar komt voor een 869 of een 569. Tot dusver is dat alleen maar voor de oude XBMC 12, en daar hebben we niks aan. De nieuwere versies zijn voor de meeste QNAP’s niet geschikt … geen idee waarom.

      Mocht je XBMC/Kodi op een QNAP willen draaien dan zijn er 3 mogelijkheden:

      1. Handmatig installeren

      Dit is iets dat ik alleen experts kan aanraden, en ik durf er zelf nog niet mee aan de slag.

      2. Via QNAP’s “HybridDesk Station”

      Dit kun je vinden op het config scherm van jouw QNAP, onder “Control Panel” – “Applications” – “HybridDesk Station”.

      3. QPKG installeren

      Dit is echter alleen aan de nieuwere QNAP’s voorbehouden (lijkt het).

      Beantwoorden

      hans

  • 28 sep 2016 - 20:29 - Ed! Reactie Link

    Ik heb het geprobeerd op een openElec ivm mysql op Qnap, Het vullen van de database ging prima. Maar vervolgens het lezen  tijdens het ‘gevowone’ gebruik van kodi dus, kan -ie niet connecten met de database.  Ik heb onderstaand ook van te voren uitgevoerd:

    GRANT ALL ON `MyVideos%`.* TO 'KodiUser';
    GRANT ALL ON `MyMusic%`.* TO 'KodiUser';

    Iemand enig idee ? 

    Beantwoorden

    Ed!

    • 1 okt 2016 - 11:45 - hans - Auteur: Reactie Link

      Hoi Ed!

      Kun je in de log file van KODI kijken wat het zegt over de verbinding?
      Beetje vreemd dat de database wel gevuld wordt maar dat KODI er dan niet kan connecten, terwijl dat voor het vullen eigenlijk al nodig was?

      Overigens: graag alleen kleine fragmenten van de log posten, of een onderwerp in het forum openen met de hele log file (anders worden de opmerkingen hier veel te lang voor andere gebruikers).

      Beantwoorden

      hans

  • 25 okt 2017 - 11:51 - c0de1 Reactie Link

    Hoi, super uitleg wat je hier gedaan hebt!

    Vraag werkt dit ook als ik alleen Trakt gebruik en geen local library in kodi aanmaak, of werkt dit alleen als je een eigen library aanmaakt in Kodi?

    Ik gebruik namelijk alleen de serie lijst in Trakt en die synced in Covenant plugin.

    Alvast bedankt voor je antwoord !

    Beantwoorden

    c0de1

    • 25 okt 2017 - 14:29 - hans - Auteur: Reactie Link

      Dank je wel voor het compliment! 

      Ik gebruik Trakt zelf niet. Als het een aparte “applicatie” is, dan waarschijnlijk niet. Bij plugins is het ook altijd maar een gok of de plugin de juiste database gebruikt of zelf een database maakt buiten het Kodi gebeuren om.

      Van wat ik zo 1-2-3 kon vinden, zou het kunnen dat het werkt (zie ook deze Reddit discussie).

      Beantwoorden

      hans

  • 23 feb 2021 - 11:00 - tommiedepommie Reactie Link

    Hallo iedereen,

    Hans, bedankt voor deze handleiding die goed werkt tot versie 18.9.

    Maar LET OP bij het upgraden naar Kodi 19 dat je een backup van je database maakt. 

    Nadat ik Kodi ge-update had op mijn Shield, werkte  Kodi niet meer. Ik moest de advancedsettings.xml hernoemen en vervolgens herstarten om Kodi te kunnen gebruiken.

    Kennelijk gebruikt Kodi 19 een nieuwere layout van de database. 

    Ik heb een nieuwe database op mijn Qnap aangemaakt, kodi, en de bibliotheek opnieuw aangemaakt en vervolgens weer geïmporteerd.

    Nu werkt het weer als een zonnetje.

    In deze link wordt ook het e.e.a. besproken :  https://forum.kodi.tv/showthread.php?tid=357177

    groet Tom

    Beantwoorden

    tommiedepommie

    • 23 feb 2021 - 12:36 - Hans - Auteur: Reactie Link

      Hoi Tom,

      Dank je wel voor de heads-up! 

      Ik draai Kodi zelf ook op een Shield en na de update naar Matrix (19) werden een aantal configuratie bestanden overschreven, dus de verbinding naar de database was ineens weg.
      Dit is niet de eerste keer dat me dit overkomt, dus ik had nog een backup liggen van de configuratie bestanden. Na het terug zetten van de bestanden werkte alles weer prima.
      Het betreft deze bestanden in “userdata”:

      • advancedsettings.xml
      • favourites.xml
      • mediasources.xml
      • passwords.xml
      • sources.xml

      Deze bewaar ik nog eens extra op de Shield zodat ik niet hoef te rommelen met netwerk-shares etc.

      De database was dus OK – bij database versie updates maakt Kodi automatisch een kopie van de data van de oude database versie naar de nieuwe database.
      je kunt dit op jouw QNAP ook zien in phpMyAdmin.

      Ik heb ook voor de zekerheid even naar de database versie gekeken, en deze is inderdaad van video116 naar video119 gegaan (al tijdens de beta en RC’s).
      Dit levert bij mij nooit problemen op, maar het feit dat de config bestanden verdwijnen na een dergelijke update is altijd wel even lastig.
      Wat structuur betreft is er niet veel veranderd. Ik heb ooit eens een programma gemaakt om de video’s wat makkelijker te beheren en deze werkt nog steeds correct met de nieuwe versie.

      Beantwoorden

      Hans



Jouw Opmerking ...

Plaats hier geen grote bestanden (zoals source codes, log files of config files). Gebruik hiervoor het Forum.

Delen:
*
*
Laat me per email weten als er nieuwe reacties zijn.
       Je kunt jouw RSS reader gebruiken om reacties te volgen.


Tweaking4All gebruikt de gratis Gravatar dienst voor Avatar weergave.