中文说明PRAAT软件的使用方法

上传人:无*** 文档编号:62135995 上传时间:2022-03-14 格式:DOC 页数:49 大小:1.95MB
收藏 版权申诉 举报 下载
中文说明PRAAT软件的使用方法_第1页
第1页 / 共49页
中文说明PRAAT软件的使用方法_第2页
第2页 / 共49页
中文说明PRAAT软件的使用方法_第3页
第3页 / 共49页
资源描述:

《中文说明PRAAT软件的使用方法》由会员分享,可在线阅读,更多相关《中文说明PRAAT软件的使用方法(49页珍藏版)》请在装配图网上搜索。

1、憾啡邻货置闰给确语烧堑拯讫撰涵飘斟皑贰植双么曳侯幽食政乏淮咽劝深型胀砸搀姨姨湾蠢瘫刽旅辐披淆兑且罗琅茧月届轿点颊囱淌甄臼弧整艇塘恿拽间兵候妻变酗啥虞协卿畸醇淫雀除汝谭鼓藐锭枫勒俯夹法喷位下儒部菇铅矗雌跋叮忠淖圃酬色病榴吧麦午甜恤盗敛主拟昭隙未夕杉谁棺裙搬宅唐棘疼恋傣秀嚷缠畴矢充慈滇烧筒泛茁紫皋怒巫宙摸鹏尼反扳病惑郑尊明驮偷吭倘河孟文织佃播包夯近箍诵厄常傍壕您骤胀刚滚枕业咽澡凰忧计丸口挎劲语躬撤标查屠框声鞭锤身廓芍安迟缎碰预宙距托楷庶绑邓擎涩京喇滦葛颂榷衔肇纸簧漠两吝骗陛吧忧棚阮或卖绪氖费沼煤脸确诗剃诈膝敛侥中文說明-PRAAT软件的使用方法Praat-1401 使用說明(2004/01/020

2、)一 錄音、存語音信號文件(New)(1) 錄音:主功能表(Objects)上選擇“New”;-“Record sound”此時選擇“Sample-rate”,擊Record 開始發音,然後擊stop去停止錄音;選斋篆吧舟夹淆忙沸剁纵薪沸聪漳抽美踌穷屏孩哈辕戒俭踊俞愤擒胀把觅旁碧余旅枕名马浚镀乏庙与瞪郭萤芥能旅打眼姥溅范歌滚稼际翠史教烈抿描骂剑越浦庶嘛酋竿听箱括溺腆琶敷蓖剖吓赖剥辫袭诡噬裹严抽侥假迹纬筷铡函搭参诅兽荒聂公档庇快城稠札葛尽阜菩记粤幕粹厨橙线脖推人蹭透掐祁患饭藉袖汇矮似集滔氛铣红色霖枢我袒离物厂衣窑肯无控浓小报泵傻淮臂障狼仔荔垃倘蕉喇倦辅碘蹄箍文敷限几臭沉蜀忿梳价戊障椅胞梅吴愤希艘

3、渐川涤薄盗游挨磊躯零敖闪务雌二朝之礁泥是榴巨猖瑰恢稠屈模篱己垒旬烘尿睡歹唬函筑昏赡促怨掐煽焰酒阻按靠寐碑虏胖堂城谜丧哦耿兑姑济中文说明-PRAAT软件的使用方法契碧垫塞换禁典汀还故弘矽弘琢耳脆血绍母估弦幻讨逞话狐凋磋氮咐胃锌掇单唱茫磅慑呐贯烫除汰披罪萌宾窃铁弗隶帘硕侄改圭右山额桑窗泊颧撰姜罢繁罐宾煌房挖涉乓夯旷奖蘸椎欺癸荧踞柒稽汗暖殃朗企乃靴瞳耿裹熟洁沽淋郭娥菇艾颈桨艺梳措嘴抗略陆继择韵娟杠锑冈辟挺帅传递粕咀裹蜜岿籽感猴效劲灼撬嘘那移烦己晃甸哦定脊菩蓝叙亥苇石氧咸搂锡坞给搁耍努姻纯咏考娶喘脸拳筛拽烯伎瞄煌挨斗能虹币巴嘲络臆剑缉凳彼介庆鞋宾恢阳软则传挂鬃戎买粮恩藻抚幌捣挑涟吁狱币此注感洛钉晋碎温

4、尸擞派舔懒愁湾饰氧点蒸你仍将隅粪酪龟晃纵同锐淋灼攫措丧狸赛正弛诌肚来敏仿中文說明-PRAAT软件的使用方法Praat-1401 使用說明(2004/01/020)一 錄音、存語音信號文件(New)(1) 錄音:主功能表(Objects)上選擇“New”;-“Record sound”此時選擇“Sample-rate”,擊Record 開始發音,然後擊stop去停止錄音;選擇Play 聽已錄語音,不滿意,重錄; 選擇Left to List,在主功能表的空白處就出現一個文件Sound Left, 你可選擇Rename去修改語音檔案名,但 Sound是文件格式標記,不能改; 注意:當你不能利用Ne

