Hello every one,
I share with you my script for transcoding records from Tvheadend + searching commercial, then read it with XBMC.
For Debian user by exemple:
after have add Deb-Mutimedia repository apt source.list : see how
http://www.deb-multimedia.org
apt-get update && apt-get upgrade
apt-get install deb-multimedia-keyring
apt-get update
apt-get install libargtable2-dev libavformat-dev libavcodec-dev checkinstall
apt-get install --reinstall libavcodec53 libavcodec-dev
You found comskip pour Linux here
http://forum.xbmc.org/showthread.php?tid=150084
Note: remenber to use checkinstall make install for creat a .deb of comskip ;)
I hop it will help, norlmaly i'll keep it script update
Regards
---
Tuxa
#! /bin/bash
#Write by Tuxa <tuxa galaxie.eu.org>
# It script it publish on GNU GENERAL PUBLIC LICENSE
#http://www.gnu.org/licenses/gpl-3.0.en.html
SCRIPTNAME="tvh-transcoder.sh"
DATE=`date "+%m/%d/%y %l:%M:%S %p"`
DATELOG=`date +%Y%m%d%H%M%S`
WORKINGDIR="/media/MEDIA/Video/Trancode"
FINALDIR="/media/MEDIA/Video/Enregistrements"
LOGFILE="$WORKINGDIR/logs/$DATELOG-$SCRIPTNAME.log"
HANDBRAKECLIPATH=`which HandBrakeCLI`
COMSKIPPATH=`which comskip`
function convert_to_mkv() {
if [ -f "$1" ]
then
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Start trancoding $1" >> $LOGFILE
nice -n 19 $HANDBRAKECLIPATH -i "$1" -t 1 -c 1 -o "$2.mkv" -f mkv -e x264 --x264-tune film -b 1200 -2 -a 1 -E faac -B 160 -R 0 -6 dpl2 -D 1 -C 2 && \
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Finished without error" >> $LOGFILE
fi
}
function search_commercials_from_mkv() {
if [ -f "$1" ]
then
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Searching commercials on $1" >> $LOGFILE
nice -n 19 $COMSKIPPATH -q "$1" >> $LOGFILE && \
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Finished without error" >> $LOGFILE
fi
}
function search_commercials_from_ts() {
if [ -f "$1" ]
then
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Searching commercials on $1" >> $LOGFILE
nice -n 19 $COMSKIPPATH -t -q "$1" >> $LOGFILE && \
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Finished without error" >> $LOGFILE
fi
}
function clean_directory() {
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Cleaning files of $1" >> $LOGFILE
if [ -f "$2.mkv" ]
then
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Move $2.mkv to $FINALDIR" >> $LOGFILE
mv "$2.mkv" $FINALDIR
fi
if [ -f "$2.txt" ]
then
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Move $2.txt to $FINALDIR" >> $LOGFILE
mv "$2.txt" $FINALDIR
fi
if [ -f "$2.log" ]
then
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Move $2.log to $WORKINGDIR/logs/$DATELOG-$2.log" >> $LOGFILE
mv "$2.log" "$WORKINGDIR/logs/$DATELOG-$2.log"
fi
}
echo "--------------------------------------------------------------------------------------------------------" >> $LOGFILE
echo "$SCRIPTNAME started on $DATE" >> $LOGFILE
echo "--------------------------------------------------------------------------------------------------------" >> $LOGFILE
cd $WORKINGDIR
for FILE in $WORKINGDIR/*.*
do
if [[ $FILE == *.ts ]]; then
FILESHORT="`basename "$FILE" .ts`"
convert_to_mkv "$FILE" "$FILESHORT"
search_commercials_from_mkv "$FILESHORT.mkv"
clean_directory "$FILE" "$FILESHORT"
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Delete source file $FILE" >> $LOGFILE
#rm $FILE
#mv "$FILE" $WORKINGDIR/Trash/
echo "--------------------------------------------------------------------------------------------------------" >> $LOGFILE
fi
if [[ $FILE == *.mkv ]]; then
FILESHORT="`basename "$FILE" .mkv`"
search_commercials_from_mkv "$FILE"
clean_directory "$FILE" "$FILESHORT"
echo "--------------------------------------------------------------------------------------------------------" >> $LOGFILE
fi
if [[ $FILE == *.avi ]]; then
FILESHORT="`basename "$FILE" .avi`"
convert_to_mkv "$FILE" "$FILESHORT"
search_commercials_from_mkv "$FILESHORT.mkv"
clean_directory "$FILE" "$FILESHORT"
echo "$(date +"%m/%d/%y %l:%M:%S %p"): Delete source file $FILE" >> $LOGFILE
#rm $FILE
#mv $FILE $WORKINGDIR/Trash/
echo "--------------------------------------------------------------------------------------------------------" >> $LOGFILE
fi
done
DATE=`date "+%m/%d/%y %l:%M:%S %p"`
echo "$SCRIPTNAME finish at $DATE" >> $LOGFILE
echo "--------------------------------------------------------------------------------------------------------" >> $LOGFILE