I'm aquiring Video with IMAQ.
I have a Main-Programm and a SubVI that does the aquisition.
When I use the IMAQ Create.vi to allocate lets say 5000 Pics in the SubVI all runns fine
but each time I call the SubVI there is a delay before all Pictures are ready for aquisition.
So I tried to do the allocation in the Main-Programm-VI where is enough time for this while the user does other things.
Then I put an reference or simple Input to the SubVI with the empty array I allocated.
When I run the Programm now the aquisition works but is about 10x slower than before.
What is wrong? Why has the allocation to be in the SubVI to run at normal speed?
Solved! Go to Solution.
From your description, the concept seems correct. Can you attach a simplified version of your code that does what you describe? Or a couple of screen shots of the important areas? That is probably the only way to find the problem.
Thanks for your answer!
I created a simplified Version as you told and guess what...there were no problems at all.
But the problem still occures in my "real" programm.
So now I've made two screenshots.
The first one shows the IMAQ create in the Main-VI
The second one shows the Sub-VIs grab routine.
In the second picture you can see that the image input of the grab is connected to another IMAQcreate. When I switch it to the EmptyArray Variable (you can see it right next to the IMAQcreate loop) the grab runns slow.
Thanks to everyone who tried to help but I found a (unsatisfying) solution.
I completely redid the SubVI by copying and pasting the code in parts to a new VI....
and it works now. Jey!
So Bruce was right, the concept is correct. Thanks for that!
The probs source stays unknown...NaH...but it fortunately works now!