【问题标题】:is it possible to add tiers automatically in praat是否可以在 praat 中自动添加层级
【发布时间】:2018-11-26 04:27:43
【问题描述】:

有没有办法从终端自动向 Praat 脚本添加层?我想遍历数千个文件并添加具有特定名称的第二层,并且不希望手动这样做。

【问题讨论】:

    标签: praat


    【解决方案1】:

    我需要复习一下如何在 Praat 中 glob 文件,一些代码来自这里: http://praatscriptingtutorial.com/loopingThroughFiles

    所以更新 wd$ 到你想要在其中循环的目录。它拾取所有 *.TextGrid 文件,循环遍历它们,添加一个额外的层(在本例中为底部并命名为“blah”),然后保存并从对象窗口中删除 TextGrid。我建议您在运行此之前备份您的工作目录,以防您不喜欢确切的行为,或者将其保存为一些新修改的 fileName$。

    clearinfo
    wd$ = "C:/Users/Nick/Desktop/praat/*.TextGrid"
    
    downloadsList = Create Strings as file list: "downloadsList", wd$
    
    selectObject: downloadsList
    
    numFiles = Get number of strings
    for fileNum from 1 to numFiles
        fileName$ = Get string: fileNum
        Read from file: fileName$
        Insert interval tier: 2, "blah"
        Save as text file: fileName$
        Remove
        selectObject: downloadsList
        printline Added for textgrid 'numFiles' 'fileName$'
    endfor
    Remove
    

    【讨论】:

    • 我曾尝试过类似的方法,但我需要同时选择 wav 文件。我已经有一层,里面的信息不能丢失,所以我不想制作全新的层,我只想添加一层,所以我需要同时选择 wav 文件和文本文件。我尝试在终端中选择它们,并将 plusObject 写入 praat 脚本,但我还没有做对。
    猜你喜欢
    • 1970-01-01
    • 2021-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多