Transmisja audio za pomocą Icecast2
2. Edytuj konfigurację Icecast2
Otwórz plik /etc/icecast2/icecast.xml
jako root w edytorze. Ze względów bezpieczeństwa powinieneś ustawić hasła w <authentication>
sekcji:
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
Jeśli zmieniłeś <source-password>
lub <relay-password>
musisz to zrobić również po stronie źródła lub przekaźnika. Oznacza to, że pozostaw to ustawienie domyślne lub zmień go również w pliku ices2.xml (patrz poniżej). To samo trzeba będzie zrobić w plikach konfiguracyjnych Ices lub Darkice.
Musisz także zdefiniować nazwę hosta, do której można uzyskać dostęp do strumienia:
<hostname>localhost</hostname>
Pozostaw go jako localhost (nie musisz podawać tam rozstrzygniętego adresu IP), jeśli chcesz streamować tylko w sieci lokalnej. Domyślny port do nasłuchiwania to 8000. Zmień go tylko w razie potrzeby.
3. Edytuj ustawienia domyślne
Otwórz /etc/default/icecast2
plik jako root w edytorze. Ostatni wiersz należy zmienić na
ENABLE=true
To wszystko dla Icecast2. Oczywiście istnieje wiele innych ustawień, z którymi można grać. W plikach konfiguracji znajdują się objaśnienia dotyczące parametrów.
4. Uruchom / zatrzymaj Icecast
Serwer jest uruchamiany i zatrzymywany przez następujące polecenia:
/etc/init.d/icecast2 start
/etc/init.d/icecast2 stop
Podczas uruchamiania serwera Icecast można administrować z dowolnej przeglądarki http://localhost:8000/admin/
po wprowadzeniu poświadczeń administratora zdefiniowanych w kroku 1. Dalsza dokumentacja jest dostępna na Icecast.org .
Stream2ip jest graficznym frontendem do szybkiego uruchamiania i zatrzymywania strumieni, w których już dokonano podstawowej konfiguracji Ices2, Ices lub Darkice.
Ices2 do przesyłania strumieniowego dźwięku OGG Vorbis z lokalnej karty dźwiękowej
Aby skonfigurować pulseaudio w celu umożliwienia nagrywania z karty dźwiękowej, patrz uwaga dla Darkice poniżej.
Twórz katalogi dla Ices2
mkdir /var/log/ices # in case you need logfiles.
mkdir /etc/ices2 # for putting ices stuff in.
Edytuj .xml konfigurację Ices2
Ices2 będzie działać przy użyciu pliku .xml do ustawień. Pełne przykłady konfiguracji można znaleźć w /usr/share/doc/ices2/examples/
. Pliki te należy edytować zgodnie z własnymi potrzebami i można je skopiować w dowolnym miejscu, najlepiej w katalogu domowym. W zależności od pliku konfiguracyjnego Ices2 używa listy odtwarzania w formacie Ogg Vorbis ( ices-playlist.xml
) lub danych wyjściowych z karty dźwiękowej ( ices-alsa.xml
) jako źródła przesyłania strumieniowego dla Icecast2.
W tej sekcji <input>
może być konieczna wymiana urządzenia, jeśli ustawiłeś system dźwiękowy na PulseAudio. Aby to zrobić, edytuj odpowiedni wiersz do:
<param name="device">pulse</param>
Nazwa strumienia dla klienta odbierającego jest zdefiniowana w następnej sekcji.
<mount>/example1.ogg</mount>
Rozpocznij transmisję strumieniową
Strumienie z karty dźwiękowej zostaną uruchomione najpierw przez uruchomienie serwera Icecast2, a następnie Ices2 za pomocą następujących poleceń:
/etc/init.d/icecast2 start
ices2 /home/user/somewhere/ices-pulse.xml # or any other name from .xml file
Skonfiguruj odbiornik
Po stronie odbiornika twoja „stacja” radiowa nastroi się: <serverIP>:8000/example1.ogg
gdzie <serverIP>
jest adres IP twojego serwera strumieniowego, a po nim port zdefiniowany w pliku icecast.xml (domyślnie 8000).
Zakończ przesyłanie strumieniowe
Strumienie są kończone przez zabicie Ices2 i / lub zatrzymanie uruchamiania serwera Icecast2:
killall ices2
/etc/init.d/icecast2 stop
Ices do transmisji list odtwarzania mp3
Nadawanie listy odtwarzania zawierającej pliki mp3 nie jest możliwe w Ices2. Musimy zainstalować IceS , który musimy zainstalować ze źródła .
Po skonfigurowaniu pliku konfiguracyjnego z adresem serwera, hasłem i właściwościami przesyłania strumieniowego (można znaleźć dobrze udokumentowany przykład /usr/share/doc/ices/examples
) możemy przesyłać strumieniowo pliki audio MP3 z list odtwarzania (np. W formacie .m3u) na serwer Icecast2 przez:
/etc/init.d/icecast2 start
ices -c <path_to_config_file> -F <path_to_playlist>
Więcej opcji znajdziesz w dokumentacji na dość rozbudowanej stronie podręcznika man z man ices
.
Darkice do transmisji na żywo
Możemy przesyłać strumieniowo wyjście lokalnej karty dźwiękowej jako OGG Vorbis lub jako strumień mp3 za pomocą Darkice . Aby włączyć streaming lokalnej karty dźwiękowej, może być konieczne zdefiniowanie urządzenia nagrywającego dla Darkice w pulseaudio. Można to zrobić za pomocą pavucontrol . W Recording karcie wybrać Monitor of <your soundcard>
na "ALSA plug-in [darkice]" .
Plik konfiguracyjny (dobrze udokumentowany przykład podany w /usr/share/doc/darkice/examples
) musi zostać dostosowany do serwera Icecast i lokalnego środowiska dźwiękowego:
[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 zapisaniu tej konfiguracji (np. W ~/music/darkice.cfg
) najpierw uruchamiamy serwer Icecast, a następnie jesteśmy w stanie przesyłać strumieniowo wyjście pulseaudio z lokalnej karty dźwiękowej, wywołując:
/etc/init.d/icecast2 start
darkice -c ~/music/darkice.cfg
W odbiorniku nastawiamy się http://<localhost>:8000/mystream.mp3
na słuchanie. <localhost>
to adres IP serwera Icecast.