Это мой первый вопрос, и я стараюсь быть ясным. Я просмотрел сайт, не найдя ни одного бывшего вопроса, который мог бы мне помочь.
Я пытаюсь заставить сценарий обнаружения начала в praat зацикливаться на всем каталоге. Я вложил сценарий обнаружения начала как внутренний цикл во внешний цикл, проходящий через каждый файл в определенной библиотеке. Тем не менее, я не могу заставить его работать. Я получаю только начало для первого файла в моем каталоге. Сценарий обнаружения начала хорошо работает сам по себе, а внешний цикл отлично работает с другими командами, такими как, например, «получить интенсивность». Может ли кто-нибудь увидеть, что я делаю неправильно?
Вот что я сделал:
form Get Intensity
sentence Directory .\
comment If you want to analyze all the files, leave this blank
word Base_file_name
comment The name of result file
text textfile intensity_VOT_list.txt
endform
#Print one set of headers
fileappend "'textfile$'" File name'tab$'
fileappend "'textfile$'" 'newline$'
Create Strings as file list... wavlist 'directory$'/'base_file_name$'*.wav
n = Get number of strings
for i from 1 to n
select Strings wavlist
filename$ = Get string... i
Read from file... 'directory$'/'filename$'
soundname$ = selected$ ("Sound")
To Intensity... 100 0
labelline$ = "'soundname$''tab$'"
fileappend "'textfile$'" 'labelline$'
select Intensity 'soundname$'
numberOfFrames = Get number of frames
fileappend "'textfile$'" 'numberOfFrames'
fileappend "'textfile$'" 'newline$'
for i from 1 to numberOfFrames
intensity = Get value in frame: i
if intensity > 40
time = Get time from frame: i
onsetresultline$ = "voice onset time for 'soundname$' is 'tab$''time''tab$'"
fileappend "'textfile$'" 'onsetresultline$'
fileappend "'textfile$'" 'newline$'
exit
endif
endfor
endfor
Буду рад любой помощи. Если вы прочитаете мой вопрос и почувствуете, что он плохо сформулирован, пожалуйста, дайте мне отзыв, чтобы я мог попытаться исправиться. Пожалуйста
exit
в конце второго циклаfor
. Ваш сценарий существует, как только он встречает кадр в любом звуке, в котором значение больше 40. Кроме того, вы дважды используете одну и ту же управляющую переменную (i
). Вам нужно будет использовать разные переменные. - person jja   schedule 05.08.2015