How to extract frames from a .mp4 video?
62 次查看(过去 30 天)
显示 更早的评论
Hi I am trying to combine two videos in matlab. The first video is a clock moving with a green background. The second video is a black video moving in what it looks like is space. I am trying to extract the frames and make the second video the background to the first video. Using the code below only extracts the first frame, how can i extract all frames?
outputFolder1=('video');
v1=VideoReader('Clock.mp4');
vid1Frames=readFrame(v1);
for frame=1:size(vid1Frames,4)
outputBaseFileName=sprintf('%3.3d.png',frame);
outputFullFileName=fullfile(outputFolder1,outputBaseFileName);
imwrite(vid1Frames(:,:,:,frame),outputFullFileName,'png');
end
0 个评论
回答(2 个)
Stephan
2019-12-1
编辑:Stephan
2019-12-1
outputFolder1=('video');
v1=VideoReader('Clock.mp4');
vid1Frames=read(v1);
for frame=1:size(vid1Frames,4)
outputBaseFileName=sprintf('%3.3d.png',frame);
outputFullFileName=fullfile(outputFolder1,outputBaseFileName);
imwrite(vid1Frames(:,:,:,frame),outputFullFileName,'png');
end
0 个评论
Boyuan Li
2020-5-14
Somehow the function readFrame() only read the first available frame instead of the whole video.
outputFolder1=('video');
v1=VideoReader('Clock.mp4');
while hasFrame(v1)
frame=readFrame(v1);
outputBaseFileName=sprintf('%3.3d.png',frame);
outputFullFileName=fullfile(outputFolder1,outputBaseFileName);
imwrite(frame,outputFullFileName,'png');
end
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!