Independent multiple video playback

Someone asked this over email

This was the scenario I wanted to program is Lightact - think of a large touch screen tv (or wall with projection mapping) and the CV functionality of Lightact.

If I have say 4 videos events for animation, and I want to trigger each video when someone touches the trigger area. With the single timeline, I can only jump between 1 of 4 videos when triggered - that is CV event triggers a jump to a location in the timeline. What I wanted to do was to be able to trigger any of the 4 events independently.

I hope this makes sense… please let me know if you have any questions

Assuming I understand correctly, but what if you created say 4 booleans: playVideo1, playVideo2, playVideo3 and playVideo4 and based on them, you’d either play the video file or not.

Something like this:

Then you would, of course, have to set these booleans in another layout based on where the movement is, but I am assuming you know how to do that.

There is a Sample project in the Welcome screen called Conditional action flows, that does something similar, but with Texture generators, not Video readers.

You’ll find it in the Layer Layouts category.

Let me know if this helps.

Thanks! So if i am understanding the sample Switch Case, it uses Sequence to create multiple independent branches which can operate independently - like the 4 “areas” on my touch screen?

Modified your sample project and I can sense a location in space with the RealSense and have it trigger 4 separate 5 second “video” animations

And I remember why the timeline was mentioned - because video playback tracks the layer time. So while the above works perfectly for content created in LightAct (like the color generators), if i replace them with a video playback, the period of time the clip is visible on the canvas is linked to the layer time.
For example if my video was filling up a container of water, the animation plays with layer time, but the visibility of the clip is at that moment in time…

What if you set the Ignore pause input to true and the Always start at start at to true as well? These are inputs on the video reader node.

I can’t test it right now, but it should cause the video player to always play, regardless of the timeline and to always start at 0.

Let me know how it goes.

I think because the video play back follows layer time, the video will always be playing. The code only turns on/off its visibility

You are right, actually. I’ll put this into our to-do list. It should be fixed for 3.1.3


Hey Jason,

As previously communicated, this has been fixed in v3.1.3. The release is now officially online. Considering what you are creating with Lightact, you might be interested in the fact that Lightact now supports TUIO.