Hi.
I want to plot my speech in realtime. now i using this code
clc; clear all; close all; fs=14000; l=10;recObj = audiorecorder(fs,16,1,1); %recObj.UserData=1;
recObj.TimerFcn = {@my_callback_fcn};disp('Start speaking.')recordblocking(recObj, l);disp('End of Recording.');y = getaudiodata(recObj);play(recObj);x=0:1/fs:l-1/fs;plot(x,y);
and callback function
function my_callback_fcn(obj,event) y = getaudiodata(obj); plot(y); hold on; obj.UserData=obj.TotalSamples;end
In this case my script begins to lag after 3-4 secs of work. How can i solve that problem? I tried to find find some fields in
recobj
that contain original data, but seems like it doesnt. So how can i atleast get partial data from recObj(planing to use plot and hold on)?
Best Answer