Clipinc.sh

Aus VDR Wiki
Wechseln zu: Navigation, Suche
#!/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
if [ -e "$2/recinfo.conf" ] ; then
    clipinc.pl "$2"
elif [ -e "$3/recinfo.conf" ] ; then
    clipinc.pl "$3"
    if [ $(ffmpeg -formats | egrep -c "Output audio/video file formats:.*[ ]mp3[ ]|Encoders:.*[ ]mp3[ ]") -ne 2 ] ; then"
	echo "Unsupported codec, 'configure' ffmpeg with ('--enable-mp3lame')..."
    else
	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" &
	    fi
	    wait
	done
    fi
else
    svdrpsend.pl MESG "recinfo.conf not found..."
fi \
> $CLIPINC_LOGFILE 2>&1
EOF
	;;
    -kill)
	PID=`pidof -x clipinc.pl`
	eval ${PID:+kill -9 $PID}
	;;
esac