La diffusion de la sortie de la carte son sous forme de flux de radio Internet est un moyen fiable de diffuser de l’audio sur un réseau. Ceci peut très bien être utilisé pour, par exemple, transmettre le son d’un réseau local sans fil à un autre ordinateur ou à tout autre appareil capable de lire des flux radio Internet.
Cependant, je n'ai pas trouvé de guide étape par étape sur la manière de le configurer.
Ouvrez le fichier /etc/icecast2/icecast.xml
en tant que racine dans un éditeur. Pour des raisons de sécurité, vous devez configurer les mots de passe dans la section <authentication>
:
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
Si vous avez modifié le <source-password>
ou le <relay-password>
, vous devez également le faire du côté source ou côté relais. Cela signifie que vous devez également conserver les valeurs par défaut ou les modifier dans le fichier ices2.xml (voir ci-dessous). La même chose devra être faite dans les fichiers de configuration Ices ou Darkice.
Vous devez également définir le nom d’hôte où votre flux peut être atteint:
<hostname>localhost</hostname>
Laissez-le en tant que localhost (inutile de donner une adresse IP résolue là-bas) lorsque vous ne souhaitez diffuser que sur votre réseau local. Le port par défaut à écouter est 8000. Ne le modifiez que si nécessaire.
Ouvrez le fichier /etc/default/icecast2
en tant que racine dans un éditeur. La dernière ligne doit être changée en
ENABLE=true
C'est tout pour Icecast2. Bien sûr, il y a beaucoup plus de paramètres avec lesquels vous pouvez jouer. Les fichiers de configuration contiennent des notes explicatives sur les paramètres.
Le serveur est démarré et arrêté par les commandes suivantes:
/etc/init.d/icecast2 start
/etc/init.d/icecast2 stop
Lors de l’exécution du serveur Icecast, vous pouvez utiliser un navigateur à partir de n’importe quel navigateur à http://localhost:8000/admin/
après avoir saisi vos identifiants d’administrateur définis à l’étape 1. Une documentation complémentaire est disponible à partir de Icecast.org .
Stream2ip est une interface graphique permettant de démarrer et d’arrêter rapidement les flux pour lesquels une configuration de base pour Ices2, Ices ou Darkice a déjà été effectuée.
Pour configurer pulseaudio afin de permettre l’enregistrement depuis la carte son, voir la note concernant Darkice ci-dessous.
mkdir /var/log/ices # in case you need logfiles.
mkdir /etc/ices2 # for putting ices stuff in.
Ices2 s'exécutera à l'aide d'un fichier .xml pour les paramètres. Vous trouverez des exemples détaillés de configurations dans /usr/share/doc/ices2/examples/
. Ces fichiers doivent être modifiés pour répondre à vos besoins et peuvent être copiés n’importe où, au mieux dans votre répertoire personnel. Selon le fichier de configuration, Ices2 utilise une liste de lecture au format Ogg Vorbis (ices-playlist.xml
) ou la sortie de votre carte son (ices-alsa.xml
) en tant que source de diffusion en continu pour Icecast2.
Dans la section <input>
, vous devrez peut-être remplacer le périphérique si vous avez configuré votre système audio sur PulseAudio. Pour ce faire, éditez la ligne correspondante en:
<param name="device">Pulse</param>
Le nom du flux pour le client destinataire est défini dans la section suivante.
<mount>/example1.ogg</mount>
Les flux de votre carte son seront démarrés en exécutant d’abord le serveur Icecast2, puis Ices2 à l’aide des commandes suivantes:
/etc/init.d/icecast2 start
ices2 /home/user/somewhere/ices-Pulse.xml # or any other name from .xml file
Du côté du récepteur, votre radio "station" syntonise: <serverIP>:8000/example1.ogg
où <serverIP>
est l’adresse IP de votre serveur de diffusion en continu suivi du port que vous avez défini dans le fichier icecast.xml (8000 par défaut).
Les flux se terminent en tuant Ices2 et/ou en arrêtant l’exécution du serveur Icecast2:
killall ices2
/etc/init.d/icecast2 stop
La diffusion d'une liste de lecture contenant des fichiers mp3 ne peut pas être effectuée avec Ices2. Nous devons installer IceS , ce que nous devons installer à partir de la source .
Après avoir configuré le fichier de configuration avec l'adresse du serveur, le mot de passe et les propriétés de transmission (un exemple bien documenté se trouve dans /usr/share/doc/ices/examples
), nous pouvons diffuser des fichiers audio mp3 à partir de listes de lecture (par exemple, au format .m3u) sur un serveur Icecast2 en:
/etc/init.d/icecast2 start
ices -c <path_to_config_file> -F <path_to_playlist>
Pour plus d’options, lisez la documentation dans la page de manuel très élaborée de man ices
.
Nous pouvons diffuser la sortie de la carte son locale au format OGG Vorbis ou au format MP3 en utilisant Darkice . Pour activer la diffusion en continu de la carte son locale, il peut être nécessaire de définir d’abord le périphérique d’enregistrement de Darkice en pulseaudio. Cela peut être fait avec pavucontrol . Dans l'onglet Enregistrement , choisissez Monitor of <your soundcard>
pour le "plug-in ALSA [darkice]" .
Le fichier de configuration (exemple bien documenté donné dans /usr/share/doc/darkice/examples
) doit être adapté au serveur Icecast et à l'environnement sonore local:
[general]
duration = 0 # duration in s, 0 forever
bufferSecs = 1 # buffer, in seconds
reconnect = yes # reconnect if disconnected
[input]
device = default # or `Pulse' for Pulseaudio
sampleRate = 44100 # sample rate 11025, 22050 or 44100
bitsPerSample = 16 # bits
channel = 2 # 2 = stereo
[icecast2-0]
bitrateMode = vbr # variable bit rate (`cbr' constant, `abr' average)
quality = 1.0 # 1.0 is best quality
format = mp3 # format. Choose `vorbis' for OGG Vorbis
bitrate = 256 # bitrate
server = localhost # or IP
port = 8000 # port for IceCast2 access
password = hackme # source password to the IceCast2 server
mountPoint = mystream.mp3 # mount point on the IceCast2 server .mp3 or .ogg
name = mystream
Après avoir enregistré cette configuration (par exemple dans ~/music/darkice.cfg
), nous exécutons d’abord le serveur Icecast et pouvons ensuite diffuser en sortie une sortie pulseaudio de la carte son locale en appelant:
/etc/init.d/icecast2 start
darkice -c ~/music/darkice.cfg
Sur le récepteur, nous syntonisons http://<localhost>:8000/mystream.mp3
pour l’écoute. <localhost>
est l'adresse IP du serveur Icecast.