How to install
==============
1. Get your sound card to work with the ALSA driver (http://alsa-project.org).
At the moment, this program does not have support for other sound input.
You'll need a current version (i.e. 0.9.1 or later). Alsa-lib should be
compiled with jack support (--with-jack, read the howto for your soundcard,
jack should be installed first).
2. Dependencies:
webserver. i use apache: http://www.apache.org
mysql server: http://www.mysql.com
lame: http://lame.sourceforge.net
libshout: http://developer.icecast.org/libshout
Shout.pm in cvs on: http://cvs.icecast.org/cvsweb.cgi/libshout-perl
but included here in the package directory as a tarball
ecasound http://www.wakkanet.fi/~kaiv/ecasound
jack http://jackit.sourceforge.net
perl DBI http://www.cpan.org
perl CGI http://www.cpan.org
local icecast server (optional) http://www.icecast.org
3. Unpack the tarball in your webtree. Use .htaccess to saveguard your directory
if you dont want others to manage your mp3-streaming. Note that icecast server
passwords are transmitted in cleartext, so if you use this program over the web,
you might want to use https for this interface.
make a file directory writable by the user of apache (www-data on debian)
apache config to allow execution of perl scripts:
uncomment: AddHandler cgi-script .cgi
add this for your directories:
Options Indexes Includes FollowSymLinks MultiViews ExecCGI
AllowOverride AuthConfig
Options Indexes
AllowOverride Authconfig
4. Create a mysql database for the program. Example:
# mysql
mysql> create database streambox;
mysql> grant all on streambox.* to streambox@localhost identified by 'password';
mysql> quit
mysql streambox < streambox.db
5. edit your local variables:
and put it
in $filedir in startstream script
6. jack should be running as user www-data. you should do:
su - www-data
/jack-daemon.sh
(or make a on-boot script to start this)
7. edit all perl scripts that have a fixed filename (sorry about that, will change later)
You should now be able to start a stream from the web interface.
Notes:
======
- if you use your machine on different ip's, apache will not start too well as it
expects a servername/ip number in the configuration.
- the icecast ip number / servername in /etc/icecast/icecast.conf has a simular
problem.
Thanks
======
to Fat Freddy and his cat for writing freestream (http://squat.net/freestream)
to Gerbrand Oudenaarden for sponsoring the first development of this web interface
to the ASCII crew for talking into that microphone all the time (http://squat.net/ascii)
This program was written by Jaap and is published under the GNU public license
(see COPYING).