Icecast Streaming Media Server Forum Index Icecast Streaming Media Server
Icecast is a Xiph Foundation Project
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Fallback mount problem

 
Post new topic   Reply to topic    Icecast Streaming Media Server Forum Index -> Icecast Server
View previous topic :: View next topic  
Author Message
Anonymous
Guest





PostPosted: Sat Mar 01, 2008 11:14 pm    Post subject: Fallback mount problem Reply with quote

hi some time ago i was using icecast 2.3.1 and everything worked fine but i updated icecast to 2.3-kh32 (win32) and took icecast.xml from old icecast and fallback feature doen`t work. Is it a bug or i have to write smth new in icecast.xml?
and doesn`t work shoutcast compact feature it connects but it connects with /stream.m3u
here is icecast.xml
<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 'user' -->
<source-password>xxxx</source-password>
<!-- Relays log in username 'userelay' -->
<relay-password>xxxx</relay-password>

<!-- Admin logs in with the username given below -->
<admin-user>xxxx</admin-user>
<admin-password>xxxx</admin-password>
</authentication>
<hostname>172.20.20.20</hostname>




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

<listen-socket>
<port>8001</port>
<bind-address>172.20.20.20</bind-address>
<shoutcast-compat>1</shoutcast-compat>

</listen-socket>








<fileserve>1</fileserve>

<shoutcast-mount>/Kirdikovo</shoutcast-mount>

<mount>
<shoutcast-mount>/Kirdikovo</shoutcast-mount>
<password>xxxx</password>
<fallback-mount>/kirdikovo</fallback-mount>
<fallback-override>1</fallback-override>
<!-- <hidden>1</hidden> -->

</mount>

<mount>
<mount-name>/kirdikovo</mount-name>
<password>xxxx</password>
<stream-name>Radio Kirdikovo irc #kirdikovo</stream-name>
<stream-description>First Electronic Gomel Radiostation</stream-description>


</mount>
<mount>
<mount-name>/kirdikovo64</mount-name>
<password>xxx</password>
<stream-name>Radio Kirdikovo irc #kirdikovo</stream-name>
<stream-description>First Electronic Gomel Radiostation</stream-description>


</mount>


<paths>
<!-- basedir is only used if chroot is enabled -->
<basedir>./</basedir>

<!-- Note that if <chroot> is turned on below, these paths must both
be relative to the new root, not the original root -->
<logdir>./logs</logdir>
<webroot>./web</webroot>
<adminroot>./admin</adminroot>
<!-- <pidfile>./icecast.pid</pidfile> -->
<deny-ip>./deny-ip.txt</deny-ip>
<!-- 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 http://server:port/ to
the status page
-->
<alias source="/" dest="/status.xsl"/>
</paths>

<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<!-- <playlistlog>playlist.log</playlistlog> -->
<loglevel>4</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>
Back to top
karlH
Code Warrior
Code Warrior


Joined: 13 Jun 2005
Posts: 5476
Location: UK

PostPosted: Sun Mar 02, 2008 12:40 am    Post subject: Reply with quote

Try setting the shoutcast-mount before the listen-sockets. A new feature is the ability to define multiple sockets for different shoutcast style source clients and that means the sockets knowing about the shoutcast-mount before setting the socket details. You can define the shoutcast-mount in the <listen-socket> itself as well which implicitly defines the second listen-socket.

The default is /stream which is why the <mount> is not getting matched and therefore the fallback isn't applying.

karl.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Anonymous
Guest





PostPosted: Wed Mar 12, 2008 3:08 pm    Post subject: Reply with quote

Hello, if have the same problem. In cause of a changing the server i installed 2.3.1 on the new. On the old was 2.3-kh32. Both linux.
I tried a lot of thing til 4am, than i surrendered. This day tried again, tried to use the answer for this thread but is still will not work.

The config is:

<icecast>
<!-- 10.03.08 -->
<limits>
<clients>200</clients>
<sources>10</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-user>
<admin-password>****</admin-password>
</authentication>
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url>
</directory>

<hostname>ravenet.de</hostname>

<!-- Ports Shoutcast DSP Audiostream -->
<listen-socket>
<port>7050</port>
</listen-socket>
<listen-socket>
<port>7051</port>
<shoutcast-compat>1</shoutcast-compat>
<shoutcast-mount>/audio_source</shoutcast-mount>
</listen-socket>

<!-- Ports Shoutcast DSP Playlist -->
<listen-socket>
<port>7250</port>
<shoutcast-mount>/playlist</shoutcast-mount>
</listen-socket>
<listen-socket>
<port>7251</port>
<shoutcast-compat>1</shoutcast-compat>
<shoutcast-mount>/playlist</shoutcast-mount>
</listen-socket>

<fileserve>1</fileserve>
<paths>
<basedir>/ravenet/ice_black_a</basedir>
<logdir>/ravenet/ice_black_a/log</logdir>
<webroot>/ravenet/ice_black_a/web</webroot>
<adminroot>/ravenet/ice_black_a/admin</adminroot>
<pidfile>/ravenet/ice_black_a/icecast.pid</pidfile>
<alias source="/" dest="/audio"/>
</paths>
<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<playlistlog>playlist.log</playlistlog>
<loglevel>4</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
<logsize>10000</logsize> <!-- Max size of a logfile -->
</logging>


<!-- Audio Server -->
<mount>
<mount-name>/audio</mount-name>
<password>******</password>
<stream-description>.:: RaveNet.de - Black Stream : Hard Beats - Wir machen geil! ::.</stream-description>
<stream-url>http://www.ravenet.de</stream-url>
<genre>Jumpstyle, Hardstyle, Hardcore, Hardtechno, Dance </genre>
<max-listeners>100</max-listeners>
<fallback-mount>/audio_source</fallback-mount>
<fallback-when-full>1</fallback-when-full>
<public>1</public>
</mount>

