I want to create a new “Timelapse” plugin.
It is a (useless but fun!) feature implemented in Clip Studio Paint and I would like to add this one in Krita aswell.
Quickly, what is a timelapse, what is the goal of the plugin? It to create a images sequence or video from the progression of your art, from you started to “record” your progression to the end, when you press “stop”.
I think about how it works in details this weekend:
How the capture works? - I find two possibilities:
- By counting actions: Each x actions, a picture will be taken (undo count as -1).
- Using a timer: Each x seconds and at least, there is one action done, a picture will be taken.
- Where the files and configuration will be saved? - I was thinking first to create a folder next to the drawing file named “drawingname_timelaspe” with a configuration file and captures inside. But what if we renamed the drawing (outside the software)? What if we “save as”?. A way could be to save the path of the folder inside the *.kra file, but is it possible?
- What if we crop (resized) or even do a rotation of our drawing? - As I can see, Clip Studio will use at the end the last size of the drawing and will add border if needed, and will crop all the picture taken before (I’m not sure, i didn’t test myself), but I really don’t know about the rotation.
- What is cost of a capture? - I think it is important to do not interrupt the artist each x action/seconds because the plugin captures a picture. Is there any way to copy the current pic with a minimal cost? Maybe using GPU cache? Using threads on some part? But how much in RAM it will cost? Or even on disk? Can we capture each action/macro and use this instead?
- How to export the result? - Image sequence will be easy, specially if we save each moment as a png/jpg file. But can we find a path to ffmpeg for video?
My current state is to find some answers before writing any code, or maybe find other problems/question!
If you have any clues, ideas or even questions or observation, feel free to put a message bellow. Any help is really welcome.