domenica 17 maggio 2009

XBMC ed i plugins


A casa ho due vecchi computer  che svolgono la funzione di HTPC. 

Hanno  installato Freevo che è a mio parere il migliore software HTPC open source esistente.

Freevo è scritto in python, utilizza massivamente mplayer (anche se supporta vlc e xine), gira principalmente su Linux  e  non ha particolari richieste hardware, consentendo quindi di avere un ottimo sistema di home theatre a costi contenuti.

Nel mio caso utilizzo un PIII ed un PIV.

E'  estensibile grazie a  numerosi plugins. Ne ho scritto qualcuno anch'io e uno di questi è nella distribuzione ufficiale, per la precisione quello di wwitv.  

Installare freevo sul mio MacBook con Mac OS X è una operazione fattibile anche se non semplicissima, e per ora non ho abbastanza tempo libero per farlo.

Ho provato quindi XBMC, finalmente in versione Intel e PPC, bello pronto da installare con il suo file dmg.

Le richieste hardware sono decisamente più elevate, rendendolo inutilizzabile sui due  htpc che ho in casa, ma la grafica è decisamente carina, si interfaccia agevolmente con i server UPnP (il sistema che utilizzo per condividere musica, film foto e quant'altro) e fa lui stesso da server UPnP.

E' estensibile tramite plugins, e indovinate un po' in che linguaggio? Python!

Ho provato subito a scriverne uno di prova, e sono rimasto piacevolmente colpito dalla presenza di:

un soddisfacente tutorial, una maggiore documentazione, uno scheletro di plugin con cui partire, poche routines chiare ed accessibili.

Creare un plugin video in XBMC può addirittura consistere nel trovare la giusta regex in una pagina web ed passare i risultati a  

addDir(name,url,mode,thumbnail)o addLink(name,url,tumbnail)

Quindi come spiegato nell'ottimo tutorial, inserendo in CATEGORIES() 

addDir("MOVIES","http://www.tvdash.com/movies.html",1," http://reggiebibbs.files.wordpress.com/2007/12/the-movies360-crop.jpg") 

avremo un menu di tipo cartella "Movies" il cui clic  invocherà la routine INDEX() passando come argomento l'url http://www.tvdash.com/movies.html.

Compito della funzione INDEX sarà quello di scaricare la pagina web ed applicare la regex desiderata per poi passare a addLink(name,url) i links dei video trovati, creando dei sotto menu "links" che avranno il compito di lanciare il player collegandosi all'url del video specificato.

Decisamente veloce e semplice.

Nessun commento:

Posta un commento