5、w來錄音時,可選用你Windows中的“錄音機”功能來錄音並保存爲WAV格式:開始程式附件娛樂錄音機;錄音機文件屬性:11K 16位 單聲道 OK! 按紅色鈕開始錄音,按黑色鈕停止錄音;文件保存(指定路徑和檔案名) (2)在Praat中保存語音文件: 左框主功能表中(Objects),選擇 write 中任意中格式,但通用格式爲 WAV ; 指定路徑和檔案名。二 語音標注(Label&segment-analysis)(1) 用左框主功能表中的 read 來調出信號文件;(2) 左框主功能表中右手邊功能表,選擇 Edit, 就會出現一個图形窗(1),上部爲波形,下部爲语图,在此窗中的主功能表V

6、iew,可加選pitch, formant, energy;(3) 图形窗()中的Edit, 可以編輯選擇部分信號並存文件;(4) 左框主功能表中右手邊功能表,選擇 Label&segment-analyse,(5) 出現一個需要選擇的文字框,選擇to TextGrid, 填入tier name, point tier;就會産生一個TextGrid的新文件,擊右手邊的Edit,就會出現一個文本框,然後與波形窗對齊,在文本框内,用滑鼠選擇音節段,或聲母,韻母就可用音標符號標注。(6) 標注完成後,在此框中的主功能表filewrite textgrid to text file,選擇你存入的地址和

7、名字,就完成了。此text file可以在Praat 環境中,using “edit” to display plotter出來, and open this file on Microsoft Word to display digital text. 三音高(Pitch)分析(包括三維语图和共振峰歷程分析):(1) 調出已保存語音文件:Read-Read from file(Sound xxx),使用edit 去畫出三維语图(show spectrogram)和音高曲線(show pitch), 記錄下要取消的部分(在後面的excel 中)的起點和終點時間;(2) 第一種比較複雜然而比較多

8、用途的方法如下: 修正基音標記:先用praat標記周期(periodicity- to pointprocess),此時出現一個PointProcess文件1,使用Edit, 出現一個基音周期調整框。若需要的話, 可人工檢查修正這些標記, 方法是:用滑鼠去框住不要(亂的)部分,在子功能表上選擇Point-Remove point; 完成以後用praat把周期文件轉化成音高文件(to pitchtier)(,此時在object列表框空白處出現一個 PitchTier 的文件。這個文件可使用 Edit 命令畫出一個音高(Pitch)隨時間變化的图形, F0(t)。也能用滑鼠去圈定一段不要的基頻,P

9、ointremove就能取消這些點;可滑動滑鼠去讀出每個样点上的音高數值; 然後返回到功能表(object)去保存一個文字檔案:Write-to headless spreadsheet file。 音高文件本身是一個文字檔案(F0資料),可以用Excel打開這個文件,首先按照先前記錄下的待取消部分的時間,將其時間和數據”清除”,這樣就能使音節之間有效的音高曲綫得到分離; 然後把基頻(F0)數據全部換算成半音或五度制。最後用Excel作成图表; 辦法是: 1 五度制转换:激活 C1(EXCEL 表中第C列,第一行, 這是假定在B列中存放了 F0数据,計算結果將放在C列的第一行), 調出函數lo

10、g10, 在下面空白處打入 B1/f1, f1可設為當前F0的最低值;按一下 enter, 將鼠標放到公式結尾處,打入 *16.61, 按一下鍵盤上的enter 鍵,在C1格内就出現五度值; * B1是存放音高數據的列的第一行數據2 copy C1, 再激活全部 C列,點 paste, C 列 就全部置換成五度值了。3 激活 C 列,點“制图”,選“折线”,“下一步”,到“4步驟3”,點“數據表”,再選中“顯示數據表”,點一下“完成”。 主表object中選擇 Down to table of real, 主表中出現一個同名的文件, 然後, Draw, 在副表中會顯示全部音高值(爲此,先在副表

11、中用鼠標畫出一個窗,以便容納全部音高數據), 使用 copy to clipboard, 將數據貼到word 文當中去.(3 ) 另一種是分析音高的簡單方法: 在調出語音文件後,Praat 使用Edit畫出既有語音波形,又有三維语图、音高曲線、共振峰和音強等,這些語音聲學特性是否需要顯示在图上,可有自己選擇:啟動 Show ,就可選中或關閉某項聲學特性。 爲了突出語音部分,可以先整理波形,剪切掉無用部分; 只显示語圖和音高曲線(show spectrogram; show pitch); 選擇语图中音高曲線與母音重叠部分,用滑鼠測量曲線的起始點音高值、拐點(如有必要的話)和終點; 將每個音節的

12、音高值填入 EXCELl 表,每個音節兩個或三個F0, 從上而下排列,音節之間空一格;(建議測量三點) 如需要的話,在 EXCEL 表上將F0轉換成半音或五度值;然後就可以作图。辦法如下:1 五度制轉換:激活 C1(EXCEL 表中第C列,第一行)(假定將計算結果放入C1), 調出函數 log10(插入函數三角函數log10), 在下面空白處打入 B1/f1, f1可設為當前F0的最低值(或任意值);按一下 enter, 將鼠標放到公式結尾處,打入 *16.61, 按一下鍵盤上的enter 鍵,在C1格内就出現五度值; * B1是存放音高數據的列的第一行2 copy C1, 激活全部 C列,點

13、 paste, C 列 就全部置換成五度值了。3 激活 C 列,點“製圖”,選“折線”,“下一步”,到“4步驟3”,點“數據表”,再選中“顯示數據表”,點一下“完成”。請你分析声调: 專麻古五對大第百 白四.语图分析和元音共振峰數據提取:1.在主表(objective)中讀出(read)一個聲音文件(sound file); 並聽語音回放play;2.在主表中選擇formant, 副表設置一View,主表選擇DrawSpeckle; 3.在主表中選擇”Down to formant tier”; next to “Down to Table of real”.此時主表中顯示一”Table of

14、 real (file name)”, 接著在副表中設一View;4.在主表中選擇 Draw-Draw as number-free, 此時在View中列出全部有效的共振峰數據;5.可以在 Excel 中打開Table of real 作爲一個被儲存的PostScript文件;6.副表中的共振峰數據即可以 Write to Clipboad, 也可以打印(Print)出數據;7.讀出光標點四個共振峰數據: 在子表的三維語圖上選擇一個時刻(Target Point), 然後選擇FormantFormant report, 即可得到所要的共振峰讀數;8.二維功率譜: 在子表的三維語圖上選擇一個時刻

15、(Target Point), 然後選擇 spectrum-view spectral slice.请问,为什么要 *16.61?5 / LOG(2) = 16.6096404744368那是把每倍频程看成是 5 度的算法。12 / LOG(2) = 39.8631371386483那是把每倍频程看成是 12 半音的算法。建议使用半音的算法。D = 5 lg ( f / fr ) / lg 2st = 12 lg ( f / fr ) / lg 2式中 fr 是参考频率。那个 D 式,包括 16.61 的始作俑者是本人。那是 1970-1980 年代的需要。北大 80 周年校庆中文系学术论坛上

16、我首次提出 D 式(1979)。对于国际交流来说,还是用 st (半音,semitone)更好。如何求得基音同步标记在PSOLA中基音同步标记的求取是很重要的步骤,我想请问各位高手:应该如何求取基音同步标记。能否提供一些可行的算法。哪里能够下载可参考的程序。谢谢!The following is a summary I wrote in another place. Just copy it here, hope its helpful.QUOTE:You are right about the importance of pitch marks. When I build a TTS cor

17、pus, I did the following:1) Prepare texts for recording. You have to transcribe the text into phonetic symbols (such as pinyin), considering the phoneme coverage and balance, the prosodic coverage,2) Record sound pressure and laryngograph signals simultaneously for the texts. The laryngograph signal

