Pause a Frame in an Animation

Hello,
I am trying to create an animation using VideoWriter. In between the animation, I want a frame to be paused for 10 seconds. Can anybody help me with this?
Also, is it possible to have a different frame rate for a single video object? Like, the initial frames have fps 20 while the other part have fps 10. If yes, how?
( PS: If you have answer to only one of the question, you are still welcome to answer. )

Réponses (1)

KALYAN ACHARJYA
KALYAN ACHARJYA le 15 Mar 2021
Modifié(e) : KALYAN ACHARJYA le 15 Mar 2021

0 votes

Adjust the frame rate this way?
video_data=VideoWriter('test_video');
video_data.FrameRate=5;
open(video_data)
for i=1:50
clf;
data=uint8(randi([0,255],[500,500]));
imshow(data);
pause(randi(3)); % You have to adjust this accordingly
frame=getframe(gcf);
writeVideo(video_data,frame);
end
close(video_data);

1 commentaire

Jnandeep Talukdar
Jnandeep Talukdar le 15 Mar 2021
I tried implementing the code but the frame rate remains the same throughout the animation (5 fps here). In my original code I have an initial frame rate of 5 fps and I want to freeze the 100th frame for 10 seconds in the animation. Sorry if I wasn't clear in the question. Can you help me out now?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Animation dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by