dicembre 30, 2009

Icecast, piattaforma server gratuita per lo streaming audio, leggera, potente, affidabile e gratuita.

| No comment
Icecast è un programma server per il media streaming mantenuto da Xiph.Org Foundation e rilasciato con licenza GNU General Public License (GPL).

Icecast supporta i formati Vorbis,Theora usando il protocollo HTTP e i formati MP3,AAC e NSV con il protocollo SHOUTcast.

Icecast è la piattaforma server gratuita per lo streaming audio più diffusa ed è fra le più affidabili nonché fra le più complete. Grazie a questo programma il vostro computer diventerà un server per lo streaming audio.

Icecast permette di monitorizzare un sacco di informazioni inerenti il flusso delle connessioni al vostro server, impostare le porte di connessione al vostro computer, limitare la banda di streaming, proteggere la connessione con una password ed altro ancora.

Attenzione: Icecast è uno strumento indispensabile per trasmettere audio su web, ma serve solo come "ponte": per poter fare una webradio sono necessari oltre ad Icecast altri software aggiuntivi come ad esempio Oddcast, Sam2, ezstream per Windows o Ices, Muse, Darkice per Linux.

Aggiornamenti:

Ultima versione rilasciata: 2.3.2

Le novità:

  • Character set support. Most non-Ogg streams (eg MP3) send metadata as Latin1 but it could be in other character sets. As icecast uses UTF-8, we need to convert to UTF-8 so that web pages and stream directories render correctly.
    • Allow a per-mount setting. For when source clients do not indicate which character set is in use.
    • a charset= parameter to the metadata request.
    • Default for non-Ogg content is now Latin-1 (aka ISO-8859-1). Ogg content still uses UTF-8.

  • Authentication
    • Each mountpoint authentication is isolated so one mount authentication does not slow another mountpoint authentication down.
    • XSL pages can require authentication.
    • Add some sanity checks for incorrect settings.

  • Listening socket update
    • Allow multiple ports to be allocated which allow multiple shoutcast source clients to stream on the same icecast instance.
    • No internal limit on the number of listen sockets that can be used.
    • Allow for a listen socket to be marked SSL capable. While any client could connect on these, the idea is really for /admin requests.
    • allow for a to bind to ipv4 and ipv6

  • XSL update
    • XSL pages include an xspf link for non-auth streams.
    • XSL pages in both webroot and adminroot can take a mount= arg to limit which stats are transformed.
    • XSL files can specify the content-type to return to the client. It is no longer fixed to html

  • Updates for stream directory handling.
    • A stream is not registered with the directory until after the first minute has passed. some streams have been stuck in a connect/disconnect loop.
    • Increase retry time on failure, if the stream add is rejected then it will be down to a misconfiguration so a long retry delay is performed.
    • A YP server that is not responding is ignored for a while

  • Updates for Win32. Newer versions of dependency libs (libxml2/libxslt/libcurl etc). Buffer overflow fixes when many streams are active
  • Accept/Ban IP support. Now takes filenames for explicitly accepting or denying requests from specified IP addresses. Useful in cases where firewall access is not available. The files, if defined, are re-read automatically if updated.
  • A Mountpoint is exported to the slaves even if no mount section is defined for it. You can still use the hidden setting to prevent that from happening.
  • Relays handle redirection (HTTP 302) if one is received at startup.
  • Automatically generate XSPF playlist like we do with M3U, the mountpoint extension is .xspf
  • Header updates for proxy handling and certain clients like some shoutcast source clients and flash players.
  • Added Kate/Skeleton codecs to Ogg handler.
  • Various stats cleanups. Added some global stats (server ID, email contact etc).
  • The streamlist passed from master to slave had a limited length, so if there were many streams then some could of been left out.
  • Documentation updates.
  • Relay startup/shutdown is cleaner.
  • several build cleanups.
  • several resource leaks and race conditions fixed



Download.


Screenshots.






Come creare una web radio con Icecast.


A differenza di come potrete immaginare Icecast funge da smistatore del segnale della web radio. Infatti sfruttando Ices, avremo modo di inviare il nostro segnale al server principale, quest’ultimo si occuperà di gestire ed organizzare i vari segnali che riceve (ovviamente autorizzati), ed invierà a sua volta il segnale ai client che si connettono. Ma vediamo ora come installare Icecast sul nostro server. Per prima cosa, con i poteri di super utente installiamo il pacchetto relativo tramite apt:

apt-get install icecast2


Configurazione e avvio del server Icecast.


Installato, procediamo con la configurazione. Per prima cosa modifichiamo il file /etc/icecast2/icecast.xml in base alle nostre esigenze. È vivamente consigliato modificare i tag che contengono i dati di autenticazione, infatti tramite questi gli altri utenti potranno trasmettere sul server i loro segnali streaming. In seguito sfrutteremo l’utente icecast source per trasmettere la nostra radio. Per fare ciò individuate e modificate (a vostro piacimento) i tag :


