MATLAB Answers


How do I do what aviread used to do using videoreader?

Asked by Chuck37
on 20 Nov 2018
Latest activity Answered by Image Analyst
on 20 Nov 2018
I upgraded Matlab and things that used to be easy are now much more complicated. I could rewrite movie2avi pretty quickly, but videoreader is a worse when trying to created the functionality of aviread. I can get the frames, but colormap is missing. Why did they think we would want to replace one line with a dozen, including a for loop?


The forum cannot answer your question about the intention of the MathWorks staff. So do you have a question the forum can answer or is this just a statement about your level of frustration?
Which problem do you try to solve?
The title of my question is the question. The venting of frustration is incidental.

Sign in to comment.





2 Answers

Answer by Walter Roberson
on 20 Nov 2018
 Accepted Answer

videoreader readframe with 'native' option returns the usual cdata and colormap information . without the native option ind2rgb equivalent is automatically done returning the rgb version of the data .
The change was for efficiency . With aviread it always scanned the full file at the time it opened it and the buffer flow was not as good so it was slower and took more memory . The newer function is better for streaming type situations especially with larger videos that might not even fit in memory .


Sign in to comment.

Answer by Image Analyst
on 20 Nov 2018

See attached video processing examples that use VideoReader().


Sign in to comment.