how to remove this error

2 views (last 30 days)
Dilawar Khan
Dilawar Khan on 7 May 2017
Commented: Dilawar Khan on 7 May 2017
??? 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 ==> comparing at 10
z=wavread(record);
Error in ==> voice at 10
comparing(sample_freq);
my program is this
function[z]=comparing(sample_freq)
record_len = 2; %Record time length in seconds
open_lock='test';
sample_time = sample_freq * record_len;
disp('kindly speak to open the lock');
f = sprintf('%s.wav',open_lock);
input('Press enter when ready to record--> ');
record = wavrecord(sample_time, sample_freq); %Records the input through the sound card to the variable with specified sampling frequency
wavwrite(record, sample_freq, f);
z=wavread(record);
x=z;
can some one help me ,thanks alot
  1 Comment
Guillaume
Guillaume on 7 May 2017
What version of matlab are you using? The last version of matlab that had wavrecord was R2013b. Time to upgrade?

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 7 May 2017
z = wavread(f);

Guillaume
Guillaume on 7 May 2017
I suspect you want
z = wavread(f);
%and what's the point of x=z on the next line. Read the file as x directly if you must
%better use variable names that have meaning
The output of wavrecord is not a file name, so I don't understand why you tried to pass to wavread.
Note that wavrecord has not been part of matlab since R2014a.
  1 Comment
Dilawar Khan
Dilawar Khan on 7 May 2017
thnkx i understand your point i will use variable

Sign in to comment.

Categories

Find more on Code Generation and Deployment in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!