===================
TeleCaster now only works on GNU/Linux systems. The installer and the following instructions
-are based on Debian like software management so that it should work on Debian (>= Lenny)
+are based on Debian like software management so that it should work on Debian (>= Lenny)
or Ubuntu / Kubuntu (>= 10.4). So please install one of these OS before.
sudo aptitude install python python-dev python-xml python-libxml2 python-setuptools python-twitter python-liblo python-mutagen \
icecast2 apache2 apache2-suexec jackd libjack-dev vorbis-tools procps meterbridge fluxbox \
- vnc4server vncviewer swh-plugins jack-rack libshout3 libshout3-dev libmad0-dev libogg-dev g++
+ vnc4server vncviewer swh-plugins jack-rack libshout3 libshout3-dev libmad0-dev libogg-dev g++ python-yaml
Warning: on Debian Squeeze or recent Ubuntu, change libjack-dev to libjack-jackd2-dev
Optional::
- sudo aptitude install libfaac-dev libmp3lame-dev libflac-dev
+ sudo aptitude install libfaac-dev libmp3lame-dev libflac-dev
Note that obtaining and installing a preempt RT kernel is STRONGLY advised to get a good audio (JACK) stability.
Moreover, edit the pam conf file to get RT "su" pam limits at boot::
-
+
sudo vi /etc/pam.d/su
-
+
Uncomment::
-
+
session required pam_limits.so
=====================
Untar the archive. For example::
-
+
tar xzf telecaster-0.5.tar.gz
-
+
Run the install script::
-
+
cd telecaster-0.5/
sudo python install.py
5. Start audio deamons
======================
-Just reboot your machine or start the deamons manually::
+Just reboot your machine or start the deamons manually::
sudo /etc/init.d/jackd start
sudo /etc/init.d/vncserver start
Configure your apache VirtualHost editing /etc/apache2/sites-available/telecaster.conf
Enable the VirtualHost::
-
+
sudo a2ensite telecaster.conf
-
+
Maybe remove the default VirtualHost::
-
+
sudo rm /etc/apache2/sites-enabled/000-default
Reload Apache::
sudo /etc/init.d/apache2 reload
-7. Usage
+7. Usage
========
Browse the TeleCaster web control page:
Fill in the form and start any free recording and broadcasting stream !
To change the form options, just edit the conf file as root::
-
+
sudo vi /etc/telecaster/telecaster.xml
-
+
8. Contact
==========
Any questions, suggestions ? Please post a ticket on the dev platform:
-
+
http://svn.parisson.org/telecaster
or contact the main developer:
DAEMON=/usr/bin/vncserver
USER=
OPTIONS=""
-LOG=/var/log/vncserver.log
+LOG=/var/log/telecaster/vncserver.log
PIDFILE=/var/run/vncserver.pid
PORT=2
start)
log_begin_msg "Starting telecaster streaming vncserver:" "telecaster"
su -c "$DAEMON $OPTIONS :$PORT > $LOG &" $USER
- sleep 20
- deefuzzer /etc/telecaster/deefuzzer/telecaster_mp3_monitor.yaml > /dev/null &
- deefuzzer /etc/telecaster/deefuzzer/telecaster_webm_monitor.yaml > /dev/null &
+ sleep 10
+ su -c "deefuzzer /etc/telecaster/deefuzzer/telecaster_mp3_monitor.yaml > /dev/null &" $USER
+ su -c "deefuzzer /etc/telecaster/deefuzzer/telecaster_webm_monitor.yaml > /dev/null &" $USER
pid=`pgrep -u ${USER} vncserver`
if [ pid = '' ]; then
log_failure_msg "TeleCaster daemon can't be started! Check logfile: $LOG"
log_begin_msg "Stopping telecaster streaming vncserver:" "telecaster"
pid=`cat $PIDFILE | sed -e 's/\s.*//'|head -n1`
if [ ! pid = '' ]; then
- su -c "pkill -9 -f \"deefuzzer /etc/telecaster/deefuzzer_mp3_monitor.yaml\" "
- su -c "pkill -9 -f \"deefuzzer /etc/telecaster/deefuzzer_webm_monitor.yaml\" "
- su -c "pkill -9 gst-launch-0.10" $USER
+ su -c "pkill -9 -f \"deefuzzer /etc/telecaster/deefuzzer/telecaster_mp3_monitor.yaml\" "
+ su -c "pkill -9 -f \"deefuzzer /etc/telecaster/deefuzzer/telecaster_webm_monitor.yaml\" "
+ su -c "pkill -9 gst-launch-0.10" $USER
sleep 1
- su -c "vncserver -kill :$PORT" $USER
- log_end_msg 0
- else
- log_end_msg 1
- exit 1
- fi
+ su -c "vncserver -kill :$PORT" $USER
+ log_end_msg 0
+ else
+ log_end_msg 1
+ exit 1
+ fi
rm $PIDFILE
;;
try-restart)
if [ ! $pid = "" ]; then
sleep 1
else
- jack-rack -n /etc/telecaster/eq_comp_limit_02.rack > /dev/null &
- sleep 6
+ jack-rack -n /etc/telecaster/jack-rack/eq_comp_limit_02.rack > /dev/null &
+ sleep 3
fi
jack_connect system:capture_1 jack_rack:in_1
qjackctl &
-/usr/local/share/telecaster/scripts/telecaster/tc_audio_mp3_icecast.sh &
+/usr/local/share/telecaster/scripts/tc_audio_mp3_icecast.sh &
#edcast_jack -c /etc/telecaster/edcast_jack_local.cfg -n lamemp3enc -p jack_rack > /dev/null &
-sleep 3
+sleep 2
# MONO setup
-#jack_disconnect jack_rack:out_2 lamemp3enc:in_jackaudiosrc0_1
-jack_connect jack_rack:out_1 lamemp3enc:in_jackaudiosrc0_1
-#jack_connect jack_rack:out_1 lamemp3enc:in_jackaudiosrc0_2
+jack_disconnect system:capture_1 gst-launch-0.10:in_jackaudiosrc0_1
+jack_connect jack_rack:out_1 gst-launch-0.10:in_jackaudiosrc0_1
+
+#jack_disconnect system:capture_1 lamemp3enc:in_jackaudiosrc0_1
+#jack_connect jack_rack:out_1 lamemp3enc:in_jackaudiosrc0_1
+
#jack_connect jack_rack:out_1 system:playback_1
#jack_connect jack_rack:out_1 system:playback_2
# Video channel
# ---------------------
-/usr/local/share/telecaster/scripts/telecaster/tc_video_simple_webm_stream.sh &
+/usr/local/share/telecaster/scripts/tc_video_simple_webm_stream.sh &
+
+sleep 2
-sleep 3
+jack_disconnect system:capture_1 gst-launch-0.10-01:in_jackaudiosrc0_1
+jack_disconnect system:capture_2 gst-launch-0.10-01:in_jackaudiosrc0_2
-jack_disconnect system:capture_1 webmenc:in_jackaudiosrc0_1
-jack_connect jack_rack:out_1 webmenc:in_jackaudiosrc0_1
+jack_connect jack_rack:out_1 gst-launch-0.10-01:in_jackaudiosrc0_1
+jack_connect jack_rack:out_2 gst-launch-0.10-01:in_jackaudiosrc0_2
#!/bin/sh
-gst-launch jackaudiosrc connect=1 client-name=lamemp3enc ! audio/x-raw-float, channels=1 \
+gst-launch jackaudiosrc connect=1 ! audio/x-raw-float, channels=1 \
! queue ! audioconvert ! queue ! lamemp3enc quality=4.0 \
! queue ! shout2send ip=127.0.0.1 port=8000 password=source2parisson mount=telecaster_live.mp3
> /dev/null
gst-launch v4l2src device=/dev/video0 ! video/x-raw-yuv, width=$WIDTH, height=$HEIGHT, framerate={30/1} \
! queue ! ffmpegcolorspace \
! queue ! vp8enc speed=2 threads=4 quality=10.0 max-latency=25 max-keyframe-distance=96 auto-alt-ref-frames=true ! queue ! muxout. \
- jackaudiosrc connect=2 client-name=webmenc ! audio/x-raw-float, channels=2 \
+ jackaudiosrc connect=2 ! audio/x-raw-float, channels=2 \
! queue ! audioconvert ! queue ! vorbisenc quality=0.3 ! queue ! muxout. \
webmmux streamable=true name=muxout \
! queue ! tcpserversink host=127.0.0.1 port=9000 protocol=none blocksize=65536 sync-method=1 \