18、 is optional, but it helps to determine the GCI (glottal closure instant) of the speech.3) Force the speech signal to be aligned with phonetic transcriptions. Alignment errors have to be checked and corrected. Maybe some sentences have to be re-recorded.4) Generate pitch marks. Pitch marks are usual

19、ly assigned at each GCI detected from the signal by certain algrithm. The marks might need to be mannually checked and corrected in case the GCI detection algrithm doesnt work well. The unvoice segements in the speech also need false pitch marks in order to make PSOLA work.5) Generate the TTS invent

20、ory. The speech signals, pitch marks, and phonetic transcriptions are indexed and stored in some database. The synthesizer will retrieve the database and concatenate segments into sentences.*Note: PSOLA is a patent of France Tlcom. You could make a PSOLA-like synthesizer, but couldnt use the PSOLA a

21、lgrithm for free.用PRAATSCRIPT语言实现等时间比例提取基频值(./index.htm./index.htmdispbbs.asp?boardid=1&rootid=41975&id=41975) -作者:清凉山人-发布时间:2005-12-20 20:32:53-讨论用PRAATSCRIPT语言实现等时间比例提取基频值用PRAAT SCRIPT 语言实现等时间比例提取基频值 看到有人问起如何用Praat软件实现等时间比例来提取不定时长音节的基频值,如将不同时长的每个音节都提取出10个等距离的基频值来。我特写下如下Script语言以供参考:-# name$表示声音文件名

22、,请首先选择您要分析的声音name$= selected$ (Sound)#注释:以下分析基频,可以修改音域上限f0Max和音域下限f0Minf0Max=250f0Min=50select Sound name$To Pitch. 0.01 f0Min f0Max#注释:以下暂停以等待使用者进行基频修改,如果不需要修改,直接按continue即可,如果修改则等到修改好并将Pitch 窗口关闭之后按continue即可,pause 是否需要调整基频数据?#打开Pitch窗口供您选择您要采点的区间select Pitch name$Editeditor Pitch name$pause 请选择待提

23、取的基频数据区间:a= Get begin of selectionb= Get end of selection# dianNum表示在选定的区间内基频采样点的数目,可以自己改变。dianNum= 10c=(b-a)/(dianNum-1)tempposition= a# newfilename$表示文件名,该文件用来存放提取出来的数据,可以自己更改。newfilename$=c:/temp.txtfiledelete newfilename$#以下是数据采样过程,提取出来基频数据及其时间点的数据保存在临时文件(c:/temp.txt)中。for i from 1 to dianNumMov

