Noad.sh
Aus VDR Wiki
(Unterschied zwischen Versionen)
(Auf Leistungsschwachen PCs sollte man '''at now''' durch '''batch''' ersetzen.) |
|||
| Zeile 1: | Zeile 1: | ||
| − | #!/bin/ | + | #!/bin/bash |
# | # | ||
| − | # noad.sh - v.0. | + | # noad.sh - v.0.2 |
# | # | ||
| − | # add this lines to your | + | # add this lines to your reccmds.conf: |
| − | # folgende zeilen in die | + | # folgende zeilen in die reccmds.conf eintragen: |
# | # | ||
| − | # | + | # Run noad : /usr/local/bin/noad.sh -start |
| − | # View Cut list | + | # Run noad, all recordings (batch) : /usr/local/bin/noad.sh -batch |
| − | # | + | # View Cut list : /usr/local/bin/noad.sh -view |
| − | # Stop | + | # In prozess : /usr/local/bin/noad.sh -count |
| − | # Stop | + | # Stop noad (killpid) : /usr/local/bin/noad.sh -killpid |
| − | + | # Stop noad (killall)? : /usr/local/bin/noad.sh -killall | |
| − | # | + | # Remove all marks : /usr/local/bin/noad.sh -marks.vdr |
| − | + | # Remove all pids : /usr/local/bin/noad.sh -noad.pid | |
| − | # | + | |
PATH=$PATH:/usr/local/bin | PATH=$PATH:/usr/local/bin | ||
| + | |||
| + | NOADOPT="nice --background --jumplogo --ac3 --overlap --OSD --statisticfile=/var/log/noadstat" | ||
case "${1}" in | case "${1}" in | ||
-start) | -start) | ||
| − | + | echo "recording: " | |
| − | + | echo | |
| − | + | echo "${2}" | |
| − | + | echo | |
| − | + | test -e "${2}/noad.pid" && { | |
| − | + | echo "noad is already active..." | |
| − | + | } || { | |
| − | + | echo "/usr/local/bin/noad ${NOADOPT} \"${2}\"" | at now | |
| − | + | echo "noad startet..." | |
| − | + | } | |
| − | + | ;; | |
| − | -marks) | + | -batch) |
| − | + | while read i ; do | |
| − | + | ! test -e "${i}/marks.vdr" -a -e "${i}/noad.pid" && { | |
| − | + | echo "/usr/local/bin/noad ${NOADOPT} \"${i}\"" | batch | |
| − | + | } | |
| − | + | done < <(find "${VDR_VIDEO}" -follow -name "*.rec") | |
| − | + | ;; | |
| − | + | -view) | |
| − | + | echo "recording: " | |
| − | + | echo | |
| − | + | echo "${2}" | |
| − | + | echo | |
| − | + | test -e "${2}/noad.pid" && { | |
| − | + | echo "noad is still active..." | |
| − | + | echo | |
| + | } | ||
| + | test -e "${2}/marks.vdr" && { | ||
| + | cat "${2}/marks.vdr" | ||
| + | } || { | ||
| + | echo "cut list not found..." | ||
| + | } | ||
| + | ;; | ||
-count) | -count) | ||
| − | + | echo "all noad processes:" | |
| − | + | echo | |
| − | + | ps axc|awk "{if (\$5==\"noad\") print \$1}"|wc -w|tr -d ' ' | |
| − | + | ;; | |
| − | - | + | -killpid) |
| − | + | echo "recording: " | |
| − | + | echo | |
| − | + | echo "${2}" | |
| − | + | echo | |
| − | + | test -e "${2}/noad.pid" && { | |
| − | + | kill `cat "${2}/noad.pid"` | |
| − | + | echo "noad stopped..." | |
| − | + | } || { | |
| − | + | echo "noad is not active..." | |
| − | + | } | |
| − | + | ;; | |
| − | - | + | -killall) |
| − | + | killall noad | |
| − | + | ;; | |
| + | -marks.vdr|-noad.pid) | ||
| + | find "${VDR_VIDEO}" -follow -type f -name "${1/-}" -exec rm -f '{}' ';' & | ||
| + | ;; | ||
| + | *) | ||
| + | echo "unrecognized option: $1" | ||
| + | ;; | ||
esac | esac | ||
| − | |||
| − | |||
| − | |||
| − | |||
[[Kategorie:Scripts]] | [[Kategorie:Scripts]] | ||
Version vom 22. Februar 2005, 15:51 Uhr
#!/bin/bash
#
# noad.sh - v.0.2
#
# add this lines to your reccmds.conf:
# folgende zeilen in die reccmds.conf eintragen:
#
# Run noad : /usr/local/bin/noad.sh -start
# Run noad, all recordings (batch) : /usr/local/bin/noad.sh -batch
# View Cut list : /usr/local/bin/noad.sh -view
# In prozess : /usr/local/bin/noad.sh -count
# Stop noad (killpid) : /usr/local/bin/noad.sh -killpid
# Stop noad (killall)? : /usr/local/bin/noad.sh -killall
# Remove all marks : /usr/local/bin/noad.sh -marks.vdr
# Remove all pids : /usr/local/bin/noad.sh -noad.pid
PATH=$PATH:/usr/local/bin
NOADOPT="nice --background --jumplogo --ac3 --overlap --OSD --statisticfile=/var/log/noadstat"
case "${1}" in
-start)
echo "recording: "
echo
echo "${2}"
echo
test -e "${2}/noad.pid" && {
echo "noad is already active..."
} || {
echo "/usr/local/bin/noad ${NOADOPT} \"${2}\"" | at now
echo "noad startet..."
}
;;
-batch)
while read i ; do
! test -e "${i}/marks.vdr" -a -e "${i}/noad.pid" && {
echo "/usr/local/bin/noad ${NOADOPT} \"${i}\"" | batch
}
done < <(find "${VDR_VIDEO}" -follow -name "*.rec")
;;
-view)
echo "recording: "
echo
echo "${2}"
echo
test -e "${2}/noad.pid" && {
echo "noad is still active..."
echo
}
test -e "${2}/marks.vdr" && {
cat "${2}/marks.vdr"
} || {
echo "cut list not found..."
}
;;
-count)
echo "all noad processes:"
echo
ps axc|awk "{if (\$5==\"noad\") print \$1}"|wc -w|tr -d ' '
;;
-killpid)
echo "recording: "
echo
echo "${2}"
echo
test -e "${2}/noad.pid" && {
kill `cat "${2}/noad.pid"`
echo "noad stopped..."
} || {
echo "noad is not active..."
}
;;
-killall)
killall noad
;;
-marks.vdr|-noad.pid)
find "${VDR_VIDEO}" -follow -type f -name "${1/-}" -exec rm -f '{}' ';' &
;;
*)
echo "unrecognized option: $1"
;;
esac