Различия



Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

wiki:icegenerator [2013/04/06 10:03] (текущий)
Строка 1: Строка 1:
 +**Icegenerator**
 +
 +IceGenerator является генератором потока для Icecast / Shoutcast серверов. Вещание MP3 на Icecast / Shoutcast сервер без перекодирования, экономия ресурсов CPU. Возможность поиска каталогов, в нашем варианте собран без поддержки MySQL / PGSQL, также убрана возможность чтения тегов ID3 из файлов, возможно в следующих сборках будет добавлено, поддерживается M3U/PLS, META динамические данные и Telnet сервис.
 +
 +
 +Предполагается что вы уже изучили раздел связанный с установкой системы opkg на устройство. Данная статья предполагает что вы устаналиваете данное програмное обеспечение для работы с сервером [[wiki:icecast|]]\\
 +В примерах конфигурации предполагается что конфигурационный файл находится:\\
 +  /media/DISK_A1/system/etc/icegenerator
 +
 +
 +Установка сводится к:
 +
 +  opkg install icegenerator
 +
 +
 +После чего в вашу систему должен установиться соотвествующий пакет.\\
 +На первоначальном этапе рекомендую также установить screen (скорее всего это уже сделано на этапе установки [[wiki:icecast|]]):
 +
 +  opkg install screen
 +
 +Откроем для редактирования файл:
 +
 +  /media/DISK_A1/system/etc/icegenerator.conf
 +
 +
 +В начале файлы можно обнаружить секции конфигурации с "#" в начале, это обозначает комментарии. Обязательно замените их на свои, не стоит оставлять пароли по умолчанию.\\
 +
 +Пример файла конфигурации для того чтобы icegenerator вещал локально расположеную музыку на вашем жёстком диске подключенном к устройству:\\
 +
 +
 +  # IP адрес сервера
 +  IP=127.0.0.1
 +  # Порт сервера 
 +  PORT=8000
 +  # Тип сервера
 +  # 2 - для Icecast 2.X
 +  SERVER=2
 +  # Точка монтирования потока на сервере
 +  MOUNT=/mymusic
 +  # Для Icecast всегда source
 +  SOURCE=source
 +  # Пароль на сервер [[wiki:icecast|]] он указан в его конфигурации в разделе relay-password
 +  PASSWORD=password
 +  # Формат файлов которые будут проигрываться
 +  # 0 - Ogg Vorbis
 +  # 1 - MP3
 +  FORMAT=1
 +  #Путь к файлам котрые будут проигрываться
 +  MP3PATH=pth:/media/DISK_A1/files/music
 +  #Проигрывать рекурсивно, то есть прочитывать вложенные директории
 +  RECURSIVE=1
 +  # Тут можно указать файл в который будет записываться поток
 +  DUMPFILE=
 +  # Проигрывать по кругу
 +  LOOP=1
 +  # Проигрывать случайным образом
 +  SHUFFLE=1
 +  # Имя радиостанции 
 +  NAME=My Local Music Collection
 +  # Жанр станции
 +  GENRE=Other
 +  # Описание станции
 +  DESCRIPTION=All my music
 +  # Адрес станции
 +  URL=http://ip:8000/mymusic.m3u
 +  #Битрейт потока
 +  BITRATE=128
 +  # Поток публичный
 +  PUBLIC=1
 +  #Как часто обновлять информацию о потоке
 +  METAUPDATE=0
 +  # Настройка логирования
 +  # 0 - не вести логи
 +  # 1 - Передавать на syslogd
 +  # 2 - Писать в файл самостоятельно
 +  LOG=2
 +  # Путь к лог файлу
 +  LOGPATH=/media/DISK_A1/system/var/log/icegenerator.log
 +  #Телнет интерфейс
 +  DATAPORT=8796
 +
 +
 +Перед запуском:
 +
 +Предполагается, что данное ПО запускается совместно с icecast расположенным на томже устройстве.\\
 +Если вам хочется чтобы эту радиостанцию также могли прослушивать пользователи из сети интернет, то вам необходимо:\\
 +На вашем устройстве должен быть белый и желательно постоянный ip адрес, он приобретается у вашего провайдера интернет.\\
 +В папке:
 +
 +  /media/DISK_A1/system/etc/firewall.d
 +  
 +Создаём скрипт firewall.sh с содержимым:
 +
 +  #!/bin/sh
 +  iptables -A INPUT -i lo -j ACCEPT
 +  iptables -A INPUT -p tcp --dport 8000 -j ACCEPT
 +
 +Делаем его исполняемым спомощью команд:
 +  
 +  chmod +x путь_и_имя_скрипта.sh
 +  
 +После этого при перезапуске устройства, эти правила будут автоматически применяться.
 +Первое правило разрешает общаться между собой нашему генератору потока и соотвественно серверу который будет раздавать этот поток, а второе правило разрешает соединения к серверу отовсюду.
 +
 +Запуск:
 +
 +  Если запускается в паре с сервером вещания на этомже устройстве, то можно обойтись командами:
 +  screen -rU - присоединение к шеллу с icecast если он был ранее запущен.
 +  ctrl+a+c - создаём ещё одно окно.
 +  icegenerator -f /media/DISK_A1/system/etc/icegenerator/icegenerator.conf
 +
 +Или если ваш стример расположен где-то в другом месте, можно создать отдельно:
 +
 +  screen -dmS icegenerator -U icegenerator -f /media/DISK_A1/system/etc/icegenerator/icegenerator.xml
 +  
 +
 +----
 +
 +**Нюансы:**
 +
 +В текущей сборке не читает теги mp3.\\
 +При большом количестве файлов в директории может выдавать Segmentation fault.\\
 +
 +
 +
 +
 +