sketch icon indicating copy to clipboard operation
sketch copied to clipboard

Support for saving animations

Open Kevinpgalligan opened this issue 2 years ago • 5 comments

It's currently a hassle to capture a video of an entire sketch. Once the sketch window shows up, it is often too late to start recording. The user can build a delay into their sketch to give themselves more time, or they can save a PNG in each frame and then stitch those together using external software like ffmpeg. However, I think it would be more user-friendly to have built-in support for saving animations.

I initially considered the skippy package, since it's native CL, but I'm not sure that GIF is the best output format given that (from my understanding) it doesn't support transparency and requires that colours be mapped to a limited palette. So, it might be better to just require a dependency on some video-encoding library that there are CL bindings for.

(Yes, there are probably more convenient workarounds for this using external software, but that all falls under the category of "extra hassle for the user").

Kevinpgalligan avatar Nov 09 '23 03:11 Kevinpgalligan

I wouldn't say it's a high priority, but if there's an easy way to do it - go for it! If there's a huge amount of dependencies, maybe it can live in another system, e.g. sketch-extras.

vydd avatar Nov 09 '23 12:11 vydd

I asked around on the #commonlisp IRC channel, Josh_2 generously shared their code for transcoding between video formats using a uiop:run-program call to ffmpeg:

https://plaster.tymoon.eu/view/4042#4042

I think I'll try something similar.

Kevinpgalligan avatar Dec 21 '23 15:12 Kevinpgalligan