Using writeVideo command & result...

조회 수: 11 (최근 30일)
Julia
Julia 2014년 9월 17일
답변: Geoff Hayes 2014년 9월 17일
I am using the writeVideo command and while it successfully makes the .avi file, when I play it outside of matlab it plays very fast. Is this a problem with my script or something else?
script here:
vidObj = VideoWriter('pr_lgm_r1_ccsm4.avi');
open(vidObj);
for i=1:12
X=squeeze(pr(:,:,i));
figure
contourf(lon,lat,X','LineStyle','none')
pause(1.0); %slow down frames
% Write each frame to the file.
currFrame = getframe(gcf);
writeVideo(vidObj,currFrame);
cla;
end
% Close the file.
close(vidObj);
Any advice appreciated

채택된 답변

Geoff Hayes
Geoff Hayes 2014년 9월 17일
Julia - the default frame rate for the VideoWriter object is 30 frames per second (see VideoWriter class for details).
I noticed that you put a one second pause in your for loop. If you want only one frame to appear per second, then you just need to set this rate in vidObj
vidObj = VideoWriter('pr_lgm_r1_ccsm4.avi');
vidObj.FrameRate = 1;
open(vidObj);
Try the above and see what happens!

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Audio and Video Data에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by