Вступление
Icecast - популярное и гибкое решение для потоковой передачи аудио, используемое в основном для интернет-радиостанций. Он поддерживает потоковые форматы Ogg, MP3, Opus и WebM через HTTP, SHOUTcast, AAC и NSV. Он активно развивается в течение 20 лет и популярен своей надежностью, простотой и соблюдением открытых стандартов. Он выпущен как бесплатное программное обеспечение под лицензией GNU GPLv2.
Установка
Обновите список пакетов APT:
sudo apt-get update
Установить Icecast:
sudo apt-get install icecast2
Сразу после установки пакета откроется окно автоматической настройки. Выберите Yes
для настройки Icecast и следуйте инструкциям.
Icecast может быть дополнительно настроен путем редактирования файла конфигурации XML /etc/icecast2/icecast.xml
. Ниже приведен пример того, как изменить порт.
Порт можно изменить, отредактировав <port>
тег. По 8000
умолчанию установлено:
<port>DESIRED_PORT_NUMBER</port>
Сохраните и выйдите из файла.
Примечание. Чтобы применить изменения конфигурации, необходимо перезапустить Icecast.
Дополнительную документацию по файлам конфигурации Icecast можно найти здесь .
Связывание привилегированных портов
Если вы хотите запустить Icecast Server через привилегированные порты, такие как HTTP
( 80
) и HTTPS
( 443
), вам нужно выполнить дополнительную настройку.
Откройте файл конфигурации:
sudo vi /etc/icecast2/icecast.xml
Найдите <security>
раздел. Раскомментируйте <changeowner>
раздел внутри и внесите следующие изменения:
<security>
<chroot>0</chroot>
<changeowner>
<user>icecast2</user>
<group>icecast</group>
</changeowner>
</security>
Мы также должны указать операционной системе запустить Icecast от имени пользователя root.
Откройте файл сервиса:
sudo vi /etc/default/icecast2
Измените параметры USERID
и GROUPID
, чтобы они соответствовали следующему:
USERID=root
GROUPID=root
Запустить, перезапустить и остановить Icecast
Чтобы запустить сервер Icecast:
sudo systemctl start icecast2
Чтобы перезапустить и перезагрузить изменения конфигурации:
sudo systemctl restart icecast2
Чтобы остановить Icecast:
sudo systemctl stop icecast2
Панель администратора
Icecast поставляется с веб-интерфейсом, который обслуживает аудиопотоки в виде файлов. Он включает в себя раздел администратора, который позволяет просматривать основную информацию и статистику. Вы можете получить доступ к нему с помощью навигации по веб - браузер на свой адрес сервера или домена и порт, http://ADDRESS:PORT
или http://example.com:PORT
.
Потоковая передача с исходным клиентом
После настройки сервера Icecast вы можете использовать любого из совместимых клиентов Icecast (также называемых исходными клиентами) для передачи звука на сервер Icecast и всем слушателям. Обычно исходный клиент устанавливается удаленно в том месте, где будет передаваться звук, но при необходимости может быть установлен вместе с сервером. Существует множество вариантов из бесплатных приложений с открытым исходным кодом, таких как mixxx для ди-джеев, IceS для сложных автоматических настроек и BUTT для простого совместного использования микрофона; а также многие решения с закрытым исходным кодом. Список бесплатных и открытых исходных клиентов можно найти в списке приложений Icecast.
Вывод
Сфера действия Icecast далеко выходит за рамки этой базовой настройки. Посетите документацию Icecast, чтобы ознакомиться со всеми функциями, которые он предлагает, такими как: ретрансляция потоков, расширенная аутентификация, транскодирование, публичные радиопередачи и многое другое.