Da auf meiner CF-Karte im IGEL nicht mehr ausreichend Platz für umfangreiche Player wie mplayer ist, hier ein kleines DVB-S-Aufnahmeprogramm auf Basis der primitiven DVB-Tools für Linux. Zum Programmieren von Aufnahmen werde ich mir wohl noch ein Skript schreiben, das eine Auswahl des Sendernamens erlaubt und dieses Skript zeitverzögert per at(1) startet.
Bash
#!/bin/bash
# shittyrecorder.sh
CHANNEL_FILE=/etc/channels.conf
CHANNEL_NUMBER=$1
RECORDING_DURATION=$2
RECORDING_FILE=$3
PIPE=${TMPDIR-/tmp}/shittyrecorder-$$.pipe
mkfifo $PIPE
# Tuningprogramm im Aufnahmemodus starten und Ausgabe in Pipe leiten
szap -c $CHANNEL_FILE -r -n $CHANNEL_NUMBER > $PIPE & SZAP_PID=$!
# Warten auf Signal
while read line; do grep -q FE_HAS_LOCK$ <<<$line && break; done < $PIPE
# restliche Ausgabe der Pipe wegwerfen
cat $PIPE > /dev/null & DISCARDER_PID=$!
# eigentliches "Aufnahme"-Programm
cat /dev/dvb/adapter0/dvr0 > $RECORDING_FILE & RECORDER_PID=$!
# Aufnahme beenden
sleep $RECORDING_DURATION
kill $RECORDER_PID
kill $SZAP_PID
kill $DISCARDER_PID 2>/dev/null # sollte eigentlich schon beendet sein
rm -f $PIPE
Alles anzeigen