"audioread" multiple audio files in a folder
21 次查看(过去 30 天)
显示 更早的评论
Hi.
I want to analyze spectrograms of multiple audio files in a folder.
Audio files share the word "SPTGRM" in their names.
Audio files are stereo-type and I will take one channel data.
As shown in the code below, I tried to save these files in the directory and save their data in "Spectrogram Data", but the following error occurred.
[ Error using audioread (line 90)
The filename specified was not found in the MATLAB path. ]
How can I solve this error?
clear all;
audio_files = dir('C:\Users\KOH\Desktop\MATLABcode\Soundsample\SPTGRM*.wav')
for i=1:numel(audio_files)
[y,Fs] = audioread(audio_files(i).name);
SpectrogramData(:,i)=y(:,1);
end
1 个评论
Stephen23
2021-12-29
Why are you using CLEAR ALL? Does your program really need to remove all cached functions from memory, thus slowing down MATLAB? (hint: no). Use CLEARVARS if required, not CLEAR.
采纳的回答
Stephen23
2021-12-29
编辑:Stephen23
2021-12-29
You need to tell AUDIOREAD the filepath, otherwise it does not know where to find the files.
P = 'C:\Users\KOH\Desktop\MATLABcode\Soundsample';
S = dir(fullfile(P,'SPTGRM*.wav'));
for k = 1:numel(S)
F = fullfile(P,S(k).name); % you forgot this
[y,Fs] = audioread(F);
S.data(k) = y;
end
0 个评论
更多回答(2 个)
Chunru
2021-12-29
clear all;
audio_files = dir('C:\Users\KOH\Desktop\MATLABcode\Soundsample\SPTGRM*.wav')
for i=1:numel(audio_files)
% You need to specify the folder as well
%[y,Fs] = audioread(audio_files(i).name);
[y,Fs] = audioread(fullfile(audio_files(i).folder, audio_files(i).name));
SpectrogramData(:,i)=y(:,1);
end
0 个评论
jibrahim
2021-12-29
For future reference, I recommend you use audioDatastore:
You won't have to worry about finding files. for example:
ads = audioDatastore('C:\Users\KOH\Desktop\MATLABcode\Soundsample','IncludeSubfolders',true);
allSignals = readall(ads) % this reads all the audio files in one shot
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Audio and Video Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!