#!/bin/bash
for dir in *
do
if [ -d "$dir" ]
then
cd "$dir"
# rm *.sub *.idx
# cd /media/FAT32/Videos
# continue
find ./ -name "*-sub-*" | while read file
do
ext="${file##*.}"
if [ "$ext" == "sub" ]
then
echo "Skipping $file"
elif [ "$ext" == "idx" ]
then
echo "Skipping $file"
else
TRACK=`echo $file | sed "s/.*\-sub\-//" | sed "s/\-.*//"`
# lsdvd ./ -t $TRACK -P 2> /dev/null | grep "Palette:" | sed "s/.*Palette: //" | sed "s/ /,/g" | sed "s/,$//"
# lsdvd ./ -t 1 -P 2> /dev/null
echo "converting disc: \"$dir\" subtitle: \"$file\" ... track: \"$TRACK\" "
SIZE=`ls -s "$file" | cut -f 1 -d ' '`
VTS=`lsdvd ./ -x 2> /dev/null | grep VTS | head -n ${TRACK} | tail -n 1 | cut -d ' ' -f 2 | cut -d ',' -f 1`
if [ "$SIZE" == "0" ]
then
echo "\"$file\" is 0 bytes long, skipping."
mv "$file" ../trash/
else
if [ -f "video_ts/vts_${VTS}_0.ifo" ]
then
cat "$file" | subtitle2vobsub -i "video_ts/vts_${VTS}_0.ifo" -o tmp
mv tmp.idx "$file.idx"
mv tmp.sub "$file.sub"
mv "$file" ../trash/
elif [ -d "VIDEO_TS/VTS_0${TRACK}_0.IFO" ]
then
cat "$file" | subtitle2vobsub -i "VIDEO_TS/VTS_${VTS}_0.IFO" -o tmp
mv tmp.idx "$file.idx"
mv tmp.sub "$file.sub"
mv "$file" ../trash/
else
echo "Error with finding \"$dir/VIDEO_TS/VTS_${VTS}_0.IFO\" for converting \"$file\"."
fi
fi
fi
done
cd /media/FAT32/Videos
fi
done