Kodi is nog steeds een van de krachtigste mediacentertoepassingen die er zijn, en het werkt op alles, van krachtige media-pc’s tot kleine Raspberry Pis. Maar als je meerdere tv’s in huis hebt, zou het dan niet fijn zijn als ze allemaal synchroon bleven?
Als je meerdere Kodi-machines hebt, herkennen ze elkaar standaard niet. Afleveringen die u op de ene tv hebt bekeken, worden op een andere tv niet als ‘bekeken’ weergegeven. Zou het echter niet leuk zijn als de Kodi-box in je slaapkamer wist wat je in de woonkamer zag, en vice versa? Zou het leuk zijn als je zou kunnen stoppen met het kijken naar een film in de woonkamer en verder zou kunnen kijken waar je was gebleven ergens anders in huis?
Nou, het is mogelijk – het vergt slechts een beetje installatie. Hier is hoe het te doen.
Wat je nodig hebt
De kern van de synchronisatiemagie die we gaan ondernemen, is een MySQL-database. Geen paniek als je er nog nooit een hebt gebruikt! Het vereist een beetje technische knowhow, maar we zijn hier om u bij elke stap te begeleiden. Als u nauw volgt, zou u geen problemen moeten hebben.
Wat we gaan doen is een gratis versie van MySQL-server installeren en vervolgens al je Kodi-machines instrueren om een database op die server als bibliotheek te gebruiken (in plaats van een aparte database op elke individuele computer). Vanaf dat moment, wanneer Kodi controleert of je een specifieke aflevering of film van een tv-programma hebt gezien, media hebt gepauzeerd of een bladwijzer hebt ingesteld, zal het niet alleen antwoorden voor het specifieke mediacentrum waar je voor staat , maar voor alle mediacentra in huis.
Voor dit project heb je het volgende nodig:
- Meer dan één mediacentrum waarop Kodi is geïnstalleerd (ze moeten allemaal dezelfde basisversie van Kodi zijn – we zullen v17 “Krypton” gebruiken in deze handleiding).
- Een gratis exemplaar van MySQL Community Server — de Kodi-wiki raadt aan om versie 5.5 te gebruiken in plaats van de nieuwere 5.7, dus dat is wat we zullen gebruiken voor deze tutorial.
- Een computer die altijd of bijna altijd aan staat om de MySQL-server op te draaien.
U kunt de MySQL-server installeren op elke computer die constant aan staat terwijl u de mediacenters gebruikt. In ons geval gaan we MySQL installeren op dezelfde always-on thuisserver waarop we onze films en tv-programma’s opslaan – op die manier, elke keer dat de media beschikbaar zijn voor Kodi, is dat ook de database.
Stap één: installeer de MySQL-server
Voor deze tutorial installeren we MySQL op een mediaserver met Windows 10. Onze installatie-instructies moeten overeenkomen met elke versie van Windows. Raadpleeg voor andere besturingssystemen de MySQL 5.5-handleiding.
De installatie van MySQL is eenvoudig. Download gewoon de serverinstallatie-app en voer deze uit. Accepteer de licentieovereenkomst en de “Standaard” installatie. Als het klaar is, zorg er dan voor dat “Launch the MySQL Instance Configuration Wizard” aangevinkt is, en klik op Finish.
De MySQL-configuratiewizard wordt gestart en biedt u de mogelijkheid om te kiezen tussen gedetailleerde en standaardconfiguratie. Selecteer Standaardconfiguratie en klik op Volgende.
Vink op het volgende scherm ‘Installeren als Windows-service’ aan, noem het MySQL – of, als u meerdere MySQL-servers voor een bepaald doel gebruikt, geef het een unieke naam – en vink ‘De MySQL-server automatisch starten’ aan om ervoor te zorgen dat de MySQL server staat altijd aan wanneer u deze nodig heeft.
Vink op het volgende scherm Beveiligingsinstellingen wijzigen aan, sluit een nieuw root-wachtwoord aan en vink Root-toegang vanaf externe machines aan.
Klik door naar het laatste scherm en druk op Execute om de wizard alles te laten instellen met de parameters die je hebt gespecificeerd. Als het klaar is, gaat u verder met stap twee.
Stap twee: stel uw MySQL-gebruiker in
Vervolgens is het tijd om een gebruikersaccount aan te maken op de MySQL-server voor uw mediacentra. Hiervoor hebben we wat opdrachtregelwerk nodig. Start om te beginnen de MySQL Command Line Client – u zou er een vermelding voor in uw Startmenu moeten hebben.
Wanneer de console wordt geopend, voert u het wachtwoord in dat u in de vorige stap hebt gemaakt. U bevindt zich dan op de MySQL-serverprompt.
Typ bij de prompt de volgende opdrachten en druk na elk op Enter om een gebruiker op de databaseserver te maken:
CREATE USER 'kodi' IDENTIFIED BY 'kodi';
GRANT ALL ON *.* TO 'kodi';
flush privileges;
Het eerste deel van het eerste commando creëert de gebruiker, het tweede deel creëert het wachtwoord. Hoewel identieke login / wachtwoorden in dit geval over het algemeen een enorm veiligheids-nee-nee zijn, gebruiken we omwille van de eenvoud een passend paar. Een MySQL-database op een privéserver die bijhoudt welke afleveringen van Dexter je hebt bekeken, is nauwelijks een installatie met een hoog risico.
Dat is alles wat u voorlopig hoeft te doen in de opdrachtregel – hoewel we u echter aanraden de opdrachtprompt open te houden voor de MySQL-server, aangezien we later zullen inchecken en een kijkje zullen nemen in de databases zodra Kodi ze heeft gemaakt voor ons.
We hebben nog een laatste taak voordat we Kodi gaan configureren. Zorg ervoor dat poort 3306 (de MySQL-serverpoort) open staat op de firewall van de computer waarop je MySQL hebt geïnstalleerd. Standaard is het Windows-installatieprogramma zou moeten open de poort automatisch, maar we hebben situaties gezien waarin dit niet het geval was. De gemakkelijkste manier om de poort te openen, is met een PowerShell-opdracht. Zoek naar PowerShell in uw Start-menu, klik er met de rechtermuisknop op en kies “Uitvoeren als Administrator”.
Voer vervolgens de volgende opdracht uit en druk op Enter:
New-NetFirewallRule -DisplayName "Allow inbound TCP Port 3306 for MySQL" -Direction inbound –LocalPort 3306 -Protocol TCP -Action Allow
Als de opdracht succesvol was, zoals hieronder weergegeven, zou het goed moeten zijn om door te gaan.
Stap drie: maak een back-up van uw huidige Kodi-bibliotheek (optioneel)
VERWANT: Hoe u uw Kodi-illustraties opslaat in dezelfde map als uw video’s
Kodi gebruikt standaard een interne SQLite-database. Om ervoor te zorgen dat Kodi effectief kan communiceren via uw thuisnetwerk, moeten we het opdracht geven om een externe MySQL-database te gebruiken. Voordat we echter bij die stap komen, moet u een uitvoerende beslissing nemen: u kunt een back-up maken van uw huidige bibliotheek en deze later herstellen (wat soms lastig kan zijn), of u kunt opnieuw beginnen met een nieuwe bibliotheek (die is eenvoudig, maar vereist dat u de bekeken status van uw shows opnieuw instelt en mogelijk uw illustraties opnieuw kiest als u deze niet lokaal opslaat).
Als u een back-up van uw huidige bibliotheek wilt maken, kunt u dit doen vanuit Kodi. Doe dit maar vanaf één machine – kies de machine met de meest actuele bibliotheken. Open Kodi en ga naar Instellingen> Media-instellingen> Bibliotheek exporteren. (Als je deze opties niet ziet, zorg er dan voor dat je menu’s in Kodi zijn ingesteld op “Geavanceerd” of “Expert”.)
U kunt uw bibliotheek exporteren als een enkel bestand of als afzonderlijke bestanden. Met een enkel bestand kunt u uw back-up op één plek plaatsen, terwijl meerdere bestanden extra JPG- en NFO-bestanden in uw mediamappen zullen verspreiden – dit is betrouwbaarder, maar behoorlijk rommelig. Kies welke optie u maar wilt.
Als er een back-up van uw bibliotheek is gemaakt, gaat u verder met de volgende stap.
Stap vier: configureer Kodi om uw nieuwe MySQL-server te gebruiken
Zodra je een back-up van de bibliotheek hebt gemaakt (of ervoor hebt gekozen je er geen zorgen over te maken en helemaal opnieuw te beginnen), ben je klaar om Kodi naar je MySQL-server te verwijzen. Je moet deze stap uitvoeren op elke computer waarop Kodi draait, maar we raden je aan om het eerst op één computer in te stellen – waarschijnlijk dezelfde computer waarvan je een back-up hebt gemaakt van je bibliotheek, als je ervoor kiest om dit te doen.
Om Kodi naar MySQL te laten verwijzen, moeten we het bestand advancedsettings.xml van Kodi bewerken. Dit bestand bestaat standaard niet (hoewel het mogelijk is dat Kodi er tijdens het installatieproces een heeft gemaakt om specifieke configuratieproblemen op te lossen). Als het bestand advancedsettings.xml bestaat, bevindt het zich op de volgende locatie, afhankelijk van uw besturingssysteem:
- ramen: C: Gebruikers [username] AppData Roaming Kodi userdata
- Linux en andere live-versies van Kodi: $ HOME / .kodi / userdata
- macOS: / Gebruikers /[username]/ Bibliotheek / Application Support / Kodi / userdata
Kijk in die map. Is daar een advancedsettings.xml-bestand? Ja? Maak het open. Nee? U moet een teksteditor openen en er een maken. Ongeacht of u de bestaande bewerkt of een nieuwe maakt, knip en plak de volgende tekst in het bestand (opmerking: als er al enkele vermeldingen in uw advancedsettings.xml-bestand staan, laat die dan staan en plaats deze waarden in de juiste secties):
mysql
192.168.1.10 3306 kodi kodi
mysql
192.168.1.10 3306 kodi kodi
Bewerk de bovenstaande tekst om het IP-adres van uw server op uw LAN en de gebruikersnaam / wachtwoord van uw MySQL-database weer te geven (in ons voorbeeld was het gewoon kodi / kodi). Met deze basisinstelling zouden je video- en muziekbibliotheken moeten worden gesynchroniseerd, maar je kunt ook andere delen van Kodi synchroniseren en meerdere profielen synchroniseren met het naamlabel als je ze gebruikt.
Zodra uw advancedsettings.xml-bestand klaar is voor gebruik, opent u Kodi op die machine. U moet uw bibliotheek importeren (via Instellingen> Media-instellingen> Bibliotheek importeren) of uw bronnen opnieuw scannen om de MySQL-database helemaal opnieuw te vullen. Doe dat nu.
Wanneer dat is gebeurd en uw bibliotheek weer op zijn plaats is, kunt u naar uw MySQL-opdrachtprompt gaan en controleren of Kodi de databases heeft gemaakt en gevuld. Voer bij de mySQL comment prompt het volgende uit:
SHOW DATABASES;
Het zal alle databases uitvoeren die momenteel op de MySQL-server staan. U zou minimaal de volgende databases moeten zien: information_schema
, mysql
, en performance_scheme
, aangezien deze deel uitmaken van de MySQL-installatie zelf. De standaard databasenamen voor Kodi zijn myvideos107
en mymusic60
(we gebruiken in ons voorbeeld geen database voor muziek, dus alleen onze videodatabase verschijnt in de lijst).
Als u ooit een database van uw MySQL-server moet verwijderen, kunt u de volgende opdracht gebruiken:
DROP DATABASE databasename;
Lege databases nemen nauwelijks ruimte in beslag en hebben geen negatieve invloed op de prestaties van uw synchronisatiesysteem, maar het is prettig om de zaken netjes te houden.
Als uw databases er zijn, is dat een goed begin, maar het is de moeite waard om een eenvoudige controle uit te voeren om te zien of Kodi de databases correct vult. Voer vanaf de MySQL-opdrachtprompt de volgende opdrachten uit (vervang databasename
met de naam van uw videodatabase):
SELECT COUNT(*) from databasename.movie;
SELECT COUNT(*) from databasename.tvshow;
Elke zoekopdracht retourneert het totale aantal films en tv-programma’s in uw bibliotheek (volgens de MySQL-database). Zoals u kunt zien, herkent het in ons geval onze bibliotheek met 182 films en 43 tv-programma’s:
Als het aantal vermeldingen nul is, is er ergens een probleem. Hier is een snelle checklist voor het oplossen van problemen met veelvoorkomende fouten:
- Heb je het bestand advancedsettings.xml naar je computer gekopieerd voordat je Kodi startte en je bibliotheek opnieuw vulde?
- Heb je het GRANT ALL-commando gebruikt om het Kodi-account toegang te geven tot de MySQL-server?
- Heb je poort 3306 op de firewall van de MySQL-hostmachine geopend?
- Zijn uw bronnen geldig en scanbaar wanneer u het bestand advancedsettings.xml verwijdert en terugkeert naar de lokale database? Als dit niet het geval is, moet u uw bronnen onafhankelijk van uw MySQL-problemen oplossen.
Als alles er goed uitziet en jouw SELECT COUNT
query pans out, dat betekent dat u klaar bent om te profiteren van de cross-media-center synchronisatie.
Stap vijf: Herhaal stap vier voor uw andere Kodi-machines
Het moeilijke deel is voorbij! Nu hoef je alleen maar naar elk van je andere Kodi-machines te gaan en dezelfde tekst in het advancedsettings.xml-bestand te plaatsen die je in stap vier hebt gedaan. Zodra je dit hebt gedaan (en Kodi opnieuw hebt opgestart op die computer), zou het onmiddellijk je bibliotheekinformatie van de MySQL-server moeten halen (in plaats van dat je de bibliotheek zelf opnieuw moet vullen).
Op sommige apparaten, zoals Raspberry Pis met LibreELEC, moet je naar de netwerkinstellingen gaan en ervoor zorgen dat “Wacht op netwerk voordat Kodi wordt gestart” is ingeschakeld om dit correct te laten werken.
Als uw video’s zich op een gedeelde map bevinden waarvoor een wachtwoord is vereist en u een foutmelding krijgt na het instellen van uw advancedsettings.xml op een nieuwe computer, moet u mogelijk naar de weergave “Bestanden” gaan en op “Video’s toevoegen” klikken. en open een map op de share, zodat Kodi u om uw inloggegevens vraagt. U kunt vervolgens op “Annuleren” klikken of de bron toevoegen met het type “Geen”.
Probeer van daaruit een video op één doos te bekijken. Je zou moeten ontdekken dat als je klaar bent, het ook op je andere Kodi-apparaten wordt weergegeven als “bekeken”! U kunt zelfs een video op de ene machine stoppen en vervolgens verdergaan waar u was gebleven door deze gewoon te selecteren om op een andere machine af te spelen. Geniet van uw nieuwe synchronisatie van uw hele huisbibliotheek!
Image Credit: FLIRC Kodi Edition Raspberry Pi-behuizing