Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for saving animations #116

Open
Kevinpgalligan opened this issue Nov 9, 2023 · 2 comments
Open

Support for saving animations #116

Kevinpgalligan opened this issue Nov 9, 2023 · 2 comments

Comments

@Kevinpgalligan
Copy link
Contributor

Kevinpgalligan commented Nov 9, 2023

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").

@vydd
Copy link
Owner

vydd commented Nov 9, 2023

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.

@Kevinpgalligan
Copy link
Contributor Author

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants