<?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>roar</module>
            <!-- All of the following settings are optional.
                 You should not set them if not needed. -->

            <!-- Sample rate and number or channels, defaults are 44.1kHz and stereo -->
            <param name="rate">44100</param>
            <param name="channels">2</param>

            <!-- The codec to read audio from the server in. This is *NOT*
                 the codec the audio is streamed to the server.
                 Default should be raw PCM ("default").
                 You may also use "ogg_vorbis".
            -->
            <!-- <param name="codec">default</param> -->

            <!-- Alternatively to the above you can use one of libroar's
                 audio info profiles.
            -->
            <!-- <param name="aiprofile">default</param> -->

            <!-- The stream direction:
                 Use "monitor" for sending a copy of your output to the server or
                 "record" to record from sound card.
                 Defaults to "monitor".
            -->
            <param name="dir">monitor</param>

            <!-- This is the address of the server to connect to.
                 This can be a /path/to/unixsocket, a host or node name.
                 You sould not set this value for local roard unless
                 needed. Setting this to "localhost" is normaly a bad idea.
            -->
            <!-- <param name="device">someserver</param> -->

            <!-- Read metadata (from stdin by default,
                 filename defined below (if the latter, only on SIGUSR1), or
                 stream. Valid values are:
                 "none"   - Use no metadata.
                 "file"   - Read metadata from file (or stdin if no filename is configured.
                 "stream" - Read metadata from stream (Audio server).
            -->
            <!-- <param name="metadata">file</param> -->
            <!-- <param name="metadatafilename">test</param> -->

            <!-- libroar plugins to load.
            -->
            <!-- <param name="plugin">helloworld</param> -->
            <!-- <param name="plugin">helloworld text="Hello ices2 users!"</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.
                Remove this section if you don't want your stream getting reencoded.
            -->

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