How to convert videos into frames

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

??? 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.

Asked:

on 23 Feb 2014

Commented:

on 23 Feb 2014

Community Treasure Hunt

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

Start Hunting!