Actions

Difference between revisions of "Liquidsoap"

From The RadioReference Wiki

m
Line 23: Line 23:
 
   description="Scanner audio", mount="/xxxxxxxx",  
 
   description="Scanner audio", mount="/xxxxxxxx",  
 
   name="Baltimore Maryland Police/Fire/EMS", user="source",
 
   name="Baltimore Maryland Police/Fire/EMS", user="source",
   url="http://www.scanbaltimore.com", bitrate=32, stereo=false, radio)
+
   url="http://www.scanbaltimore.com", bitrate=16, stereo=false, radio)
  
 
Once "radio" is defined and processed I can use that variable over and over again to serve multiple streams, or pull back input.alsa() to run different effects.
 
Once "radio" is defined and processed I can use that variable over and over again to serve multiple streams, or pull back input.alsa() to run different effects.

Revision as of 10:15, 12 September 2011

Instructions for Ubuntu, Debian, and other Debian variants.

First, set up ALSA for your soundcard. This varies so much between hardware configurations, you'll just need to do it yourself.

Don't simply install the liquidsoap package from the Ubuntu or Debian stable release. They do not contain MP3 support because of license issues. You must download it from the software maintainer (Savonet) site/repository directly.

Then follow the instructions in:

http://wiki.sourcefabric.org/display/LS/DebianStableBackports

Then do the following:

# apt-get update && apt-get install liquidsoap

Confirm installation of all dependencies.

In the directory /etc/liquidsoap, create a file called radioref.liq.

#!/usr/bin/liquidsoap -v
radio = input.alsa()
output.icecast.mp3( host="audio3.radioreference.com", 
 port = 80, password =  "xxxxxxxxx", genre="Scanner", 
 description="Scanner audio", mount="/xxxxxxxx", 
 name="Baltimore Maryland Police/Fire/EMS", user="source",
 url="http://www.scanbaltimore.com", bitrate=16, stereo=false, radio)

Once "radio" is defined and processed I can use that variable over and over again to serve multiple streams, or pull back input.alsa() to run different effects.

For instance, the line:

radio = amplify(2.0,input.alsa())

Would run the amplify function against the input and multiply the input volume from the ALSA soundcard digitally. You can find additional documentation and API information here:

http://savonet.sourceforge.net/doc-svn/documentation.html

I used the amplify after some friends complained about the low volume and it made it a comfortable volume at most people's defaults, with the BCD-396T feeding my sound card line-in at volume level 3.

In the same file you can add additional outputs, for instance if you are running your own icecast server at home, or have an OGG feed. An example line is below:

output.icecast.vorbis( host="www.scanbaltimore.com", port = 8000, 
 password = "xxxxxxxx", genre="Scanner", description="Scanner audio",
 mount="/xxxxxxx", name="Baltimore Maryland Police/Fire/EMS", user="source",
 url="http://www.scanbaltimore.com", stereo=false, quality=5.0, radio)

The OGG stream uses quality instead of bitrate as an option.