Get Current Frame out of Video Reader Object?

12 visualizaciones (últimos 30 días)
Alicia Wüst
Alicia Wüst el 25 de Jul. de 2021
Respondida: Alicia Wüst el 28 de Jul. de 2021
Hi everybody,
when I stopp playing an VideoReader Object, is there a way to get the current videoFrame?
Something like currentFrame etc.?
Best regards.

Respuestas (2)

Shadaab Siddiqie
Shadaab Siddiqie el 28 de Jul. de 2021
From my understanding you want to get the frame when you pause a video. If you know at which time you will be pausing the video the you can get the frame:
time = 3.5 % suppose you need frame at 3.5th second
v = VideoReader('Test.avi','CurrentTime’, time);
If you really want to pause video, one possible workaround would be to use implay to pause video and get the frame like so:
% use implay to get frame time
fig = implay('Test.avi')
% pause video and get the exact time of the video
CurrentFrameTime = fig.DataSource.Controls.TimeOfDisplayData;
% use videoreader to get the frame from the time
v = VideoReader('Test.avi','CurrentTime',CurrentFrameTime);
f = readFrame(v);
imshow(f)

Alicia Wüst
Alicia Wüst el 28 de Jul. de 2021
Thanks for your help! I‘ll try this today.

Community Treasure Hunt

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

Start Hunting!

Translated by