Rwrapper.sh
Aus VDR Wiki
(Unterschied zwischen Versionen)
(→rwrapper.sh) |
(→rwrapper.sh) |
||
| Zeile 19: | Zeile 19: | ||
NOAD="0" # (0=off,1=on,2=online mode) | NOAD="0" # (0=off,1=on,2=online mode) | ||
SHAREMARKS="0" # (0=off,1=on,2=upload after cut) | SHAREMARKS="0" # (0=off,1=on,2=upload after cut) | ||
| − | + | AUTOCUTTER="0" # (0=off,1=on,2=manual edit) | |
| − | AUTOCUTTER="0" # (0=off,1=on) | + | |
| − | + | ||
| − | + | ||
# set the noad online-mode here | # set the noad online-mode here | ||
| Zeile 29: | Zeile 26: | ||
ONLINEMODE="--online=1" | ONLINEMODE="--online=1" | ||
| − | # set additional args for every call here here | + | # set additional noad args for every call here here (not used by AutoCutter, see README) |
ADDOPTS="--ac3 --overlap --jumplogo --comments --statisticfile=/var/log/noadstat" | ADDOPTS="--ac3 --overlap --jumplogo --comments --statisticfile=/var/log/noadstat" | ||
| + | |||
| + | # AutoCutter Options - see AutoCutter README/INSTALL for more | ||
| + | ACBINDIR=/usr/local/vdr/bin | ||
| + | NOADQ=/var/spool/vdrconvert/noad | ||
| + | AUTOCUTLOG=/var/log/autocutter.log | ||
case $1 in | case $1 in | ||
| Zeile 52: | Zeile 54: | ||
esac | esac | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
;; | ;; | ||
after) | after) | ||
echo "After recording $2" | echo "After recording $2" | ||
| − | + | ############ | |
| − | + | # noad | |
| − | + | ############ | |
| − | + | case $NOAD in | |
| − | + | 1) noad $1 $ADDOPTS "$2" | |
| − | + | ;; | |
| − | + | 2) noad $1 $ADDOPTS $ONLINEMODE "$2" | |
| − | + | ;; | |
| − | + | esac | |
| + | |||
| + | ############ | ||
| + | # AutoCutter | ||
| + | ############ | ||
| + | case $AUTOCUTTER in | ||
| + | 1|2) grep -q "$2" $NOADQ 2>/dev/null | ||
| + | if [ $? -ne 0 ]; then | ||
| + | printf "%s " "$2" >>$NOADQ | ||
| + | # Start NoAD Scan in 7 min. | ||
| + | echo "printf '\n' >>$NOADQ" | at now+7 min | ||
| + | fi | ||
| + | ;; | ||
| + | esac | ||
;; | ;; | ||
edited) | edited) | ||
| Zeile 83: | Zeile 88: | ||
############ | ############ | ||
case $SHAREMARKS in | case $SHAREMARKS in | ||
| − | + | 2) marks2pts --non-interactive --upload $1 "$2" | |
;; | ;; | ||
esac | esac | ||
| Zeile 91: | Zeile 96: | ||
############ | ############ | ||
case $AUTOCUTTER in | case $AUTOCUTTER in | ||
| − | + | 2) $ACBINDIR/autocutter-edited.sh $* >>$AUTOCUTLOG 2>&1 & | |
;; | ;; | ||
esac | esac | ||
| − | |||
;; | ;; | ||
Version vom 8. Januar 2007, 10:24 Uhr
Vorschlag für ein einfaches Wrapper-Skript, welches vor / nach / editieren einer Aufnahme ausgeführt werden kann.
Übergabe
-r $PATH/rwrapper.sh --record=$PATH/rwrapper.sh
Siehe auch VDR Optionen.
rwrapper.sh
$PATH/rwrapper.sh
#!/bin/sh
#
# rwrapper.sh
#
# an example script for use with the '-r' option could look like this:
CLIPINC="0" # (0=off,1=on)
NOAD="0" # (0=off,1=on,2=online mode)
SHAREMARKS="0" # (0=off,1=on,2=upload after cut)
AUTOCUTTER="0" # (0=off,1=on,2=manual edit)
# set the noad online-mode here
# 1 means online for live-recording only
# 2 means online for every recording
ONLINEMODE="--online=1"
# set additional noad args for every call here here (not used by AutoCutter, see README)
ADDOPTS="--ac3 --overlap --jumplogo --comments --statisticfile=/var/log/noadstat"
# AutoCutter Options - see AutoCutter README/INSTALL for more
ACBINDIR=/usr/local/vdr/bin
NOADQ=/var/spool/vdrconvert/noad
AUTOCUTLOG=/var/log/autocutter.log
case $1 in
before)
echo "Before recording $2"
############
# clipinc
############
case $CLIPINC in
1) vdrrecinfo.pl $1 "$2"
;;
esac
############
# noad
############
case $NOAD in
2) noad $1 $ADDOPTS $ONLINEMODE "$2"
;;
esac
;;
after)
echo "After recording $2"
############
# noad
############
case $NOAD in
1) noad $1 $ADDOPTS "$2"
;;
2) noad $1 $ADDOPTS $ONLINEMODE "$2"
;;
esac
############
# AutoCutter
############
case $AUTOCUTTER in
1|2) grep -q "$2" $NOADQ 2>/dev/null
if [ $? -ne 0 ]; then
printf "%s " "$2" >>$NOADQ
# Start NoAD Scan in 7 min.
echo "printf '\n' >>$NOADQ" | at now+7 min
fi
;;
esac
;;
edited)
echo "Edited recording $2"
############
# sharemarks
############
case $SHAREMARKS in
2) marks2pts --non-interactive --upload $1 "$2"
;;
esac
############
# AutoCutter
############
case $AUTOCUTTER in
2) $ACBINDIR/autocutter-edited.sh $* >>$AUTOCUTLOG 2>&1 &
;;
esac
;;
*)
echo "ERROR: unknown state: $1"
;;
esac
############
# http://vdr-portal.de/board/thread.php?threadid=37211
# ----
# Wenn eine Aufnahme gelöscht wird,
# die gerade von noad bearbeitet wird, sollte noad abbrechen.
# ----
# Der folgende Schnippsel, überprüft alle 5 Sekunden ob die Verzeichnisse zum PID noch existieren,
# falls nicht wird der entsprechende PID gekillt. (benötigt: ps, pidof, screen)
############
# if ! screen -ls | egrep -q noadwatch ; then
# screen -dmS noadwatch sh -c "while pidof noad ; do \
# for i in \$(pidof noad) ; do \
# sleep 5s ; ARGS=\$(ps --no-heading -p \$i -o %a) ; \
# if [ ! -d \"\${ARGS##* }\" -a -n \"\${ARGS##* }\" ] ; then \
# if ps -p \$i ; then \
# kill -9 \$i ; \
# fi ; \
# fi ; \
# done ; \
# done"
# fi
############
exit $?
Quellen
- INSTALL (VDR)
- rwrapper.sh sharemarks
- scripts von noad