Поднимем свое интернет радио. для этого нужно всего ничего:
- Доенное имя
- RadioCMS
- Развернутый веб сервер
- PHP5 + mysql
- php должен работать на apache2, а не на CGI
из дополнительного ПО
- icecast
- ezstream
- libssh2
- pecl ssh2
- curl и gd
- библиотека iconv + lame (для преобразование потока)
Начнем:
Установим сразу:
aptitude install libssh2-1-dev libssh2-php/etc/init.d/apache2 reload
1. Добавляем настройку в httpd.conf
/etc/apache2/httpd.conf (Debian, Ubuntu, и тп)
2а. Установка icecast из Репозитория<
location
></
location
>
php_admin_value open_basedir "/"
- выполняем команды
- в "/etc/default/icecast2" установить значение:apt-get update
apt-get install icecast2
ENABLE=true
- файл конфигурации /etc/icecast2/icecast.xml
Конфиг предпологаем что по адресу http://ваш_ip:8000/live.m3u
- будет находится ссылка для прослушивания радио. Тут так же встроен
fallback (автоматическое переключение слушателей на прямой эфир) между
основным потокм /live и потоком radiocms /play.
Жирным и красным выделены места которые нужно обязательно заменить.
Жирным и пунктиром - выделена секция с путями до каталогов айскаста и каталогом логов. Пути webroot и adminroot нужно сравнить со своими реальными, если не совпадают - вписать ваши пути. Директория logdir нигде не существует, её нужно создать и выставить права 777.
Всё остальное без особой необходимости трогать не нужно.
Жирным и пунктиром - выделена секция с путями до каталогов айскаста и каталогом логов. Пути webroot и adminroot нужно сравнить со своими реальными, если не совпадают - вписать ваши пути. Директория logdir нигде не существует, её нужно создать и выставить права 777.
Всё остальное без особой необходимости трогать не нужно.
В Debian чаще всего это /etc/icecast2/.
<icecast>
.......
<authentication>
<source-password>пароль</source-password>
<relay-password>пароль</relay-password>
<admin-user>admin</admin-user>
<admin-password>пароль</admin-password>
</authentication>
<hostname>ip-сервера</hostname>
.........
<paths>
<logdir>/var/log/icecast2</logdir>
<webroot>/etc/icecast2/web</webroot>
<adminroot>/etc/icecast2/admin</adminroot>
<alias source="/" dest="/status.xsl"/>
</paths>
.....
</icecast>
- запускаем icecast командой:
/etc/init.d/icecast2 start
- icecast доступен по адресу: http://ВашIPсервера:8000
2б. Установка icecast из исходников
Прежде всего нам необходим компилятор gcc, если у вас он не установлен, устанавливаем:
Будем работать в папке /home/apt-get install build-essential
cd home/
Создадим папку icecast
mkdir icecast
cd icecast/
Скачиваем icecast trunk:
wget http://people.xiph.org/%7Ebrendan/snapshots/icecast/icecast-trunk-20090819.tar.gzРаспаковываем: tar xvf icecast-trunk-20090819.tar.gz
переходим: cd icecast-trunk
запускаем компиляцию
./configure
Итак при конфигурации( ./configure ) велезет ошибка:
configure: error: XSLT configuration could not be found
Устанавливаем библиотеку XSLT
Создаем папку: mkdir XSLT
Зайдем: cd XSLT
Скачаем: wget ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz
Распаковываем архив:
tar xvf libxslt-1.1.26.tar.gz
и переходим в папку:
cd libxslt-1.1.26
Итак сейчас должен быть этап сборки,
необходим еще компонент libxml2-dev
Устанавливаем: apt-get install libxml2-dev
И так теперь Компилируем и собираем XSLT
./configure
make
make install
Установка libvorbis-dev
apt-get install libvorbis-dev
Библиотеки и дополнения установлены, возвращаемся к сборке и установке Icecast
Переходим в папку где были скачены исходники icecast
и собираем:
./configure
make
make install
./configure
make
make install
По умолчанию конфигурационный файл icecast будет лежать в /usr/local/etc/icecast.xml
Создаем директорию для логов c правами 777 к примеру тут: /var/log/icecast
Создаем файлы error.log access.log и ставим права доступа (chmod) 777
Пробуем запускать командой:
/usr/local/bin/icecast -b -c /usr/local/etc/icecast.xml &
Для автозапуска добавьте данную строку в автозагрузку
- icecast доступен по адресу: http://ВашIPсервера:8000
3) необходим ezstream, deb пакетов нету. придется все собирать из исходника.
- wget http://downloads.xiph.org/releases/ezstrea...am-0.5.6.tar.gz
- tar zxvf ./ezstream-0.5.6.tar.gz
- cd ezstream-0.5.6
- ./configure
возможная ошибка при компиляции
- make
- make install
Теперь настроим ezstream
Создаём файл playlist.txt с правами 777.
и ezstream.xml с правами 644 и содержанием:
Запишем в файл плейлиста полный адрес любого mp3-файла и выполним команду:
4) Установим перекодировку
Если хотите перекодировать файлы не лету:
- Установите lame
5) переходим к главному установка обвязки RadioCMS
Создаем файлы error.log access.log и ставим права доступа (chmod) 777
Пробуем запускать командой:
/usr/local/bin/icecast -b -c /usr/local/etc/icecast.xml &
Для автозапуска добавьте данную строку в автозагрузку
- icecast доступен по адресу: http://ВашIPсервера:8000
3) необходим ezstream, deb пакетов нету. придется все собирать из исходника.
- wget http://downloads.xiph.org/releases/ezstrea...am-0.5.6.tar.gz
- tar zxvf ./ezstream-0.5.6.tar.gz
- cd ezstream-0.5.6
- ./configure
возможная ошибка при компиляции
1. configure: error: The pkg-config utility is required.
2. configure: error: libshout 2.2.x is required
3. configure: error: TagLib is required.решение:
aptitude install pkg-config
aptitude
install
libshout-dev
aptitude install libtag1-dev libtagc0-devСобрали? Устанавливаем:
- make
- make install
Теперь настроим ezstream
Создаём файл playlist.txt с правами 777.
и ezstream.xml с правами 644 и содержанием:
<ezstream>
<url>http://localhost:8000/play</url>
<sourcepassword>radioglobal777</sourcepassword>
<format>MP3</format>
<filename>/usr/local/etc/icecast</filename>
<shuffle>0</shuffle>
<playlist_program>0</playlist_program>
<svrinfoname>Name</svrinfoname>
<svrinfourl>http://radio.global-mmorpg.com/</svrinfourl>
<svrinfogenre>Ofther</svrinfogenre>
<svrinfodescription>Radio Atrea</svrinfodescription>
<svrinfobitrate>128</svrinfobitrate>
<svrinfochannels>2</svrinfochannels>
<svrinfosamplerate>44100</svrinfosamplerate>
<svrinfopublic>1</svrinfopublic>
</ezstream>
Запишем в файл плейлиста полный адрес любого mp3-файла и выполним команду:
ezstream -c /полный/путь/до/конфига.В потоке http://ваш_сайт.ru/play.m3u должна заиграть музыка.
4) Установим перекодировку
Если хотите перекодировать файлы не лету:
- Установите lame
apt-get install lame
-
- Добавьте в конце конфига, перед </ezstream> следующий код (для 128 кбит\сек): <reencode>
<enable>1</enable>
<encdec>
<format>MP3</format>
<match>.mp3</match>
<decode>lame -f --preset cbr 128 --bitwidth 16 "@T@" -</decode>
</encdec>
</reencode>
5) переходим к главному установка обвязки RadioCMS
- качаем http://radiocms.ru/main/7-skachat-radiocms.html
- распакуйте архив в корневую папку вашего сайта
- Запустите файл Вашсайт.ru/radio/install.php и слудейте инструкциям
- Запустите файл Вашсайт.ru/radio/install.php и слудейте инструкциям
- Добавьте в cron указанную в конце установки команду
wget http://www.radio.global-mmorpg.com/radio/event.php -O event.php
вариант второй
полый/путь/до/php /var/www/radiouser/data/www/radio.global-mmorpg.com/radio/event.php
В целях безопасности настоятельно рекомендуем удалить файл install.php
6) Подключени dj без обрывов
Открываем конфиг icecas
<
mount
>
<
mount-name
>/live</
mount-name
>
<
charset
>CP1251</
charset
>
<
fallback-mount
>/play</
fallback-mount
>
<
fallback-override
>1</
fallback-override
>
<
fallback-when-full
>1</
fallback-when-full
>
</
mount
>
<
mount
>
<
mount-name
>/play</
mount-name
>
<
charset
>CP1251</
charset
>
<
fallback-mount
>/live</
fallback-mount
>
<
fallback-override
>1</
fallback-override
>
<
fallback-when-full
>1</
fallback-when-full
>
</
mount
>
Начиная с версии RadioCMS 2.0 появилась поддержка русского языка
- убедитесь что в настройках транслит отключён
- откройте файл icecast.xml и добавьте строки:
- откройте файл icecast.xml и добавьте строки:
<
mount
>
<
mount-name
>/play</
mount-name
>
<
charset
>CP1251</
charset
>
</
mount
>
locale-gen ru_RU.CP1251
На этом установка закончена :)
Комментариев нет:
Отправить комментарий