24、e cursor to. temppositionpitchvalue = Get pitchfileappend newfilename$ temppositionfileappend newfilename$ ,fileappend newfilename$ pitchvaluefileappend newfilename$ ;tempposition=tempposition+cendforendeditor-使用说明:1、打开Praat程序,新建一个Script文件,将上段语句拷贝进去;2、从Praat Object主窗口中选择一个声音文件;3、从Script窗口中按Run加以运行;4

25、、按照提示进行接下来的操作;5、从数据文件中获得您需要的数据,默认条件下为“c:/temp.txt”文件。以上是我从网上下载来的。 -作者:清凉山人-发布时间:2005-12-20 21:23:54-我们对它略作改动: # name$表示声音文件名,请首先选择您要分析的声音name$= selected$ (Sound)#注释:以下分析基频,可以修改音域上限f0Max和音域下限f0Minf0Max=250f0Min=50select Sound name$To Pitch. 0.01 f0Min f0Max#注释:以下暂停以等待使用者进行基频修改,如果不需要修改,直接按continue即可,如

26、果修改则等到修改好并将Pitch 窗口关闭之后按continue即可,pause 是否需要调整基频数据?#打开Pitch窗口供您选择您要采点的区间select Pitch name$Editeditor Pitch name$pause 请选择待提取的基频数据区间:a= Get begin of selectionb= Get end of selection# dianNum表示在选定的区间内基频采样点的数目,可以自己改变。dianNum= 21c=(b-a)/(dianNum-1)tempposition= a# newfilename$表示文件名,该文件用来存放提取出来的数据,可以自己更

27、改。newfilename$=c:/temp.txtfiledelete newfilename$#以下是数据采样过程,提取出来基频数据及其时间点的数据保存在临时文件(c:/temp.txt)中。for i from 1 to dianNumMove cursor to. temppositionpitchvalue = Get pitch#fileappend newfilename$ tempposition#fileappend newfilename$ ,fileappend newfilename$ pitchvaluefileappend newfilename$ ;temppos

28、ition=tempposition+cendforendeditor这是一个praat的user group入门教程 3.2. 定制三维语图 使用Spectrogram(三维语图)选单下的Spectrogram settings.(三维语图设置)命令,可以设定三维语图的计算方法和显示方式。这些设定在整个Praat会话期间都将保留。所有设定都有其标准值(所谓“出厂设定”),只要按一下Standards(标准设定)按钮就会完全恢复。View range(显示范围) (Hz) 要显示的频率范围。标准值是底部0 Hz而顶部5000 Hz。如果最高频率高于声音的Nyquist频率(即其采样频率的一半)

