how can i display video and image simultaneously in GUI-matlab?

2 visualizaciones (últimos 30 días)
Koohyar
Koohyar el 20 de Oct. de 2020
Comentada: Zoya Saevna el 13 de Jul. de 2021
Hi everyone,
Anybody knows that how can I display a video and a picture in two different windows simultaneously (with 1 pushbotton and without dilay in GUI)? I used the following code but the imgae (in second window-axes(handles.axes2)) is diplayed after finishing the video. I need to start both at the same time.
Thanks in advance.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
axes(handles.axes1);
vidObj = VideoReader('Try.avi');
numFrames = 0;
while hasFrame(vidObj)
F = readFrame(vidObj);
numFrames = numFrames + 1;
imagesc(F)
drawnow
end
numFrames
axes(handles.axes2);
imshow('index.jpg');

Respuestas (1)

Nitin Kapgate
Nitin Kapgate el 27 de Oct. de 2020
Your code is running sequentially. At first, it displays the complete video frame by frame.
After the video is displayed, the image is displayed at the end. Thus both the video and images are not displayed simultaneously.
You can overcome this by displaying the image at the beginning and then displaying the video.
The modified code should be like this:
function pushbutton1_Callback(hObject, eventdata, handles)
% Display the image first
axes(handles.axes2);
imshow('index.jpg');
% hObject handle to pushbutton1 (see GCBO)
axes(handles.axes1);
vidObj = VideoReader('Try.avi');
numFrames = 0;
% Display the video frame by frame
while hasFrame(vidObj)
F = readFrame(vidObj);
numFrames = numFrames + 1;
imagesc(F)
drawnow
end
numFrames
end
  2 comentarios
Koohyar
Koohyar el 29 de Oct. de 2020
Nitin Kapgate, many thanks for this, but I need to display two videos in two windows simultaneously with no lag.

Iniciar sesión para comentar.

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by