Тема: RadioCMS + icecast + ezstream + lame + DLE + все мелочи для роботы :)
Для работы "RadioCMS" нужно всего ничего:
1) Много нервов и куча затраченного времени
2) Домен + сервер (причем php на сайте должен исполняться через apache2 а не через CGI)
3) PHP5 + mysql (обычно всегда стоит на сервер, если нет то ставить сами)
4) Отключить open_basedir в apache2
Теперь нужно поставить следующее:
5) icecast
6) ezstream
7) libssh2 и pecl ssh2
8) curl и gd
9) библиотека iconv
10) lame (для конвертации потока)
11) Установка DLE и RadioCMS
12) Дополнения для RadioCMS (если нужно)
___________________________________________________
Ну пошли теперь все это ставить, первые два пункта думаю понятны )
3) если у вас каким то чудом до сих пор не стоят PHP5 + mysql, то жмем сюда: http://vkontakte.ru/note80434559_10925294
4) что бы отключить open_basedir в apache2 нужно в httpd.conf написать:
<Location /> php_admin_value open_basedir "/" </Location>
Сам же httpd.conf находиться тут:
/etc/httpd/httpd.conf (Fedora, RHEL, и другие) /etc/apache2/httpd.conf (Debian, Ubuntu, и другие) /usr/local/zend/etc/httpd.conf (Сервер Zend на *nix операционных системах) C:\Program Files\Zend\Apache2\conf (Сервер Zend на ОС Windows)
5) Установка icecast, это заебаная херня если честно, так все нужно ставить из исходников, но владельцам Debian и Ubuntu повезло, так как есть deb пакеты этого удовольствия
И так вариант из deb пакетов, самый простой и быстрый
)
1) в /etc/apt/sources.list добовляем зеркала: deb http://mirror.yandex.ru/debian-multimedia/ squeeze main deb http://mirror.yandex.ru/debian-multimedia/ lenny main 2) выполняем команды: apt-get update apt-get install icecast2 3) дальше в "/etc/default/icecast2" установить значение: ENABLE=true 4) файл конфигурации /etc/icecast2/icecast.xml 5) запускаем icecast командой: /etc/init.d/icecast2 start 6) icecast доступен по адресу: http://IP:8000
Более веселый способ установки это собирать из исходников, чем ша и займемся
Что бы долго не писать подробности, просто делаем команды в той же очереди что видим тут) если при сборке будет жаловаться на какие то пакеты типа gcc и т.д, то идем в google и смотрим как эти пакеты ставить, ставим и продолжаем компилировать софт))
Скачиваем и ставим сами исходники:
1) wget http://downloads.xiph.org/releases/icecast/icecast-2.3.2.tar.gz 2) tar zxvf ./icecast-2.3.2.tar.gz 3) cd icecast-2.3.2 4) ./configure 5) make 6) make install
Создаём пользователя
1) groupadd icecast 2) useradd -g icecast -d /home/icecast -s /sbin/nologin icecast
Настройка конфигурации icecast:
1) в папке "/etc/icecast2" создаем файл "icecast.xml с правами 777" содержание файла: <icecast> <limits> <clients>100</clients> <sources>2</sources> <threadpool>5</threadpool> <queue-size>524288</queue-size> <client-timeout>30</client-timeout> <header-timeout>15</header-timeout> <source-timeout>10</source-timeout> <burst-on-connect>1</burst-on-connect> <burst-size>65535</burst-size> </limits> <authentication> <source-password>пароль</source-password> <relay-password>пароль</relay-password> <admin-user>admin</admin-user> <admin-password>пароль</admin-password> </authentication> <hostname>localhost</hostname> <listen-socket> <port>8000</port> </listen-socket> <fileserve>1</fileserve> <mount> <mount-name>/play</mount-name> <charset>CP1251</charset> </mount> <paths> <logdir>/usr/local/share/icecast/logs</logdir> <webroot>/usr/local/share/icecast/web</webroot> <adminroot>/usr/local/share/icecast/admin</adminroot> <alias source="/" dest="/status.xsl"/> </paths> <logging> <accesslog>access.log</accesslog> <errorlog>error.log</errorlog> <loglevel>3</loglevel> <logsize>10000</logsize> </logging> <security> <chroot>0</chroot> <changeowner> <user>icecast</user> <group>icecast</group> </changeowner> </security> </icecast>
запускаем icecast командой:
/etc/init.d/icecast2 start Страница с акайcтом тут: http://ваш-сайт.ru:8000/
6) Ставим ezstream, к сожалению deb пакетов нету и придется все собирать из исходника, исполняем команды по очереди:
Качаем и ставим ezstream
1) wget http://downloads.xiph.org/releases/ezstream/ezstream-0.5.6.tar.gz 2) tar zxvf ./ezstream-0.5.6.tar.gz 3) cd ezstream-0.5.6 4) ./configure 5) make 6) make install
Настраиваем ezstream
1) В папке "/etc/icecast2": Создаём файл playlist.txt с правами 777. Создаём файл ezstream.xml с правами 644 с содержанием: <ezstream> <url>http://localhost:8000/play</url> <sourcepassword>пароль source в конфиге icecast</sourcepassword> <format>MP3</format> <filename>/полный/адрес/до/плейлиста</filename> <shuffle>0</shuffle> <playlist_program>0</playlist_program> <svrinfoname>Name</svrinfoname> <svrinfourl>http://radiocms.ru/</svrinfourl> <svrinfogenre>Ofther</svrinfogenre> <svrinfodescription>Description</svrinfodescription> <svrinfobitrate>128</svrinfobitrate> <svrinfochannels>2</svrinfochannels> <svrinfosamplerate>44100</svrinfosamplerate> <svrinfopublic>1</svrinfopublic> <reencode> <enable>1</enable> <encdec> <format>MP3</format> <match>.mp3</match> <decode>lame -f --preset cbr 128 --bitwidth 16 "@T@" -</decode> </encdec> </reencode> </ezstream>
7) Установка libssh2 + ssh2 и интеграция в php
Установка libssh2, просто делаем команды:
1) wget http://www.libssh2.org/download/libssh2-1.2.7.tar.gz 2) tar zxvf ./libssh2-1.2.7.tar.gz 3) cd libssh2-1.2.7 4) ./configure 5) make 6) make install Установка ssh2 (компиляция файла ssh2.so) 1) wget http://pecl.php.net/get/ssh2-0.11.2.tgz 2) tar zxvf ./ssh2-0.11.2.tgz 3) cd ssh2-0.11.2 4) ./configure 5) phpize 6) make 7) make install Интеграция ssh2.so с php В файле "/etc/php5/apache2/php.ini" в самом конце дописываем строчку: extension=ssh2.so Пере запускаем сервер и готово :))
8.9) curl + gd + iconv
Все эти пакеты обычно стоят на сервере, если не стоят то можно легко поставить через ISP
https://IP/manager/ispmgr?startpage=phpextensionsЕсли и там чего то нету, то велком в google
)
10) Установка lame (для конвертации потока)
1) добавляем в "/etc/apt/source.list" зеркала: deb http://www.debian-multimedia.org lenny main non-free deb http://www.debian-multimedia.org lenny main non-free 2) выполняем команды по очереди: apt-get update apt-get install lame
---------------------------
11) Установка DLE и RadioCMS
Все как ставить DLE тута:http://dle-news.ruhttp://dle-news.ru/
Она платная, но можете на просторах интернета найти и нулы
Установка RadioCMS
1) качаем http://radiocms.ru/main/7-skachat-radiocms.html
2) распакуйте архив в корневую папку вашего сайта
3) Запустите файл sait.ru/radio/install.php и слудейте инструкциям
4) Добавьте в cron указанную в конце установки команду
12) Дополнения для RadioCMS
подключение DJ без обрывов
1) Открываем конфиг icecast 2) Создаем два mount - один под постоянный поток к примеру /live, второй создаем под RadioCMS (ezstream) к примеру /play. <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> Для прослушивания вы должны всегда давать основной поток /live, в случае если вы не подключены через SAM то слушатели по этому адресу услышат музыку из /play (RadioCMS), в случае если вы подключены к /live - то слушатели будут слышать ваш прямой эфир. Переключения происходят моментально и без обрывов. Нажимать "Прямой эфир" в RadioCMS при этом не нужно.
Настраиваем русский язык
Начиная с версии 2.0 появилась поддержка русского языка в RadioCMS. Настраивается не сложно. 1) Установите версию 2.0 или выше либо обновите до версии 2.0 или выше. 2) Убедитесь что в настройках транслит отключён 3) Откройте файл icecast.xml и добавьте\отредактируйте строку с точкой монтиролвания ezstream вот так: <mount> <mount-name>/play</mount-name> <charset>CP1251</charset> </mount> Ключевой момент здесь - строчка: <charset>CP1251</charset> Тоесть, кодировка понимающая русский язык. 4) Устанавливаем локаль ru_RU.CP1251 Для ubuntu: locale-gen ru_RU.CP1251
Ну и вся готово )
1) Для исполнения команд на сервере можете воспользоваться программой putty
2) Так же сначала рекомендую посмотреть перед установкой всего этого, установлена ли программа gcc, так как она отвечает за компиляцию всех исходников которые мы будем собирать.
3) если при компиляции пакетов будут вылетать ошибки с текстом что не хватает пакета и установка прервана, то просто копируйте название пакета которого не хватает и делайте в терминале:
apt-get install pacet*
потом соглашайтесь с установкой и начинайте компилировать пакеты заново
)
4) главные конфиг файлы которые вам понадобятся:
/etc/icecast2/icecast.xml /etc/icecast2/ezstream.xml
Удачно вам вынести свой мозг установкой всех пакетов