cannot create mat file.

2 views (last 30 days)
>> filename=('s2.wav');
>> y=wavread(filename);
>> [y,Fs,nbits]=wavread(filename);
>> save(filename,'-mat');
why save(filename,'-mat'); does not create the *.mat file?

Accepted Answer

CS Researcher
CS Researcher on 4 May 2016
You should do this:
filename = 's2.wav';
[y, Fs] = audioread(filename);
save('s2.mat','y');
  4 Comments
Nor Ashikin
Nor Ashikin on 4 May 2016
Thanks for your help CS Researcher and Walter Roberson as well. It worked actually. Just my mistake.

Sign in to comment.

More Answers (2)

Walter Roberson
Walter Roberson on 4 May 2016
save() is not defined to override your choice of file extensions. If a file already has an extension, then save() will use that extension. So what you are doing is overwriting your .wav file with the mat contents.
If you want to change the extension, then use fileparts to extract the file name without the extension; when there is no extension, .mat will be added.

MHN
MHN on 4 May 2016
Just use
save 'filename'
  1 Comment
Walter Roberson
Walter Roberson on 4 May 2016
That would create 'filename.mat' -- literally "filename", not 's2.mat'

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by