lunedì 9 agosto 2010

Cose da fare con uno SmarQ: Realizzare un server multimediale


Eccomi di nuovo, dopo più di 2 mesi (mi stavo riprendendo dal troppo lavoro!). Come qualche lettore del blog saprà, qualche mese fa (quasi 9, oramai) mi ero preso uno SmartQ 5 usato per adoperarlo come MID e come portable media player. Tuttavia ne ero rimasto un pò deluso, soprattutto per quanto riguarda l'utilizzo come player audio (come player video faceva il suo lavoro, ma rispetto a qualsiasi smartphone o cellulare evoluto ne esce un pò con le ossa rotte!). Dopo essermi preso un Samsung i8000 (anche noto come Samsung Omnia 2, a breve-forse una recensione) il gingillo elettronico rimaneva parecchio inutilizzato! Pertanto, tempo fa ho chiesto consiglio presso uno dei migliori forum specializzati nei tecno-gadget prodotti da Smartdevices, e lì uno dei partecipanti del forum mi ha fornito un'ottima idea per rendere il "coso" di nuovo utile ed operativo: installarvi Mediatomb e renderlo così un perfetto server UNPnP (in pratica un server streaming di contenuti audio-video nella rete locale). Mediatomb è un'ottima applicazione open-source, ed è pure facile da configurare, purtroppo non è stata altrettanto facile da installare! Con il senno di poi, però, in realtà anche l'installazione è banale, ma all'epoca non sapevo...In fondo poi se scrivo questi articoli è anche per rendere più facile la cosa a chi volesse fare lo stesso e così non perdere troppo tempo! Innanzitutto per installare Mediatomb è necessario aprire una shell (o meglio, terminale), che nello SmartQ di default è evilvte. Dopodichè è necessario inserire il seguente comando:

sudo apt-get install mediatomb

Ovviamente è necessario essere connessi alla rete, visto che il pacchetto (o per meglio dire i pacchetti) verrà scaricato dal repository più idoneo! Ad installazione finita, se dopo aver provato a lanciare Mediatomb riceverete un errore riguardo un file mancante (più esattamente libtag.so.0 o libswscale.so) allora sarà necessario scaricare ed installare anche ffmpeg, usando come al solito apt-get:

sudo apt-get install ffmpg

Alla fine dell'installazione potrete finalmente lanciare Mediatomb, ma non prima di aver creato una rete wi-fi ad-hoc sullo SmartQ (aprendo il wifi manager c'è un menù a tendina che permette di farlo agevolmente, ricordarsi di inserire un indirizzo IP sensato e di scegliere se utilizzare il WEP o meno). Lanciare quindi Mediatomb sempre da evilvte con il comando:

sudo mediatomb

A questo punto il server è attivo (di già, direte voi?), solo che è necessario aggiungere le cartelle che saranno condivise, o per meglio dire i contenuti audio-video che potranno essere streammati. Per fare ciò sarà sufficiente puntare un browser internet o sulla macchina locale all'indirizzo "http://localhost:49152" oppure da un altro computer o dispositivo sostituenbdo a localhost l'indirizzo IP precedentemente assegnato allo SmartQ. Se si aprirà una pagina allora saremo certi che Mediatomb sta funzionando correttamente. Per aggiungere le cartelle clickare su "Filesystem" e navigare le cartelle fino ad arrivare a quella o quelle desiderate. Clickare dunque sull'icona a destra con il simbolo "+" per aggiungere la cartella al server. Ci sono parecchie possibilità di personalizzare il server, con script ed affini, indubbiamente interessante, ma non banale da implementare. Ad ogni modo, a questo punto il server è attivo e funzionante, non resta che trovare un riproduttore che sia compatibile con il protocollo UPnP. Sostanzialmente sarebbe sufficiente un dispositivo con un web browser qualsiasi, ma oltre ad essere scomoda questa soluzione non è nemmeno troppo elegante. Se avete uno smartphone non sarà difficile trovare un player compatibile, seppure a pagamento (nel caso di Windows Mobile), mentre per PC sarà molto più facile ed economico trovare software adatto.

Vantaggi
Quali vantaggi può portare realizzare un UPnP sullo SmartQ, rispetto, ad esempio, che realizzarlo su un normale PC? Innanzitutto il consumo energetico: lo SmartQ infatti viene alimentato da un trasformatore da 5V e al massimo 2 ampere, il che significa un consumo orario massimo di 10 Watt. Una lampadina a consumo energetico ridotto consuma anche più del doppio, per non parlare di un PC, che può arrivare anche a più di 10 volte questo valore. Inoltre lo spazio occupato dallo SmartQ è davvero ridotto, e non c'è mini-pc che tenga: grande poco più di uno smartphone lo si può mettere praticamente ovunque, non c'è bisogno di tenerlo nella "sala macchine", e non ci si dovrà preoccupare della rumorosità delle ventole (perchè non ne ha :). Senza contare che anche se va via la luce, la batteria interna garantisce alcune ore (almeno un paio) di autonomia, cosa che nessun gruppo di continuità che non costi migliaia di euro può permettere. Quindi solo vantaggi? O no?

