it-swarm-eu.dev

Jak nastavím server Icecast pro vysílání zvuku v mé síti?

Vysílání výstupu zvukové karty jako internetového rádiového proudu je spolehlivý způsob, jak streamovat zvuk v síti. To lze pěkně použít např. přenášet zvuk v bezdrátové síti LAN do jiného počítače nebo jiného zařízení schopného přehrávat internetové rozhlasové proudy.

Nenašel jsem však snadného průvodce krok za krokem, jak to nastavit.

64
Takkat

Vysílejte zvuk pomocí Icecast2


1. Nainstalujte Icecast2Install icecast2


2. Upravte konfiguraci Icecast2

Otevřete soubor /etc/icecast2/icecast.xml jako root v editoru. Z bezpečnostních důvodů byste měli nastavit hesla v <authentication> sekce:

<admin-user>admin</admin-user>
<admin-password>hackme</admin-password> 

Pokud jste změnili <source-password> nebo <relay-password> musíte to udělat také na straně zdroje nebo relé. To znamená, že ji necháte výchozí nebo ji změníte také v souboru ices2.xml (viz níže). Totéž bude třeba provést v konfiguračních souborech Ices nebo Darkice.

Musíte také definovat název hostitele, na který lze dosáhnout vašeho proudu:

<hostname>localhost</hostname>

Pokud chcete streamovat pouze v místní síti, ponechte jej jako localhost (není třeba tam poskytovat rozlišenou IP adresu). Výchozí port pro poslech je 8000. Změňte jej pouze v případě potřeby.


3. Upravte výchozí hodnoty

Otevři /etc/default/icecast2 soubor jako root v editoru. Poslední řádek musí být změněn na

ENABLE=true

To je všechno pro Icecast2. Samozřejmě existuje mnohem více nastavení, se kterými můžete hrát. V konfiguračních souborech jsou vysvětlující poznámky k parametrům.

4. Start/Stop Icecast

Server je spuštěn a zastaven následujícími příkazy:

/etc/init.d/icecast2 start
/etc/init.d/icecast2 stop

Během provozu serveru Icecast lze spravovat z libovolného prohlížeče na adrese http://localhost:8000/admin/ po zadání pověření administrátora definovaného v kroku 1. Další dokumentace je k dispozici na Icecast.org .

Stream2ip je grafické rozhraní pro rychlé spuštění a zastavení toků, kde již bylo provedeno základní nastavení pro Ices2, Ices nebo Darkice.


Ices2Install ices2 pro streamování zvuku OGG Vorbis z místní zvukové karty

Chcete-li nastavit pulseaudio pro povolení nahrávání ze zvukové karty, viz poznámka k Darkice níže.

Vytvořte adresáře pro Ices2

mkdir /var/log/ices   # in case you need logfiles.  
mkdir /etc/ices2      # for putting ices stuff in.  

Upravte konfiguraci Ices2 .xml

Ices2 se spustí s nastavením souboru .xml. Verbální příklady konfigurací najdete v /usr/share/doc/ices2/examples/. Tyto soubory je třeba upravit, aby vyhovovaly vašim potřebám, a je možné je zkopírovat kamkoli, nejlépe ve vašem domovském adresáři. V závislosti na konfiguračním souboru používá Ices2 seznam skladeb ve formátu Ogg Vorbis (ices-playlist.xml) nebo výstup z vaší zvukové karty (ices-alsa.xml) jako zdroj streamování pro Icecast2.

V sekci <input> Možná budete muset zařízení vyměnit, pokud jste svůj zvukový systém nastavili na PulseAudio. Chcete-li to provést, upravte odpovídající řádek takto:

<param name="device">Pulse</param>

Název streamu pro přijímajícího klienta je definován v následující části.

<mount>/example1.ogg</mount>

Začněte streamovat

Streamy ze zvukové karty budou spuštěny nejprve spuštěním serveru Icecast2 a poté spuštěním Ices2 pomocí následujících příkazů:

/etc/init.d/icecast2 start
ices2 /home/user/somewhere/ices-Pulse.xml # or any other name from .xml file

Nastavení přijímače

Na straně přijímače se vaše „rozhlasová“ stanice naladí: <serverIP>:8000/example1.ogg kde <serverIP> je IP vašeho streamovacího serveru následovaný portem, který jste definovali v souboru icecast.xml (výchozí 8000).

Ukončit streamování

Proudy jsou ukončeny zabíjením Ices2 nebo zastavením provozu serveru Icecast2:

killall ices2
/etc/init.d/icecast2 stop

Ices pro vysílání seznamů skladeb mp3

Vysílání seznamu skladeb obsahujících soubory MP3 nelze provést pomocí Ices2. Musíme nainstalovat IceS , který musíme nainstalovat ze zdroje .

Po nastavení konfiguračního souboru s adresou serveru, heslem a vlastnostmi streamování (dobře zdokumentovaný příklad najdete v /usr/share/doc/ices/examples) můžeme streamovat zvukové soubory mp3 ze seznamů skladeb (např. ve formátu .m3u) přes server Icecast2:

/etc/init.d/icecast2 start
ices -c <path_to_config_file> -F <path_to_playlist>

Pro další možnosti si přečtěte dokumentaci na poměrně propracované manuálové stránce z man ices.


DarkiceInstall darkice pro živé vysílání

Výstup lokální zvukové karty můžeme streamovat jako OGG Vorbis nebo jako mp3 stream pomocí Darkice . Chcete-li povolit streamování místní zvukové karty, možná budeme muset nejprve definovat záznamové zařízení pro Darkice v pulseaudio. To lze provést pomocí pavucontrolInstall pavucontrol . Na kartě Nahrávání vyberte Monitor of <your soundcard> pro "ALSA plug-in [darkice]".

Konfigurační soubor (dobře zdokumentovaný příklad uvedený v /usr/share/doc/darkice/examples) je třeba přizpůsobit serveru Icecast a místním zvukovým prostředím:

[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

Po uložení této konfigurace (např. V ~/music/darkice.cfg) nejprve spustíme server Icecast a poté můžeme streamovat pulseaudio výstup z lokální zvukové karty vyvoláním:

/etc/init.d/icecast2 start
darkice -c ~/music/darkice.cfg

Na přijímači se naladíme na http://<localhost>:8000/mystream.mp3 pro poslech. <localhost> je IP adresy serveru Icecast.

76
Takkat