1
2
mirror of https://github.com/vimagick/dockerfiles synced 2024-06-28 17:51:24 +00:00
dockerfiles/ices-arm
2017-03-06 00:42:23 +08:00
..
docker-compose.yml add ices-arm 2017-03-06 00:42:23 +08:00
Dockerfile add ices-arm 2017-03-06 00:42:23 +08:00
ices.xml add ices-arm 2017-03-06 00:42:23 +08:00
README.md add ices-arm 2017-03-06 00:42:23 +08:00

ices

IceS is a source client for the Icecast streaming server. The purpose of this client is to provide an audio stream to Icecast, so that one or more listeners can access the stream. With this layout, the source client can be situated remotely from the Icecast server.

How It Works

                +-> (LAN) -> (icecast) -+
(in) -> (ices) -|                       |-> (out) -> (mpd) -> (file)
                +-> (WAN) -> (icecast) -+

docker-compose.yml

ices:
  image: easypi/ices-arm
  volumes:
    - ./ices.xml:/etc/ices.xml
  devices:
    - /dev/snd
  links:
    - icecast
  restart: always

icecast:
  image: easypi/icecast-arm
  ports:
    - "8000:8000"
  restart: always

ices.xml

<?xml version="1.0"?>
<ices>
    <background>0</background>
    <loglevel>4</loglevel>
    <consolelog>1</consolelog>
    <pidfile>/var/run/ices.pid</pidfile>
    <stream>
        <metadata>
            <name>Example stream name</name>
            <genre>Example genre</genre>
            <description>A short description of your stream</description>
            <url>http://easypi.info</url>
        </metadata>
        <input>
            <module>alsa</module>
            <param name="rate">44100</param>
            <param name="channels">1</param>
            <param name="device">hw:1,0</param>
        </input>
        <instance>
            <hostname>icecast</hostname>
            <port>8000</port>
            <password>hackme</password>
            <mount>/live.ogg</mount>
            <encode>
                <quality>0</quality>
                <samplerate>44100</samplerate>
                <channels>1</channels>
            </encode>
        </instance>
    </stream>
</ices>

You can setup multiple instances (e.g. LAN & WAN).