MATLAB: Error while evaluating uicontrol Callback

guiguider2016a

global GUI1
axes(handles.axes3);
[GUI1,] = uigetfile('*.mp4');
obj = VideoReader(GUI1);
video = obj.read();
axes(handles.axes3);
fps=30;
for i=1:max(video(1,1,1,:))
imshow(video(:,:,:,i));
pause(1/fps);
end
if true
% code
end
%%%%%%%
Error in untitled>Start_Callback (line 93)
imshow(video(:,:,:,i));

Best Answer

Shahmeer - please copy and paste the full error message (I suspect there is more to it than what you have pasted above). Also, what does the above correspond to? Is this the body for the Start_Callback function or for something else? Please include the full function signature and body.
Part of the problem may be how you are iterating over video. If you want to iterate over each frame (the fourth dimension) then instead of using max (which will return the maximum value of the video(1,1,1,:)) you should be using size instead to get the array dimension as
numFrames = size(video,4);
for i=1:numFrames
% etc.
end