#!/usr/bin/perl # author: Nils Jahn # usage: perl trans2praat.pl input-file > output-file sub initVariables { @store = () ; $time = 0 ; $anz = 1 ; $tiers = 0 ; $start = 1000 ; $end = 0 ; @t1 = () ; @t2 = () ; } sub writeFile { $item = $#t1 + 1 ; # print data into file $tstamps = $#store + 1 ; print "File type = \"ooTextFile\"\n" ; print "Object class = \"TextGrid\"\n\n" ; print "xmin = $start\n" ; print "xmax = $end\n" ; print "tiers? \n" ; print "size = $tiers\n" ; print "item[]:\n" ; for ($i=0; $i < $tiers; $i++) { $ctier = $i + 1 ; $size = $#t1 + 1 ; print "\titem\[$ctier\]:\n" ; print "\t\tclass = \"IntervalTier\"\n" ; print "\t\tname = \"tier $ctier\"\n" ; print "\t\txmin = $start\n" ; print "\t\txmax = $end\n" ; print "\t\tintervals: size = $size\n" ; if ($ctier == 1) { # for 1st tier $ctext = 1 ; $ctime = 0 ; foreach $data (@t1) { print "\t\tintervals\[$ctext]\n" ; print "\t\t\txmin = $store[$ctime]\n" ; print "\t\t\txmax = $store[$ctime+1]\n" ; print "\t\t\ttext = \"$data\" \n" ; $ctext++ ; $ctime = $ctime+2 ; } } if ($ctier == 2) { $ctext = 1 ; $ctime = 0 ; foreach $data (@t2) { # for 2nd tier print "\t\tintervals\[$ctext]\n" ; print "\t\t\txmin = $store[$ctime]\n" ; print "\t\t\txmax = $store[$ctime+1]\n" ; print "\t\t\ttext = \"$data\" \n" ; $ctext++ ; $ctime = $ctime+2 ; } } } } sub main { while(<>) { chomp ; if (/ $end) ; } if ((/