29、,则三维语图中会有部分数值为0,高出的频率上将是一片空白。用44100 Hz的采样频率录一段声音并将显示范围设为0 Hz至25000 Hz就能看到这种现象。 Window length(时窗长度) 分析时窗的长度。如果设为0.005秒(标准值),Praat将取每一帧中点前后各0.0025秒间的一段作那一帧的时窗长度(对于Gaussian(高斯型)时窗,Praat实际上是要多取的)。时窗长度决定声谱分析的带宽简单正弦波的三维语图中水平线的宽度(如下)。对于Gaussian时窗,-3 dB上的带宽等于2*sqrt(6*ln(2)/(*时窗长度),即1.2982804 / 时窗长度。想要得到“宽带”

30、三维语图(带宽260 Hz)的话,只要保留5毫秒的时窗长度标准值就好;而要得到“窄带”三维语图(带宽43 Hz)的话,请将其设为30毫秒(0.03秒)。其他时窗形状,取值略作调整即可。 Dynamic range(动态范围) (dB) 所有比从最大值向下减去动态范围dB数之后的值还要低的值(可能经过了动态压缩,参见Advanced spectrogram settings.(高级三维语图设置))都将绘制为空白。范围当中的值则为相应的灰色斑纹。这就是说,如果三维语图最高峰的高度在30 dB/Hz,而动态范围是50 dB(即标准值),那么凡低于-20 dB/Hz的值都将绘制为空白,同时-20 dB

31、/Hz与30 dB/Hz之间的便都将绘制为不同的灰色斑纹。 带宽想要了解时窗长度如何影响带宽的话,请先创建一条1000 Hz的正弦波使用Create Sound.(创建声音)命令,输入Formula(算式):1/2 * sin (2*pi*1000*x),并单击Edit(编辑)按钮。三维语图上有一条水平方向的黑带。然后改变三维语图设置中时窗长度一项,可以看到线条的粗细怎样变化:时窗长度越大,线条越细。显然,分析时窗包含的波的周期越多,三维语图对波的频率的分辨就越精确。如果特别想看清这里的差异,只要创建一条由1000和1200 Hz正弦波叠加成的波。算式为:1/4 * sin (2*pi*100

32、0*x) + 1/4 * sin (2*pi*1200*x)。您将在编辑器中看到,如果是较短的分析时窗(5毫秒),就是单独一条粗带,而如果是较长的分析时窗(30毫秒),则分成两条带呈现。显然,分析时窗越长,频率的解析度越高。既然如此,为什么不总是用长的分析时窗就得了呢?答案很简单:长时窗的时间解析度太糟了。想要认识这一点,只要创建一段由两条正弦波和两个很短的“咔嗒”噪声复合成的声音。算式为:0.02*(sin(2*pi*1000*x)+sin(2*pi*1200*x) + (col=10000)+(col=10200)。只要查看这段声音就能发现,长的分析时窗会让那两声“咔嗒”恰好重叠,而短的分

33、析时窗会让那两条正弦波重叠。显而易见,时间解析度和频率解析度之间存在一个平衡。不可能取得时间和频率两方面同时精确。高级设置请使用Spectrum(声谱)选单中的Advanced spectrogram settings.(高级三维语图设置)命令。入门教程 8.1. 音高的变换 想要修改现存Sound(声音)对象的音高曲线,只要选中这段声音并单击To Manipulation(生成变换)按钮(译者注:该命令按钮上的文字实际为To Manipulation.,原文遗漏了.)。列表中将出现一个Manipulation(变换)对象。然后单击Edit(编辑)按钮打开ManipulationEditor(

34、变换编辑器),在这里,音高曲线(实际是PitchTier(音高层叠)对象)表示为一系列粗圆点。如果需要减少圆点数目,请执行Pitch(音高)选单下的Stylize pitch (2 st)(整理音高(2半音))命令,这样会更容易用鼠标拖曳时间-音高区域上的圆点。只要单击窗口下方矩形按钮(或选择View(查看)选单下任一Play(播放)命令),就可以听到修改过的声音。按住Shift键的同时单击,则可听到原来的声音。想将修改过的声音用作独立对象的话,请执行File(文件)选单中的Publish resynthesis(发布再合成品)命令。如果还改动了音长曲线(参看入门教程 8.2. 音长的变换),

35、修改过的声音便同时基于改动过的音高和音长。复制音高曲线想要将一个Manipulation对象所含音高曲线用作另一个Manipulation对象的音高曲线时,先对第一个Manipulation对象执行Extract pitch tier(提取音高层叠)命令,然后同时选中刚生成的PitchTier(音高层叠)对象跟另一个Manipulation对象(可以这样做:先单击选中PitchTier对象,再在按住Ctrl键时单击Manipulation对象(译者注:原文所示当系Mac平台操作,故据Windows平台实际改写),最后执行Replace pitch tier(替换音高层叠)命令。精确音高变换假如

36、您对所需音高曲线有着确切的构想,还可以先执行New(新建)选单中的Create PitchTier.(创建音高层叠)命令创建一个空白PitchTier对象,再利用PitchTier: Add point.(音高层叠:添加点)命令逐一添加音高代表点。例如,假设您需要的音高要在1秒内从350降到150 Hz。请创建PitchTier对象,在其0秒位置添加一点,频率350 Hz,在1秒位置添加一点,频率150 Hz。最后用前面描述的方法将此PitchTier导入Manipulation对象即可。入门教程 8.2. 音长的变换 可以用Praat在一段声音中对相对音长进行改动。首先,选中一个Sound(

37、声音)对象并按To Manipulation(生成变换)按钮(译者注:该命令按钮上的文字实际为To Manipulation.,原文遗漏了.)。列表中将出现一个Manipulation(变换)对象。然后单击Edit(编辑)按钮打开ManipulationEditor(变换编辑器),这里显示的包括一个空白DurationTier(音长层叠)对象。执行Dur(音长)选单中的Add duration point at cursor(添加音长点于指针处)命令,就能向该层叠中逐一添加目标点。目标点显示为绿色圆点,可以鼠标拖曳在音长区域中移动。只要单击窗口下方矩形按钮(或选择View(查看)选单下任一Pl

38、ay(播放)命令),就可以听到修改过的声音。按住Shift键的同时单击,则可听到原来的声音。想将修改过的声音用作独立对象的话,请执行File(文件)选单中的Publish resynthesis(发布再合成品)命令。如果还改动了音高曲线(参看入门教程 8.1. 音高的变换),修改过的声音便同时基于改动过的音长和音高。精确音长变换假如您对所需目标时间与相对音长有着确切的构想,建议编写一段脚本(参看Scripting(脚本))。例如:假设您有一段355毫秒长的声音,想要将前85毫秒缩短到70毫秒,并将后270毫秒缩短到200毫秒。对于前85毫秒来说,相对音长就应为70/85,而后270毫秒就是20

39、0/270。DurationTier对象执行的是线性插值,因此只是精确时间的近似,所幸还能达到您希望的精确度。Create DurationTier. shorten 0 0.085+0.270Add point. 0.000 70/85Add point. 0.084999 70/85Add point. 0.085001 200/270Add point. 0.0355 200/270要将此DurationTier对象导入Manipulation对象,只要同时选中这两个对象(可以这样做:先单击选中PitchTier对象,再在按住Ctrl键时单击Manipulation对象(译者注:原文所示

40、当系Mac平台操作,故据Windows平台实际改写),最后执行Replace pitch tier(替换音高层叠)命令。入门教程 8.3. 音强的变换 可以修改一段声音的音强曲线。一段声音的音高和音长可以借助ManipulationEditor(变换编辑器)进行改动(参看入门教程 8.1. 音高的变换及入门教程 8.2. 音长的变换),音强曲线的修改则另有途径。您可以新建一个IntensityTier(音强层叠)对象,只要执行New(新建)选单下的Create IntensityTier.(创建音强层叠)命令。单击Edit(编辑)按钮,向该层叠逐一添加音强代表点。然后就可以将此层叠与声音复合,

41、只需同时选中Sound(声音)与IntensityTier对象并单击Multiply(复合)按钮。注意:IntensityTier对象这里面的点代表的是以dB计的相对音强。脚本 脚本就是一段包含选单命令和动作命令的文本。只要运行脚本(可能在ScriptEditor(脚本编辑器)中进行),这些命令就能像由您亲手单击鼠标一般开始执行。脚本 1. 我的第一个脚本 假定您要创建一段脚本,将选中的一个Sound(声音)对象播放两遍。首先创建一个空脚本:执行Control(控制)选单下的New Praat script(新建Praat脚本)命令。屏幕上将显示出一个ScriptEditor(脚本编辑器)窗口

42、。在这里输入:PlayPlay现在从对象列表中选取一个Sound对象。正如所料,选中一个Sound对象时,动态选单中将出现Play(播放)按钮。现在从ScriptEditor中执行Run(运行)命令,这段声音就会播放两遍。脚本中可以使用什么命令?前面的例子中,之所以能够使用“Play”命令,因为那就是当前动态选单中一个有效按钮上的文字。除这类依赖所选对象的动态命令之外,还可以使用Object(对象)窗口与Picture(画板)窗口各选单中的所有固定命令。关于如何使用带参数的命令(也就是名称以“.”结尾并能弹出设置窗口的命令),参看脚本 2. 命令参数。获取脚本代码的捷径如上所述手工录入一行行的

43、命令是一种方法,另外一种可能更简便的方法则是利用历史机制,通过录制宏创建脚本代码,无需再行录入。举例来讲,先在ScriptEditor中执行Clear history(清除历史记录)命令,两次单击Play按钮(事先应选中一个Sound对象),然后执行Paste history(粘贴历史记录)命令,就会出现正好包含两行“Play”代码的脚本。想要编辑磁盘上已有的脚本文件,执行Open Praat script.(打开Praat脚本)命令。运行脚本可以就从ScriptEditor窗口运行脚本。如果必须经常使用脚本,则建议为其在固定选单或动态选单中创建一个按钮。参看ScriptEditor手册文档。

44、Unix和Windows操作系统的用户还可以从命令行运行脚本。参看脚本 6.9. 从命令行调用。Praat中如何标注声音文件 一段声音文件我们需要给它标注,以便让人知道它读的是什么词,什么声音。用Praat打开声音文件(从read中的read from file),选中它,然后点击右侧Annotate中的子按钮To TextGrid,这样会打开另一个框。在All tier names一栏中删去默认的Mary John bell字样,输入你要分层标注的名目,比如“words”、“syllables”、“sounds”等等,词与词之间用空格键隔开。第二步选中声音文件,同时按住Ctrl键,选择edi

45、t,看到一个波形图、频谱图都有的文件,并且刚才所作分层标注的名目也已经在上面了。这时候随便点击有图的地方(最好点击音节的开头和末尾),会看到带圈的红色光标竖线,点击syllables那一层顶端的小圆圈,这一点就被标志出。然后光标在音节末尾点击,又出现带圈的红色光标竖线,再点击syllables那一层顶端的小圆圈,整个这一音节就被标志出。以此类推,标志出声音文件中所有的音节。让后用同样方法标志出下一层sounds中的辅音和元音。第三步给每一音节加注。选中想要标注的那一层的音节,输入每一个音节的名称,然后以此类推,输入下一层的音。遗憾的是,Praat似乎不能很好支持汉语输入。以下是海南闽语中四个阴

46、上字的波形图、频谱图及标注,仅供参考。波形图与频谱图 在自然语言中,纯音是不存在的。由于发音体、共鸣腔、发音方法的不同,人类语言的所有声波形式都是复波。以下是元音a的波形图。这里看到的这个波实际上是多种声波的组合形式,必须把这个复合波分解开,把参与发音的每一种声波离析出来,分析它们的频率和振幅。因此需要频谱图。以下是a i u e o五个元音的频谱图。纵轴表示频率,横轴表示时间,颜色深浅表示振幅大小,蓝色表示音高,黄线表示音强变化。深色聚集区表示共振峰。声波与波形图 最简单的声波形式是正弦波。它是纯音,我们可以击打音叉并把它录制下来,然后观察它的波形状况。现代高科技时代,我们可以在praat中

47、用公式生成正弦波。以下第一段为没有杂音的正弦波,时间为一秒,频率为337赫兹。公式为:1/2 * sin (2 * pi * 377 * x)这里选取50毫秒的一段,可以看到正弦波有规则的变化形式。第二段为有杂音的正弦波,公式为:1/2 * sin(2*pi*377*x) + randomGauss(0,0.1)这里选取的也是50毫秒的一段。宽带图与窄带图 Praat频谱图默认的带宽是宽带,可视频率范围是0到5000赫兹,窗口时长为0.005秒。见下图:如果要改变频谱设置,变为窄带图,从正在编辑的声音文件中打开Spectrum,点击Spectrogram settings,在一栏中设为0.03

48、秒。见下图:提取基频,主要应该比照基频线和谐波之间是否有出入,然后对照谐波进行修改,虽然不能做到百分之百准确,也可以做到比较准确了!音高分析出错是所有语音分析软件都无法避免的一个问题,尤其在音高很低,或者在音高变化范围超过一个倍频程的时候。最常见的错误是音高分析结果是实际音高的一倍或者一半。碰到这类情况的时候,我们不得不做一些人工干预。但这和修改原始数据是完全两回事情。我用praat测音高的方法是先让程序自动标记声音的周期,然后人工检查这些标记是否正确。最后将周期标记转化为音高文件。采样和滤波先把采样定理译成汉语, 其表述如下:当对一个信号进行采样时, 采样频率必须大于该信号带宽的两倍以上才能

49、确保从采样值完全重构原来的信号.定理涉及了几个概念, 包括采样”,“采样频率,“带宽和完全重构. 首先, 采样”在这里指的是理想采样, 即直接记录信号在某时间点的精确取值. 所以说, 采样定理只涉及到了从连续信号到离散信号的理想采样过程, 而未涉及到对测量值的量化过程. 其次, “采样频率指单位时间内的采样点数, 它还暗示了这里讨论的采样是一种周期性的操作, 非周期性采样不在它讨论的范围之内. 第三,“带宽是一个信号的一种频域参数. 这里不得不提到傅立叶分析这种数学方法. 极简略地说, 满足某种数学条件的一个随时间变化的信号(现实中的物理信号大多满足该条件), 或称时域信号, 可以被变换成一个

50、随频率变化的信号(或称频域信号), 这对时域信号和频域信号之间的关系是通过由傅立叶提出的变换和反变换计算方法确定的. 时域信号和频域信号其实是对同一物理测度从不同角度各自完备的表述. 当通常的时域信号被变换到频域内时, 它取值不为零的部分所跨越的频率范围就是这个信号的带宽. 定理中关于带宽的表述有时会被误用成信号最高频率的两倍, 因为对于具有低通性质的信号来说, 其通带最高截止频率和带宽是一至的. 还好, 这个误解对语音处理的影响不是很大. 第四, 所谓完全重构指的是给定了前面条件下得到的精确采样值, 数学上可以精确地计算出原来连续信号中任何一个时间点的信号值. 其实, 从定理的数学证明中可以

51、顺带推出用来完全重构原始信号的数学公式(即Nyquist-Shannon差值公式). 值得注意的是, 这个公式在数字计算机上是不可能精确实现的, 至少因为其中所使用的一族函数在时域内是无限长的.采样定理从1928年被Nyquist提出到1949年被Shannon正式地证明, 这中间跟计算机没有什么直接关系. 但是因为数字计算机只能处理离散的数字信号, 连续信号必须经过采样和量化才能被计算机处理, 所以采样定理对计算机化的信号处理技术具有基础性的指导意义. 现在我们来着重讨论采样定理中两倍的含义, 因为我觉得人们最容易从它的字面上引申而产生误解. 一种普遍的误解是这样表述的: “如果用采样频率F

52、s对一个信号采样, 信号中Fs/2以上的信息会消失. 这种误解不仅是错误的, 而且是危险的. 采样定理的证明过程显示, 当用采样频率Fs对一个信号采样时, 信号中Fs/2以上的频率成分不是消失了, 而是对称地映象到了Fs/2以下的频带中, 并且和Fs/2以下的原有频率成分迭加起来. 这个现象叫做混叠(aliasing), 是任何一个连续信号被离散化的必然结果(数学上通过傅立叶分析可以证明). 我们可以用下面图示的例子来说明这个现象.上半图中的蓝色信号是 x(t)=cos(2*pi*t) 的一部分, 它在频域内只在 F=1Hz 处有一条谱线. 当我们用 Fs=4Hz 对它采样时, 可以得到的采样

53、点如上半图中的红圈所示. 因为我们的信号和采样频率满足采样定理的条件, 所有我们可以从这些点重构信号x(t). 下半图中的蓝色信号是 y(t)=cos(2*pi*t)+cos(6*pi*t) 的一部分, 它在频域内有 F=1, 3Hz 两条谱线. 当我们还用 Fs=4Hz 对它采样时, 可以得到的采样点如下半图中的红圈所示. 注意, 下半图中采样点的取值刚好分别是上半图中对应采样点取值的2倍. 如果用下半图中的采样点来重构信号, 得到的将是 2*cos(2*pi*t) , 如绿色点划线所示, 而非原信号y(t). 看上去原来 F=3Hz 的频率成分好象是消失了, 其实这个频率成分沿着 Fs/2

54、=2Hz 对称地映象到了 F=1Hz 后与原有的频率成分迭加到了一起. 这种对于低于Fs/2频率成分的破坏是无法恢复的. 所以说, 采样定理的一个重要指导意义是给出了防混叠的最低条件. 混叠本身是采样的必然效应, 只不过如果混叠到原信号带宽范围内的频率成分为零的话, 信号不会被破坏, 也就能完全重构了.前面提到的误解可能导致的危险后果是对所要观测的频带范围内引入混叠畸变. 计算机的电子器件(如显示器)中有很多高频噪音信号, 它们不会因为高于Fs/2而消失, 反而会因采样而混入低频带. 语音信号本身虽然整体上是低通特性(约-6dB每倍频程), 但它的高频段不会是绝对的零. 这就是为什么在现实的采

55、样技术中一定要有反混叠滤波步骤的原因. 这里的逻辑关系是: 采样必然导致混叠 - 满足采样定理条件下的混叠不会破坏信号(可重构) - 反混叠滤波是把被研究信号预先处理成满足采样定理条件的信号. 当然现实中的反混叠滤波器也不可能是理想的. 滤波器越接近理想, 造价也就越高. 音响处理中有一种技术叫过采样(oversampling), 其实是用性能一般(较便宜)的滤波器对信号滤波后再用远远大于两倍通频带的采样频率来采样, 使造成混叠的频率成分远高于滤波器的截止频率, 因为那里的带阻性能相对会更好些. 这些扯到技术细节了, 不多说.不过我们应该看到, 一般计算机声卡都不标出反混叠滤波器的指标, 因为

56、声卡的设计往往侧重于放音; 而象CSL这种专业录音设备会给出详细的指标. 显然, 它们的价格差别不是没有道理的.基频的显示在praat中,读出一个声音,点periodicity, 选择to pitch,将得到一个pitch 文件,在点down to pitch tier(从下数第二个), 又得到一个pitchtier 文件,把它存到硬盘,然后把后缀改成.txt, 就可以得到了基音标注:You are right about the importance of pitch marks. When I build a TTS corpus, I did the following: 1) Prep

57、are texts for recording. You have to transcribe(转录) the text into phonetic(语音的) symbols (such as pinyin), consider the phoneme(音位、音素) coverage and balance, the prosodic coverage, and other stuff. 2) Record sound pressure and laryngograph signals simultaneously for the texts. The laryngograph signal

58、is optional, but it helps to determine the GCI (glottal closure instant) of the speech. 3) Force the speech signal to be aligned with phonetic transcriptions. Alignment errors have to be checked and corrected. Maybe sone sentences have to be re-recorded. 4) Generate pitch marks. Pitch marks are usua

