ОсновноеRadiotalkПользовательское
Технологии вещания, софт, скрипты
3   •   Посмотреть все темы

Проблема с ices!

 

24
bems @bems
**********
**********

Там пока всякая хрень из 90-ых идёт, загрузчиком понакидали туда всякого мусора)

6245
Тарас @tarasian666
хм... странно... надо подумать
покажите может весь конфиг..

Отредактировано tarasian666 - 27.01.2010
24
bems @bems
<icecast>
<limits>
<clients>100</clients> <!-- Кол-во клиентов -->
<sources>4</sources> <!-- Кол-во источников, то есть максимальное кол-во максимальное кол-во потоков -->
<threadpool>5</threadpool>
<queue-size>524288</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>15</header-timeout>
<source-timeout>10</source-timeout>
<!-- If enabled, this will provide a burst of data when a client
first connects, thereby significantly reducing the startup
time for listeners that do substantial buffering. However,
it also significantly increases latency between the source
client and listening client. For low-latency setups, you
might want to disable this. Эта опция значительно сокращает
время первого подключения клиентов, но требует качественного
подключения, в пративном случае, опцию лучше отключить -->
<burst-on-connect>1</burst-on-connect>
<!-- same as burst-on-connect, but this allows for being more
specific on how much to burst. Most people won't need to
change from the default 64k. Applies to all mountpoints -->
<burst-size>65535</burst-size>
</limits>

<authentication>
<!-- Sources log in with username 'source' -->
<source-password>******</source-password>
<!-- Relays log in username 'relay' -->
<relay-password>******</relay-password>

<!-- Admin logs in with the username given below -->
<admin-user>bems</admin-user>
<admin-password>******</admin-password>
</authentication>

<!-- set the mountpoint for a shoutcast source to use, the default if not
specified is /stream but you can change it here if an alternative is
wanted or an extension is required
<shoutcast-mount>/vid</shoutcast-mount>
-->

<!-- Uncomment this if you want directory listings -->
<!--
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url>
</directory>
-->

<!-- This is the hostname other people will use to connect to your server.
It affects mainly the urls generated by Icecast for playlists and yp
listings. -->
<hostname>localhost</hostname>

<!-- You may have multiple <listener> elements -->
<listen-socket>
<port>8000</port>
<!-- <bind-address>127.0.0.1</bind-address> -->
<!-- <shoutcast-mount>/stream</shoutcast-mount> -->
</listen-socket>
<!--
<listen-socket>
<port>8001</port>
</listen-socket>
-->

<!--<master-server>127.0.0.1</master-server>-->
<!--<master-server-port>8001</master-server-port>-->
<!--<master-update-interval>120</master-update-interval>-->
<!--<master-password>******</master-password>-->

<!-- setting this makes all relays on-demand unless overridden, this is
useful for master relays which do not have <relay> definitions here.
The default is 0 -->
<!--<relays-on-demand>1</relays-on-demand>-->

<!--
<relay>
<server>127.0.0.1</server>
<port>8001</port>
<mount>/example.ogg</mount>
<local-mount>/different.ogg</local-mount>
<on-demand>0</on-demand>

<relay-shoutcast-metadata>0</relay-shoutcast-metadata>
</relay>
-->

<!-- Only define a <mount> section if you want to use advanced options,
like alternative usernames or passwords

<mount>
<mount-name>/vid</mount-name>
<max-listeners>100</max-listeners>
<fallback-mount>/nonstop</fallback-mount>
<fallback-override>1</fallback-override>
<intro>/example_intro.ogg</intro>
<fallback-when-full>1</fallback-when-full>
</mount>

-->

<fileserve>1</fileserve>


<paths>
<basedir>/usr/local/share/icecast</basedir>
<logdir>/var/log/icecast</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>
<!-- <playlistlog>playlist.log</playlistlog> -->
<loglevel>2</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
<logsize>10000</logsize> <!-- Max size of a logfile -->
<!-- If logarchive is enabled (1), then when logsize is reached
the logfile will be moved to [error|access|playlist].log.DATESTAMP,
otherwise it will be moved to [error|access|playlist].log.old.
Default is non-archive mode (i.e. overwrite)
-->
<!-- <logarchive>1</logarchive> -->
</logging>


