Меню Рубрики

Windows audio streaming server

Использование Icecast или настройка сервера для радиовещания

В двух словах, программное обеспечение Icecast позволяет создать сервер радио и видео вещания. В данной статье мы разберем процесс установки и настройки данного ПО на системах Linux. Установку и принцип настройки также рассмотрим для Windows.

Установка

Рассмотрим установку под системы Windows, Ubuntu/Debian, CentOS/Red Hat.

Windows

Переходим на страницу загрузки Icecast и скачиваем программу для Windows:

Запускаем скачанный файл — принимаем лицензионное соглашение — кликаем несколько раз Next и Install. Когда завершится установка, кликаем по Close.

Linux CentOS 7

Устанавливаем расширенный репозиторий epel:

yum install epel-release

yum install icecast

Linux Ubuntu

Установка выполняется из базового репозитория:

apt-get install icecast2

Принцип настройки

Все настройки вносятся в конфигурационный файл формата XML.

В Windows он расположен по пути %ProgramFiles(x86)%\Icecast\icecast.xml. Открыть его можно любым текстовым редактором.

В CentOS 7 конфигурационный файл открываем командой:

Сами настройки в данном файле одинаковые для любой операционной системы. Все что включено в является комментарием и не учитывается программой.

После внесения настроек, службу icecast необходимо перезапускать.

Тестовый запуск

Настройка брандмауэра

Перед запуском сервера, необходимо убедиться в правильных настройках фаервола (необходимо открыть порт 8000).

Firewalld (CentOS 7):

firewall-cmd —permanent —add-port=8000/tcp

Iptables (Ubuntu):

iptables -I INPUT 1 -p tcp —dport 8000 -j ACCEPT

Первичная настройка

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

* при такой настройке мы указываем, на каком сетевом интерфейсе будем слушать запросы (в данном случае, на 192.168.0.15).

Selinux

Если в системе линукс используется система безопасности Selinux, либо отключаем ее, либо настраиваем.

Запуск

В CentOS 7 разрешаем сервис и запускаем его следующими командами:

systemctl enable icecast

systemctl start icecast

В Ubuntu:

systemctl enable icecast2

systemctl start icecast2

Открываем браузер и переходим по пути http://192.168.0.15:8000/

* где 192.168.0.15 — IP-адрес нашего сервера, который мы прописали в bind-address конфига.

Мы должны увидеть следующее:

Настройка редиректа радиостанции

Самый простой способ проверить работу сервера радио — настроить перенаправление другой радиостанции.

Находим подходящий ресурс, например, hd.lagrosseradio.info. Изучаем документацию по настройке ретрансляции.

И дописываем в наш конфигурационный файл, примерно, следующее:

/lagrosseradio-metal-024.mp3
/metal
0

* перенаправлений может быть несколько. В данном примере на ресурсы ice4.lagrosseradio.info и shoutcast.aichyna.com.
* server — имя сервера, с которого берется поток; port — сетевой порт, на котором удаленный сервер отдает поток; mount — точка мониторования на стороне удаленного сервера, с которого берем поток; local-mount — точка монтирования, которая будет использоваться нашим сервером для обращения к настраиваемому потоку; on-demand — если стоит 0, сервер всегда берет поток и проигрывает его, если 1 — только при наличие активных обращений.

systemctl restart icecast || systemctl restart icecast2

Опять открываем нашу страницу http://192.168.0.15:8000/ — на странице должен появиться список с потоками:

Теперь пробуем в браузере открыть страницы с настроенными точками монтирования (local-mount) — http://192.168.0.15:8000/metal и /http://192.168.0.15:8000/aplus. Мы должны увидеть проигрыватель с кнопкой Play.

Свои плейлисты (Ices)

Создать свой список музыкальных композиций и передать его серверу Icecast можно с помощью Ices. Для начала, выполним его установку.

Установка клиента

CentOS 7.

Установка выполняется путем сборки пакета из исходника. Для начала скачиваем его — для этого переходим на страницу icecast.org/ices и копируем ссылку на Ices0 (ices2 не умеет работать с mp3, что требует их конвертацию и это не очень удобно):

Используя ссылку, скачиваем исходник:

* если получим ошибку «wget: команда не найдена», ставим wget командой yum install wget.

Распаковываем архив и заходим в каталог:

Устанавливаем пакеты, нужные для сборки:

yum install gcc libxml2-devel libshout-devel gcc-c++

Запускаем конфигурирование, сборку и установку:

