Praat脚本-032 | Praat脚本批量转化TextGrid格式为json格式

JSON 是存储和交换文本信息的语法,类似 XML。JSON 是轻量级的文本数据交换格式。JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。JSON 具有自我描述性,更易理解。如下:

{
    "sites": [
    { "name":"菜鸟教程" , "url":"www.runoob.com" }, 
    { "name":"google" , "url":"www.google.com" }, 
    { "name":"微博" , "url":"www.weibo.com" }
    ]
}

和XML一样,这样的格式非常便于描述数据,数据的属性也很清楚。通过Praat脚本是否可以将大量的TextGrid格式的文件转化为JSON呢?

TextGrid无非是通过一些时间点标记音频的文件,这里面最重要的几个因素是,层级、第几个标记、这个标记的名称、这个标记的开始时间和结束时间。所以我们是否可以转化为这样的形式:

{
"name":"Phon",
"intervals":[
			{"xmin":0,"xmax":0.280,"text":"sil"},
			{"xmin":0.280,"xmax":0.406,"text":"k"},...
]
}

这样我们获得层级名称,以及每一层内包括多少个标记,每个标记又包括了开始时间、结束时间和名称。

提取数据

这个脚本在git目录里的第32个脚本。32-textgrid_to_json\Textgrid_to_json.Praat

Praat运行脚本,Praat->Open Script->Textgrid_to_json.Praat

  • 第一个输入:就是你的TextGrid所在的目录,这里是textgrids/
  • 第二个输入:就是你需要转化后的json保存的目录,这里是jsons
  • 第三个框是对于开始时间和结束时间,保留小数的位数,默认为3

在这里插入图片描述

最终运行之后可以得到转化后的json文件。
在这里插入图片描述
注意脚本是自动获取你的TextGrid里的层级数量的,不需要设置。

这里有两个点要说明一下:

  1. 本站之前发布的大多数脚本都是采用的相对路径,即textgrids/这样,没有将哪个盘,哪个目录都列出来,这是因为这些目录本身就在和脚本同样的目录下,这是完全没有问题的,经常在咨询群里看到有一些同学自己并不熟悉路径,总是弄错路径,其实我提到过多次了,你就不要动我现在设置的路径,将你的数据放在我的目录里运行就可以了。

获取脚本

https://github.com/feelins/Praat_Scripts

本站所有Praat脚本都可以在上述github的项目目录里找到,如果日常对代码、脚本操作比较熟练的可通过下载、安装、配置github for windows在自己的电脑上通过git clone将代码下载到本机,这样的好处是可以跟主站及时更新代码。
不想费如此脑筋,可以通过点击如下图Code位置所示,下载整站的代码,可直接使用。
在这里插入图片描述

关注

公众号:极地语音工作室, QQ讨论群720939827
在这里插入图片描述

版权说明

1、版权归本博客作者所有;

2、未经本站或者作者允许, 不得任意转载本文内容,否则将视为侵权;

3、转载或者引用本文内容请注明来源及原作者;

4、对于不遵守此声明或者其他违法使用本站内容者,本人依法保留追究权等。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极地语音工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值