keyword.m
上传用户:ay_070428
上传日期:2014-12-04
资源大小:11427k
文件大小:1k
源码类别:

语音合成与识别

开发平台:

Matlab

  1. % Live demo/test for keyword spotting
  2. close all
  3. more off
  4. fs = 8000;
  5. duration = 3;
  6. % Record the keyword first
  7. fprintf('Hit return to start %g-second recording of your KEYWORDn', duration);
  8. pause;
  9. fprintf('Start recording ...n');
  10. y2 = wavrecord(duration*fs, fs, 'uint8');
  11. y2 = (double(y2)-128)/128;
  12. fprintf('Finish %g-second of recording.n', duration);
  13. vec2 = wav2ftr(y2);%MFCC特征提取
  14. % Start testing
  15. fprintf('The following recording will be used to compare with your keyword.nn');
  16. while(1)
  17. fprintf('Hit return to start %g-second recording...n', duration);
  18. pause;
  19. fprintf('Start recording ...n');
  20. y1 = wavrecord(duration*fs, fs, 'uint8');
  21. y1 = (double(y1)-128)/128;
  22. fprintf('Finish %g-second of recording.n', duration);
  23. vec1 = wav2ftr(y1);
  24. save speech vec1 vec2
  25. % ====== Solution obtained by DTW
  26. [minDist, DTWpath] = dtwmex2(vec1, vec2);%
  27. fprintf('DTW distance = %gn', minDist);%
  28. fprintf('Linear warping distance = %gn', lwarp(vec1, vec2));
  29. dtwplot(vec1, vec2, DTWpath);
  30. end