[RDD] Alternative to rdstream - sending track information to icecast2

Ferdinand O. Tempel pw at linuxops.net
Tue Aug 3 16:00:46 EDT 2010


Hi all,

This might be of some use to someone.

I've spent a few hours replacing rdstream with a "proper" plugin for
rdairplay to send track information for the currently playing track to
an icecast2 server. Attached is the source file for that plugin.

A quick FAQ:

Q: So...how do I install it?
A: First, install libcurl-dev. It's a requirement for this to work. Put
the source file into your rivendell build tree in de "rlm" directory.
Then switch to said directory and type:
gcc -fPIC -Wall -lcurl -I.. -shared rlm_icecast2.c -o rlm_icecast2.rlm
Then type "sudo make install" to copy the plugin to the proper location
in your Rivendell 1.7.2 installation

Q: Fine, now how do I use it?
A: Well, fire up rdadmin, and go the rdairplay configuration. Click that
big "Configure Now & Next Parameters". Then below the loadable modules
field, click "add". Select the right plugin (rlm_icecast2) and refer it
to a configuration file. The format of the configuration file is a
simple "parameter=value" type pair, containing not quite coincidentally
the same parameters as a darksnow (frontend to darkice) configuration
file. The parameters used are:
server=<server>
port=<port>
mountpoint=<mountpoint>
pass=<password>
icecast=Icecast 2

If the latter entry is not present, the code will print a message, it
only supports icecast2. The default user for an icecast2 streaming
server for track updates is "source".

Q: What's the quality of this plugin?
A: It works for me. It's probably considered very ugly code, but I'm not
a developer by any stretch of the imagination. I can copy/paste (don't
worry, all public domain example code) well, and am able to interpret
the error messages my compiler spits out at me. So will this code have
bugs and memory leaks and otherwise icky side-effects? Probably. If you
find any, please let me know.

Enjoy.

Regards,

Ferdinand O. Tempel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rlm_icecast2.c
Type: text/x-csrc
Size: 4997 bytes
Desc: not available
Url : http://lists.rivendellaudio.org/pipermail/rivendell-dev/attachments/20100803/76490c68/attachment.c 


More information about the Rivendell-dev mailing list