zoukankan      html  css  js  c++  java
  • 对TIMIT数据进行格式转换(SPHERE2WAV(RIFF))

    首先,转换sph2pipe工具所在文件夹(此工具为LDC所提供的SPHERE音频文件转换工具)
    cd '/home/dream/Research/kaldi-master/tools/sph2pipe_v2.5'
    其次:在命令行进行音频文件转换测试:
    ./sph2pipe -f wav ./wav_test/SA1.WAV ./wav_test/SA1_tr.WAV
    此处需要注意的是,sph2pipe可执行文件不再PATH当中,所以需要当前路径下的完全路径,即:./sph2pipe才可以运行,而非sph2pipe。

    1.由批处理python脚本生成转换文件
    具体的:

    # encoding:utf-8
    import os
    import os.path
    
    root_dir = "/home/dream/Research/Data/TIMIT/"
    
    timit_path = "/home/dream/Research/Data/TIMIT/"
    # 文件保存路径
    
    sph2pipe_path = "/home/dream/Research/kaldi-master/tools/sph2pipe_v2.5/sph2pipe"
    # sph2pipe工具所在路径
    
    f = open("/home/dream/Research/Data/timit_sph2pipe/make_sph2pipe_file.txt", 'w')
    
    for root, dirs, files in os.walk(root_dir):
    	for fn in files:
    		if fn[len(fn)-3:len(fn)]=='WAV':
    			sourcefile = timit_path+root[len(root_dir):]+"/"+fn
    			targetfile = root[len(root)-5:len(root)]+"_"+fn
    			s = sph2pipe_path + " -f wav " + sourcefile+" "+targetfile+"
    "
    			f.write(s.replace('\','/'))
    f.close()
    

    由上述脚本,可以生成对应的txt格式的转换文件
    2.在linux下运行shell脚本文件,读取转换文件进行数据转换

    # 逐行执行make_sph2pipe_file.txt当中的命令
    filename='/home/dream/Research/Data/timit_sph2pipe/text.txt'
    while read line
    do 
    	echo $line
    	$line
            # 此处$line进行逐行执行代码 
    done < $filename
    
  • 相关阅读:
    PHPStrom 转 VSCode 折腾记录
    vscode php 代码提示 自动完成
    Elasticsearch中文分词加拼音
    AutoMapper用法
    删除所有退出状态的容器
    Linux 安装Docker
    千里眼的修练方法--末法时代即将结束
    Visual NMP
    c#通过反射获取类上的自定义特性
    微信小程序学习笔记
  • 原文地址:https://www.cnblogs.com/dream-and-truth/p/10413575.html
Copyright © 2011-2022 走看看