[FIXED] 58910 CPlusPlus TOP makes interface blink

Hey,

I’m working with the CPlusPlus TOP, loading in a custom DLL that integrates the FlyCapture SDK to grab video frames from Point Grey cameras. I have used this in the past without any issues. I just started a new project where I will be needing this DLL and noticed a strange issue: parts of the TouchDesigner UI blink at an irregular interval. It seems to be limited to labels, most notably the FPS in the top of the interface and the current time in the timeline. Also a lot of items in the Palette are blinking - but it seems short string values are spared from the issue :confused: For example ‘probe’ doesn’t blink but ‘arcBallCamera’ does.

Also sometimes it seems that the networkeditor inverts its colors for a few frames.

I am experiencing this issue on 2 different machines running the same build. One of them is running a GeForce GTX760 (windows 8.1) and the other one a Quadro K5200 (windows 10).

You can find a short screengrab here:

vimeo.com/155506361
password: td

(forum upload doesn’t seem to be working)

I can’t share the DLL publicly but I could send it (and the code) to the derivative team if needed for debugging.

Fixed by updating the c++, using the latest example OpenGL code and especially calling beginGLCommands() and endGLCommands() on the newly added TOP_Context parameter.

Also we have FlyCapture native support now in the Video Device In TOP. I know there is all sorts of extra data you can get through the C++ custom route, but just an FYI. Would love to get feedback on how it performs for you (latency, etc)

I noticed the FlyCapture (and Decklink) support in the Video Device In TOP, but I haven’t tried it yet. One situation I keep finding myself in is one where I need to record a video while not losing any frames which doesn’t seem to be possible using the Video Device In TOP. When using the FlyCapture (or Decklink) SDK a callback function is called on a background thread which can be running much faster than the main thread, for example with high speed camera’s or when the main thread is slowed down by other work. Then I have the ability to buffer all these frames on the c++ side of things and read them out frame by frame into TD. In this case latency is not really an issue since we are taking some time to process the video anyway.

Also, one of the big advantages of the FlyCapture SDK is being able to open devices by serial number. Is that implemented in the Video Device In TOP as well? Unfortunately Decklink does not support this, it assumes the order of devices will be always the same (if one of your devices doesn’t show up, the ordering will be all wrong…)

We don’t have cameras in house right now to check that but would be interested in what you find out. Once selected in the menu the camera ID should go into the parameter field which you can stuff to a table or something and export back onto that parameter to load specific cameras.