MATLAB Answers

Peter
0

How to convert struct to a video

Asked by Peter
on 26 Nov 2016
Latest activity Answered by Walter Roberson
on 26 Nov 2016
v = VideoReader(path);
vidHeight = v.Height;
vidWidth = v.Width;
mov=struct('cdata',zeros(vidHeight,vidWidth,3,'uint8'),'colormap',[]);
numFrames = get(v,'NumberOfFrames');
for k=1:numFrames
mov(k).cdata = read(v,k);
end
Then I will apply some change to the mov, but I cannot output a video using VideoWriter or VideoFileWriter, as it says something like the input does not correct
Is that mean I cant use any of them to convert a struct to a video? What else can I do? Thanks

  0 Comments

Sign in to comment.

1 Answer

Answer by Walter Roberson
on 26 Nov 2016
 Accepted Answer

Videofilewriter step method only accepts individual image arrays (or y cr cb arrays).
Videowriter writeVideo method only accepts individual image arrays or individual frames compatible with movie structure (your mov is an array of those)
You will need to loop writing the contents of your mov structure array.

  0 Comments

Sign in to comment.