Ubuntu

Установка в убунте выполняется одной командой:

apt-get install ices

Настройка Icecast

Открываем конфигурационный файл и проверяем лимит на количество создаваемых ресурсов:

* если лимит на sources будет превышен предыдущими плейлистами или редиректами, мы получим ошибку при запуске ices, например: Error during send: Mount failed on http://192.168.0.15:8000/music, error: Login failed.

Меняем пароль на управление ресурсами:

* newpassword — собственно, сам пароль.

Закрываем редактор и перезапускаем icecast:

systemctl restart icecast || systemctl restart icecast2

Настройка Ices и запуск плейлиста

Создаем каталог конфигурационного файла и сам файл:

/etc/ices/playlist.rock.txt
1
builtin
ices

/rock
ices.dump
Default stream
Default genre
Default description
http://192.168.0.15:8000

* где, как правило, редактируется следующее:

  • File — путь до файла со списком аудиофайлов.
  • Randomize — воспроизведение в случайном порядке.
  • Verbose — отладка. Следует поменять на 1, если программа работает не корректно.
  • BaseDirectory — рабочий каталог программы. В нем будут храниться pid и log файлы.
  • Hostname — адрес нашего сервера icecast.
  • Port — порт, на котором слушает сервер icecast.
  • Password — пароль для ресурса, который был выставлен в конфигурационном файле icecast.
  • Mountpoint — точка монтирования на сервере для плейлиста.
  • URL — путь URL до плейлиста.

Создадим список аудиофайлов:

ls /music/rock/ > /etc/ices/playlist.rock.txt

* данной командой мы прочитаем содержимое каталога /music/rock и сделаем из его содержимого плейлист для ices.
* по сути, файл playlist.rock.txt должен включать перечень всех аудиофайлов с полным путем до них. Каждый файл с новой строчки.

ices -c /etc/ices/ices.xml

* где /etc/ices/ices.xml — путь до конфигурационного файла.

Автозапуск ices

В теории, можно добавить команду /usr/local/bin/ices -c /etc/ices/ices.xml в /etc/rc.local. Но профессиональнее создать сервис на базе systemd.

Создаем файл сервиса:

[Unit]
Description=Ices Service
After=network.target
Requires=icecast.service

[Service]
Type=forking
PIDFile=/etc/ices/ices.pid
ExecStart=-/usr/local/bin/ices -c /etc/ices/ices.xml
ExecReload=/bin/kill -HUP $MAINPID
Restart=always

Разрешаем созданный сервис:

systemctl enable ices

Запускаем его и проверяем:

systemctl start ices

systemctl status ices

Автоматическое переключение каналов

Идея заключается в создании общего канала (mount) с переключением на резервный (в случаях, когда общий ничего не вещает). Это применяется для создания канала диджея — когда он подключен, в эфир идет его трансляция, когда отключен — музыка из плейлиста или перенаправленная с другой радиостанции. Также, это можно применять для оповещений или вставки рекламных роликов.

В данном примере разберем создание канала, который будет получать аудиоконтент из ices, а при отключении данной трансляции, будет играть музыка из другого источника.

В конфиг icecast добавляем:

* на самом деле, данный relay мы уже добавляли выше; live — имя основного канала; aplus в секции fallback-mount — имя канала, на который нужно перенаправить слушателя, если основной канал не задействован; секция fallback-override определяет, нужно ли автоматически возвращать слушателей на основной канал, если он опять станет активным.

systemctl restart icecast || systemctl restart icecast2

