Установка Icecast2 и Ices Ubuntu

Установка и настройка Icecast2

 

sudo apt install icecast2

Перед вами откроется установщик :

Потребуется ввести полное доменное имя сервера:

Затем вас попросят указать три пароля, два из них будут использоваться для подключения источников вещания, третий для входа в веб-панель администратора.

откроем конфигурационный файл:

sudo nano  /etc/icecast2/icecast.xml

Секция описания сервера:

<location>Earth</location>
<admin>icemaster@localhost</admin>

Секция <limits> где нас интересуют две опции:

<clients>100</clients>
<sources>2</sources>

Колличество клиентов и колличество потоков

Далее настройки аутентификации, здесь задаются те самые пароли, которые вы вводили при настройке пакета (если делали эту настройку), обязательно задайте все три пароля: для источников, релеев и админ-панели, также, опционально, можете изменить имя учетной записи администратора:

 <authentication>
       <!-- Sources log in with username 'source' -->
       <source-password>password</source-password>
       <!-- Relays log in with username 'relay' -->
       <relay-password>password</relay-password>

       <!-- Admin logs in with the username given below -->
       <admin-user>admin</admin-user>
       <admin-password>password</admin-password>
   </authentication>

Ниже следует указать полное доменное имя:

<hostname>local.admiralhub.ru</hostname>   
   <listen-socket>
       <port>8000</port>
        <bind-address>ваш адрес</bind-address>
       <!-- <shoutcast-mount>/stream</shoutcast-mount> -->
   </listen-socket>
 

Обязательно раскоментируйте строки :

<bind-address></bind-address>

и впишите свой ip адрес выданный роутером или localhost 

Перезагружаем icecast2 :

sudo systemctl restart icecast2

открыть в браузере адрес ваш,домен:8000 и, если все сделано правильно, вы увидите веб-интерфейс сервера онлайн-вещания:

Icecast 2 - это сервер вещания  ему нужно передать поток, который он будет транслировать в сеть,поэтому устанавливаем ices:

 

Установка и настройка Ices

 

sudo apt install ices2

После  скопируйте пример конфигурационного файла в /etc/icecast2

cp /usr/share/doc/ices2/examples/ices-playlist.xml /etc/icecast2/ices.xml

Открываем файл:

sudo nano /etc/icecast2/ices.xml

сразу разрешим процессу работать в фоне:

<background>1</background>

За поток отвечает секция <stream> если потоков много секцию нужно продублировать:

Секция начинается с описания (заполняем по желанию)

<metadata>
<name>Example stream name</name>
<genre>Example genre</genre>
<description>A short description of your stream</description>
</metadata>

Далее следует настройка источника :

<input>
           <module>playlist</module>
           <param name="type">basic</param>
           <param name="file">playlist.txt</param>
           <!-- random play -->
           <param name="random">0</param>
           <!-- if the playlist get updated that start at the beginning -->
           <param name="restart-after-reread">0</param>
           <!-- if set to 1 , plays once through, then exits. -->
           <param name="once">0</param>
       </input>

param name="file" - путь к файлу плейлиста, мы будем хранить его рядом с конфигурационными файлами

param name="random" - случайный порядок воспроизведения, 0 - выключено

param name="restart-after-reread" - начинать проигрывание заново при обновлении плейлиста, 0 - выключено

param name="once" - проиграть плейлист только один раз, 0 - выключено

Секция <instance> отвечает за соединение с сервером вещания, зададим параметры подключения:

<hostname>Ваш адрес</hostname>
<port>8000</port>
<password>пароль</password>
<mount>/radio.ogg</mount>
<yp>0</yp>

В <hostname> вписывать не домен а локальный адрес 

Секция <encode> отвечает за битрейт потока, частоту дискретизации и число каналов:

<encode>
<nominal-bitrate>64000</nominal-bitrate> 
<samplerate>44100</samplerate>
<channels>2</channels>
</encode>

на этом конфигурация завершена

Так как mp3 не поддерживается ices перекодируем файлы в ogg :

sudo apt install dir2ogg

Он позволяет пакетно преобразовывать форматы MP3, M4A, WMA, FLAC, и WAV в открытый формат OGG

dir2ogg -r --delete-input /путь/до/папки с музыкой

Если нужно сохранить  файлы mp3 в каталоге запустите команду без  --delete-input

dir2ogg -r   /путь /до /папки с музыкой

Создать или обновить плейлист командой:

find /путь /до/папки/ -iname "*.ogg" -print > /etc/icecast2/playlist.txt

Запускаем службу проигрывателя:

sudo nano /etc/rc.local

В файл пишем:

#!/bin/sh
sleep 10
/usr/bin/ices2 /etc/icecast2/ices.xml
exit 0

Делаем файл исполняемым и включаем rc.local в ubuntu он по умолчанию выключен:

chmod +x /etc/rc.local

systemctl enable rc-local.service

Для тех у кого есть сертификаты ssl  можно запилить шифрование :

cat/путь/до/сертификата/fullchain.pem/путь/до/сертификата/privkey.pem >/etc/icecast2/icecast.pem

Открываем /etc/icecast2/icecast.xml

раскоментируем :

<listen-socket>
       <port>8443</port>
       <ssl>1</ssl>
   </listen-socket>

И ниже раскоментируем и правим строку:

<ssl-certificate>/etc/icecast2/icecast.pem</ssl-certificate>

Заходим по адресу https:// ваш.домен:8443 и видим :

 

 

 

 

 

 

 

 

 

 

 

Версия Icecast2 для windows

Скачать