How to convert struct to a video

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

 Respuesta aceptada

Walter Roberson
Walter Roberson el 26 de Nov. de 2016

0 votos

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.

Más respuestas (0)

Categorías

Más información sobre Convert Image Type en Centro de ayuda y File Exchange.

Preguntada:

el 26 de Nov. de 2016

Respondida:

el 26 de Nov. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by