Hi all, I set up a icecast server 2.3.2 with two shoutcast listeners (port 8000 and port 8002). What I have noticed is , if I have only one "DSP" source that stream to the first listener (on port 8001), audio become available on both listener ? Meaning that a player will open with success on http://myhost:8000/stream or http://myhost:8002/stream with the same audio. With two source, I have to explicitly ask for http://myhost:8002/stream2 (notice stream2) to get the second one. I only want two independent source/client instances, isolated by port number, with no interaction in between :) My snip setup below: <hostname>myhost.com</hostname> <!-- You MUST define 2 ports, port and port +1 --> <listen-socket> <!-- Configure the shoutcast DSP with *this* port the shoutcast DSP actually will connect the encoder to this port + 1 --> <port>8000</port> <shoutcast-mount>/stream</shoutcast-mount> </listen-socket> <listen-socket> <!-- Configure the shoutcast DSP with *this* port the shoutcast DSP actually will connect the encoder to this port + 1 --> <port>8002</port> <shoutcast-mount>/stream2</shoutcast-mount> </listen-socket> <fileserve>1</fileserve> Thanks in advance !
Thomas.Rucker at tieto.com
2011-May-27 10:52 UTC
[Icecast] two *independ* shoutcast listeners
Hi,>-----Original Message----- >From: icecast-bounces at xiph.org [mailto:icecast-bounces at xiph.org] On >Behalf Of Martin Hamant >Sent: Friday, 27 May, 2011 12:36 > >Hi all, > >I set up a icecast server 2.3.2 with two shoutcast listeners (port 8000 >and port 8002). >What I have noticed is , if I have only one "DSP" source that stream to >the first listener (on port 8001), audio become available on both >listener ? Meaning that a player will open with success on >http://myhost:8000/stream or http://myhost:8002/stream with the same >audio. >With two source, I have to explicitly ask for http://myhost:8002/stream2 >(notice stream2) to get the second one. > >I only want two independent source/client instances, isolated by port >number, with no interaction in between :)*snip* This seems to be a misunderstanding of how Icecast works. Icecast allows for a multitude of parallel streams. This concept is called 'mount points'. Cf. http://liveice.sourceforge.net/understanding.html - second figure. Now let's proceed to the second item: Shoutcast compatibility mode. This was introduced so that if you for some reason can't use a proper icecast source client (that preferably would stream vorbis), you can still broadcast to a Icecast mount point. So all a <shoutcast-mount> enabled port does is that it wraps whatever comes in on it onto the select mount point. And now the IMPORTANT part: When it comes to the _ordinary_ ports, Icecast exposes all mountpoints on all of them! To make this more clear also the other way around: when it comes to the listener side then the ports on which a certain mount-point is available can NOT be restricted. This is no problem as, if necessary, the web interface listing all mounts can be either removed or you can duplicate the xsl file and restrict the respectively visible mount points. As to the admin interface: all mount specific functions are available using the mount specific authentication data (cf. Icecast documentation). The admin credentials don't have to be exposed to anyone else than the person running the server. Hope that helps. Thomas
On Fri, 27 May 2011, Martin Hamant wrote:> I set up a icecast server 2.3.2 with two shoutcast listeners (port 8000 > and port 8002). > What I have noticed is , if I have only one "DSP" source that stream to > the first listener (on port 8001), audio become available on both > listener ? Meaning that a player will open with success on > http://myhost:8000/stream or http://myhost:8002/stream with the same audio. > With two source, I have to explicitly ask for http://myhost:8002/stream2 > (notice stream2) to get the second one. > > I only want two independent source/client instances, isolated by port > number, with no interaction in between :)You'll need to use a port-specific alias on one (or both) of the ports if you want to use the same mountpoint specifier for each. Otherwise, a mountpoint is a mountpoint and will be available on all ports. So for example, you could do: <alias source="/" port="8000" dest="/stream"/> <alias source="/" port="8002" dest="/stream2"/> Geoff.
Le 27/05/2011 13:22, Geoff Shang a ?crit :> On Fri, 27 May 2011, Martin Hamant wrote: > >> I set up a icecast server 2.3.2 with two shoutcast listeners (port 8000 >> and port 8002). >> What I have noticed is , if I have only one "DSP" source that stream to >> the first listener (on port 8001), audio become available on both >> listener ? Meaning that a player will open with success on >> http://myhost:8000/stream or http://myhost:8002/stream with the same >> audio. >> With two source, I have to explicitly ask for http://myhost:8002/stream2 >> (notice stream2) to get the second one. >> >> I only want two independent source/client instances, isolated by port >> number, with no interaction in between :) > > You'll need to use a port-specific alias on one (or both) of the ports > if you want to use the same mountpoint specifier for each. Otherwise, > a mountpoint is a mountpoint and will be available on all ports. > > So for example, you could do: > > <alias source="/" port="8000" dest="/stream"/> > <alias source="/" port="8002" dest="/stream2"/> > > Geoff.Hi ! Thank you !! It works well. Is it excepted that "port" attribute for "alias" is not referenced in official docs ?