It work! Thanks. It also helped me realise any values coming into the loop from outside seem to need Hold Value nodes on them in the same way to stop spoof values getting in and messing with the first item of the iteration. Wow that was very helpful because that's weird first-element-in-list-is-wrong thing has been bugging me for days now!
I'm adding an example comp for those who come after me. If we remove the "bottom" and " Hold Value nodes and wire those values directly into the loop we get a "Hello World!" text image in the list of layers.
I'm noticing a bunch of this kinda thing. Have a Process List which is fed a list of numbers that get converted to a list of Text Layers.
The first layer says "Hello World!" — obviously not receiving the data even though it's wired directly to the Process Item port of the Process List node. When I cut it all out into a stand alone comp to log a bug it starts working correctly.
So then I set up a counter inside the loop and bring in some constant values for a text position calculation from outside the loop and the "Hello World!" appears.
Then I delete the outside wires just leaving the real values and it works, no "Hello World!". So this must be something to do with events getting inside the loop from before hand and loading up the first iteration buffer before it has been passed the real data — or something?! I'm pretty sure it's to do with outside wires coming into the loop.
It could be that your video source is providing non-square pixels, and Vuo handles them differently than QuickTime Player. When Vuo detects that the video source has non-square pixels, Vuo asks the video source to provide square pixels. Maybe that's happening to begin with, and then QuickTime Player is asking the video source to switch back to non-square pixels.
We may send you a demo app to check if that is indeed the problem. Or if you know of some other way to check, let me know.