No playback for image sequence node? How to composite animated FX?

Short version of the question: Why doesn’t my image sequence play?


Detailed version of the question:
Because I need to composite some effects into a video I have it playing through a compositor node as an image sequence.
Well, it’s not playing along with the timeline. When I stop playback it refreshes to the single frame the time cursor stopped on. But of course that’s not the same as playback, and doesn’t give enough feedback to allow for animating of effects and such. Is there a fix for this? Some setting I can change? Or maybe a better approach that can be taken?
Thanks

[P.S. Things I’ve already tried include setting Prefetch Frames to 500, and upping the Memory Cache Limit]

You can take the output from the scene with the comp and add it as a strip in the VSE. The VSE then can buffer the playback for you.

Thank you! Good to know there is a way.
I’m looking into this now, and may find the answer soon, but for now I may as well ask - is this done from within the VSE interface or the Node Editor interface?

Edit: In the VSE I did Add > Scene but I just got a green strip spanning the range of the rendered frames. It’s not apparent what to do from here.

In vse preview window turn of opengl preview render. You should see the output from the compositor. Make sure that compositor is active of course as well as the vse. You have to set playback in vse to no sync and play through all frames once before it can live replay. Check user prefs to increase vse memory.

Thanks! This made the images show up in the VSE.
The playback is still not really happening though.

The compositing indicator is constantly on while I play. I think until I can get this to go away I’m going to have problems because it seems not to cache the video but instead attempt to re-render at each frame.


You have to set playback in vse to no sync and play through all frames once before it can live replay.

When you say set playback to no sync, do you mean go to the Timeline editor menu under Playback > AV Sync and un-tick it?
If so, I tried this and it didn’t change anything.


Or is there another setting inside the VSE window somewhere called “no sync” that I should be looking for?

Check user prefs to increase vse memory.

Does the VSE have its own dedicated memory preference somewhere, or are you referring to the Memory Cache Limit?

Thanks

I suppose what you meant by No-Sync is this Sync Mode drop-down selector?


Is this the same as using the menu Playback > AV-sync?
They seem linked in the sense that I can change the Sync Mode to No Sync from the selector and that will un-tick it in the menu. But if I change settings from the menu I have the option to have AV-sync and Frame Dropping simultaneously enabled, whereas this is not an option if using the Sync Mode drop-down selector, the selector treats them as mutually exclusive. Confusing interface design if you ask me. That aside, if I can at least get this playing I’ll be satisfied.

Yes no sync means that it will NOT drop frames to keep frame rate. In other words it ignores the frame rate per second and renders each frame. This becomes a buffered sequence that can play at high speed on the next loop through. Bear in mind that you are essentially rendering all of your animation, just not committing it to disk. This may suck if it takes a long time to render. Use the frame range in the timeline (not VSE) to render a smaller section of the animation. Once you have rendered a pass out to the VSE it will have to be RE-rendered to disk.

You can reduce the size of rendered percentage but this will affect distortions or node values that have explicit pixel sizes (blur for example).

Yes, reducing the frame range helped.

You can reduce the size of rendered percentage but this will affect distortions or node values that have explicit pixel sizes (blur for example).

This was the big thing! This got it working for me. I dropped in a Scale node (Relative) before the Composite node.
So I set my render resolution to 25% of the original 1080p and set the Scale node to match that (0.25).
Thanks for the reminder about the pixel-specific effects. I’ve made a habit of keeping things relative whenever possible, but just in case I’ve got the Viewer node still connected to the full-res image so I’ll know what it looks like at least when it’s paused and hopefully catch any discrepancies this way. Although as long as the Scale node is the last one before Composite I imagine it wouldn’t be an issue anyway. Still, good to be conscious of.

The main lesson I learned is that resolution plays a huge factor in caching ability. At 100% it would appear to be caching but actually it wasn’t. Or maybe it was, but would soon dump it once memory capacity was exceeded. A 25% reduction may not seem like much, but when you consider the difference in pixel count:
100%: 1920x1080 = 2073600 px
25%: 43.2x76.8 = 3318 px (rounded to nearest whole pixel)
…yeah, just over three thousand versus two million makes all the difference.
Once you know that resolution is where the problem lies, it’s an easy fix.

Closing all other apps and restarting my machine also probably helped free up memory.

Here is the screen shot that would have saved me a day trying to work this out. Maybe it will help someone else:


3pointEdit, thank you for all your suggestions on this! You really helped me get this sorted out.

I spoke too soon. As soon as I added a second image sequence to the Node Editor and tried to combine them with a Mix node the compositor completely failed to mix them in the VSE, no matter how many times I refresh the sequencer and re-cache.
Any ideas on how to fix this?

Hmmm, not sure. Is the mix apparent at 50%? Does the image seq input node work when you jump around the timeline (in comp view) to check?

Yes, the Node Editor’s Backdrop preview shows the result of the mix when I jump around the timeline, but the VSE does not.
The mix amount is keyframed and slides between 0 and 1. I’ve tried it with various blend modes just to test, but it always only shows the result in the Node Editor only.

Do you think I need to use proxies? I don’t know exactly what they do. I was just reading up on them to try to see if they were relevant to this issue.

My other thought was maybe it’s a bug, but if it is I’d think others would have run into it before me.

I tried a few different tests and I’m starting to suspect it’s a problem with the image sequence settings for Start Frame, Offset, and maybe even Cyclic.
I need to do some calculations and double check my work before I can confirm it though.
About to call it a night soon…

Yep image seq node is confusing. If you are starting the mix late in the master frame count (like a couple seconds after the scene frame 0) then it can become a bit of a brain strain.