필터 지우기
필터 지우기

How to read multiple wav files using matlab

조회 수: 3 (최근 30일)
Nada Gamal
Nada Gamal 2011년 4월 9일
댓글: Walter Roberson 2021년 10월 31일
Hi, I have a problem in matlab .how to read matrix of wav files (element by element)by using wavread(); . I tried it but it not acceptable . I write this but i have an error. I want to read folder dynamic not static .
[filename, pathname, filterindex] = uigetfile( ...
'*.wav','WAV-files (*.wav)', ...
'Pick a file', ...
'MultiSelect', 'on');
for o = 1:20 % num of fields
[speechIn6,FS6]=wavread(filename(1,o));
speechIn6 = myVAD(speechIn6);
fMatrix6(1,o) = {mfccf(ncoeff,speechIn6,FS6)};
end
Error
??? Error using ==> fileparts at 17
Input must be a row vector of characters.
Error in ==> wavread>open_wav at 193
[pat,nam,ext] = fileparts(file);
Error in ==> wavread at 65
[fid,msg] = open_wav(file);
Error in ==> setTemplates at 74
[speechIn6,FS6]=wavread(filename(1,o));
Thanks a lot :) Best Regards, Nada Gamal
  댓글 수: 1
Nada Gamal
Nada Gamal 2011년 4월 9일
Answer:
To open Folder and dynmically read files
path='C:\SpeechData\Nada1';
folder = path;
dirListing = dir(folder);
for o = 1:20 % num of fields
for d = 3:length(dirListing)
% loop through the files and open. Note that dir also lists the directories, so you have to check for them.
fileName = fullfile(folder,dirListing(d).name); % use full path because the folder may not be the active path
[speechIn6,FS6]=wavread(fileName);
speechIn6 = myVAD(speechIn6);
fMatrix6(1,o) = {mfccf(ncoeff,speechIn6,FS6)};
Nada Gamal

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2011년 4월 9일
편집: Walter Roberson 2017년 2월 14일
[filenames, pathname, filterindex] = uigetfile( '*.wav', 'WAV-files (*.wav)', 'Pick a file', 'MultiSelect', 'on');
filenames = cellstr(filename); %in case only one selected
for K = 1 : length(filename)
thisfullname = fullfile(pathname, filenames{K});
[speechIn6,FS6]=wavread(thisfullname);
speechIn6 = myVAD(speechIn6);
fMatrix6(1,o) = {mfccf(ncoeff,speechIn6,FS6)};
end
  댓글 수: 7
Tiffani Febiola
Tiffani Febiola 2021년 10월 31일
I try the codes from mr. Walter Roberson but its said:
Unrecognized function or variable 'filename'.
Error in Untitled (line 2)
filenames = cellstr(filename); %in case only one selected
Walter Roberson
Walter Roberson 2021년 10월 31일
[filenames, pathname, filterindex] = uigetfile( '*.wav', 'WAV-files (*.wav)', 'Pick a file', 'MultiSelect', 'on');
filenames = cellstr(filenames); %in case only one selected
for K = 1 : length(filenames)
thisfullname = fullfile(pathname, filenames{K});
[speechIn6, FS6] = audioread(thisfullname);
speechIn6 = myVAD(speechIn6);
fMatrix6{1,K} = mfccf(ncoeff, speechIn6, FS6);
end

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Entering Commands에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by