TvHeadEnd meets SatIP
Heute bin ich durch Zufall auf den Thread aufmerksam geworden.
Der User”Perexg” hat heute viel Code in den Master Branch des TvHeadEnd Branch gepushed. Hier gehts zum GIT Repository.
Hier noch ganz schnell ein How To, wie Ihr den TvHeadEnd auf Debian selbst baut. Leider ist mein Build auf dem PI mid den Sourcen des Users gefailed.
apt-get update apt-get install unzip git-core pkg-config dvb-apps apt-get install g++-4.7 build-essential apt-get install libcurl4-openssl-dev libavahi-client-dev zlib1g-dev libavcodec-dev libavutil-dev libavformat-dev libswscale-dev liburiparser-dev export CC=gcc-4.7 export GCC=gcc-4.7 mkdir ~/tvheadend cd ~/tvheadend
Option A. den Original Thread laden
git clone "https://github.com/tvheadend/tvheadend.git" cd tvheadend
Option B, direkt das Zip herunterladen
wget https://github.com/tvheadend/tvheadend/archive/master.zip unzip master.zip cd tvheadend-satip/
Jetzt noch schnell bauen
./configure && make && make install
groupadd tvheadend
useradd -g tvheadend -G video -m tvheadend
usermod -G audio -a tvheadend
Wenn Ihr Probleme mit der libiconv habt, dann schaut doch mal hier rein.
Oder aber Eure ffmpeg libraries sind zu alt, da gibt es hier ein kleinen Guide.
Zum Schluss noch das Startup Script erzeugen
nano /etc/init.d/tvheadend
#!/bin/bash
### BEGIN INIT INFO
# Provides: tvheadend
# Required-Start: $local_fs $remote_fs $network
# Required-Stop: $local_fs $remote_fs $network
# Should-Start: $syslog
# Should-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1
# Short-Description: start/stop tvheadend Server
### END INIT INFO
TVHNAME="tvheadend"
TVHBIN="/usr/local/bin/tvheadend"
TVHUSER="tvheadend"
TVHGROUP="tvheadend"
PIDFILE=/var/run/$TVHNAME.pid
start() {
if [ -e $PIDFILE ]; then
PID=$(ps ax | grep -v grep | grep -w $(cat $PIDFILE) | awk '{print $1}')
if [ -n "$PID" ]; then
echo "$TVHNAME already running (pid $PID)."
exit 1
fi
fi
echo -n "Starting tvheadend: "
start-stop-daemon --start --background --pidfile $PIDFILE --make-pidfile --user ${TVHUSER} --exec ${TVHBIN} -- \
-u ${TVHUSER} -g ${TVHGROUP} -f -C
echo "Done."
}
stop() {
if [ -e $PIDFILE ]; then
PID=$(ps ax | grep -v grep | grep -w $(cat $PIDFILE) | awk '{print $1}')
if [ -n "$PID" ]; then
echo -n "Stopping $TVHNAME: "
start-stop-daemon --stop --quiet --pidfile $PIDFILE --name ${TVHNAME}
echo "Done."
else
echo "$TVHNAME is not running."
fi
else
echo "$TVHNAME is not running."
fi
}
status() {
if [ -e $PIDFILE ]; then
PID=$(ps ax | grep -v grep | grep -w $(cat $PIDFILE) | awk '{print $1}')
if [ -n "$PID" ]; then
echo "$TVHNAME is running (pid $PID)."
else
echo "$TVHNAME is not running."
[ -e $PIDFILE ] && exit 1 || exit 3
fi
fi
}
case "$1" in
start) start ;;
stop) stop ;;
status) status ;;
restart) stop && sleep 2 && start ;;
*) echo "Usage: $0 [start|stop|restart|status]" && exit 1 ;;
esac
exit 0
Wollt Ihr, dass der TvHeadEnd automatisch startet, dann müsst Ihr noch folgendes ausführen:
chmod +x /etc/init.d/tvheadend update-rc.d tvheadend defaults /etc/init.d/tvheadend start