Можно уже подключаться в эфиру (в нашем примере по адресу http://192.168.160.163:8000/live) — мы должны услышать музыку, которая транслируется на shoutcast.aichyna.com.

Создаем конфигурационный файл для ices (или правим уже созданный):

Источник

powered by leo blog …

По сути тот How-To, который я сделал можно считать баяном, так как это делали раньше и инструкций было завалом, но в инете я не нашел таких инструкций, по которым можно сразу сделать всё в три-четыре шага… И тут мне написали с очередным вопросом – могу ли я помочь в создании «очередного» интернет радио.

Инструкция описывает процесс создание интернет-радио на ОС Windows 2000, XP, Vista, Seven (7).

Для начала, если вы хотите вещать именно в интернет – то у вас должен быть реальный IP адрес (то есть должен быть виден из интернета. )

Шаг 1. Ставим SHOUTcast Server.

Соглашаемся и жмём далее … Обязательно выбираем GUI версию, а остальное по желанию … Указываем путь установки (по умолчанию он будет таков, как на картинке) … Установка завершена !

Это окно у вас не задержится и более 5-10 секунд, после чего оно закроется, откроется readme.txt и в меню «Пуск» появится папка «Programs» где и будет сам «SHOUTcast DNAS (GUI)», но прежде чем запускать его – настроим конфигурацию для его работы.

Файл конфигурации находится в папке «C:\Program Files\SHOUTcast» а называется он «sc_serv.ini». Открываем его блокнотом и используя полное описание всех параметров, настраиваем по своему вкусу.

Полное описание параметров:

Несколько комментариев – основные параметры это MaxUser, Password, PortBase и PublicServer. Остальное можно оставить по умолчанию.

Шаг 2. Ставим Winamp.

Winamp – это плеер, с которого будет транслироваться вся музыка в интернет. Последнюю русскую версию всегда можно найти на сайте производителя, ну например по этому адресу http://www.winamp.com/media-player/ru. Особого внимания я акцентировать на его установке не буду – там и так всё предельно ясно и просто. Перейдём к третьему шагу!

Шаг 3. Устанавливаем SHOUTcast DSP Plug-In.

Это и есть тот плагин, который ретранслирует поток на сервер. Существует немало его аналогов, которые работают как самостоятельные плеера и dj-студии, но особого внимания я на них акцентировать не стану. Скачать последнюю версию как обычно можно на сайте производителя — www.shoutcast.com. Прямая ссылка, для тех, кто в танке — http://yp.shoutcast.com/downloads/shoutcast-dsp-1-9-0-windows.exe.

Начнём процесс установки:

Согласимся с соглашением … Здесь можно оставить всё по дефолту или снять галочку с тулбара … Укажем, где обитает сам winamp … Увидев данный вопрос можно отпраздновать установку плагина, и заодно отказаться от прочтения readme файла и приступить к настройке.

Настраиваем:

Запускаем WinAmp плеер и выбираем «Сервис=>Параметры», там выбираем

1) «DSP (Эффекты)»

2) «Nullsoft SHOUTcast Source DSP v1.9.1 [dsp_sc.dll]»

3) Откроется окно плагина «SHOUTcast Source»

Далее закрываем «Параметры проигрывателя…» и приступим к настройке.

На этом рисунке мы видим окно статуса вещания. Данный плагин способен на вещание в 5 потоков, тоесть грубо говоря он может подключиться к пяти серверам, ретранслирующим поток. Но мы будем настраивать 1, остальное – на свой вкус. Вкладка «Output» — там есть поле «Output», где можно выбрать интересующий нас канал, «Status» — где можно увидеть байты переданной информации, галочку «Connect at Startup» — подключаться автоматически ну и сама кнопка «Connect» — которая говорит сама за себя. Далее мы видим нажатую кнопку «Connection» где мы можем настроить «Address» — адрес сервера к которому мы подключаемся (в нашем случае оставим как и есть, так как сервер стоит на нашей же машине), «Port» — порт, к которому нужно подключиться, пароль доступа к серверу (это то что вы прописали в параметрах сервера в строчке «Password») и выбираем нужный кодировщик звука «Encoder». Ниже есть галочка «Automatic Reconnection on Connection Failure», которая в случае обрыва подключения будет снова подключать к серверу и поле «Reconnection timeout» — там указываем секунды таймаута. «Yellowpages» — Там мы указываем основную информацию о нашем радио. С картинки я думаю всё понятно, поэтому расписывать все пункты не стану.

Вкладка «Encoder» — тут мы настраиваем кодировщик звука. В «Encoder Type» мы выбираем из трёх кодировщиков наиболее подходящий, а именно Mp3. «Encoder Settings» — тут мы выбираем то качество вещания, на которое способен наш интернет канал. Самое оптимальное, это «128/44100/Stereo». Вкладка «Input» — Тут мы выбираем, откуда будет идти музыка на сервер, из Winamp-а или со звуковой карты.

Ну, теперь можно запустить сервер, плеер и начать вещать в интернет свою музыку, мы ведь так долго шли до этого. Расписал я, конечно, не всё, так как в силу нынешнего ноутбука более возможностей я показать не смогу. Но в случае, если у вас будут какие либо вопросы – пишите, не стесняйтесь.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Windows audio recorder windows 7
  • Windows audio enhancements отключены
  • Windows audio device graph isolation
  • Windows assessment and development kit
  • Windows aspi drivers windows 7