LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to improve Ni-IMAQ LVDS Sequence Capture Frame Rate?

Im trying to collect 300 consecutive  frames off a 60hz, 320x240 16 bit camera on Win2000 (1.5Ghz, 512MB).

Using the HLSequence vc++ sample project as the baseline, Im just changing  the NUM_SEQUENCE_BUFFERS to 300, and use GetTickCount (10ms granularity) to time it:

---
unsigned long   skippedBuffers[NUM_SEQUENCE_BUFFERS] = {0};

errChk(imgSequenceSetup (Sid, NUM_SEQUENCE_BUFFERS, (void
**)ImaqBuffers, skippedBuffers, TRUE, TRUE));

before  = GetTickCount();
while ( status )
        errChk(imgSessionStatus (Sid, &status, &currBufNum));
after = GetTickCount();

---

After several iterations, it seems the difference in ticks between the  before and after is around 1372... which at 10ms between each tick,  indicates over 13 seconds to complete!  At 60hz, Im thinking 300 frames  SHOULD be about 5 seconds.

Are the buffers that IMAQ "Sequence" uses for the capture, internally  dma'd to the *PC's RAM* memory or is it actually using the *disk* to  store it?

What can I do to get it near 60 frames a second?

Also, I dont know of any way to timestamp each frame, but is there any way to see how contiguous the frames are that are captured?


0 Kudos
Message 1 of 2
(2,713 Views)
Hello snoop911,
I posted an answer to a very similar post yesterday.  See Here.
 
Please let me know if you have any other questions about this issue that I can help with.
Regards,
Angela
Applications Engineer
0 Kudos
Message 2 of 2
(2,697 Views)