-
Notifications
You must be signed in to change notification settings - Fork 221
Description
The Looping loader just appears to be a LTXV base sampler concatenated to several LTXV Extend Sampler.
You can only set a single conditional frame at the hardcoded index "0"
The negative index latent also seems to work in a similar way, that it works but only for the first frame, while it takes a list of frames as well; passing a list of latents just doesn't work, the LTXV add latent creates a list of 9 latents, which result in fast animation or just a flicker; making you think you need to pass a list of latents that is the same size as the video itself so that once the _extract_latent_spatial_tile function is called, it picks those latents, but nope; somehow that results in an error.
tile_out_latents["samples"].to(final_output.device) * tile_weights
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
RuntimeError: The size of tensor a (22) must match the size of tensor b (16) at non-singleton dimension 2
LTXVAddGuide and LTXVAddLatentGuide were tried too
So it seems as the looping loader is actually doing worse than just putting a base and then an extend, at least the base was more configurable than a single initial frame.
For an efficient functionality the frames should be arbitrary, yes, I can see the issue on where the extend has these overlap frames so then such frames (or close to them) should not be valid frames for setting conditional.
Which may be achieved just as well, if not better were one to support a way to specify conditional frames in the extend sampler.
Yet conditional frames appear to be just a LTXVAddGuide followed by a LTXVCrop
So I tried using the LTXVAddGuide and set a conditional image and set it to latents as input, which should set the optional_initialization_latents for both the LTXVBaseSampler and the LTXVExtendSampler according to its extraction by the tile function but it was as if it was just ignored completely, the process must be different than it appears by the code; since when using conditional frames with the base sampler it works; but passing using LTXVAddGuide to latents in the Looping Sampler isn't doing it.