<security>
<chroot>0</chroot>
<changeowner>
<user>nobody</user>
<group>nogroup</group>
</changeowner>
</security>

</icecast>

6245
Тарас @tarasian666
попробуйте добавить маунт nonstop

24
bems @bems
Куда именно?

6245
Тарас @tarasian666
в конфиг

24
bems @bems
Ну ясен песнь, в какую именно часть то?) Ух, лучше не могли бы вы мне дать сразу готовый код для нуба?)

6245
Тарас @tarasian666
где вы там части увидали?
перечтайте еще пару раз мануал и все поймете

Отредактировано tarasian666 - 29.01.2010
24
bems @bems
<mount>
<mount-name>/vid</mount-name>
<mount-name>/nonstop</mount-name>
<max-listeners>100</max-listeners>
<fallback-mount>/nonstop</fallback-mount>
<fallback-override>1</fallback-override>
<intro>/example_intro.ogg</intro>
<fallback-when-full>1</fallback-when-full>
</mount>

Так чтоль? Ну не работает, хоть убейся!

6245
Тарас @tarasian666
НЕ ТАК!!!
убейся

Отредактировано tarasian666 - 03.02.2010
24
bems @bems
Всё, заработало. Но всё таки можно было по нормальному помочь, без фраерских замашек.

6245
Тарас @tarasian666
как видите нормально не помогло
мануал читать не хотят
уже заметил, пока не рявкнеш не дойдет

Отредактировано tarasian666 - 03.02.2010
24
bems @bems
И снова я со своими вопросами. На этот раз стояла задача установить пару icecast2-ises0 уже не на FreeBSD, а на Linux Debian. С айскастом вообще никаких проблем, выполнил команду по мануалу
apt-get install icecast2
Всё мгновенно установилось, настроил конфиг и всё полетело. А вот ices0 таким образом установить не удалось. Пришлось закачивать архив, искать сраные библиотеки, короче еле-еле кое-как в конце концов установился, настроил конфиг, создал плэйлист, запускаю:
shaber:~# ices -c '/usr/local/etc/ices.conf'
Into the land of the dreaded daemons we go... (pid: 11852)

Я так понимаю этот Into the land of the dreaded daemons we go... должен обозначать успешный запуск, да? Только вот никаких признаков жизни ices не подаёт :/ Где я облажался?

6245
Тарас @tarasian666
смотреть лог

24
bems @bems
Да в том и проблема что в конфиге ices0 вообще путей для лога нет, вот весь конфиг:

<?xml version="1.0"?>
<ices:Configuration xmlns:ices="http://www.icecast.org/projects/ices">

<Playlist>
<File>playlist.txt</File>
<Randomize>1</Randomize>
<Type>builtin</Type>
<Module>ices</Module>
</Playlist>

<Execution>
<Background>1</Background>
<Verbose>0</Verbose>
<BaseDirectory>/tmp</BaseDirectory>
</Execution>

<Stream>
<Server>
<Hostname>localhost</Hostname>
<Port>8000</Port>
<Password>******</Password>
<Protocol>http</Protocol>
</Server>

<Mountpoint>/test</Mountpoint>
<Name>Default stream</Name>
<Genre>Default genre</Genre>
<Description>Default description</Description>
<URL>http://localhost:8000/test</URL>
<Public>0</Public>

<Bitrate>64</Bitrate>
<Reencode>1</Reencode>
<Samplerate>44100</Samplerate>
<Channels>1</Channels>
</Stream>
</ices:Configuration>

6245
Тарас @tarasian666
bems пишет:

<BaseDirectory>/tmp</BaseDirectory>

24
bems @bems
О, спасибо, оказалось опять по глупости к плэйлисту надо было абсолютный путь, но всё таки странно, вчера я путь нормально прописывал, тоже не шло. Капризная штука, однако.
А для остановки код не подскажите? А то в мануалах нашёл либо для freebsd, либо для ices2, который через apt-get устанавливался, не подходит.