<!-- Playlist Server -->
<mount>
<mount-name>/playlist</mount-name>
<password>******</password>
<stream-name>Playlist</stream-name>
<stream-url>http://www.ravenet.de</stream-url>
<genre>Jumpstyle, Hardstyle, Hardcore, Hardtechno, Dance </genre>
<max-listeners>100</max-listeners>
</mount>

<!-- DJ Source -->
<mount>
<mount-name>/audio_source</mount-name>
<password>******</password>
<!-- <stream-name>.:: Ravenet.de - Wir machen geil! ::.</stream-name> -->
<stream-description>.:: RaveNet.de - Black Stream : Hard Beats - Wir machen geil! ::.</stream-description>
<stream-url>http://www.ravenet.de</stream-url>
<genre>Jumpstyle, Hardstyle, Hardcore, Hardtechno, Dance </genre>
<max-listeners>100</max-listeners>
<fallback-mount>/playlist</fallback-mount>
<fallback-override>1</fallback-override>
<fallback-when-full>1</fallback-when-full>
</mount>

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


The error is:

[2008-03-12 15:55:27] INFO main/main Icecast 2.3.1 server started
[2008-03-12 15:55:27] WARN main/main YP server handling has been disabled
[2008-03-12 15:55:27] INFO stats/_stats_thread stats thread started
[2008-03-12 15:55:27] INFO fserve/fserv_thread_function file serving thread started
[2008-03-12 15:55:27] INFO auth/auth_run_thread Authentication thread started
[2008-03-12 15:55:27] DBUG source/source_fallback_file unable to open file "/ravenet/ice_black_a/web/audio_source"
[2008-03-12 15:55:27] DBUG source/source_fallback_file unable to open file "/ravenet/ice_black_a/web/playlist" [2008-03-12 15:55:28] DBUG slave/_slave_thread checking master stream list
[2008-03-12 15:56:09] DBUG stats/modify_node_event update node clients (1)
[2008-03-12 15:56:09] DBUG stats/modify_node_event update node connections (1)
[2008-03-12 15:56:11] DBUG stats/modify_node_event update node clients (0)


An when i connect with oddcast:

[2008-03-12 15:59:09] DBUG stats/modify_node_event update node connections (4)
[2008-03-12 15:59:11] DBUG stats/modify_node_event update node clients (0)
[2008-03-12 15:59:30] DBUG slave/_slave_thread checking master stream list
[2008-03-12 15:59:56] INFO connection/_handle_source_request Source logging in at mountpoint "/stream"
[2008-03-12 15:59:56] DBUG connection/connection_complete_source sources count is 0
[2008-03-12 15:59:56] DBUG source/source_apply_mount Applying mount information for "/stream" [2008-03-12 15:59:56] DBUG source/source_apply_mount YP changed to 1
[2008-03-12 15:59:56] DBUG format-mp3/format_mp3_apply_settings mp3 interval -1
[2008-03-12 15:59:56] DBUG source/source_update_settings public set to 1
[2008-03-12 15:59:56] DBUG source/source_update_settings max listeners to -1
[2008-03-12 15:59:56] DBUG source/source_update_settings queue size to 524288
[2008-03-12 15:59:56] DBUG source/source_update_settings burst size to 65535
[2008-03-12 15:59:56] DBUG source/source_update_settings source timeout to 10
[2008-03-12 15:59:56] DBUG source/source_update_settings fallback_when_full to 0
[2008-03-12 15:59:56] DBUG connection/connection_complete_source source is ready to start
[2008-03-12 15:59:56] DBUG fserve/fserve_add_client_callback Adding client to file serving engine
[2008-03-12 15:59:56] DBUG source/source_fallback_file unable to open file "/ravenet/ice_black_a/web/audio_source"
[2008-03-12 15:59:56] DBUG source/source_fallback_file unable to open file "/ravenet/ice_black_a/web/playlist"
[2008-03-12 15:59:56] DBUG stats/modify_node_event update node clients (1)
[2008-03-12 15:59:56] DBUG stats/modify_node_event update node connections (5)
Back to top
karlH
Code Warrior
Code Warrior


Joined: 13 Jun 2005
Posts: 5476
Location: UK

PostPosted: Wed Mar 12, 2008 3:29 pm    Post subject: Reply with quote

The original poster had a problem because the global shoutcast-mount was set after the listen-socket block so the name taken was the default /stream which therefore did not match the <mount> setting.

In your case, you have the shoutcast-mount in the listen-socket section (a post 2.3.1 feature) but you are defining too much for it. You want something like the following

<listen-socket>
<port>7050</port>
<shoutcast-mount>/audio_source</shoutcast-mount>
<listen-socket>

<listen-socket>
<port>7250</port>
<shoutcast-mount>/playlist</shoutcast-mount>
<listen-socket>


Using the 2 blocks above will define 4 ports, 7050 and 7250 are both normal http style ports which listeners can connect on. But each shoutcast dsp uses 2 ports, so one user 7050/7051 and the other uses 7250/7251. No shoutcast-compat is needed.

karl
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Anonymous
Guest





PostPosted: Fri Mar 14, 2008 4:19 pm    Post subject: Reply with quote

Ok thx for reply. In my way it was a problem with the filesystem rights. For me it looks like icecast will create the dir /playlist at the /web dir. when i created this dir the error was that this dir exist. After i've changed the right my config will work fine. And i found the KH build at this forum, so i'm using the same version at the old server.

Now everything if good for me, thanks to all workers of icecast!
Back to top
Display posts from previous:   
Post new topic   Reply to topic    Icecast Streaming Media Server Forum Index -> Icecast Server All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2002 phpBB Group
subRebel style by ktauber