-
Notifications
You must be signed in to change notification settings - Fork 24
/
calculate_segment_durations.praat
32 lines (29 loc) · 1.24 KB
/
calculate_segment_durations.praat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# This script will calculate the durations of all labeled segments in a TextGrid object.
# The results will be save in a text file, each line containing the label text and the
# duration of the corresponding segment..
# A TextGrid object needs to be selected in the Object list.
#
# This script is distributed under the GNU General Public License.
# Copyright 12.3.2002 Mietta Lennes
# ask the user for the tier number
form Calculate durations of labeled segments
comment Which tier of the TextGrid object would you like to analyse?
integer Tier 1
comment Where do you want to save the results?
text textfile durations.txt
endform
# check how many intervals there are in the selected tier:
numberOfIntervals = Get number of intervals... tier
# loop through all the intervals
for interval from 1 to numberOfIntervals
label$ = Get label of interval... tier interval
# if the interval has some text as a label, then calculate the duration.
if label$ <> ""
start = Get starting point... tier interval
end = Get end point... tier interval
duration = end - start
# append the label and the duration to the end of the text file, separated with a tab:
resultline$ = "'label$' 'duration''newline$'"
fileappend "'textfile$'" 'resultline$'
endif
endfor