Icecast + MySQL Stats

Icecast è ormai considerato uno dei migliore software per realizzare un server di relay per flussi audio in streaming basato su formati e codice Open Source. Non solo è stato uno dei primi a supportare più flussi su un unico server, ma può essere usato anche con flussi audio/video basati su formati OGG.

Per quanto riguarda le statistiche di ascolto, il software di per se fornisce già alcuni dati come il numero di ascoltatori attuali per ogni flusso e quello del picco massimo, e consente di ottenere informazioni maggiori usando soluzioni esterne, come parser i files di log oppure software esterni che interrogano periodicamente il server.

Faccio parte del Team di UnicaRadio, la webradio degli Studenti dell’Università di Cagliari. Lavorando nell’ambiente ho capito l’importanza di un dato come il tempo medio di permanenza degli ascoltatori. Dopo aver valutato diverse soluzioni e provato diversi software, ho deciso di implementare la cosa lavorando direttamente sul codice sorgente, così da ottenere data ed ora di connessione e disconnessione di ogni singolo ascoltatore.

L’uso di un database esterno mi è sembrata la migliore soluzione, sia per l’inserimento dei dati da parte di Icecast, sia per la consultazione delle statistiche ottenute che può essere implementata anche con un semplice sito internet PHP+HTML.

Ho creato un repository su GitHub, raggiungibile all’indirizzo https://github.com/sardylan/icecast-mysql nel quale a breve riporterò tutte le modifiche che ho fatto fin’ora al sorgente originale.

Stay Tuned…