# cd /usr/ports/audio/icecast2 # make install clean # ee /etc/rc.conf icecast_flags="-b -c /usr/local/etc/icecast_pop.xml" icecast_enable="YES"
копируем дефолтный конфиг в новый:
#cd /usr/local/etc/ # cp icecast.xml.sample icecast_pop.xml
Далее в icecast_pop.xml правим такие строки:
<authentication> <!-- Sources log in with username 'source' --> <source-password>[color=orange]ПАРОЛЬ[/color]</source-password> <!-- Relays log in username 'relay' --> <relay-password>[color=orange]ПАРОЛЬ[/color]</relay-password> <!-- Admin logs in with the username given below --> <admin-user>admin</admin-user> <admin-password>[color=orange]ПАРОЛЬ[/color]</admin-password> </authentication> <!-- You may have multiple <listener> elements --> <listen-socket> <port>8000</port> <bind-address>192.168.1.15</bind-address> </listen-socket>
192.168.1.15 ip сервера
далее relay
<relay> <server>81.88.113.18</server> <port>8000</port> <mount>/</mount> <local-mount>/radio_pop.mp3</local-mount> <on-demand>1</on-demand> <relay-shoutcast-metadata>0</relay-shoutcast-metadata> </relay>
Где 81.88.113.18 – Ip-адрес сервера с которого берем радио, 8000 – порт по которому он транслирует это радио. / – точка монтирования. /radio_pop.mp3- локальная точка монтирования. Строка
не забываем снимать комментарии с секции
проверяем :
#icecast -b -c /usr/local/etc/icecast_pop.xml
———————————————————————————————————————-
могут возникнуть проблемы например :
Changed groupid to 65533.
Changed userid to 65534.
FATAL: could not open error logging (/usr/local/var/log/icecast/error.log): No such file or directory
FATAL: could not open access logging (/usr/local/var/log/icecast/access.log): No such file or directory
FATAL: Could not start logging
или
Detaching from the console
ERROR: You should not run icecast2 as root
Use the changeowner directive in the config file
1. В /usr/local/var/log/icecast/ создаем эту директорию, а уже в ней создаем файлы логов
даем права
# chown -R nobody:nogroup access.log # chown -R nobody:nogroup error.log
2. надо раскоментировать
<changeowner> <user>nobody</user> <group>nogroup</group> </changeowner>
———————————————————————————————————————-
# cd /usr/ports/audio/ices0 # make install clean # cd /usr/local/etc/ # cp ices.conf.dist ices.conf
конфиг такой:
<?xml version="1.0"?> <ices:Configuration xmlns:ices="http://www.icecast.org/projects/ices"> <Playlist> <!-- Показываем где лежит плейлист. --> <File>playlist.txt</File> <!-- Если хотим что бы играло случайно ставим 1 --> <Randomize>0</Randomize> <!-- тип плей листа --> <Type>builtin</Type> <!-- Module name to pass to the playlist handler if using perl or python. If you use the builtin playlist handler then this is ignored --> <Module>ices0</Module> <!-- если нужно что бы между песнями было затухание то разремируем и выставляем в секундах. по умочанию выключено т.е. 0. <Crossfade>5</Crossfade> --> </Playlist> <Execution> <!-- запускать демоном ставим 1 --> <Background>1</Background> <!-- хотите видеть все логи в файле ставим 1 --> <Verbose>1</Verbose> <!-- Каталог где будет находится лог и pid файлы --> <BaseDirectory>/tmp</BaseDirectory> </Execution> <Stream> <Server> <!-- ip icecast сервера куда хотим прицепится --> <Hostname>localhost</Hostname> <!-- Port of the same --> <Port>8000</Port> <!-- пароль на конект что бы транслировать icecast server --> <Password>xxx</Password> <!-- сли сервер Shoutcast ставим "icy", icecast 1.x ставим "xaudiocast", а если icecast 2.x то "http". --> <Protocol>http</Protocol> </Server> <!-- точка монтирования потока на айскаст сервера --> <Mountpoint>/ices</Mountpoint> <!-- The name of the dumpfile on the server for your stream. DO NOT set this unless you know what you're doing. <Dumpfile>ices.dump</Dumpfile> --> <!-- Имя вашей трансляции, а не имя трека --> <Name>mp3</Name> <!-- Жанр, или стиль вашей трансляции --> <Genre>pop</Genre> <!-- большое описание вашей трансляции --> <Description>Local stream</Description> <!-- ссылка вашей трансляции --> <URL>http://faro.az/</URL> <!-- 0 если не хотите сделать ваш сервер публичным и 1 если хотите --> <Public>0</Public> <!-- качество трансляции --> <Bitrate>128</Bitrate> <!-- если поставить 1 то ices попробует на лету пережимать трансляцию при помози liblame в нужное качество потока --> <Reencode>0</Reencode> <!-- Number of channels to reencode to, 1 for mono or 2 for stereo --> <!-- Sampe rate to reencode to in Hz. Leave out for LAME's best choice <Samplerate>44100</Samplerate> --> <Channels>2</Channels> </Stream> </ices:Configuration>
# ee /etc/rc.conf ices0_enable="YES" ices0_flags="/usr/local/etc/ices.conf" указываем путь find /tmp/music -name "*.mp3" > /tmp/music/playlist.txt
# ices -c -b /usr/local/etc/ices.conf