Inleiding
Inleiding
Tussen de duizenden opensourceprojecten die op het internet zijn te vinden, zitten tal van pareltjes. Een daarvan is XBMC. Deze opensource-mediaspelersoftware bestaat al ruim tien jaar en is inmiddels beschikbaar op tal van platforms. De software is bijvoorbeeld inzetbaar op een Raspberry Pi, een computer die minder dan dertig euro kost, of een Android-budgettablet van een kleine honderd euro. XBMC is echter ook geschikt om te draaien op een krachtige htpc. Ook kan XBMC gemakkelijk uitgebreid worden, bijvoorbeeld met add-ons of met een nieuw uiterlijk door middel van skins.
Mede dankzij deze veelzijdigheid en flexibiliteit kent XBMC veel fans, evenals een actieve ontwikkelcommunity. Developers zijn al meer dan tien jaar bezig om de functionaliteit uit te breiden. In dit achtergrondartikel bekijken we de ontstaansgeschiedenis van XBMC en de huidige mogelijkheden van de software op verschillende platforms, en we doorlopen een aantal van de beste add-ons die beschikbaar zijn.
/i/1370440212.jpeg?f=imagenormal)
De ontstaansgeschiedenis
De eerste Xbox van Microsoft, die in 2001 werd uitgebracht, was gebaseerd op x86-hardware en was daarmee in feite een pc. Het apparaat, dat een 733MHz-Intel Pentium III had, bleek niet alleen geschikt voor het spelen van games, maar ook voor multimediatoepassingen. Zo speelde de console verdienstelijk dvd's af. Aangezien de Xbox echter primair op gaming was gericht, had Microsoft hem voorzien van een aantal beveiligingen van het Palladium-platform van het bedrijf, zodat bezitters geen eigen code konden draaien. Zo moest software voorzien zijn van de juiste digitale handtekening om gestart te kunnen worden.
Microsofts beveiligingen wekten wrevel bij de opensource- en Linux-gemeenschap. In potentie was de Xbox een console die ook prima voor pc-gebruik ingezet zou kunnen worden, maar daar gaf de softwaregigant geen mogelijkheden voor. De jacht om de Xbox te hacken was dan ook geopend en er werden zelfs geldprijzen uitgeloofd voor degene die als eerste Linux aan de praat kreeg. Via onder andere reverse engineering lukte het een slimme hacker om eigen code te laten draaien.
Zoals met vrijwel alle consoles is gebeurd, kregen hackers het voor elkaar om de beveiligingsbarrières te omzeilen. Vervolgens begonnen developers eigen software te ontwikkelen voor de Microsoft-console, ook bekend als homebrew. Een van die softwarepakketten was Xbox Media Player, een programma waarmee mediabestanden afgespeeld konden worden op de XBox. De software was opensource en gebaseerd op Mplayer als afspeelsoftware. Bovendien kon het niet alleen mediabestanden afspelen vanaf dvd of de interne harde schijf, maar ook van netwerkshares.
Een ander pakket, Yamp, poogde ook een mediaspeler te leveren voor de Xbox, maar na enkele releases besloten de twee ontwikkelteams te gaan samenwerken. Al snel werd het project XBMC genoemd, een afkorting voor Xbox Media Center. Versie 1.0 verscheen in december 2003. XBMC was al bij zijn eerste release voorzien van onderscheidende functionaliteit, zoals het kunnen afspelen van iso-images en rar-archieven, het aanleggen van een mediabibliotheek en upnp-streamingmogelijkheden. De XBMC-developers brachten in september 2006 versie 2.0 van de mediacentersoftware uit. De software was nu onder andere in staat om verschillende soorten afspeelsoftware te gebruiken, terwijl ook het uiterlijk flink was opgepoetst.
In 2007 was de Xbox aardig op leeftijd gekomen. De console was bovendien al opgevolgd door de Xbox 360. De hardware van de 'oude' Xbox bleek niet krachtig genoeg voor het afspelen van hd-materiaal. Een aantal developers, actief in Team XBMC, was al bezig met een port van XBMC naar Linux. De ontwikkelaars besloten om de Xbox niet langer te ondersteunen en alle pijlen op recentere x86-hardware te gaan richten. Een losstaand project, XBMC4Xbox, zou de oude Microsoft-console nog wel blijven ondersteunen.
Het porten van XBMC naar andere platforms ging aanvankelijk wat stroef, omdat veel code gebaseerd was op Microsofts DirectX. Deze moest worden omgezet naar open standaarden, zoals OpenGL en SDL. Na enige tijd was de 'overstap' gemaakt, terwijl de populariteit van de software sterk was gegroeid. Bovendien was veel hardware inmiddels voldoende krachtig geworden om hd-content af te spelen.
/i/1370437778.jpeg?f=imagenormal)
Flexibiliteit
De redenen waarom XBMC veel populariteit geniet zijn divers. Een daarvan is zonder twijfel de flexibiliteit van de software. Die 'kneedbaarheid' is mede te danken aan het feit dat de broncode opensource is en daardoor aanpassingen en verbeteringen vrij snel zijn te maken. Bovendien wordt het schrijven van nieuwe code goed begeleid door Team XBMC en de achterliggende community, waardoor er met enige regelmaat nieuwe releases uitkomen.
Doordat XBMC steeds verder wordt ontwikkeld, draait het inmiddels op tal van platforms, waaronder het mobiele ARM-platform, en diverse besturingssystemen. Hierdoor komen we opnieuw op een enorm pluspunt van XBMC; het draait inmiddels op vrijwel alle hardware, van een 25 euro kostende Raspberry Pi tot een htpc van duizenden euro's, en kan dus in allerlei vormen ingezet worden als mediacentersoftware.
/i/1371152590.jpeg?f=imagenormal)
Het open karakter wordt ook goed zichtbaar binnen XBMC zelf. De functionaliteit kan sterk worden vergroot door middel van add-ons, waarover later meer. Ook eenvoudige programma's zijn mogelijk, met behulp van scripting, terwijl er tal van koppelingen gelegd kunnen worden met externe software. Het uiterlijk is aanpasbaar door middel van uitgebreide ondersteuning voor skinning.
Een van de sterkste kwaliteiten van XBMC is zonder twijfel de mediabibliotheek, waarin tv-series, films, muziek en afbeeldingen uitgebreid zijn te catalogiseren. Veel metadata, bijvoorbeeld achtergrondinformatie over een film, kan met behulp van zogeheten scrapers van het internet worden gehaald, waarbij de gebruiker eventueel zelf kan bepalen welke bron de voorkeur krijgt. De achterliggende database van de mediabibliotheek kan gedeeld worden met andere XBMC-clients en is ook via bijvoorbeeld een webbrowser te benaderen.
XBMC is op tal van manieren te bedienen. Zo kan een draadloos toetsenbord worden gebruikt, maar ook diverse afstandsbedieningen zijn inzetbaar om door de interface te wandelen. Ook heeft Team XBMC mobiele apps voor iOS en Android ontwikkeld onder de naam Official XBMC Remote. Deze laat de gebruiker door zijn mediabibliotheek struinen door middel van zijn tablet of smartphone.
Het afspelen van mediabestanden levert volgens onze ervaringen bij XBMC vrijwel nooit problemen op. De software slikt vrijwel alle bestandsformaten en hardwarematige versnelling is op alle platforms beschikbaar. Ook kan XBMC overweg met 5.1- en 7.1-geluidssporen en de ondertitelfunctionaliteit, belangrijk voor Nederlanders, is solide.
De flexibiliteit van XBMC en het feit dat de code openbaar is, hebben logischerwijs de nodige spin-offs opgeleverd. Enkele bekende voorbeelden die gebaseerd zijn op code van XBMC zijn Plex, mediacentersoftware die vooral bij OS X-gebruikers populair is, en Boxee, dat tegelijk software voor de mediaspeler is. De totale lijst is indrukwekkend en we verwachten dan ook dat nog menig project delen van de XBMC-code zal gaan gebruiken.
OpenELEC en XBMCbuntu
Dankzij de flexibiliteit van XBMC kan de opensource-mediacentersoftware niet alleen op allerhande chipsets draaien, maar is de code ook op elk niveau aanpasbaar. Dit schept allerhande mogelijkheden voor de ontwikkelcommunity. Vooral de combinatie XBMC en Linux is populair, zoals OpenELEC en XBMCbuntu laten zien.
XBMC kan op bijvoorbeeld een htpc als primaire applicatie gezien worden. De keuze om hiervoor een besturingssysteem aan te passen en te optimaliseren ligt dus voor de hand. OpenELEC, een afkorting voor Open Embedded Linux Entertainment Center, heeft dit concept vergaand geïmplementeerd. Het Linux-besturingssysteem is door de developers geheel gestript tot het hoogst noodzakelijke om XBMC te laten draaien.
OpenELEC is ook onder tweakers een populaire keuze, vooral omdat het besturingssysteem door alle overbodige ballast weg te laten zeer snel start. Als OpenELEC bijvoorbeeld op een ssd wordt geïnstalleerd, is het besturingssysteem in enkele seconden gebruiksklaar door direct het openingsscherm van XBMC te tonen. De benodigde bestanden nemen met tussen de 80 en 120MB weinig ruimte in en de software kan geboot worden vanaf diverse media, zoals usb-sticks, harde schijven, ssd's en sd-kaartjes.
In de praktijk kan OpenELEC een genot zijn om mee te werken dankzij de snelheid van XBMC. Ook het configureren van de mediacentersoftware inclusief onderliggende instellingen, zoals het ip-adres, en het updaten ervan verlopen eenvoudig en kunnen allemaal binnen XBMC worden uitgevoerd. Verder verloopt het toegang krijgen tot netwerkshares veelal zonder al te veel moeite. Wie een computer primair naast zijn televisie heeft staan voor htpc-doeleinden, zal met OpenELEC in veel gevallen een tevreden mens zijn.
Ondanks de diverse pluspunten van OpenELEC zijn er ook enkele nadelen. Zo zijn er verschillende versies van de software beschikbaar om diverse hardwareplatforms te kunnen bedienen, bijvoorbeeld een ION-versie voor systemen met een Intel-chip en een Nvidia ION-gpu. De gebruiker moet dus weten welke versie noodzakelijk is. Daarnaast kan OpenELEC hoofdbrekens opleveren als bepaalde hardware niet out-of-the-box wordt ondersteund of herkend door het onderliggende Linux-besturingssystemen. De kans hierop is vrij klein, maar de gebruiker moet in dergelijke gevallen veelal complexe configuratiecommando's invoeren in een terminalvenster. Dat is uiteraard niet voor iedereen weggelegd.
Een ander nadeel van OpenELEC is dat, eenmaal geboot naar deze omgeving, er weinig mogelijkheden zijn voor het installeren van extra software. Er is weliswaar een aantal add-ons beschikbaar om extra functionaliteit aan OpenELEC toe te voegen, zoals SABnzbd voor het leeghalen van nieuwsgroepen en een nanomodule voor het editen van configuratiebestanden, maar het embedded besturingssysteem geeft de gebruiker niet de flexibiliteit van een normaal besturingssysteem.
Wie geen Windows kan of wil draaien of geen mediaspeler heeft waarop XBMC geïnstalleerd kan worden, kan terecht bij bijvoorbeeld XBMCbuntu. Deze Linux-distributie draait op basis van Ubuntu en is net als OpenELEC primair ontworpen om snel naar XBMC te kunnen booten. XBMCbuntu heeft als groot voordeel dat er een volledige Ubuntu-omgeving beschikbaar is. De gebruiker kan dus naar hartelust het besturingssysteem inrichten zoals hij dat wil. Door het grote softwareaanbod voor Ubuntu is bovendien voor vrijwel elke toepassing wel een pakket te vinden.
XBMCbuntu presteert in de praktijk prima, al boot het logischerwijs niet zo snel als OpenELEC. Desondanks is de software gebaseerd op een gestripte Ubuntu-stack, waardoor veel min of meer overbodige onderdelen zijn weggelaten. Verder werken diverse afstandsbedieningen standaard in XBMCbuntu, zoals remotes die zijn ontworpen voor Microsofts Windows Media Center.
XBMC op Android en ARM
Googles Android kan, net als XBMC, gezien worden als een uiterst succesvol opensourceproject. Het besturingssysteem draait inmiddels niet alleen op smartphones, maar ook fabrikanten van tablets maken dankbaar gebruik van Android. Daarnaast verschijnt het besturingssysteem, dat momenteel marktleider is op smartphones, inmiddels ook in minder voor de hand liggende apparaten, zoals digitale fotocamera's, nas'en en mediaspelers.
We hebben de XBMC-versie voor Android zelf getest op een Asus Nexus 7-tablet, maar er zijn allerhande Android-apparaten die gekoppeld kunnen worden aan een televisie. De voordelen van dergelijke ARM-hardware zijn evident: eenvoudig, veelal lekker compact, energiezuinig en vooral goedkoop. Omdat deze apparaten gebruikmaken van niet al te krachtige ARM-processors, presteren ze logischerwijs minder en loopt software als XBMC minder soepel dan bijvoorbeeld een x86-versie die op een htpc draait. Vooral de starttijd van de mediacentersoftware is vrij lang.
/i/1371216009.jpeg?f=imagenormal)
Om XBMC ook soepel video's te laten draaien door middel van hardwarematige versnelling op de gpu, moeten er soms nog extra pakketten geïnstalleerd worden, bijvoorbeeld MX Player. Deze speler zet de benodigde codecs op het Android-systeem. Een goede Android-implementatie is de niet-officiële XAF Custom Build van XBMC for Android.
Dankzij ARM-support voor XBMC is het nu ook mogelijk om de mediacentersoftware te draaien op de Raspberry Pi, die via zijn hdmi-uitgang eenvoudig aan een hd-televisie is te koppelen. Een goede keuze voor deze budgetcomputer, die bovendien passief gekoeld wordt en dus geen lawaaiige fans heeft, is Raspbmc. Deze op Debian gebaseerde software biedt een voor de Raspberry Pi geoptimaliseerde build van XBMC en draait vanaf een sd-kaartje.
De makers claimen voor Raspbmc een eenvoudige installatie en dankzij de aanwezigheid van Debian is de software oneindig uit te breiden. Ook brengen de developers met regelmaat updates uit, die bij een reboot van de Raspberry Pi automatisch opgehaald worden.
Een potentieel interessante console voor XBMC is de Ouya-spelcomputer. Team XBMC kondigde vorig jaar al aan dat de mediacentersoftware ook op de goedkope Android-spelcomputer gaat draaien en dat de developers gaan samenwerken. Nu de console eind deze maand op de markt wordt gebracht en een lage prijs zal hebben, is de kans aanwezig dat het compacte kastje mede door zijn XBMC-compatibiliteit een hit wordt.
Tv op XBMC
Ondanks de eerder besproken flexibiliteit van XBMC heeft de software jarenlang een grote tekortkoming gekend: het ontbreken van goede ondersteuning voor het afspelen van televisieprogramma's binnen de mediacenteromgeving. Daar waren diverse redenen voor, zoals een groot aantal uiteenlopende chipsets, die een goede driverondersteuning bemoeilijkten. Ook het feit dat XBMC op diverse platforms draait, leidde tot extra complexiteit.
In versie 12 van XBMC, met codenaam Frodo, is gekozen voor een gebruiksvriendelijke en toekomstvaste ondersteuning voor het bekijken en opnemen van tv-programma's. Dit doet Frodo door gebruik te maken van twee onderdelen. Een is een live-tv-server, al dan niet met opnamemogelijkheden, in de back-end; deze software is veelal afkomstig van een derde partij. Het tweede onderdeel is bedoeld voor het aansturen van de gekozen back-end. Dit kan via een compatibele pvr-client. Deze client kan als een add-on in XBMC worden geïnstalleerd.
De keuze voor een back-end is afhankelijk van het platform waarop XBMC zal draaien en de gebruikte hardware. Zo kan onder Linux gekozen worden voor Tvheadend of MythTV, terwijl in Windows MediaPortal of NextPVR ingezet kan worden. Ook kunnen koppelingen worden gelegd met bijvoorbeeld DVBLink op een Synology-nas. Vervolgens moet de gebruiker in de XBMC-client de benodigde add-on installeren om de pvr-functionaliteit te activeren.
:fill(white)/i/1371153354.jpeg?f=thumb)
Zoals gezegd zijn er tal van combinaties van hardware en software mogelijk, met uiteenlopende complexiteit. TIjdens een test kozen wij voor de Anysee N7, een dvb-c-tuner die als losse tuner in een lokaal netwerk geplaatst kan worden. De configuratie van de N7 verloopt via de webbrowser en er kan binnen het lokale netwerk op tal van apparaten naar digitale tv worden gekeken. Ook software als VLC kan de streams in hd-kwaliteit openen.
Wij kregen de N7 snel aan de praat in combinatie met een smartcard van Ziggo. Na installatie van de benodigde pvr-add-on, die standaard beschikbaar is in de repositories van XBMC, konden we probleemloos televisie kijken in versie 12 van XBMC. Wel misten we nog de mogelijkheid om de programmagids, beter bekend als epg, te kunnen openen, bijvoorbeeld voor het inplannen van opnames.
Los van de eenvoud van de installatie van de N7 toont de modulaire opbouw van de televisiecomponenten in XBMC aan dat er goed is nagedacht over hoe de mediaplayersoftware met een brede selectie aan tv-hardware overweg kan. Ook dvb-t, beter bekend als Digitenne, en dvb-s, televisie via de satelliet, zullen met de juiste hardware werken. In theorie is het ook mogelijk om iptv te bekijken, maar wij hebben daarvan tot nu toe geen implementaties gezien.
De beste add-ons 1/2
Een van de charmes van XBMC is de mogelijkheid om allerhande add-ons te installeren. Deze kunnen de functionaliteit op tal van gebieden vergroten. Zo zijn er add-ons die onlinevideo- en muziekbronnen ontsluiten, maar er zijn ook add-ons die bijvoorbeeld songteksten kunnen opvragen. Add-ons worden aangeboden in zogeheten repositories. Een aanzienlijk aantal populaire add-ons is in de officiële 'repo' te vinden, maar er zijn ook tientallen niet-officiële repositories, met honderden uitbreidingen.
Omdat het toevoegen van elke repository het nodige handwerk vereist, is het handig dat de Nederlander Bart Otten de Superrepo-site in de lucht heeft gebracht. Hier zijn vrijwel alle add-ons op één plek terug te vinden, terwijl er ook duidelijke categorieën zijn.
Een add-on als YouTube durven we rustig een verplichte installatie te noemen. Wie wil er op zijn htpc immers geen toegang tot de gigantische bibliotheek aan videomateriaal op Googles videodienst. De gebruiker kan inloggen via de YouTube-add-on, waardoor ook zijn subscriptions beschikbaar zijn. De add-on is standaard beschikbaar in de XBMC-repo.
/i/1371157891.jpeg?f=imagenormal)
Filmkijkers en verslinders van tv-series kunnen haast niet zonder de subtitles-add-on. Deze kan in diverse bronnen zoeken naar geschikte subtitels, bijvoorbeeld op Opensubtitles.org of het Nederlandse Bierdopje.com. De tool kan aangeven of een beschikbaar subtitelbestand dezelfde lengte heeft als de getoonde video, waardoor de kans groot is dat de ondertiteling synchroon loopt met de beelden. De add-on is standaard beschikbaar in de XBMC-repo.
Het enorme aanbod van streaming content op het gebied van films en tv-series wordt met add-ons als Navi-X, een verzamelplaats voor allerhande streaminglinks, genadeloos blootgelegd. Ook IceFilms is een hit onder veel XBMC-gebruikers.
Wie eens wat anders wil of liefhebber is van kwalitatief hoogwaardige documentaires, kan terecht bij de add-on van Documentary.net. Deze add-on biedt tal van geheel legaal te bekijken docu's en dankzij een goede catalogisering zijn er over veel onderwerpen video's te vinden. De add-on XOT-Uzg.v3 zal door veel Nederlandse en Belgische XBMC'ers als een nuttige uitbreiding worden gezien. Deze tool ontsluit onder andere het aanbod van Uitzending Gemist en het vod-aanbod van de commerciële zenders.
Digitally Imported is een leuke add-on voor wie elektronische muziek kan waarderen. De beschikbare streamingradiokanalen bestrijken een breed aantal subgenres. Ook is de audiokwaliteit prima te noemen, al krijgen betalende premiumleden meer kanalen, een nog hogere audiokwaliteit en geen reclame.
/i/1371158139.jpeg?f=imagenormal)
De beste add-ons 2/2
De officiële XBMC Remote Control, beschikbaar voor iOS en Android, is een prima applicatie en zorgt ervoor dat je eigen mediacenter via een tablet of smartphone is aan te sturen. De applicatie kan met diverse XBMC-machines overweg door middel van profielen en uiteraard is de mediabibliotheek te raadplegen.
Een andere, uitgebreidere optie is Yatse, een complete en geavanceerde afstandsbediening die onder andere widgets biedt. Ook is het bijvoorbeeld mogelijk om een YouTube-video vanaf een Android-smartphone naar XBMC te sturen, waardoor een video op een groot scherm te bekijken is. Yatse kan met diverse toevoegingen worden uitgebreid.
Helaas!
De video die je probeert te bekijken is niet langer beschikbaar op Tweakers.net.
Hoewel strikt genomen geen add-on, is de Aeon Nox-skin voor veel XBMC'ers een must-have. De skin heeft een fraaie vormgeving en is tot in detail aan te passen. Alleen op machines met weinig rekenkracht kan de skin wat te zwaar zijn. Aeon Nox is beschikbaar in de officiële repository van XBMC.
/i/1371133970.jpeg?f=imagenormal)
Conclusie
Zoals gezegd is XBMC een softwareproject met vele gezichten; het mediacenterpakket draait op de belangrijkste platforms en heeft de stap gezet naar mobiele apparaten als smartphones en tablets. En dankzij implementaties als OpenELEC en XBMCbuntu heeft de eindgebruiker een brede keuze.
Deze diversiteit in XBMC-implementaties is vooral te danken aan de open structuur, een kenmerk van de homebrew die XBMC op de allereerste Xbox ooit was. Mede dankzij een grote community die Team XBMC helpt bij het verbeteren van de software, wordt er bij elke release flink geïnnoveerd. Zo is er veel te zeggen voor de gekozen implementatie om tv te kijken en weet de huidige Frodo-release de gebruiker een solide interface voor te schotelen.
Een van de sterkste punten van XBMC blijft de mediabibliotheek. Deze is gebruiksvriendelijk en kan op tal van manieren worden geraadpleegd, inclusief opnieuw tablets en smartphones. Dankzij de mogelijkheid om ontbrekende functionaliteit en content te ontsluiten via add-ons, kunnen developers deze vrij eenvoudig toevoegen.
In onze ogen is XBMC een van de beste opensourceprojecten voor multimediatoepassingen. Geen enkel programma is perfect. Zo zal een beginnende gebruiker nogal eens verdwalen in XBMC, maar een grote groep developers sleutelt continu aan dergelijke minpunten. Nu we in een tijd leven waarin gratis beschikbare en kwalitatief hoogwaardige software als XBMC al kan draaien op een spotgoedkoop platform als de Raspberry Pi, kunnen we niet anders dan hopen dat deze mediacentersoftware er nog minimaal tien jaar achteraan plakt.
Met dank aan MediaCenterWorld voor het testexemplaar van de AnySee N7.