Page 1 of 1
Texture fps control in wire?
Posted: Tue Dec 27, 2022 19:41
by najork
Hello,
I'm using a ring buffer for a video effect in wire.
Since the buffer uses a lot of memory, I was wondering if I could make cover more time by skip texture frames (effectively forcing part of the effect to run at a lower fps). I've tried some variations of using another buffer & a 'read' node to reduce the frame-rate, but that does not seem to effect how fast the downstream buffer fills up. Even if texture buffers are not connected to anything, I can can still see them filling up at 60fps.
Is there a method for throttling texture signal flow?
Thanks.
Re: Texture fps control in wire?
Posted: Fri Dec 30, 2022 12:57
by Zoltán
You'd need to make your own buffer, where you can shift the buffer manually.
Set the instance count in Delay, to set the buffer size.
Re: Texture fps control in wire?
Posted: Fri Dec 30, 2022 21:35
by najork
Thank you!
I'll need to muck around with this before I fully understand, but this seems like the right track.
Re: Texture fps control in wire?
Posted: Sun Jan 08, 2023 22:33
by najork
I did get this to work, so thanks again.
A related followup question...
Is there a way to make a control for the number of instances on a node (effectively changing buffer size)?
I tried setting up different buffers to switch between, but it seems like the GPU just processes them all regardless.
Re: Texture fps control in wire?
Posted: Mon Jan 09, 2023 09:47
by Zoltán
najork wrote: Sun Jan 08, 2023 22:33
Is there a way to make a control for the number of instances on a node (effectively changing buffer size)?
I tried setting up different buffers to switch between, but it seems like the GPU just processes them all regardless.
That will be possible in the 7.14 release.
Re: Texture fps control in wire?
Posted: Wed Mar 08, 2023 01:10
by najork
The new update gets me much closer, and I'm thankful for that!
I've been messing with the new signal flow all day and I'm still struggling to control the instance count for Zoltán's suggested "make your own buffer" setup.
I tried using "expand" to set the instances upstream, as I can't set it on delay directly.
But the instances on delay seem 'sticky.' It either refuses to change or breaks a connection.
Is this sort of the feedback loop simply not friendly to attribute flow? Is there some other way to set it from the outside?
Thanks
Re: Texture fps control in wire?
Posted: Wed Mar 08, 2023 12:55
by Zoltán
How does your patch look like so far?
Re: Texture fps control in wire?
Posted: Thu Mar 09, 2023 23:47
by najork
I hesitate to show too much publicly. I might try putting this effect on juicebar eventually. I could email it if you were curious.
Messing with it more, I can see that delay/feedback was causing the attribute flow to lag behind in some nodes, resulting in a mismatched instance.
Using 'expand' nodes helped to to impose an instance count on the delay, but then created additional error disconnects.
A semi-functional workaround was to use "on change" to break the feedback loop for the moment the instance count was changing. It's not perfect. Instance count still lags behind when shifting down but not up. But I think the idea of temp signal flow to control attributes seems like an okay strategy.
