Manim-Notebook / manim-notebook

Simple commands to replicate the manim dev workflow in VSCode
MIT License
5 stars 0 forks source link

Export current scene as mp4 #38

Open bhoov opened 6 days ago

bhoov commented 6 days ago

We are very close to a full pipeline for Manim development. Crucially, we are missing the final step of actually exporting a scene as an e.g., mp4 of some quality (a thought I came up with as I was writing the "sales pitch demo" #37 for this extension)

At the minimum, we want to expose a command that lets users choose the following from the manimgl tool:

  1. Image quality (low, med, hd, uhd)
  2. fps

(happy to discuss more advanced options like Gif?, Transparent?, background color?, etc., but I was hoping to appeal to the broadest user that would care about the quality of the mp4 they were generating)

Finally, let the user choose which file to save the output video to

Splines commented 5 days ago

UI: File picker

For the file picker, see this API. We could use that to let users specify a location where to save their file.

UI: Trigger export

Users somehow have to trigger the export command. Invoking it from the command palette is probably not the best choice.

UI: Define settings for export

Users could define settings in a multi-step quick pick. If that gets too long, we might want to use a custom webview view even if that is discouraged by VSCode. But they don't specify what you should use instead then since they also advise against using multi step quick picks to create wizards (see my comment). And in the Webview UI toolkit there are some nice elements that we could use like a dropdowns, checkboxes etc.

Splines commented 4 days ago

Maybe you could also vote for this issue at VSCode since they look for issues with high votes to organize their backlog. I think it'd be really cool to be able to use onClick events for gutter icons. With this we could add buttons like the "debug button" as envisioned by bhoov here.