lini
Änderung, um die Rechenzeit erheblich zu reduzieren, wenn mp2-Ton im VOB vorhanden ist:
Code
#tccextract nur starten, wenn keine mp2 Tonspur im VOB ist!
#das $genindex kann die VOB direkt verarbeiten und VDR spielt die dann auch mit Ton ab
#gerade bei vom VDR selbst generierten DVD ist das auf jeden Fall so
#also hier meine Änderung um Rechenzeit zu sparen:
TONFOMAT=`mplayer -identify ${TEMPDIR}/$TITEL.vob|grep ID_AUDIO_CODEC|cut -d "=" -f 2`
#und jetzt haste auch gleich das Tonformat, das im VOB ist , denn dvdpcm gibt es auch :-)
if [ $TONFORMAT != "mp3" ]; then #mplayer kennt nur mp3 (aber dafür beide Layer)
# dann demuxen umrechnen und wieder muxen
$SVDRPSEND MESG $MSG_10 >> $LOGFILE #OSD Info
mkfifo ${TMPDIR}/vid.fifo
mkfifo ${TMPDIR}/aud.fifo
nice -n ${PRIO} $TCEXTRACT -i ${TMPDIR}/vid.fifo -t vob -x mpeg2 -a 0xe0 > ${TMPDIR}/$TITEL.m2v &
nice -n ${PRIO} $TCEXTRACT -i ${TMPDIR}/aud.fifo -t vob -x ${TCEXTRACTOPTAUDIO} -a $TONSPUR > ${TMPDIR}/$TITEL.ac3 &
nice -n ${PRIO} cat ${TMPDIR}/$TITEL.vob | tee ${TMPDIR}/vid.fifo ${TMPDIR}/aud.fifo > /dev/null
status=$?
if [ $status -eq 1 ] ; then
logger "$0 : ERROR : Fehler bei der Umwandlung der DVD-Daten, mit ac3 und m2v"
$SVDRPSEND MESG $MSG_9 >> $LOGFILE #OSD Info
cp $LOGFILE ${TMPDIR}/$TITEL.log
exit
fi
ls -l ${TMPDIR}/ >> $LOGFILE
#MPlayer noch den Ton auslesen.
cd ${TEMPDIR}/
nice -n ${PRIO} $MPLAYER -vo null -vc dummy -hardframedrop -ao pcm ${TEMPDIR}/$TITEL.vob
#mplayer erzeugt eine "audiodump.wav", die schickst Du an den mp2enc
nice -n ${PRIO} cat audiodump.wav | $MP2ENC -r 48000 -o ${TEMPDIR}/$TITEL.mp2
# rm -f ${TEMPDIR}/$TITEL.wav ${TMPDIR}/$TITEL.vob ${TEMPDIR}/audiodump.wav
#Du bist im TEMPDIR s.o. cd $TEMPDIR, also die Pfade kannste weglassen
rm -f *wav *vob reicht
#Roh Daten als MPEG File konvertieren
$SVDRPSEND MESG $MSG_11 >> $LOGFILE #OSD Info
#multiplexen mit tcmplex, wegen 2 Tonspuren (ac3 & mp2)
nice -n ${PRIO} $TCMPLEX -m 2 -i ${TEMPDIR}/$TITEL.m2v -p ${TEMPDIR}/$TITEL.mp2 -s ${TEMPDIR}/$TITEL.ac3 -o ${VDRDIR}/$TITEL.vdr
status=$?
if [ $status -eq 1 ] ; then
logger "$0 : ERROR : mplex felgeschlagen"
$SVDRPSEND MESG $MSG_9 >> $LOGFILE #OSD Info
cp $LOGFILE ${TMPDIR}/$TITEL.log
exit
fi
ls -l ${TMPDIR} ${VDRDIR} >> $LOGFILE
$SVDRPSEND MESG $MSG_12 >> $LOGFILE #OSD Info
else #mp2 Ton ist vorhanden
mv ${TEMPDIR}/TITEL.vob ${VDRDIR}/$TITEL.vdr
fi
#VDR Daten splitten, wenn nötig
Alles anzeigen
MfG Angie
PS: die 999 Feilen waren eher als Witz gedacht, 10 sollten vollkommen reichen- das sind dann schon ~20GB, die sind auf keiner DVD
Anhang: die gepatchte Version, mit mehr Änderungen, als die obigen