Version 3 (modified by ph3-der-loewe, 13 years ago) (diff) |
---|
Streaming to Icecast with roard and RoarAudio PlayList? Daemon (rpld)
This tutorial is to tell you how to setup roard and RoarAudio PlayList? Daemon to stream to a Icecast server. This does not cover installint Icecast itself nor using a diffrent RoarAudio server than roard.
Introduction and Concept
As you may already have noticed the name of RoarAudio PlayList? Daemon (later rpld) contains the word PlayList?. This name is chosen for a simple reason: In fact rpld is not audio player or something like that. It's a playlist manager build on top of the RoarAudio sound system. It does:
- Handle playlists
- Push data from files or streams in playlist to the sound server
- It controls playback by passing control information between clients and sound server
It does not:
- Play back anything itself
- Decode or encode audio
However because clients never be in contact with the sound server this may sometimes look a bit like rpld be a full audio player.
As rpld does not handle audio itself setup for streaming is done on roard's end. It is configured to have a so called 'output' to icecast and encoding as Ogg Vorbis.
Installation
Before we can start you need to install the following software:
- roard from RoarAudio Package
- rpld
- vclt-tools
If your operating system ships them we suggest you to use those versions and not compile your own binary.
Installing on Debian
Just type as root:
# apt-get install roaraudio roarplaylistd vclt-tools
Installing from source
Note: This is a very brief description and may or may not be extended later.
First go to http://roaraudio.keep-cool.org/downloads.html and download the packages listed above.
Before you continue you should install the following stuff, too:
- Essential packages for compiling (compiler, linker, make, system headers,...)
- libvorbis
- libshout
- libuuid (from e2fsprogs)
- vorbis-tools
Don't forget to install the -dev or -devel packages. Some more libraries are listed in the READMEs for the packages.
For all the packages the building is done like:
$ tar -xvzf package.tar.gz $ cd package $ ./configure $ make # make install
Setting up roard
After installing roard is basically already ready. All we need to tell it is to stream to to our Icecast server.
To do this we need to set the output driver to shout and device name to URL of the server including mount point and login. Such a URL may look like this:
http://source:hackme@streaming-server.example.org:8000/mountpoint.ogg
source is username (this is the default username, do not change if unsure) and hackme is the password.
on Debian
There is a configuration file at /etc/default/roaraudio you need to edit. scroll down to section Audio and Devices. Now set the following parameters:
ROARD_DRIVER='shout' ROARD_DEVICE='http://source:hackme@streaming-server.example.org:8000/mountpoint.ogg' ROARD_DRIVER_OPTIONS='sync,codec=ogg_vorbis'
Note that you need to remove the leading #s.
Starting manually
If you start roard manually you must simply pass the parameters using -o, -O and -oO.
Example:
roard -o shout -O http://source:hackme@streaming-server.example.org:8000/mountpoint.ogg -oO sync,codec=ogg_vorbis