SourcePassword
RelayPassword
admin
AdminPassword
Abilitiamo e avviamo il nostro server Icecast che metterà a disposizione anche una comoda interfaccia web per la visualizzazione dei vari stream. Quindi procediamo aggiornando la configurazione di icecast relativa al sistema. Modifichiamo dunque il file /etc/default/icecast2 e individuata e modifichiamo la seguente riga in questo modo:
ENABLE=true
La configurazione di Icecast è ora finita! Possiamo festeggiare! Ma il lavoro vero e proprio deve ancora arrivare! Avviamo, dunque, il nostro server icecast, basterà quindi digitare il seguente comando direttamente da una shell con permessi di super utente:
/etc/init.d/icecast2 start

Configurazione ed avvio dello streaming tramite Ices.


Prima di iniziare è necessario, ovviamente capire il funzionamento ed installare Ices. Questo client permette, come detto prima, di inviare il proprio segnale a icecast che lo smisterà. Ices è molto flessibile e per questo motivo il comando di avvio necessita di una configurazione. Installiamo dunque Ices con il seguente comando:
apt-get install ices2
Ora configuriamo una playlist d’esempio, in modo da permettere a ices di inviare la nostra musica. Quindi, prendendo come esempio il file /usr/share/doc/ices2/examples/ices-playlist.xml creiamo una nostra configurazione. Quindi eseguiamo i seguenti comandi:
mkdir ./ices
cp /usr/share/doc/ices2/examples/ices-playlist.xml /tmp/ices/ices-config.xml
gedit ./ices/ices-config.xml
E procediamo con la modifica. Per facilitare la configurazione ho deciso di commentare passo per passo i tag più importanti. Ices, ovviamente, ha un log dove vengono mostrati tutti gli errori o i problemi. Questo log, oltre a esser mostrato a schermo in caso di errore fatale, viene salvato su un file. Quindi le seguenti rige si occuperanno della modifica di tali impostazioni:
1
/tmp/
ices.log
La configurazione relativa ai dati della radio, ovvero ai metadata, avviene nei seguenti tag, dove viene settato il nome, il genere e una breve introduzione alla radio.


Nome dello stream
Genere dello stream
Una breve descrizione dello stream
Icest può leggere l’input da inviare a icecast, tramite una playlist contenente il percorso dei file audio. In oltre può impostare una modalità di riproduzione casuale o di interruzione dello streaming alla fine di ogni file (ecc…) nei tag seguenti:

playlist
basic
/tmp/play.lst
0

0

0
Ora modifichiamo la parte più importante di Icecast, ovvero l’autenticazione e le impostazioni del server e dello stream che manderemo. Lo streaming sarà messo a disposizione dal server icecast nel mount point. Questo, infatti, è generalmente un file contenente lo streaming diretto che invieremo. I tag da modificare sono i seguenti:

localhost
8000
SourcePassword
/example1.ogg
Salvato il file, avremo finito di configurare Ices. E ora possiamo festeggiare perché il grosso è stato fatto! Ora non ci resta che creare la nostra playlist e avviare ices e mettere in onda la nostra radio! Per prima cosa digitiamo da terminale il comando per elencare i file della playlist. Ovviamente il formato utilizzato è un formato libero e, se non lo avete ancora fatto, potete trasformare i file Mp3 in Ogg.

Spostiamo tutti i file OGG in una cartella temporana (in questo caso uso /tmp/ices/music) e inseriamoli nella playlist. Per fare ciò digitiamo da terminale:

mkdir /tmp/ices/musics
mv ./*.ogg /tmp/ices/musics
ls /tmp/ices/musics/*.ogg > /tmp/ices/play.lst
 
Avviamo ora il nostro amato ices con le impostazzioni appena create:

ices2 /tmp/ices/ices-config.xml
 
Il processo non terminerà fino a quando tutta lo streaming non sarà inviata al server icecast. Per ascoltare la vostra radio basterà recarci all’indirizzo:

http://localhost:8000/

In questa pagina potremo, non solo ascoltare tutti gli stream del server, ma avremo modo anche di amministrare Icecast. Ricordatevi di trasmettere materiale privo di diritti d’autore troppo restrittivi! La buona musica è sempre Open! Con un poco di pratica ed intuito diventere veri e propri RadioBlogger.




Se ti è piaciuto l'articolo , iscriviti al feed cliccando sull'immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:

Trovato questo articolo interessante? Condividilo sulla tua rete di contatti Twitter, sulla tua bacheca su Facebook o semplicemente premi "+1" per suggerire questo risultato nelle ricerche in Google, Linkedin, Instagram o Pinterest. Diffondere contenuti che trovi rilevanti aiuta questo blog a crescere. Grazie! CONDIVIDI SU!

stampa la pagina
, , , , , , , ,

Nessun commento:

Posta un commento

Non inserire link cliccabili altrimenti il commento verrà eliminato. Metti la spunta a Inviami notifiche per essere avvertito via email di nuovi commenti.

Ultimi post pubblicati

Archivio

Etichette

Ubuntulandia in Pinterest

Post Più Popolari