Трансляция аудио с Icecast2
2. Отредактируйте конфигурацию Icecast2
Откройте файл /etc/icecast2/icecast.xml
как root в редакторе. В целях безопасности вы должны установить пароли в <authentication>
разделе:
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
Если вы изменили <source-password>
или <relay-password>
вам нужно сделать это также на стороне источника или реле. Это значит, оставить его по умолчанию или изменить его в файле ices2.xml (см. Ниже). То же самое необходимо сделать в файлах конфигурации Ices или Darkice.
Вам также необходимо определить имя хоста, по которому может быть достигнут ваш поток:
<hostname>localhost</hostname>
Оставьте его как localhost (не нужно указывать разрешенный IP-адрес), если вы хотите передавать только в своей локальной сети. Порт по умолчанию для прослушивания - 8000. Изменяйте его только при необходимости.
3. Изменить значения по умолчанию
Откройте /etc/default/icecast2
файл как root в редакторе. Последняя строка должна быть изменена на
ENABLE=true
Это все для Icecast2. Конечно, есть еще много настроек, с которыми вы можете играть. В файлах конфигурации есть пояснения к параметрам.
4. Запуск / остановка Icecast
Сервер запускается и останавливается следующими командами:
/etc/init.d/icecast2 start
/etc/init.d/icecast2 stop
Во время работы сервер Icecast можно администрировать из любого браузера http://localhost:8000/admin/
после ввода учетных данных администратора, определенных на шаге 1. Дополнительная документация доступна на сайте Icecast.org .
Stream2ip - это графический интерфейс, позволяющий быстро запускать и останавливать потоки, в которых базовая настройка для Ices2, Ices или Darkice уже выполнена.
Ices2 для потоковой передачи аудио OGG Vorbis с локальной звуковой карты
Чтобы настроить pulseaudio для включения записи со звуковой карты, см. Примечание для Darkice ниже.
Сделать каталоги для Ices2
mkdir /var/log/ices # in case you need logfiles.
mkdir /etc/ices2 # for putting ices stuff in.
Отредактируйте XML-файл конфигурации Ices2
Ices2 будет работать с использованием XML-файла настроек. Подробные примеры конфигураций можно найти в /usr/share/doc/ices2/examples/
. Эти файлы должны быть отредактированы в соответствии с вашими потребностями и могут быть скопированы в любом месте, лучше всего в вашем домашнем каталоге. В зависимости от файла конфигурации Ices2 использует список воспроизведения в формате Ogg Vorbis ( ices-playlist.xml
) или вывод из вашей звуковой карты ( ices-alsa.xml
) в качестве источника потоковой передачи для Icecast2.
В этом разделе <input>
вам может потребоваться заменить устройство, если вы настроили звуковую систему на PulseAudio. Для этого отредактируйте соответствующую строку:
<param name="device">pulse</param>
Имя потока для принимающего клиента определено в следующем разделе.
<mount>/example1.ogg</mount>
Начать потоковую передачу
Потоки с вашей звуковой карты будут запущены, сначала запустив сервер Icecast2, а затем запустив Ices2, используя следующие команды:
/etc/init.d/icecast2 start
ices2 /home/user/somewhere/ices-pulse.xml # or any other name from .xml file
Настройка приемника
На стороне приемника настроена ваша радиостанция: <serverIP>:8000/example1.ogg
где <serverIP>
находится IP-адрес вашего сервера потоковой передачи, за которым следует порт, который вы определили в файле icecast.xml (по умолчанию 8000).
Завершить потоковую передачу
Потоки прекращаются путем уничтожения Ices2 и / или прекращения работы сервера Icecast2:
killall ices2
/etc/init.d/icecast2 stop
Льды для трансляции плейлистов mp3
Трансляция списка воспроизведения, содержащего mp3-файлы, не может быть выполнена с помощью Ices2. Нам нужно установить IceS , который мы должны установить из исходного кода .
После настройки файла конфигурации с адресом сервера, паролем и свойствами потоковой передачи (хорошо документированный пример будет найден в /usr/share/doc/ices/examples
) мы можем транслировать аудиофайлы mp3 из списков воспроизведения (например, в формате .m3u) через сервер Icecast2 с помощью:
/etc/init.d/icecast2 start
ices -c <path_to_config_file> -F <path_to_playlist>
Для дальнейших опций прочитайте документацию в довольно сложной справочной странице man ices
.
Darkice для прямой трансляции
Мы можем транслировать вывод локальной звуковой карты как OGG Vorbis или как поток mp3, используя Darkice . Чтобы включить потоковую передачу локальной звуковой карты, нам может понадобиться сначала определить устройство записи для Darkice в pulseaudio. Это можно сделать с помощью pavucontrol . В записи вкладке выбрать Monitor of <your soundcard>
для «ALSA плагин [darkice]» .
Файл конфигурации (хорошо документированный пример приведен в /usr/share/doc/darkice/examples
) должен быть адаптирован к серверу Icecast и локальной звуковой среде:
[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
После сохранения этой конфигурации (например, в ~/music/darkice.cfg
) мы сначала запускаем сервер Icecast, а затем можем транслировать выходные данные pulseaudio с локальной звуковой карты, вызывая:
/etc/init.d/icecast2 start
darkice -c ~/music/darkice.cfg
На ресивере мы настраиваемся http://<localhost>:8000/mystream.mp3
на прослушивание. <localhost>
IP-адрес сервера Icecast