Animo Anomalo Blog

Salvare il Mondo è Accanimento Terapeutico

Creare una WebRadio con Linux (idjc + icecast)

Pubblicato da AnimoAnomalo su 19 agosto 2009


Creare una WebRadio con Windows è relativamente semplice usando Winamp e Shoutcast ma per chi usa Linux potrebbe essere meno immediato anche per via delle poche guide reperibili su internet, per questo motivo nel mio piccolo aggiungo qualche informazione in proposito.

Per creare la nostra WebRadio useremo due programmi:
Internet DJ Console: http://www.onlymeok.nildram.co.uk/
Icecast: http://www.icecast.org/

I programmi sono già pacchettizzati per le maggiori distribuzioni quindi non si dovrebbero avere problemi con compilazione di sorgenti o dipendenze.

Dopo aver installato i programmi dobbiamo per prima cosa impostare Icecast e lo faremo editando il file /etc/icecast.xml, per farlo dovremo essere root

spud@suse:~> su
Password:
suse:/home/spud # kate /etc/icecast.xml

Al posto di kate naturalmente potrete usare il vostro editor preferito.

Il file è molto ben commentato quindi non si dovrebbero avere problemi nell’individuare le parti importanti, che comunque sono:

<!– Sources log in with username ‘source’ –>
<source-password>pass</source-password>
In seguito useremo questa password per connettere idjc a icecast

<!– Admin logs in with the username given below –>
<admin-user>admin</admin-user>
<admin-password>admin</admin-password>
Questi dati serviranno per accedere al pannello di controllo http

<hostname>MyRadio.no-ip.biz</hostname>
Indirizzo della vostra radio sarà visualizzato nella playlist degli ascoltatori, se ne può creare uno gratuitamente su http://www.no-ip.com

<port>8000</port>
La porta dalla quale vorrete trasmettere, naturalmente dovrà essere aperta in eventuali router e firewall

Con questo la configurazione di icecast è terminata, avviamolo con il comando icecast -c /etc/icecast.xml da root e passiamo a idjc.

Internet DJ Console usa il server audio jackd, quindi chiudiamo eventuali programmi che usano altri server audio e avviamo jackd

spud@suse:~> jackd -d alsa -r 44100 -p 2048

Ora possiamo finalmente avviare idjc cercandolo nel menù o da un altro terminale con il comando idjc.

idjcmain

La finestra principale di idjc

Ora dobbiamo mettere in comunicazione idjc e icecast, clickiamo su Server per questo ed altre impostazioni.

La finestra Server di idjc

La finestra Server di idjc

Impostiamo nel menu a tendina Type: Icecast2, in Host, Port e Pass i valori inseriti prima nell’xml mentre non modifichiamo Login: source, Mount: è l’ultima parte dell’indirizzo della radio, in questo caso l’indirizzo completo sarà http//MyRadio.no-ip.biz:8000/radio.m3u, e può essere cambiato a piacere.

Scorrendo verso il basso la barra laterale potremmo inserire altri particolari con informazioni sulla radio che verranno visualizzate dagli ascoltatori come: Nome DJ, Descrizione e Genere.

Ora possiamo clickare su Server Connect, se abbiamo fatto tutto bene il tasto rimarrà abbassato e potremo iniziare a trasmettere, chiudiamo la finestra server, torniamo nella principale e trasciniamo nelle finestre playlist i file che vogliamo riprodurre, con i tasti Stream e Listen decidiamo via via cosa ascoltare e trasmettere, infatti si può scegliere di non ascoltare quello che trasmettiamo al momento.

Clickando sull’icona a forma di microfono come intuibile potremmo trasmettere la nostra voce, anche questo tasto una volta premuto rimane abbassato quindi per fermare la trasmissione dal microfono ci dovremo riclickare.

Possiamo accedere al pannello di controllo http su http//MyRadio.no-ip.biz:8000.

La creazione di un indirizzo dns serve solo per comodità, o visto che tutti abbiamo un ip dinamico dovremmo ridare di volta in volta un indirizzo diverso agli ascoltatori.

Per un uso medio direi che questo è tutto ma idjc ha anche altre funzioni come la riproduzione di Jingle salvati in precedenza anche in modo automatico al verificarsi di un qualche evento (Prefs -> Event) e tanto altro.

5 Risposte to “Creare una WebRadio con Linux (idjc + icecast)”

  1. Carlo detto

    ottimo articolo, è quello che cercavo!

  2. AnimoAnomalo detto

    Grazie :-)

  3. alberto detto

    grazie per l’articolo io sono un utente mac non so quindi se posso utilizzare le tue indicazioni in ogni caso ho un amico che lavora su linux che può darmi una mano.
    volevo però chiederti alcune informazioni.
    la radio che vorrei aprire dovrebbe essere anche un posto dove è possibile discutere oltre che mandare in onada musica.
    i futuri utenti potranno ascoltarla aprendo un link con l’indirizzo della radio e quanti ascoltatori potranno accedervi?
    grazie
    alberto

  4. AnimoAnomalo detto

    Teoricamente non c’è limite di utenti che la potranno ascoltare, il limite se si vuole si può impostare dal file icecast.xml (nel post ho scritto solo le opzioni necessarie al funzionamento)
    In realtà il limite è dato dalla qualità della velocità della connessione, dalla qualità in kbps della trasmissione e dal numero di ascoltatori connessi, (con una connessione domestica troppi ascoltatori provocherebbero interruzioni dello stream, quindi volenti o nolenti un limite lo si deve decidere) su questo non posso dare ulteriori informazioni perchè non ho fatto mai prove con tante connessioni e varie qualità di stream.
    Comunque usando un server e non una connessione domestica non ci sono problemi di limite connessioni.
    Facendo clic sul link della radio si aprirà il programma predefinito per i file m3u, se come discutere intendi se il “DJ” potrà far sentire la sua voce, si lo potrà fare.
    Buona fortuna ;)

  5. mary detto

    segnalo questa directory per dare visibilità alla propria web radio http://www.findradio.net

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

 
Iscriviti

Get every new post delivered to your Inbox.