How to convert videos into frames

2 views (last 30 days)
vijay chander
vijay chander on 23 Feb 2014
Commented: vijay chander on 23 Feb 2014
My matlab code is this
video = VideoReader('video1.avi'); for i = 1:video.NumberOfFrames img = read(video,i); imwrite(img,sprintf('img%d.jpg',i)); end
fprintf('Please wait....');
filebase = dir('*.jpg');
num_files = nume1(filebase);
images = cell(1, num_files);
MS=cell(1,num_files);
for k = 1:num_files
images{k} = imread(filebase(k).name);
[rows columns color]=size(images{1});
if (color==3)
MS{k}=image_enhancement_sw(images{k});
M(k)=im2frame(MS{k});
else
MS{k}=gray_level_images(images{k});
end
end
movie(M)
but i cant able to execute the code
im getting the following error
can anyone please help me with dis.....
??? The file requires the following codec(s) to be installed on your system: h264
Error in ==> VideoReader.VideoReader>VideoReader.init at 423 obj.VideoReaderImpl = audiovideo.mmreader(fullName);
Error in ==> VideoReader.VideoReader>VideoReader.VideoReader at 133 obj.init(fileName);
Error in ==> eg at 1 video = VideoReader('video1.avi');

Answers (2)

Image Analyst
Image Analyst on 23 Feb 2014
I do this in second half of my demo. Follow what I did in the attached m-file.

Dipten
Dipten on 23 Feb 2014
Edited: Dipten on 23 Feb 2014
in this vidFrames hold and store your all frames. You can use a Frame by using mov(i).data
readerobj = mmreader('dd.avi');
vidFrames = read(readerobj);
numFrames = get(readerobj, 'numberOfFrames');
For i=1:numFrames-1
mov(i).data=vidFrames(:,:,:,i).
end
  1 Comment
vijay chander
vijay chander on 23 Feb 2014
??? Error using ==> Untitled at 1 The file requires the following codec(s) to be installed on your system: h264
still im getting this error

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!