introduzione
Icecast è una soluzione popolare e flessibile per lo streaming audio utilizzata principalmente per le stazioni radio Internet. Supporta i formati di streaming Ogg, MP3, Opus e WebM su HTTP, SHOUTcast, AAC e NSV. È in sviluppo attivo da 20 anni ed è famoso per la sua affidabilità, semplicità e aderenza a standard aperti. È rilasciato come software gratuito con licenza GNU GPLv2.
Installazione
Aggiorna l'elenco dei pacchetti APT:
sudo apt-get update
Installa Icecast:
sudo apt-get install icecast2
Subito dopo l'installazione del pacchetto si aprirà una finestra di configurazione automatizzata. Selezionare Yes
per configurare Icecast e seguire le istruzioni.
Icecast può essere ulteriormente configurato modificando il file di configurazione XML /etc/icecast2/icecast.xml
. Di seguito è riportato un esempio di come modificare la porta.
La porta può essere modificata modificando il <port>
tag. L'impostazione 8000
predefinita è:
<port>DESIRED_PORT_NUMBER</port>
Salva ed esci dal file.
Nota: per applicare le modifiche alla configurazione è necessario riavviare Icecast.
Ulteriore documentazione sui file di configurazione Icecast è disponibile qui .
Porte privilegiate vincolanti
Se si desidera eseguire Icecast Server su porte privilegiate come HTTP
( 80
) e HTTPS
( 443
), è necessario eseguire una configurazione aggiuntiva.
Apri il file di configurazione:
sudo vi /etc/icecast2/icecast.xml
Trova la <security>
sezione Annulla il commento <changeowner>
all'interno della sezione e apporta le seguenti modifiche:
<security>
<chroot>0</chroot>
<changeowner>
<user>icecast2</user>
<group>icecast</group>
</changeowner>
</security>
Dobbiamo anche dire al sistema operativo di avviare Icecast come root.
Apri il file di servizio:
sudo vi /etc/default/icecast2
Modifica le opzioni USERID
e in GROUPID
modo che corrispondano a quanto segue:
USERID=root
GROUPID=root
Avvia, riavvia e ferma Icecast
Per avviare il server Icecast:
sudo systemctl start icecast2
Per riavviare e ricaricare le modifiche alla configurazione:
sudo systemctl restart icecast2
Per interrompere Icecast:
sudo systemctl stop icecast2
Pannello di Amministrazione
Icecast è dotato di un'interfaccia web che serve i flussi audio come file. Include una sezione di amministrazione che consente di visualizzare informazioni e statistiche di base. È possibile accedervi navigando nel browser Web all'indirizzo o dominio del server e alla porta http://ADDRESS:PORT
oppure http://example.com:PORT
.
Streaming con un client di origine
Dopo aver configurato Icecast Server, è possibile utilizzare uno qualsiasi dei client Icecast compatibili, (noto anche come client di origine), per trasmettere l'audio al server Icecast e a tutti i listener. Di solito il client di origine viene installato in remoto nella posizione in cui l'audio verrà trasmesso ma, se necessario, può essere installato insieme al server. Ci sono una varietà di opzioni da applicazioni gratuite e open source come mixxx per DJ, IceS per configurazioni automatizzate complesse e BUTT per una semplice condivisione del microfono; così come molte soluzioni a sorgente chiuso. Un elenco di client di origine gratuiti e open source è disponibile nell'elenco delle app di Icecast
Conclusione
Lo scopo di ciò che Icecast è in grado di fare è molto al di là di questa configurazione di base. Visita la documentazione di Icecast per esplorare tutte le funzionalità che offre, come: streaming di inoltro, autenticazione avanzata, transcodifica, elenchi di radio pubbliche e altro ancora.