Dot name reference on non-scalar structure using Video Reader class
Show older comments
Hi... I am trying to read in a .wmv. I have basically copied the example from the VideoReader class in the help but I get this error when I run the .m:
Dot name reference on non-scalar structure.
Error in VideoReader/read (line 91)
if( ~isempty(obj.NumberOfFrames) )
Error in vidFile (line 22)
mov(i).cdata = read(Test, i);
mov is a 1xNumberOfFrames struct with objects 'cdata' and 'colormap'. The main issue is number frames it reads before this error is thrown varies.
Please help. I have banged my head against the wall enough...
Answers (1)
Ralph Hummeling
on 25 Sep 2012
Edited: Ralph Hummeling
on 25 Sep 2012
0 votes
@Townsend:
I'm afraid you've stumbled upon a bug that persists since R2012a. Matlab sometimes erroneously interprets a scalar structure as being non-scalar when confronted with a getfield operation: S.fieldname
A workaround is to insert an index on the field reference like this: S(1).fieldname
It's ugly but it works. So in your case your code could read: if( ~isempty(obj(1).NumberOfFrames) )
9 Comments
Daniel Shub
on 25 Sep 2012
Do you have a link to the bug report? This seems like it could potentially cause a huge amount of code to break.
Ralph Hummeling
on 25 Sep 2012
@Daniel:
Indeed, this bug has a large impact on existing code and I've submitted a Service Request. If they can't resolve I'll file a bug;-)
Townsend
on 25 Sep 2012
Ralph Hummeling
on 28 Sep 2012
@Townsend
If you're still coping with this bug send me your script and I'll see what I can do. Which Matlab release are you using, I can't find any recent release with the code you supplied?
Bryan
on 21 Nov 2012
@Ralph
I have a very similar issue to Townsend's, and am disappointed to learn it's a MATLAB bug! For some reason the read() function works for the first 40 or so frames of my video, then throws an error after that. I also am not able to edit the MATLAB read() function. I'm using the R2012b release -- any help would be greatly appreciated.
Bryan
Florence Yellin
on 28 Jun 2013
Has anybody resolved this issue? I am having the same problem.
Thanks! Flori
Image Analyst
on 22 Aug 2013
Edited: Image Analyst
on 22 Aug 2013
William Summers
on 22 Aug 2013
Thanks!
Falak Shah
on 19 Mar 2014
Having a similar problem in 2012b.. Tried editing as suggested too.. doesn't work... Kindly suggest some solution..
Categories
Find more on Timing and presenting 2D and 3D stimuli in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!