Professional Documents
Culture Documents
Praat 语音标注及数据提取
Praat 语音标注及数据提取
1. 文件的读取和保存
最常用的两种文件:原始音频文件.wav 和标注文件.textgrid
只有音频文件时,用 annotate 来创建该音频文件对应的 textgrid 文件
Annotate—to textgrid——设置参数:tier name____?(如设置第一层为词,第二层为声
韵母)、point tier_____?(哪一层为点标记层)
编辑完 textgrid 文件后一定要记得手动保存,在 wav 文件相同的文件夹下。
2. Textgrid 文件的标注要点
对 wav 文件进行标注,主要目的是切分音段,以便进行不同位点的声学数据提取
1) 操作按键
快捷键:tab—播放被选中的或窗口中的音频
Ctrl+1—在第一层 tier 上加 boundary
Ctrl+s—保存
按键: sel—放大选中的区域至全部窗口
2) 切分音节或音素 interval 时需结合频谱图、声波图、基频曲线的特征来进行切分。
↑左边是频谱值范围 右边表示基频值范围↑
对高频候选值的倾向程度,和自相关最大值有关。这是必要的,因为即使(或:特别是)在一个完全周期信号的情况下,F0
的所有底音都是与 F0 本身是同样强的候选值。要想更有力地支持选择高频候选值,就要提高这个值。
对音高变化不利的程度,和自相关最大值有关。要减少大频率跳变的次数,请增加此值。与本文中描述的相反,该值将根
据时间步进行校正:乘以 0.01 s / TimeStep,以获得本文中公式中使用的值。
提取音节始末基频:
#文件路径
directory1$ = "C:\Users\cyr\Desktop\1"
#文件 1.text 删除
filedelete 1.txt
#创建文件 1.text 并写入
fileappend 1.txt sound timePoint pitchPoint pitch 'newline$'
#调用程序
call getF0 'directory1$' 1
select Strings textgridList
Remove
#总共有多少个 textgrid 文件
nTextgrid = Get number of strings
#用 for loop 挨个读取 textgrid 文件
for iTextgrid to nTextgrid
#选择文件列表对象
select Strings textgridList
iTextGrid$ = Get string... iTextgrid
#读取路径下对应文件名的 textgrid 文件
Read from file... 'directory$'\'iTextGrid$'
#得到 P1 开始的时间点
Get starting points... 1 "is equal to" P1
p1Start = Get time from index... 1
Remove
#选中 textgrid 文件
select TextGrid 'myTextGrid$'
#得到 P1 结束的时间点
Get end points... 1 "is equal to" P1
p1End = Get time from index... 1
Remove
select TextGrid 'myTextGrid$'
Remove