From: yomguy Date: Thu, 1 Sep 2011 14:28:13 +0000 (+0200) Subject: add gst video service startup, include HTML5 video object in view X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=f82838f4fbaaea47239b9b567ec8b3d29ac705f7;p=telecaster-cgi.git add gst video service startup, include HTML5 video object in view --- diff --git a/conf/home/fluxbox/autostart.sh b/conf/home/fluxbox/autostart.sh index b5ceb8a..208bc11 100755 --- a/conf/home/fluxbox/autostart.sh +++ b/conf/home/fluxbox/autostart.sh @@ -1,34 +1,4 @@ #!/bin/sh -pid=`pgrep jack-rack` - -if [ ! $pid = "" ]; then - sleep 1 -else - jack-rack -n /etc/telecaster/eq_comp_limit_02.rack > /dev/null & - sleep 15 - jack_connect system:capture_1 jack_rack:in_1 - jack_connect system:capture_2 jack_rack:in_2 -fi - -qjackctl & - -edcast_jack -c /etc/telecaster/edcast_jack_local.cfg -n LIVE -p jack_rack > /dev/null & -sleep 3 - -# MONO setup -jack_disconnect jack_rack:out_2 LIVE:in_2 -jack_connect jack_rack:out_1 LIVE:in_1 -jack_connect jack_rack:out_1 LIVE:in_2 -jack_connect jack_rack:out_1 system:playback_1 -jack_connect jack_rack:out_1 system:playback_2 - - -# STEREO setup -#jack_connect jack_rack:out_1 LIVE:in_1 -#jack_connect jack_rack:out_2 LIVE:in_2 -#jack_connect jack_rack:out_1 system:playback_1 -#jack_connect jack_rack:out_2 system:playback_2 - -# Start safe DeeFuzzer -deefuzzer /etc/telecaster/deefuzzer_safe.xml > /dev/null & +sh ~/.fluxbox/tc_audio_start.sh +sh ~/.fluxbox/tc_video_start.sh diff --git a/conf/home/fluxbox/startup.ubuntu b/conf/home/fluxbox/startup.ubuntu index ad52164..af2145a 100644 --- a/conf/home/fluxbox/startup.ubuntu +++ b/conf/home/fluxbox/startup.ubuntu @@ -27,39 +27,8 @@ fbpid=$! sleep 1 { -pid=`pgrep jack-rack` - -if [ ! $pid = "" ]; then - sleep 1 -else - jack-rack -n /etc/telecaster/eq_comp_limit_02.rack > /dev/null & - sleep 15 - jack_connect system:capture_1 jack_rack:in_1 - jack_connect system:capture_2 jack_rack:in_2 -fi - -qjackctl & - -edcast_jack -c /etc/telecaster/edcast_jack_local.cfg -n LIVE -p jack_rack > /dev/null & -sleep 3 - -# MONO setup -jack_disconnect jack_rack:out_2 LIVE:in_2 -jack_connect jack_rack:out_1 LIVE:in_1 -jack_connect jack_rack:out_1 LIVE:in_2 - -# STEREO setup -#jack_connect jack_rack:out_1 LIVE:in_1 -#jack_connect jack_rack:out_2 LIVE:in_2 - -# Start safe DeeFuzzer -deefuzzer /etc/telecaster/deefuzzer_safe.xml > /dev/null & - -#/home/telecaster/apps/telecaster/tools/ffmpeg_dv_jack_fifo_shout start > /dev/null & -#sleep 3 -#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 +sh ~/.fluxbox/autostart.sh } & diff --git a/conf/home/fluxbox/tc_audio_start.sh b/conf/home/fluxbox/tc_audio_start.sh new file mode 100755 index 0000000..54ddce1 --- /dev/null +++ b/conf/home/fluxbox/tc_audio_start.sh @@ -0,0 +1,35 @@ +#!/bin/sh + +pid=`pgrep jack-rack` + +# Audio channel + +if [ ! $pid = "" ]; then + sleep 1 +else + jack-rack -n /etc/telecaster/eq_comp_limit_02.rack > /dev/null & + sleep 15 + jack_connect system:capture_1 jack_rack:in_1 + jack_connect system:capture_2 jack_rack:in_2 +fi + +qjackctl & + +edcast_jack -c /etc/telecaster/edcast_jack_local.cfg -n LIVE -p jack_rack > /dev/null & +sleep 3 + +# MONO setup +jack_disconnect jack_rack:out_2 LIVE:in_2 +jack_connect jack_rack:out_1 LIVE:in_1 +jack_connect jack_rack:out_1 LIVE:in_2 +jack_connect jack_rack:out_1 system:playback_1 +jack_connect jack_rack:out_1 system:playback_2 + +# STEREO setup +#jack_connect jack_rack:out_1 LIVE:in_1 +#jack_connect jack_rack:out_2 LIVE:in_2 +#jack_connect jack_rack:out_1 system:playback_1 +#jack_connect jack_rack:out_2 system:playback_2 + +# Start safe DeeFuzzer +deefuzzer /etc/telecaster/deefuzzer_safe.xml > /dev/null & diff --git a/conf/home/fluxbox/tc_video_start.sh b/conf/home/fluxbox/tc_video_start.sh new file mode 100755 index 0000000..1f30439 --- /dev/null +++ b/conf/home/fluxbox/tc_video_start.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +# Start TeleCaster video channel + +WIDTH=480 +HEIGHT=270 + +gst-launch v4l2src device=/dev/video0 ! videoscale ! video/x-raw-yuv, width=160, height=120 \ + ! videomixer name=mix sink_1::xpos=0 sink_1::ypos=155 sink_1::alpha=0.9 \ + ! queue ! ffmpegcolorspace ! theoraenc quality=25 ! muxout. \ + jackaudiosrc connect=1 ! audioconvert ! audio/x-raw-int,rate=44100,channels=1,width=16 \ + ! queue ! audioconvert ! vorbisenc ! queue ! muxout. \ + oggmux name=muxout ! tee name=t ! queue ! filesink location="video_test.ogg" t. \ + ! queue ! shout2send mount=/telecaster_live_video.ogg port=8000 password=source2parisson ip=127.0.0.1 \ + v4l2src device=/dev/video1 ! videoscale ! video/x-raw-yuv, width=$WIDTH, height=$HEIGHT ! mix. \ + > /dev/null & + +sleep 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 + diff --git a/scripts/telecaster/gst_video_double_shout b/scripts/telecaster/gst_video_double_shout index 1fd823e..246d01e 100755 --- a/scripts/telecaster/gst_video_double_shout +++ b/scripts/telecaster/gst_video_double_shout @@ -1,3 +1,3 @@ #!/bin/bash -gst-launch v4l2src device=/dev/video0 ! videoscale ! video/x-raw-yuv, width=160, height=120 ! videomixer name=mix sink_1::xpos=20 sink_1::ypos=20 sink_1::alpha=0.9 ! queue ! ffmpegcolorspace ! theoraenc quality=30 ! muxout. jackaudiosrc connect=1 ! audioconvert ! audio/x-raw-int,rate=44100,channels=1,width=16 ! queue ! audioconvert ! vorbisenc ! queue ! muxout. oggmux name=muxout ! tee name=t ! queue ! filesink location="video_test.ogg" t. ! queue ! shout2send mount=/telecaster_live_video.ogg port=8000 password=source2parisson ip=127.0.0.1 v4l2src device=/dev/video1 ! videoscale ! video/x-raw-yuv, width=640, height=360 ! mix. +gst-launch v4l2src device=/dev/video0 ! videoscale ! video/x-raw-yuv, width=160, height=120 ! videomixer name=mix sink_1::xpos=20 sink_1::ypos=20 sink_1::alpha=0.9 ! queue ! ffmpegcolorspace ! theoraenc quality=40 ! muxout. jackaudiosrc connect=1 ! audioconvert ! audio/x-raw-int,rate=44100,channels=1,width=16 ! queue ! audioconvert ! vorbisenc ! queue ! muxout. oggmux name=muxout ! tee name=t ! queue ! filesink location="video_test.ogg" t. ! queue ! shout2send mount=/telecaster_live_video.ogg port=8000 password=source2parisson ip=127.0.0.1 v4l2src device=/dev/video1 ! videoscale ! video/x-raw-yuv, width=480, height=270 ! mix. diff --git a/webview.py b/webview.py index e2dff70..47fbe8b 100644 --- a/webview.py +++ b/webview.py @@ -148,6 +148,11 @@ class WebView(FieldStorage): print "" print "" + def video(self): + print "
" + print "" + print "
" + def hardware_data(self): jackd_pid = get_pid('jackd', self.uid) if jackd_pid == []: @@ -223,6 +228,7 @@ class WebView(FieldStorage): print "" print "" print "" + self.video() print "" @@ -277,7 +283,7 @@ class WebView(FieldStorage): def video(self): print "
" - print "" + print "" print "
" def stop_form(self, conference_dict, writing, casting):