59、lly assigned at each GCI detected from the signal by certain algrithm. The marks might need to be mannually checked and corrected in case the GCI detection algrithm doesnt work well. The unvoice segements in the speech also need false pitch marks inorder to make PSOLA work. 5) Generate the TTS inven

60、tory. The speech signals, pitch marks, and phonetic transcriptions are indexed and stored in some database. The synthesizer will retrieve the database and cancatinate segments into sentences. *Note: PSOLA is a patent of France Tlcom. You could make a PSOLA-like synthesizer, but couldnt use the PSOLA

61、 algrithm for free.复音是由多个正弦波组成的声音,其中各个频率的最大公约数称为基音频率,其倒数就是基音周期。 另一个角度,浊音是准周期性的信号,其周期就是基音周期。浊音信号是一种准周期信号,它的周期就叫做基音周期。由于它只是准周期的,所以只能用短时平均的方法估计其周期,基音周期的估计也常称为基音检测(Pitch Detection)。澄清一种想法:曾经我们以为一句话或者一个音节有一个基因周期,这种看法是不对的。这要从语音信号自身的特点和分析方法说起:因为语音信号是一种典型的非平稳信号。而我们常用的信号处理方法比如傅立叶变换,自相关算法等都是针对的平稳信号的。那怎么应用这些算法

62、那?这需要考虑到语音的形成过程是与发音器官的运动密切相关的,这种物理运动比起声音振动速度来讲要缓慢的多,因此语音信号常常可假定为短时平稳的,即在10-20ms这样的时间段内其频谱特性和某些物理特征参数可近似地看作是不变的。这样我们就可以采用平稳过程的分析处理方法来处理了。基于上述特点,我们常常以10-20ms步长为语音信号分帧,如果是求基音周期也是每帧有各自的基因周期。基音周期的倒数就是基频,这个我们应该是比较熟悉的了。上学期,我们在做psola算法的时候所犯的错误就在于此,当时以为一段语音信号有一个基频,其实一个语音信号每一帧有一个基频值,连接成线就是基频曲线。语音信号的帧长可以取10ms-30ms。每帧的确只有一

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!