6245
Тарас @tarasian666
killall -9 ices

24
bems @bems
Премного благодарен!

11
AndreyDPro84 @AndreyDPro84
Logfile opened
Playing /usr/home/icecast/music/Broken Eye - I Want You.mp3
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Error during send: Mount failed on ********** error: Couldn't connect
Too many stream errors, giving up
Ices Exiting...

[2010-04-11 23:48:37] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:38] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:38] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:39] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:39] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:40] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:40] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:42] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:42] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:43] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:43] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:44] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:44] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password
[2010-04-11 23:48:45] INFO connection/_handle_source_request Source logging in at mountpoint "/test"
[2010-04-11 23:48:45] INFO connection/_handle_source_request Source (/test) attempted to login with invalid or missing password

<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>
<!-- If enabled, this will provide a burst of data when a client
first connects, thereby significantly reducing the startup
time for listeners that do substantial buffering. However,
it also significantly increases latency between the source
client and listening client. For low-latency setups, you
might want to disable this. -->
<burst-on-connect>1</burst-on-connect>
<!-- same as burst-on-connect, but this allows for being more
specific on how much to burst. Most people won't need to
change from the default 64k. Applies to all mountpoints -->
<burst-size>65535</burst-size>
</limits>

<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>

<!-- set the mountpoint for a shoutcast source to use, the default if not
specified is /stream but you can change it here if an alternative is
wanted or an extension is required
<shoutcast-mount>/live.nsv</shoutcast-mount>
-->

<!-- Uncomment this if you want directory listings -->
<!--
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url>
</directory>
-->

<!-- This is the hostname other people will use to connect to your server.
It affects mainly the urls generated by Icecast for playlists and yp
listings. -->
<hostname>localhost</hostname>

<!-- You may have multiple <listener> elements -->
<listen-socket>
<port>8000</port>
<bind-address>192.168.1.7</bind-address>
</listen-socket>

<!-- <listen-socket>
<port>8001</port>
</listen-socket> -->

<!-- <master-server>127.0.0.1</master-server>
<master-server-port>8001</master-server-port>
<master-update-interval>120</master-update-interval>
<master-password>hackme</master-password> -->

<!-- setting this makes all relays on-demand unless overridden, this is
useful for master relays which do not have <relay> definitions here.
The default is 0 -->
<!--<relays-on-demand>1</relays-on-demand>-->

<relay>
<server>87.117.193.142</server>
<port>9268</port>
<mount>/</mount>
<local-mount>/krisisdnb.mp3</local-mount>
<on-demand>1</on-demand>
<relay-shoutcast-metadata>0</relay-shoutcast-metadata>
</relay>

<!-- Only define a <mount> section if you want to use advanced options,
like alternative usernames or passwords
<mount>
<mount-name>/example-complex.ogg</mount-name>

<username>othersource</username>
<password>hackmemore</password>

<max-listeners>1</max-listeners>
<dump-file>/tmp/dump-example1.ogg</dump-file>
<burst-size>65536</burst-size>
<fallback-mount>/example2.ogg</fallback-mount>
<fallback-override>1</fallback-override>
<fallback-when-full>1</fallback-when-full>
<intro>/example_intro.ogg</intro>
<hidden>1</hidden>
<no-yp>1</no-yp>
<authentication type="htpasswd">
<option name="filename" value="myauth"/>
<option name="allow_duplicate_users" value="0"/>
</authentication>
<on-connect>/home/icecast/bin/stream-start</on-connect>
<on-disconnect>/home/icecast/bin/stream-stop</on-disconnect>
</mount>

<mount>
<mount-name>/auth_example.ogg</mount-name>
<authentication type="url">
<option name="mount_add" value="http://myauthserver.net/notify_mount.php"/>
<option name="mount_remove" value="http://myauthserver.net/notify_mount.php"/>
<option name="listener_add" value="http://myauthserver.net/notify_listener.php"/>
<option name="listener_remove" value="http://myauthserver.net/notify_listener.php"/>
</authentication>
</mount>

