Streaming server (ggrab) für DBox2-Aufnahmen einrichten

Aus

Einleitung

Ggrab ist ein Streaming Tool für die Dbox2 mit einem Neutrino- oder Enigma-Image (http://www.tuxbox.org/). Es ermöglicht manuelle und programmierte Aufnahmen von Sendungen mit einer Dbox2 auf eine Synology-NAS. Die Beschreibung und Quellcode von ggrab ist verfügbar unter: http://gettoweb.de/dbox-ii/ggrab/


Voraussetzungen

Synology-NAS

  • Zugriff auf das NAS über die Kommandozeile muss aktiviert sein
  • IPKG wird benötigt
  • SFTP / SCP kann für das direkte Kopieren von benötigten Dateien (siehe Punk 7.4) verwendet werden. Man kann aber auch mit dem Explorer auf ein freigegebenes Verzeichnis der NAS zwischenkopieren (z.B. public) und die Dateien anschliessend in die richtigen Ordner mit der Kommandozeile verschieben.

Dbox2

  • Ein Neutrino- oder Enigma-Image mit NGrab-Streaming
  • Optional für manuelle Aufnahmen 'NGrab-Plugin'


Installation

1. Ggrab mit Hilfe von IPKG installieren:

ipkg install ggrab

2. Installation überprüfen:

ggrab -h

3. Ein Verzeichnis für Ablage der Aufnahmen anlegen, z.B. unter 'public':

mkdir /volume1/public/rec


Konfiguration

DBox2

4. In der DBox2 die IP-Adresse und Port von der Synology-NAS einstellen, z.B. bei einem Enigma-Image (Powerboard) über "Einstellungen -> Experten -> NGrab-Streaming".

4.1 SrvIP eintragen: 192.168.x.y

4.2 SrvPort eintragen: 4000

4.3 'MAC-Adresse beziehen' drücken, es sollte nun unter 'SrvMAC' die MAC-Adresse von der Synology-NAS erscheinen

4.4 'Speichern' drücken


Manueller Start und Test

5. Mit ggrab wird auch ein Server (sserver) installiert welcher ggrab steuert. Diesen Server starten wir zuerst mal manuell:

sserver -sport 4000 -o /volume1/public/rec

6. Manuelle Aufnahme starten

6.1 Über langes Halten der blauen Taste das PB-Menü aufrufen

6.2 Falls noch nicht installiert über Online-Updates das 'NGrab-Plugin' installieren

6.3 Menü 'Erweiterungen -> start NGrab recording' aufrufen

6.4 Jetzt sollten in der NAS-Console einige Ausgaben vom sserver erscheinen

6.5 Aufnahme wieder stoppen über das Menü 'Erweiterungen -> stop NGrab recording'

6.6 Im Aufnahmeordner (/volume1/public/rec) nach einer Datei mit Endung 'vob' suchen und diese abspielen, z.B. mit VLC (http://www.videolan.org/vlc/)

6.7 In der Console den sserver wieder beenden mit 'Strg + C' oder

killall sserver


Automatischer Start

7. sserver automatisch starten lassen:

7.1 mit (win)scp verbinden (falls SFTP / SCP installiert) oder die Dateien zuerst nach '/volume1/public' kopieren und dann mit der Console verschieben nach /opt/etc...

7.2 die Datei ssggrab.conf erzeugen:

sport=4000
output=/volume1/public/rec

7.3 die Datei S88ssggrab.sh erzeugen:

#!/bin/sh
#
# Startup script for Sserver - ggrab (ssggrab)
#
# an0s <anb0s@x.de>
#
# description: Dbox2 streaming tool
# processname: /opt/bin/sserver
# file:   /opt/etc/init.d/S88ssggrab.sh
# config: /opt/etc/ssggrab.conf

# Source function library.
#. /etc/init.d/functions

# Source some options 
. /opt/etc/ssggrab.conf

RETVAL=0

# Path to the sserver binary
fullpath=/opt/bin/sserver

# Path to the lock
locked=/var/lock/sserver

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

start() {
        echo "Starting Sserver (sserver): "
		$fullpath -sport $sport -o $output > /dev/null 2>&1 &
		touch $locked
		echo "success"
}
stop() {
        echo "Stopping Sserver (sserver): "
        killall sserver
		rm -fr $locked
		echo "success"
}

status() {
		if [ -f $locked ]; then
			echo "Sserver is running"
		else
			echo "Sserver is NOT running"
		fi
}

# See how we were called.
case "$1" in
        start)
                start
		;;
        stop)
                stop
                ;;
        restart|reload)
                stop
                start
                ;;
        status)
				status
				;;
	*)
                echo "Usage: ssggrab {start|stop|restart|reload|status}"
                RETVAL=1
esac
exit $RETVAL

7.4 ssggrab.conf nach '/opt/etc' kopieren

7.5 S88ssggrab.sh nach '/opt/etc/init.d' kopieren

8. Script testen

8.1 Server Starten

sh /opt/etc/init.d/S88ssggrab.sh start

8.2 es sollte erscheinen:

Starting Sserver (sserver):
success

8.3 Status abfragen

sh /opt/etc/init.d/S88ssggrab.sh status

8.4 es sollte erscheinen:

Sserver is running

8.5 mit 'ps' kontrollieren ob es wiklich läuft, nach '/opt/bin/sserver -sport 4000 -o /volume1...' suchen

8.6 Server Stoppen

sh /opt/etc/init.d/S88ssggrab.sh stop

8.7 es sollte erscheinen:

Stopping Sserver (sserver):
success

9. NAS neustarten und kontrollieren ob der process automatisch gestartet wurde

reboot
ps

10. Mit der DBox Aufnahmen programmieren und glücklich sein :)