Hello all I am sending my icecast configuration. What i am trying to do is 'live stream' so as to be able to broadcast radio live on my website. I am using icecast as the server and ices as the streamer. Below is the configuration for icecast and following it is my configuration for ices. I cannot seem to find out where i went wrong. <icecast> <limits> <clients>100</clients> <sources>5</sources> <threadpool>5</threadpool> <queue-size>102400</queue-size> <client-timeout>30</client-timeout> <header-timeout>15</header-timeout> <source-timeout>10</source-timeout> </limits> <authentication> <!-- Sources log in with username 'source' --> <source-password>REPLACE</source-password> <!-- Relays log in username 'relay' --> <relay-password>closed</relay-password> <!-- Admin logs in with the username given below --> <admin-user>admin</admin-user> <admin-password>hackme</admin-password> </authentication> <hostname>127.0.0.1</hostname> <!-- You may have multiple <listener> elements --> <listen-socket> <port>8000</port> </listen-socket> <!-- <mount> <mount-name>/REPLACE.ogg</mount-name> <max-listeners>10</max-listeners> <dump-file>/tmp/dump-example1.ogg</dump-file> <fallback-mount>/irlp2.ogg</fallback-mount> </mount> <!-- <mount> <mount-name>/REPLACE.ogg</mount-name> <max-listeners>10</max-listeners> <dump-file>/tmp/dump-example1.ogg</dump-file> <fallback-mount>/irlp2.ogg</fallback-mount> </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>/var/log/icecast</logdir> <webroot>/usr/local/icecast/web</webroot> <adminroot>/usr/local/icecast/admin</adminroot> </paths> <logging> <accesslog>access.log</accesslog> <errorlog>error.log</errorlog> <loglevel>4</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error --> </logging> <security> <chroot>0</chroot> <changeowner> <user>nobody</user> <group>nobody</group> </changeowner> </security> </icecast> Configuration for ices <ices> <background>0</background> <logpath>/var/log/icecast</logpath> <logfile>ices.log</logfile> <loglevel>4</loglevel> <consolelog>0</consolelog> <pidfile>/usr/local/ices-0.4/pid/ices.pid</pidfile> <stream> <metadata> <name>Test Stream</name> <genre>music</genre> <description>A test stream</description> <url>http://ftp.druknet.bt</url> </metadata> <input> <module>oss</module> <param name="rate">44100</param> <param name="channels">2</param> <param name="device">/dev/audio</param> <param name="metadata">0</param> <param name="metadatafilename">live</param> </input> <instance> <hostname>localhost</hostname> <port>8000</port> <password>letmein</password> <mount>/highband.ogg</mount> <yp>0</yp> <reconnectdelay>2</reconnectdelay> <reconnectattempts>5</reconnectattempts> <maxqueuelength>80</maxqueuelength> <encode> <quality>2</quality> <nominal-bitrate>96000</nominal-bitrate> <samplerate>44100</samplerate> <channels>2</channels> </encode> - <downmix>1</downmix> <resample> <in-rate>44100</in-rate> <out-rate>11000</out-rate> </resample> <encode> <nominal-bitrate>16000</nominal-bitrate> <samplerate>11000</samplerate> <channels>1</channels> <quality>-1</quality> </encode> </instance> </stream> </ices> Thanking you all in advance +++++++++++++++++++++++++++++++++++++++++++++++++++ Get a free DrukNet e-mail account and stay in touch http://www.druknet.bt
Hi: I can see two problems. First, you've used 127.0.0.1 as the hostname in the icecast config. this will only work for anyone using the local machine to listen, if you use the inbuilt m3u generation. To illustrate: Someone calls your server with: http://yourserver.com:8000/mystream.ogg.m3u They'll get an m3u file back looking like this: http://127.0.0.1:8000/mystream.ogg which won't do them any good since 127.0.0.1 will *always* reach the same machine that called it. The other problem is that you have two encode sections defined. If your intention is to have two streams, then you need two <instance> blocks, since ices needs to know where to send each stream. Also, there's no need to define both nominal bitrate and quality, one or the other will do just fine. Hope this helps, Geoff. -- Geoff Shang <geoff@hitsandpieces.net> Phone: +61-418-96-5590 MSN: geoff@acbradio.org Make sure your E-mail can be read by everyone! http://www.betips.net/etc/evilmail.html Please avoid sending me Word or PowerPoint attachments. See http://www.fsf.org/philosophy/no-word-attachments.html
On Mon, 2004-11-15 at 08:25, Phuntsho Ugyel wrote: icecast xml> <hostname>127.0.0.1</hostname>this really needs to be an externally addressable name or IP, it's used for m3u and YP.> Configuration for ices > > <ices> > <background>0</background> > <logpath>/var/log/icecast</logpath> > <logfile>ices.log</logfile> > <loglevel>4</loglevel> > <consolelog>0</consolelog> > <pidfile>/usr/local/ices-0.4/pid/ices.pid</pidfile>odd path considering it's ices 2> <input> > <module>oss</module> > <param name="rate">44100</param> > <param name="channels">2</param> > <param name="device">/dev/audio</param>make sure that device is the correct one.> <param name="metadata">0</param> > <param name="metadatafilename">live</param> > </input> > <instance>...> <encode> > <quality>2</quality> > <nominal-bitrate>96000</nominal-bitrate> > <samplerate>44100</samplerate> > <channels>2</channels> > </encode>why are you trying encode 44100 stereo, when you are downmixing and resampling to 11000 (11025 is the usual figure). quality or bitrate is used not both. Only 1 encode per instance, so if you want multiple streams then use multiple instances. karl.