Clipinc.sh
Aus VDR Wiki
(Unterschied zwischen Versionen)
(M) |
|||
| Zeile 25: | Zeile 25: | ||
-start) | -start) | ||
at now <<EOF | at now <<EOF | ||
| − | if [ -e "$2/recinfo.conf" ] ; then | + | PID=`pidof -x clipinc.pl` |
| − | + | if [ -n "$PID" ] ; then | |
| − | elif [ -e "$3/recinfo.conf" ] ; then | + | svdrpsend.pl MESG "Sorry, but clipinc.pl is running with pid ($PID)..." |
| − | + | else | |
| − | + | if [ -e "$2/recinfo.conf" ] ; then | |
| − | + | clipinc.pl "$2" | |
| − | + | elif [ -e "$3/recinfo.conf" ] ; then | |
| − | + | if [ $(ldd $(which ffmpeg) | grep -c libmp3lame.so) -lt 1 ] ; then | |
| − | + | echo "Unsupported codec, 'configure' ffmpeg with ('--enable-mp3lame')..." | |
| − | + | else | |
| − | + | clipinc.pl "$3" | |
| − | + | find "$CLIPINCDIR" -name "001.vdr" | sed '/\.rec\/001\.vdr/!d' | while read i ; do | |
| − | + | cd "\$(echo \$i | sed -e 's/.\{8\}$//g')" | |
| − | + | LABEL=\$(dirname "\$(pwd)") | |
| + | find "\$CLIPINC2DIR" -type f -empty -exec rm -f '{}' ';' | ||
| + | if [ ! -e "\$CLIPINC2DIR/\${LABEL##*/}.mp3" -a -f 001.vdr ] ; then | ||
| + | ffmpeg \ | ||
| + | -i 001.vdr -acodec ${AUDIO_CODEC:-mp3} -ab ${AUDIO_BITRATE:-192} -ar ${AUDIO_SAMPLING:-44100} "$CLIPINC2DIR/\${LABEL##*/}.mp3" & | ||
| + | wait | ||
| + | fi | ||
| + | done | ||
| + | fi | ||
| + | else | ||
| + | svdrpsend.pl MESG "recinfo.conf not found..." | ||
fi | fi | ||
| − | + | fi \ | |
| − | + | > $CLIPINC_LOGFILE 2>&1 | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | fi \ | + | |
| − | > $CLIPINC_LOGFILE 2>&1 | + | |
EOF | EOF | ||
;; | ;; | ||
Version vom 31. März 2005, 17:11 Uhr
#!/bin/sh
#
# clipinc.sh
#
# Required: at, clipinc.pl, lame, ffmpeg ('--enable-mp3lame')
#
# add this lines to your reccmds.conf:
# folgende zeilen in die reccmds.conf eintragen:
#
# Run clipinc : /usr/local/bin/clipinc.sh -start
# Run clipinc + 2mp3 : /usr/local/bin/clipinc.sh -start -2mp3
# Stop clipinc? : /usr/local/bin/clipinc.sh -kill
# CONFIG START
AUDIO_CODEC="" # force audio codec ('copy' to copy stream) -> default ('mp3')
AUDIO_BITRATE="" # set audio bitrate (in kbit/s) -> default ('192')
AUDIO_SAMPLING="" # set audio sampling rate (in Hz) -> default ('44100')
CLIPINC_LOGFILE="/var/log/vdr/clipinc.log"
# CONFIG END
PATH=/usr/local/bin:$PATH
case "$1" in
-start)
at now <<EOF
PID=`pidof -x clipinc.pl`
if [ -n "$PID" ] ; then
svdrpsend.pl MESG "Sorry, but clipinc.pl is running with pid ($PID)..."
else
if [ -e "$2/recinfo.conf" ] ; then
clipinc.pl "$2"
elif [ -e "$3/recinfo.conf" ] ; then
if [ $(ldd $(which ffmpeg) | grep -c libmp3lame.so) -lt 1 ] ; then
echo "Unsupported codec, 'configure' ffmpeg with ('--enable-mp3lame')..."
else
clipinc.pl "$3"
find "$CLIPINCDIR" -name "001.vdr" | sed '/\.rec\/001\.vdr/!d' | while read i ; do
cd "\$(echo \$i | sed -e 's/.\{8\}$//g')"
LABEL=\$(dirname "\$(pwd)")
find "\$CLIPINC2DIR" -type f -empty -exec rm -f '{}' ';'
if [ ! -e "\$CLIPINC2DIR/\${LABEL##*/}.mp3" -a -f 001.vdr ] ; then
ffmpeg \
-i 001.vdr -acodec ${AUDIO_CODEC:-mp3} -ab ${AUDIO_BITRATE:-192} -ar ${AUDIO_SAMPLING:-44100} "$CLIPINC2DIR/\${LABEL##*/}.mp3" &
wait
fi
done
fi
else
svdrpsend.pl MESG "recinfo.conf not found..."
fi
fi \
> $CLIPINC_LOGFILE 2>&1
EOF
;;
-kill)
PID=`pidof -x clipinc.pl`
eval ${PID:+kill -9 $PID}
;;
esac