-->

<fileserve>1</fileserve>

<paths>
<!-- basedir is only used if chroot is enabled -->
<basedir>/usr/local/share/icecast</basedir>

<!-- Note that if <chroot> is turned on below, these paths must both
be relative to the new root, not the original root -->
<logdir>/usr/local/var/log/icecast</logdir>
<webroot>/usr/local/share/icecast/web</webroot>
<adminroot>/usr/local/share/icecast/admin</adminroot>
<!-- <pidfile>/usr/local/share/icecast/icecast.pid</pidfile> -->

<!-- Aliases: treat requests for 'source' path as being for 'dest' path
May be made specific to a port or bound address using the "port"
and "bind-address" attributes.
-->
<!--
<alias source="/foo" dest="/bar"/>
-->
<!-- Aliases: can also be used for simple redirections as well,
this example will redirect all requests for ********** to
the status page
-->
<alias source="/" dest="/status.xsl"/>
</paths>

<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<!-- <playlistlog>playlist.log</playlistlog> -->
<loglevel>3</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
<logsize>10000</logsize> <!-- Max size of a logfile -->
<!-- If logarchive is enabled (1), then when logsize is reached
the logfile will be moved to [error|access|playlist].log.DATESTAMP,
otherwise it will be moved to [error|access|playlist].log.old.
Default is non-archive mode (i.e. overwrite)
-->
<!-- <logarchive>1</logarchive> -->
</logging>

<security>
<chroot>0</chroot>
<changeowner>
<user>icecast</user>
<group>icecast</group>
</changeowner>
</security>
</icecast>

<?xml version="1.0"?>
<ices:Configuration xmlns:ices="http://www.icecast.org/projects/ices">
<Playlist>
<!-- This is the filename used as a playlist when using the builtin
playlist handler. -->
<File>playlist.txt</File>
<!-- Set this to 0 if you don't want to randomize your playlist, and to
1 if you do. -->
<Randomize>1</Randomize>
<!-- One of builtin, perl, or python. -->
<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>ices</Module>
<!-- Set this to the number of seconds to crossfade between tracks.
Leave out or set to zero to disable crossfading (the default).
<Crossfade>5</Crossfade>
-->
</Playlist>

<Execution>
<!-- Set this to 1 if you want ices to launch in the background as a
daemon -->
<Background>1</Background>
<!-- Set this to 1 if you want to see more verbose output from ices -->
<Verbose>0</Verbose>
<!-- This directory specifies where ices should put the logfile, cue file
and pid file (if daemonizing). Don't use /tmp if you have l33t h4x0rz
on your server. -->
<BaseDirectory>/tmp</BaseDirectory>
</Execution>

<Stream>
<Server>
<!-- Hostname or ip of the icecast server you want to connect to -->
<Hostname>localhost</Hostname>
<!-- Port of the same -->
<Port>8000</Port>
<!-- Encoder password on the icecast server -->
<Password>******</Password>
<!-- Header protocol to use when communicating with the server.
Shoutcast servers need "icy", icecast 1.x needs "xaudiocast", and
icecast 2.x needs "http". -->
<Protocol>http</Protocol>
</Server>

<!-- The name of the mountpoint on the icecast server -->
<Mountpoint>/test</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>
-->
<!-- The name of you stream, not the name of the song! -->
<Name>Default stream</Name>
<!-- Genre of your stream, be it rock or pop or whatever -->
<Genre>Default genre</Genre>
<!-- Longer description of your stream -->
<Description>Default description</Description>
<!-- URL to a page describing your stream -->
<URL>http://localhost:8000/test</URL>
<!-- 0 if you don't want the icecast server to publish your stream on
the yp server, 1 if you do -->
<Public>0</Public>

<!-- Stream bitrate, used to specify bitrate if reencoding, otherwise
just used for display on YP and on the server. Try to keep it
accurate -->
<Bitrate>128</Bitrate>
<!-- If this is set to 1, and ices is compiled with liblame support,
ices will reencode the stream on the fly to the stream bitrate. -->
<Reencode>1</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>