Time manipulation of an imported .lst

I discovered Synfig a couple of days ago, great work all I’m making good progress running 1.0 rc2.

I am making a mobile app demo video, I have phone skins sliding in and out with on-device recorded video overlaid. I have read the info on .lst files and used mplayer to export the phone’s .mp4 as a dir of .png files and made a .lst file and added the FPS to the top.

This all works lovely. I notice the parameters panel for the .lst lets me set the time offset… but how do I manipulate it more than that? My live-recorded onscreen actions don’t tie in precisely with where they need to be in the surrounding Synfig animation so I want to pause the .lst at various points and then resume. I can’t see how to do that?

The wiki page on .lst and Papagayo suggests that this might be possible, can the .lst file describe at which frame a particular image should appear? Or can I change the FPS mid-file?

Time offset parameter allow to control the time that is passed to the lst layer.
If it is zero then the time passed to the layer is the current animation time but you can change the time offset parameter in many ways.

First you can just change its value to something different from zero. If the value is positive it would advance the time of the lst layer the number of seconds or frames you specify. Negative values delays it accordingly. You can animate the offset parameter to advance or delay the lst layer as you want.

One interesting thing that you can do with the parameter is to convert it to a math formula and control the subparameters of that formula. In particular a time parameter can be converted to linear and setting its “rate” subparameter to be -1 It would stop the animation of the lst layer. Setting the rate to -2 would reverse the animation and setting it to 1 would double the animation speed of the lst layer.


Aha, I hadn’t thought that the time offset could be changed across time… great, thanks! :smiley:

Thanks, I have been experimenting with this. I’ve set the Time Offset to linear.

I’m confused when trying to pause by setting Offset to -1. When I start it playing, some 12s in to my Synfig animation, I give the .lst an offset of -14s and rate of 0f. Sometime later I try to pause it by adding a waypoint which sets the rate to -1s but it jumps to the start of the .lst! I haven’t typed in the Offset box which still says -14s. The ‘Time Offset’ header says -38s whereas in the frames before it constantly shows -14s.

Time control is confusing. Remember to do the calculations in terms of the current time (global) and the time you want to visualize from your lst file.


When the rate is 0 the offset is relative to the current globalTime but when the rate is -1 the offset is relative to globalTime 0 - the start of the .lst - and not current globalTime.

So when pausing I need to calculate the offset myself whereas when playing I can just leave it at -14s.

I assume that means when I restart playing after say a 2s pause I need to change the offset to -16s.

I’m glad I’m not the only one who thinks time control is confusing! :slight_smile: