我正在尝试用20 Hz来改变一个文件的音高,但是当我在praat中这样做并得到平均音高时,我从来没有得到过20 Hz的音高,只是一些类似的东西。
例如,我有一个"108.07459844192924 Hz (选择的平均音高)“的.85s文件;如果我转到”操作“,获取音调层并将其移位20 Hz,结果是一个126.12524578822578 Hz (选择的平均音高)的文件。
我已经尝试在创建操纵对象时更改时间步长、最小和最大间距。这似乎不是问题所在
这是我的脚本(我已经手动测试过了,结果也是一样的):
注意:数组dur_files[]有10个不同长度的文件
for i from 0 to 10
for j from 0 to 10
selectObject: dur_files[i]
durat_mod = Get end time
manip = To Manipulation: 0.005, 10, 1000
selectObject: manip
pitch_tier = Extract pitch tier
selectObject: pitch_tier
Shift frequencies: 0, durat_mod, 3*(j-5), "Hertz"
plusObject: manip
Replace pitch tier
removeObject: pitch_tier
selectObject: manip
resynth = Get resynthesis (overlap-add)
removeObject: manip
selectObject: resynth
Rename: selected$ ("Sound") + "_pitch-" + string$(j-5))
lib_files[i,j] = selected()
lib_files_name$[i,j] = selected$()
endfor
endfor发布于 2020-05-07 17:01:03
好的,差不多一年后,我可以回答我自己的问题了:
的东西
https://stackoverflow.com/questions/55886164
复制相似问题