Codi Stream x TDT
Codi per emetre per internet un flux directe audiovisual, en aquest cas, una tarjeta USB que captura la TDT per senyal d’antena.
Codi fet en fet en bash, per Linux-Ubuntu, basat en gstreamer (http://en.wikipedia.org/wiki/GStreamer), utilitzat per enviar la senyal de LaTele, canal 37 (a 602000Mz) per internet, a través de:
http://experimentaltv.org:8000/latele
o a http://latele.cat/latele-en-directe
Podeu obrir el vostre propi canal per a usos socials, ho podeu fer a http://giss.tv
Podeu posar aquest codi en un arxiu en blanc, l’anomeneu «gst_tdt2stream.sh», li doneu permisos d’execució, i un cop configurat el «CONFIG», ja podreu re-emetre per streaming el canal de la TDT que desitjeu.
#!/bin/bash
#gst_tdt2stream.sh
#
# CONFIG
#
HOST=giss.tv
PORT=8000
MOUNT=el_teu_mointpoint.ogg
PASSWD=el_teu_password
FREQ_TDT=602000 #(Aquesta és la frequència de LaTele.cat)
BANDA_TDT=8
NOM_STREAM=testing
DESCRIPCIO=emissio_en_proves
TIPUS=comunitat_audiovisual
WEB=http://telenoika.net
BACKUP_FILE=stream_backup_$MOUNT
#
# FI CONFIG
#
gst_tdt2stream(){
gst-launch-0.10 dvbsrc frequency=$FREQ_TDT bandwidth=$BANDA_TDT ! mpegtsdemux name=demux ! queue ! mpeg2dec ! deinterlace ! videorate ! video/x-raw-yuv,framerate=25/2 ! videoscale ! video/x-raw-yuv,width=320,height=240 ! ffmpegcolorspace ! tee name=tscreen ! queue ! autovideosink tscreen. ! queue ! theoraenc quality=48 ! queue ! oggmux name=mux demux. ! queue ! mad ! tee name=audiout ! queue ! autoaudiosink audiout. ! queue ! audioconvert ! vorbisenc quality=0.5 ! queue ! mux. mux. ! queue ! tee name=tfile ! queue ! filesink location=$BACKUP_FILE tfile. ! queue ! shout2send ip=$HOST port=$PORT mount=$MOUNT password=$PASSWD streamname=$NOM_STREAM description=$DESCRIPCIO genre=$TIPUS url=$WEB
while true
do
# echo «Verifiquem mount_point»
curl -s http://$HOST:$PORT/|grep -q «Mount Point /$MOUNT»
if [ $? != 0 ]; then
# echo «Verifiquem gst-launch-0.10»
PID=$(pidof gst-launch-0.10)
if [ «x$PID» != «x» ]; then
# echo «matant gst-launch»
kill -9 $PID;
fi
gst_tdt2stream &
# echo «rearrancant»
sleep 5
fi
sleep 1
done
#
# INSTAL·LACIO GSTREAMER
# $ sudo add-apt-repository ppa:gstreamer-developers/ppa
# $ sudo apt-get update
# $ sudo apt-get install gstreamer-tools
# FI INSTAL·LACIO GSTREAMER
#
# INSTAL·LAR CURL
# $ sudo apt-get install curl
# FI INSTAL·LACIO CURL
#
# gstreamer_code by giss.tv
# continuity_code by acs.li
# suport_maintaiment by kinoraw.net
# experimental icecast servers: giss.tv – experimental.tv – gint.tv – hangar.org
# latele.cat/latele-en-directe hosted by Telenoika.net
# gst_tdt2stream project by edrok Telenoika.net
#
# GPL web@telenoika.net
#
# v tka-0.0 2012/05/19 20:53:01 Telenoika
# v tka-0.1 2012/10/14 23:23:23 Hackafou
# v tka-0.2 2013/01/16 18:00:00 EnergyControl stream workshop