Svantaggi
Magari non ce ne fossero...Purtroppo una soluzione di questo genere porta con sè inevitabilmente alcuni problemi, come ad esempio la difficoltà di utilizzare dischi esterni con Mediatomb (difficile da dire quale sia il problema, ma l'altro sabato ho provato con un hard disk esterno da 20 giga ed il sistema si è schiantato), quindi il massimo storage utilizzabile (al momento) sembrerebbe limitato ai 32 gigabyte della sche SD (trovare 32 giga ad un prezzo inferiore ai 100 euro sembra più difficile che fare un terno al lotto, al momento!). Mi resta da provare le memorie usb flash, ma al momento non ne ho a disposizione! Certo che un hard disk esterno da 500 giga (o anche un terabyte) sarebbe meglio (ma consumerebbe anche più corrente, ovviamente)...in ogni caso meglio accontentarsi, va! Inoltre da alcuni test preliminari pare che il server non funzioni proprio al 100%, anche se non ho capito ancora per quale motivo, ma talvolta è necessario riavviare la macchina, in quanto sembra non basti riavviare il server (o magari non ho trovato io un metodo migliore). Inoltre Mediatomb è alquanto basilare come server UPnP: Jinzora, ad esempio, è molto più evoluto ed ha molte più funzionalità, ma è anche vero che è molto più difficile da installare (a meno che non si riesca a installare PHP, Apache e Mysql, cosa forse non impossibile, ma ho qualche dubbio che si riesca a trovare tutti i pacchetti necessari). Un'ultima cosa da considerare, per la parte client: le reti wireless consumano un sacco di energia, e le batterie dei dispositivi che si usano per ascoltare la musica in streaming si possono esaurire molto in fretta. Ovviamente un server UPnP è fatto per essere utilizzato tra le mura domestiche, tuttavia dover collegare il proprio cellulare alla presa della corrente troppo spesso non è il massimo della praticità!

Il pensiero finale
Alla fin fine è conveniente allora realizzare un server multimediale del genere? Io penso di sì. Certo, le limitazioni rispetto ad un server tradizionale ci sono, soprattutto per quanto riguarda lo storage, tuttavia una volta messe le mani su una memoria SD abbastanza capiente (almeno 16 giga), è possibile realizzare qualcosa di piuttosto valido. Inoltre, se funzionano (o sono capace di far funzionare) anche le memory stick usb, lo spazio di memorizzazione è facilmente ampliabile, ed è questione di aspettare solo che i prezzi scendano per avere uno spazio di oltre 100 giga a disposizione! Nel frattempo mi divertirò a realizzare qualche script per automatizzare l'avvio, che poi magari provvederò a postare nel blog, se a qualcuno interessa!

Aggiornamento 11/08/2010
Visto che avevo un pò di tempo libero ho provato ad attaccare allo SmartQ un hard disk esterno da 20 gigabyte (uno da 1,8" alimentato direttamente da usb, in questo modo non ha bisogno di altre fonti di alimentazione), dopodichè ho aggiunto a Mediatomb un giga circa di mp3. La scansione degli stessi non è stata troppo veloce (anche perchè probabilmente l'usb host dello SmartQ sarà probabilmente di tipo 1.1, quindi limitato a 12Mbit/s), tuttavia dopo pochi minuti le tracce audio erano state analizzate ed aggiunte al database! Missione compiuta? Quasi...Resta solo da aggiungere uno script al sistema per automatizzare la creazione di una rete wireless ad-hoc (praticamente cosa fatta) e la creazione di un file di importazione per Mediatomb che si adatti meglio alle mie necessità (quello di default non è proprio eccezionale!)

Aggiornamento 13/08/2010
Oggi ho giocherellato un pò con uno script per configure il wifi sullo SmartQ e di seguito avviare Mediatomb. Niente di che , ma si risparmia parecchio tempo rispetto a configurare tutto manualmente, questo è sicuro. Resta da smussare ancora qualche dettaglio, ma il server è funzionante nel suo complesso. Sono un pò invece scontento dal consumo della batteria del ,mio smarphone che l'utilizzo del wifi comporta; da una stima abbastanza empirica potrebbe non raggiungere nemmeno le 2 ore e mezza di autonomia. Il problema ovviamente non si pone con un sistema desktop o con altri dispositivi fissi. Quindi è evidente che utilizzare il server con un dispositivo mobile è alquanto critico, senza contare che il dispositivo si scalda parecchio, con il modulo wifi attivo. Un'alternativa potrebbe essere utilizzare un collegamento bluetooth, molto meno esoso in termini energetici, ma anche più limitato come banda e come distanza massima raggiungibile! Un'alternativa più valida potrebbe essere settare un buffer piuttosto ampio (5-10 megabyte), e fare sì che il wifi si disattivi in questo periodo di non utilizzo (tipicamente da 5 a 10 minuti a seconda del bitrate), e sarebbe ovviamente anche necessario gestire il ricollegamento alla rete wireless prima che il buffer si esaurisca. Purtroppo per fare ciò, oltre ad un player audio piuttosto sofisticato, sarebbe anche necessario un'integrazione dello stesso con il sistema molto elevata...Meglio non divagare troppo, altrimenti divento troppo noioso! Ad ogni modo, un'altra cosa che volevo fare sullo SmartQ era anche installarvi un server ftp (nello specifico proftpd, in quanto la cosa potrebbe essere piuttosto utile, dal mio punto di vista, ovviamente), per caricare/scaricare file o cartelle da altri computer della casa o dispositivi. Alla fine più un esperimento che qualcosa di forse veramente utile. E perchè non un server Samba, direte voi? Semplicemente perchè non sono riuscito ancora a visualizzare le condivisioni Windows sullo SmartQ (utilizzandolo come client!). Essendo l'ftp un protocollo ancestrale, non dovrei avere troppi problemi (o no?)! Nei prossimi giorni smanetteremo un pò con l'ftp, allora, ricordando i vecchi tempi in cui si scaricava mp3 dai server ftp utilizzando GetRight!

Nessun commento: