Log in

View Full Version : Visually edit your FFmpeg command-line


TomV
17th June 2026, 17:58
FFmpeg is the undisputed king of media processing frameworks, but the command-line syntax can be complicated and difficult for humans to understand. All FFmpeg jobs are really a graph, connecting nodes that are the libraries that do the actual work (open source files, demux, decode, filter, encode, etc.). Until now, you would have to visualize how that graph is constructed in your head.
I redesigned the interface and media orchestration layers of FFmpeg in a new open-source project (same LGPL license) called MediaMolder. I can't offer binary builds (for obvious reasons), but it's relatively easy to clone and build (especially on MacOS). It runs the same libav* libraries that FFmpeg runs. It has a GUI that launches from the binary build into your default browser. You can import your FFmpeg command-line string, visualizing the media processing graph. You can build a graph, dragging nodes (inputs, encoders, filters, etc.) from a pallet. Click on a node to edit its properties. Nodes are "wired" from output of an upstream node to the input of the next node by dragging from audio, video, subtitle or data pads on the nodes. Mouse over this wire (edge) to see the format of the content flowing across that edge. Validate your job, and run it in the GUI. When you're happy with it, you can export it to the equivalent FFmpeg command line. Note that MediaMolder jobs are defined in JSON files, which will also store media file properties and your graph layout (if you used the GUI to create them).
https://github.com/MediaMolder/mediamolder

Feedback and contributions are welcomed.

Z2697
19th June 2026, 18:26
This looks interesting, but I have a question, is the browser GUI like electron, or a web UI (the kind that binds a port and can be accessed via regular browser)?
I'd assume (and prefer) the latter?

TomV
19th June 2026, 22:12
This looks interesting, but I have a question, is the browser GUI like electron, or a web UI (the kind that binds a port and can be accessed via regular browser)?
I'd assume (and prefer) the latter?
It's Go code, so it compiles to a local binary. You can build it with or without the front-end GUI code. See https://github.com/MediaMolder/mediamolder/blob/main/docs/build-and-packaging.md

If you've built the binary with the front-end, you can then launch the binary with...
./mediamolder gui (on a Mac)
and the binary becomes a web server that launches a web page in your default browser (127.0.0.1:8080/ by default). It's a React GUI that communicates with the binary through a REST API.

v0lt
21st June 2026, 06:35
Is there a ready-made solution? So the user can simply download, unzip the archive (or install the app using the installer), and launch MediaMolder.