Image Acquisition Toolbox: using the 'memory' part of 'disk&memory' logging to just record timestamps
5 views (last 30 days)
Show older comments
I need to record video frames and their associated timestamps over an extended period of time (5 mins plus) at up to 30 fps. I currently can't go over about one minutes worth of recording using 'disk&memory' logging before i run out of memory. The actual frames are already captured to disk in the 'disk' part of the logging. So, is it possible to disable the recording of the frame data in the 'memory' part, since all i require from that part is the metadata? I'm hoping then, that i'll be able to record for longer before any out-of-memory issues appear.
0 Comments
Answers (1)
David Tarkowski
on 14 Mar 2012
You can't do what you want directly, i.e. there is no mode that says just log the time stamps. I would probably use the FramesAcquiredFcn to get the time stamp and then discard the image data. You can store the time stamp in the UserData property of the videoinput object for later use.
For example:
vid = videoinput(...);
vid.FramesAcquiredFcnCount = 1;
vid.FramesACquiredFcn = @myFunction;
start(vid)
Your myFunction callback would look something like:
function myFunction (vid, ~)
[~, ts] = getdata(vid, 1);
timestamps = vid.UserData;
timestamps(end+1) = ts;
vid.UserData = timestamps;
1 Comment
Evan Bates
on 18 May 2020
Edited: Evan Bates
on 19 May 2020
Is this still the valid answer? How can you also store the frames and metadata from the getdata function in this callback function?
See Also
Categories
Find more on National Instruments Frame Grabbers in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!