LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

VIDEO/TDMS timestamp drift over time

I have a vi that reads and writes several analog and digital signals, as well as videos from two cameras at 75 Hz each (videos recorded with two independent NI vision aqu.). I am writing three TDMS files (or output as .xls - same issue), one for each of two cameras, and one with a digital TTL, with the aim to having indexes of when the frames occurred, such that I can align them with the TTLs (otherwise I have the TTL indexed to another analog input line that I want). 

 

But I have the following issue:

- the video rates are changing dramatically over the course of a ~20 min acquisition (i.e. frame rates dropping to 1/3rd or less of the speed from start, although in the live view I see no errors!)... the difference between the TDMS timestamps for each frame are increasing with time. Memory usage doesn't increase over the 20 mins, it is about half max of the computer

 

Any suggestions to better write the video/tdms files? A functional subset of the code it attached  

 

0 Kudos
Message 1 of 3
(1,840 Views)

or, if anyone has any suggestions on how best to grab the frame timestamps in vision acquisition NOT using TDMS, I would be very grateful! 

0 Kudos
Message 2 of 3
(1,817 Views)

Hello,

 

It is possible that the while loop rate is increasing because you are acquiring and logging in the same while loop. Do you see the same behavior if the Write to Measurement File express VI is not in this while loop? If not, you may be able to implement a producer/consumer type architecture:

Application Design Patterns: Producer/Consumer
http://www.ni.com/white-paper/3023/en/

 

If not, what did you mean by saying you don't see any errors in the live view?

 

Madison T
0 Kudos
Message 3 of 3
(1,795 Views)