[xiph-commits] r8600 - in icecast/trunk/ices: . conf doc
karl at motherfish-iii.xiph.org
karl at motherfish-iii.xiph.org
Mon Jan 3 13:04:04 PST 2005
Author: karl
Date: 2005-01-03 13:04:04 -0800 (Mon, 03 Jan 2005)
New Revision: 8600
Added:
icecast/trunk/ices/conf/ices-alsa.xml
icecast/trunk/ices/conf/ices-oss.xml
Removed:
icecast/trunk/ices/conf/ices-live.xml
Modified:
icecast/trunk/ices/HACKING
icecast/trunk/ices/README
icecast/trunk/ices/conf/Makefile.am
icecast/trunk/ices/configure.in
icecast/trunk/ices/doc/config.html
icecast/trunk/ices/doc/faq.html
Log:
update docs and bump version
Modified: icecast/trunk/ices/HACKING
===================================================================
--- icecast/trunk/ices/HACKING 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/HACKING 2005-01-03 21:04:04 UTC (rev 8600)
@@ -8,14 +8,14 @@
-----
-These are *brief* instructions on how to build this package from CVS.
+These are *brief* instructions on how to build this package from SVN.
-There are generally four steps necessary when building from CVS (i.e.,
+There are generally four steps necessary when building from SVN (i.e.,
a developer's copy):
-1. cvs checkout of the sources, or cvs update. RTFM from your
- favorite flavor of CVS documentation; information on the xiph.org
- CVS repository can be found at http://www.xiph.org/cvs.html.
+1. svn checkout of the sources, or cvs update. RTFM from your
+ favorite flavor of SVN documentation; information on the xiph.org
+ SVN repository can be found at http://www.xiph.org/svn.html.
2. [re-]generate files such as "configure" and "Makefile.in" with the
GNU autoconf/automake tools. Run the "autogen.sh" script to
@@ -39,6 +39,6 @@
Note that the make allows for supplying compiler flags as well. eg
make CFLAGS='-static' will try the build linking against any static
-libraries available. Also specific COU optimisations can be supplied
+libraries available. Also specific CPU optimisations can be supplied
this way.
Modified: icecast/trunk/ices/README
===================================================================
--- icecast/trunk/ices/README 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/README 2005-01-03 21:04:04 UTC (rev 8600)
@@ -1,7 +1,7 @@
-This is ices 2.0
+This is ices 2
-This is a beta release of ices 2.0. It's the primary source client
-for icecast 2.0. It has proven to stable and well featured.
+This is a release of ices 2.0.1 It's the primary source client
+for icecast 2.x. It has proven to stable and well featured.
Documentation is in the doc subdirectory, and some sample configuration
files exist in the conf subdirectory.
Modified: icecast/trunk/ices/conf/Makefile.am
===================================================================
--- icecast/trunk/ices/conf/Makefile.am 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/conf/Makefile.am 2005-01-03 21:04:04 UTC (rev 8600)
@@ -2,5 +2,5 @@
AUTOMAKE_OPTIONS = foreign
-dist_pkgdata_DATA = ices-live.xml ices-playlist.xml
+dist_pkgdata_DATA = ices-oss.xml ices-alsa.xml ices-playlist.xml
Added: icecast/trunk/ices/conf/ices-alsa.xml
===================================================================
--- icecast/trunk/ices/conf/ices-alsa.xml 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/conf/ices-alsa.xml 2005-01-03 21:04:04 UTC (rev 8600)
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<ices>
+
+ <!-- run in background -->
+ <background>0</background>
+ <!-- where logs go. -->
+ <logpath>/var/log/ices</logpath>
+ <logfile>ices.log</logfile>
+ <!-- size in kilobytes -->
+ <logsize>2048</logsize>
+ <!-- 1=error, 2=warn, 3=infoa ,4=debug -->
+ <loglevel>4</loglevel>
+ <!-- logfile is ignored if this is set to 1 -->
+ <consolelog>0</consolelog>
+
+ <!-- optional filename to write process id to -->
+ <!-- <pidfile>/home/ices/ices.pid</pidfile> -->
+
+ <stream>
+ <!-- metadata used for stream listing -->
+ <metadata>
+ <name>Example stream name</name>
+ <genre>Example genre</genre>
+ <description>A short description of your stream</description>
+ <url>http://mysite.org</url>
+ </metadata>
+
+ <!-- Input module.
+
+ This example uses the 'oss' module. It takes input from the
+ OSS audio device (e.g. line-in), and processes it for live
+ encoding. -->
+ <input>
+ <module>alsa</module>
+ <param name="rate">44100</param>
+ <param name="channels">2</param>
+ <param name="device">hw:0,0</param>
+ <!-- Read metadata (from stdin by default, or -->
+ <!-- filename defined below (if the latter, only on SIGUSR1) -->
+ <param name="metadata">1</param>
+ <param name="metadatafilename">test</param>
+ </input>
+
+ <!-- Stream instance.
+
+ You may have one or more instances here. This allows you to
+ send the same input data to one or more servers (or to different
+ mountpoints on the same server). Each of them can have different
+ parameters. This is primarily useful for a) relaying to multiple
+ independent servers, and b) encoding/reencoding to multiple
+ bitrates.
+
+ If one instance fails (for example, the associated server goes
+ down, etc), the others will continue to function correctly.
+ This example defines a single instance doing live encoding at
+ low bitrate. -->
+
+ <instance>
+ <!-- Server details.
+
+ You define hostname and port for the server here, along
+ with the source password and mountpoint. -->
+
+ <hostname>localhost</hostname>
+ <port>8000</port>
+ <password>hackme</password>
+ <mount>/example1.ogg</mount>
+ <yp>1</yp> <!-- allow stream to be advertised on YP, default 0 -->
+
+ <!-- Live encoding/reencoding:
+
+ channels and samplerate currently MUST match the channels
+ and samplerate given in the parameters to the oss input
+ module above or the remsaple/downmix section below. -->
+
+ <encode>
+ <quality>0</quality>
+ <samplerate>22050</samplerate>
+ <channels>1</channels>
+ </encode>
+
+ <!-- stereo->mono downmixing, enabled by setting this to 1 -->
+ <downmix>1</downmix>
+
+ <!-- resampling.
+
+ Set to the frequency (in Hz) you wish to resample to, -->
+
+ <resample>
+ <in-rate>44100</in-rate>
+ <out-rate>22050</out-rate>
+ </resample>
+ </instance>
+
+ </stream>
+</ices>
Deleted: icecast/trunk/ices/conf/ices-live.xml
===================================================================
--- icecast/trunk/ices/conf/ices-live.xml 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/conf/ices-live.xml 2005-01-03 21:04:04 UTC (rev 8600)
@@ -1,96 +0,0 @@
-<?xml version="1.0"?>
-<ices>
-
- <!-- run in background -->
- <background>0</background>
- <!-- where logs go. -->
- <logpath>/var/log/ices</logpath>
- <logfile>ices.log</logfile>
- <!-- size in kilobytes -->
- <logsize>2048</logsize>
- <!-- 1=error, 2=warn, 3=infoa ,4=debug -->
- <loglevel>4</loglevel>
- <!-- logfile is ignored if this is set to 1 -->
- <consolelog>0</consolelog>
-
- <!-- optional filename to write process id to -->
- <!-- <pidfile>/home/ices/ices.pid</pidfile> -->
-
- <stream>
- <!-- metadata used for stream listing -->
- <metadata>
- <name>Example stream name</name>
- <genre>Example genre</genre>
- <description>A short description of your stream</description>
- <url>http://mysite.org</url>
- </metadata>
-
- <!-- Input module.
-
- This example uses the 'oss' module. It takes input from the
- OSS audio device (e.g. line-in), and processes it for live
- encoding. -->
- <input>
- <module>oss</module>
- <param name="rate">44100</param>
- <param name="channels">2</param>
- <param name="device">/dev/dsp</param>
- <!-- Read metadata (from stdin by default, or -->
- <!-- filename defined below (if the latter, only on SIGUSR1) -->
- <param name="metadata">1</param>
- <param name="metadatafilename">test</param>
- </input>
-
- <!-- Stream instance.
-
- You may have one or more instances here. This allows you to
- send the same input data to one or more servers (or to different
- mountpoints on the same server). Each of them can have different
- parameters. This is primarily useful for a) relaying to multiple
- independent servers, and b) encoding/reencoding to multiple
- bitrates.
-
- If one instance fails (for example, the associated server goes
- down, etc), the others will continue to function correctly.
- This example defines a single instance doing live encoding at
- low bitrate. -->
-
- <instance>
- <!-- Server details.
-
- You define hostname and port for the server here, along
- with the source password and mountpoint. -->
-
- <hostname>localhost</hostname>
- <port>8000</port>
- <password>hackme</password>
- <mount>/example1.ogg</mount>
- <yp>1</yp> <!-- allow stream to be advertised on YP, default 0 -->
-
- <!-- Live encoding/reencoding:
-
- channels and samplerate currently MUST match the channels
- and samplerate given in the parameters to the oss input
- module above or the remsaple/downmix section below. -->
-
- <encode>
- <quality>0</quality>
- <samplerate>22050</samplerate>
- <channels>1</channels>
- </encode>
-
- <!-- stereo->mono downmixing, enabled by setting this to 1 -->
- <downmix>1</downmix>
-
- <!-- resampling.
-
- Set to the frequency (in Hz) you wish to resample to, -->
-
- <resample>
- <in-rate>44100</in-rate>
- <out-rate>22050</out-rate>
- </resample>
- </instance>
-
- </stream>
-</ices>
Copied: icecast/trunk/ices/conf/ices-oss.xml (from rev 8599, icecast/trunk/ices/conf/ices-live.xml)
Modified: icecast/trunk/ices/configure.in
===================================================================
--- icecast/trunk/ices/configure.in 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/configure.in 2005-01-03 21:04:04 UTC (rev 8600)
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_INIT([IceS], [2.0.0], [icecast at xiph.org])
+AC_INIT([IceS], [2.0.1], [icecast at xiph.org])
AC_PREREQ(2.54)
AC_CONFIG_SRCDIR(src/ices.c)
@@ -14,12 +14,6 @@
dnl BSD headers break when _XOPEN_SOURCE is defined but without it seems
dnl to be fine
-case "$host" in
- *bsd*)
- ;;
- *) AC_DEFINE(_XOPEN_SOURCE, 600, [Define if you have POSIX and XPG specifications])
- ;;
-esac
case "$host" in
*-*-irix*)
DEBUG="-g -signed -D_REENTRANT"
@@ -39,6 +33,7 @@
;;
esac
if test -n "$GCC"; then
+ AC_DEFINE(_XOPEN_SOURCE, 600, [Define if you have POSIX and XPG specifications])
AC_DEFINE(_GNU_SOURCE, ,[Define if you have POSIX and GNU specifications])
XIPH_CPPFLAGS="-ffast-math -fsigned-char"
DEBUG="-g"
Modified: icecast/trunk/ices/doc/config.html
===================================================================
--- icecast/trunk/ices/doc/config.html 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/doc/config.html 2005-01-03 21:04:04 UTC (rev 8600)
@@ -10,14 +10,20 @@
<h1>Config File</h1>
<table width="100%"><tr><td bgcolor="#007B79" height="10" align="center"></td></tr></table>
<p>The ices 2 configuration file is in XML format, which is described in detail below.
- There are 2 sample XML files provided which show the two main ways ices is used.<p>
+ There are some sample XML files provided in the distribution under the conf directory
+ which show the main way ices is used.<p>
</p>
+ live audio streaming, takes audio from the soundcard which can be captured from say the
+ Mic, line-In, CD or a combination of these.
<ul>
- <li><a href="ices-live.xml">live</a> audio streaming, takes audio from the soundcard which can
- be captured from say the Mic, line-In, or CD.
- <li><a href="ices-playlist.xml">playlist</a> audio streaming, takes pre-encoded Ogg Vorbis files
- and either sends them as-is or re-encodes them to different settings</p>
+ <li>ices-oss.xml
+ <li>ices-alsa.xml
</ul>
+ <p>Playlist audio streaming, takes pre-encoded Ogg Vorbis files and either sends them
+ as-is or re-encodes them to different settings</p>
+ <ul>
+ <li>ices-playlist.xml
+ </ul>
<h2>General layout</h2>
<pre>
<?xml version="1.0"?>
@@ -214,6 +220,7 @@
<managed>0</managed>
<samplerate>22050</samplerate>
<channels>1</channels>
+ <flush-samples>11000</flush-samples>
</encode>
</pre>
<p>quality</p>
@@ -245,7 +252,7 @@
<div class=indentedbox>
State bitrate in bits per second to limit minimum bandwidth used on a stream.
Only applies if managed is enabled, this option has very little use so
- shouldn't really be needed.
+ should not really be needed.
</div>
<p>samplerate</p>
<div class=indentedbox>
@@ -257,8 +264,17 @@
<p>channels</p>
<div class=indentedbox>
State the number of channels to use in the encoding. This will either be the
- number of channels from the input or 1 due to downmix.
+ number of channels from the input or 1 if downmix is enabled.
</div>
+ <p>flush-samples</p>
+ <div class=indentedbox>
+ This is the trigger level at which Ogg pages are created for sending to the server.
+ Depending on the bitrate and compression achieved a single ogg page can contain many
+ seconds of audio which may not be wanted as that can trigger timeouts.
+ <p>Setting this to the same value as the encode samplerate will mean that a page per
+ second is sent, if a value that is half of the encoded samplerate is specified then
+ 2 ogg pages per second are sent.</p>
+ </div>
</div>
</body>
</html>
Modified: icecast/trunk/ices/doc/faq.html
===================================================================
--- icecast/trunk/ices/doc/faq.html 2005-01-03 20:17:36 UTC (rev 8599)
+++ icecast/trunk/ices/doc/faq.html 2005-01-03 21:04:04 UTC (rev 8600)
@@ -16,15 +16,18 @@
<h4>Can ices play mp3 files</h4>
<div class=indentedbox>
<p>
- No, there hasn't been much interest in handling mp3 with ices2. The
- older version ices 0.3 maybe of interest in such cases.
+ No, there hasn't been much interest in handling MP3 with ices 2. The older version ices
+ 0.x maybe of interest in such cases. If you really want to encode the Vorbis stream from
+ non-vorbis files then you can play them with an external application, eg xmms, and use
+ ices 2 to capture from the soundcard, but be aware that any conversion from one lossy format
+ to another is bad so make sure the original material is high quality.
</p>
</div>
<h4>How do I encode from Line-In</h4>
<div class=indentedbox>
<p>
IceS will read from the DSP on the soundcard, but where that gets the
- audio from depends on the mixer settings. Use a utility like aumix to
+ audio from depends on the mixer settings. Use a utility like aumix/alsamixer to
see the settings and change the capture or recording device. Usually the
default is the Mic
<p>
@@ -35,6 +38,8 @@
recording device (typically /dev/dsp) open. A good candidate is esd. What
happens is that the driver only allows one application to have the device
open at any one time, a second attempt will just block.
+ <p>Some OSS drivers allow multiple opens but on ALSA you can configure a virtual
+ device in asound.conf, type dsnoop/dmix, which allows access for multiple apps.</p>
</div>
<h4>Ices reports a message about failing to set samplerate on live input</h4>
<div class=indentedbox>
@@ -51,6 +56,13 @@
oss, alsa etc), that way anything that is played by that other application
is encoded and sent to icecast.
</div>
+ <h4>My player connects but I don't hear anything</h4>
+ <div class=indentedbox>
+ If you are getting data through to the player and the settings show like the
+ samplerate and chnnels then it is probably the mixer settings which are set
+ incorrectly and ices can only read silence. A common example, ALSA may have
+ many levels in the mixer and by default they are all muted.
+ </div>
<h4>My player seems unable to play the stream</h4>
<div class=indentedbox>
If the stream looks to be getting to the player then it will be how the
More information about the commits
mailing list