#!/bin/sh
#
# Autor: Aleksandar Urosevic <urke@users.sourceforge.net>
# URL: http://blog.urosevic.net/?sectionid=11
# Verzija: 0.1 (22.03.2005)
#
# cupaj_titl je BASH skripta za automatizovano izvlacenje
# srpskih titlova iz DVD videa
#
# potrebno:
#    * gocr (jocr.sf.net)
#    * transcode
#
# UPOTREBA: 1) Podesite VOB promenljivu da pokazuje na .VOB-ove sa punom
#              putanjom do njih, zamenjujui promenljivi broj upitnikom.
#           2) Podesite promenljivu FILM da bude naziv krajnje .srt datoteke.
#           3) Podesite promenljivu STREAM tako da pokazuje na srpski titl.
#           4) Pokrenite skriptu cupaj_titl
#
VOB="film_01_?.vob" # naziv VOB datoteka iz kojih se izvlace titlovi
FILM="film"         # naziv krajnje .srt datoteke sa titlovima (bez ekstenzije)
STREAM="0x20"       # strim u kome se nalazi srpski titl (0x)20+ID strima

if [ ! -f $VOB ]; then
  echo "Nema definisane $VOB datoteke! Proverite pocetak skripte"
  exit
fi

if [ ! -x srpski ]; then
  echo "Nema skripte srpski za lektorisanje teksta!"
  exit
fi
# ako vec nema slika sa titlovima sa nazivom filma, ekstrahujem ih iz VOB-ova
if [ ! -f $FILM*pgm ]; then
  echo "izvlacim slike titla iz VOB-ova ..."
  cat $VOB | tcextract -x ps1 -t vob -a $STREAM | subtitle2pgm -o $FILM -C1 -P
fi

# prepoznavanje teksta GOCR-om
echo "OCR-ujem tekst sa slika ..."
pgm2txt -d $FILM

# pravim tekstualni .srt iz baze
echo "spajam OCR-ovane slike u SubRip titl ..."
srttool -s -i $FILM.srtx -o $FILM.srt

# lektorisem dobijeni .srt tekst
echo "posrbljavam SubRip titl $FILM.srt"
srpski <$FILM.srt>$FILM.tmp
mv $FILM.tmp $FILM.srt

# brisem nepotrebne (privremene) datoteke
rm $FILM*pgm*
rm $FILM.srtx

# obavestavam korisnika da je posao zavrsen
echo "Titlovi za $VOB su spakovani u $FILM.srt"
