TIMIT语音库-----下载和matlab读取

在MIT网站可以找到一些样例, 为 16kHz sampling, 16 bit sample, PCM encoding。样例才160个句子,不够用。

这儿能找到完整版,用抓取工具全部下载下来有600多M

问题是虽然其为wav结尾,matlab中wavread却读不了,用二进制打开文件发现

google一下,原来其为 SPHERE文件格式

整个语音库有6300个文件,如何全部转换为普通的wav文件?

step1 遍历整个文件夹,把所有wav文件全找出来 find_wav.m

  1. function [ wav_files ] = find_wav( path )

  2. %FIND_WAV, find all wav file recursively

  3. wav_files = [];

  4. if(isdir(path) == 0)

  5. return;

  6. end

  7. path_files = dir(path);

  8. fileNum = length(path_files);

  9. for k= 3:fileNum

  10. file = [path,'\', path_files(k).name];

  11. if (path_files(k).isdir == 1)

  12. ret = find_wav(file);

  13. if(isempty(ret) ~= 1)

  14. if(isempty(wav_files))

  15. wav_files = char(ret);

  16. else

  17. wav_files = char(wav_files, ret);

  18. end

  19. end

  20. elseif strfind(path_files(k).name, '.wav')

  21. if(isempty(wav_files))

  22. wav_files = char(file);

  23. else

  24. wav_files = char(wav_files, file);

  25. end

  26. end

  27. end

  28. end

step2 文件转换conver_wav.m

  1. %SPHERE 文件转换为wav文件

  2. clear all;

  3. fs = 16000;

  4. files = find_wav('.');

  5. for fileIdx = 1:length(files)

  6. file = files(fileIdx,:);

  7. fileID = fopen(file);

  8. %判断文件头,防止误操作

  9. head = fread(fileID, 1024, 'char*1');

  10. headStr = sprintf('%s',head(1:7));

  11. if(~strcmp(headStr,'NIST_1A'))

  12. fclose(fileID);

  13. continue;

  14. end

  15. frewind(fileID);

  16. allData = fread(fileID, inf, 'short');

  17. fclose(fileID);

  18. delete(file);

  19. wavwrite(allData(513:end)./32768, fs, file); %SPHERE 文件头1024字节

  20. end

step3 检查 check_wav.m

  1. clear all;

  2. files = find_wav('.');

  3. for fileIdx = 1:length(files)

  4. file = files(fileIdx,:);

  5. [y, fs, nbits] = wavread(file);%不是wav文件就会报错

  6. if(fs~=16000)

  7. fprintf('%s: fs~=16000\n', file);

  8. end

  9. if(nbits ~= 16)

  10. fprintf('%s: nbits ~= 16\n', file);

  11. end

  12. end

TIMIT语音库-----下载和matlab读取相关推荐

  1. matlab读取心电txt数据画图,图解MIT-BIH数据库心电数据下载和Matlab读取程序

    开源数据网站PhysioNet(https://physionet.org/)提供了诸如MIMIC.MIT-BIH等丰富的生理信号数据库,这些数据库对于人体生理信号的分析.数据挖掘有着非常大的作用.M ...

  2. 图解MIT-BIH数据库心电数据下载和Matlab读取程序

    开源数据网站PhysioNet(https://archive.physionet.org/)提供了诸如MIMIC.MIT-BIH等丰富的生理信号数据库,这些数据库对于人体生理信号的分析.数据挖掘有着 ...

  3. CALIPSO数据下载与MATLAB读取

    目录 官网请求数据 下载方法 MATLAB导入数据 level 2 产品说明+代码:以Feature_Classification_Flags为例 matlab代码重现 level 1 matlab代 ...

  4. TIMIT语音库(续)

    两年前,在google的帮助下发现了完整版的TIMIT库:http://www.fon.hum.uva.nl/david/ma_ssp/2007/TIMIT/ 一时兴奋将其中的所遇到的问题公开如下:h ...

  5. matlab读取hea,MIMIC数据库中数据的下载以及MATLAB读取

    一.MIMIC数据库介绍 MIMIC数据库是美国麻省理工提供的一个对公众开放的多参数重症监护数据库,里面提供了诸如心电信号(ECG).光电容积脉搏波信号(Pleth).动脉血压信号(ABP)和呼吸信号 ...

  6. kaldi timit 语音库在线解码应用

    <span style="font-size:18px;"> </span> 目录: 1.安装portaudio 2.编译onlinebin 3.创建脚本测 ...

  7. 数字信号处理的MATLAB实践(一)语音信号的录制和读取

    萌生写这个系列的想法的原因是电脑里的代码太多,但删掉又怪可惜的,我的老师说学习和思考需要留下痕迹,这样后来者能有迹可循,不至于在浩如烟海的资料中无所适从,我是赞同这个说法的. 这个系列主要是我在学习数 ...

  8. 文字转语音软件:Balabolka下载地址及Balabolka怎么添加语音库?

    Balabolka能够进行简单的文本转语音任务,支持各种语言包,不过软件转出来的语音肯定比不上AI合成的,所以这个软件只能应对要求不高的任务. Balabolka是文本到语音(TTS)的计划.全部电脑 ...

  9. 【全志R329-NPU助力】Maix-Speech为嵌入式环境设计的离线语音库

    Maix-Speech是专为嵌入式环境设计的离线语音库,设计目标包括:ASR/TTS/CHAT 作者的设计初衷是完成一个低至Cortex-A7 1.0GHz 单核下可以实时运行的ASR库. 目前市面上 ...

最新文章

  1. javascript函数式_JavaScript中的函数式编程—结合实际示例(第1部分)
  2. 3min利用Python实现9种经典排序算法可视化!(附源代码)
  3. scrapy-redis组件写分布式爬虫实战
  4. 如何进入python程序代码编辑环境_Python怎么打开代码编辑器 来学习吧
  5. AcWing 164. 可达性统计
  6. 佳能单反相机二次开发包介绍_家用单反相机什么牌子好
  7. 如何进行嵌入式系统的学习?
  8. 学习分布式技术,技术人看这里
  9. 数据库grant 授权
  10. 20161129 计算95除以55,商是多少,余数是多少?(商和余数要求分两行显示)
  11. hello github
  12. Qt之标准对话框(文件对话框)
  13. 机器学习算法之SVM的多分类
  14. [笔记]ASCLL码表(48 “0”,65 “A”,97 “a”)2022.3.12
  15. API支付代理版自动发卡平台源码
  16. 陕西2020行政区划调整_陕西2020行政区划调整
  17. VBA写入公式(4):数字转大写金额公式
  18. 深度强化学习发展现状及展望:万字总结解读83篇文献
  19. 阿里出海遭遇挑战,Lazada三年换三帅仍无法制霸东南亚
  20. JAVA|什么是Sdkman

热门文章

  1. SMIC 180nm后端踩过的坑
  2. ubuntu kof97
  3. python中对列表排序_在Python中对嵌套列表进行排序和分组
  4. 二叉树的层序遍历(BFS)
  5. HDU1847Good Luck in CET-4 Everybody!递推求解必胜、必败点 附三种经典博弈
  6. 阿里云轻量服务器收费标准价格表(一览查阅)
  7. 计算机技术与小学语文结合,把多媒体技术与小学语文教学相结合
  8. 基于java学生补助申请管理系统
  9. 向论文作者要代码的邮件怎么写
  10. 【LOJ2983】「WC2019」数树