MATLAB Answers

Pan
0

how to use button that controls video?

Asked by Pan
on 21 Feb 2012
hello~may I help you?
this is my code
obj = mmreader('watch.avi');
vid = read(obj);
for frame = 1 : size(vid,4)
% bw = im2bw(vid(:,:,:,frame));
subplot(2,2,1); imshow(vid(:,:,:,frame));
subplot(2,2,2); imshow(vid(:,:,:,frame));
subplot(2,2,3); imshow(vid(:,:,:,frame));
subplot(2,2,4); imshow(vid(:,:,:,frame));
drawnow;
end
I want to use button that can "play"and "stop" and"close"
h4 = uicontrol('Style','PushButton','Units','normalized',...
'String','play','Position',[.05 .05 .1 .1]);
controlling all video.

  0 Comments

Sign in to comment.

2 Answers

Answer by Chandra Kurniawan on 21 Feb 2012
 Accepted Answer

function vidplayer()
obj = mmreader('rhinos.avi');
v = read(obj);
hstat = uicontrol('unit','pixel','style','checkbox','value',0,'position',...
[160 10 25 25]);
hplay = uicontrol('unit','pixel','style','pushbutton','string','PLAY',...
'position',[10 10 50 25],'callback',{@play_callback,v});
hstop = uicontrol('unit','pixel','style','pushbutton','string','STOP',...
'position',[60 10 50 25],'callback',@stop_callback);
hexit = uicontrol('unit','pixel','style','pushbutton','string','EXIT',...
'position',[110 10 50 25],'callback',@exit_callback);
function play_callback(hObject,eventdata,vid)
set(hstat,'value',1);
for frame = 1 : size(vid,4)
if get(hstat,'value') == 1,
subplot(2,2,1); imshow(vid(:,:,:,frame));
subplot(2,2,2); imshow(vid(:,:,:,frame));
subplot(2,2,3); imshow(vid(:,:,:,frame));
subplot(2,2,4); imshow(vid(:,:,:,frame));
drawnow;
else, break; end
end
end
function stop_callback(hObject,eventdata)
set(hstat,'value',0);
end
function exit_callback(hObject,eventdata)
stop_callback;
close gcf;
end
end

  0 Comments

Sign in to comment.


Answer by Pan
on 22 Feb 2012

Thank you ^_^

  0 Comments

Sign in to comment.