VapourSynth: A video processing framework with simplicity in mind
vapoursynth.com
vapoursynth.com
Note to mods: The link has a title that could be confusing and isn't descriptive at all, so for the HN entry I took the title from the source code repo, which seems much better (while the main domain seems like the more interesting thing to share).
As you said, the docs don't really describe what it's good for, care to give a short summary?
My biggest question is if the video processing is at least at 10bit. AVISynth fell out of usability for me because at its core it was 8bit.
http://avisynth.nl/index.php/Avisynthplus_color_formats https://www.vapoursynth.com/doc/pythonreference.html#color-f...
for its day, AVISynth was an amazing tool. it was just one of those code bases that was "written in a weekend" that became bigger than ever anticipated and had nearly unsurmountable tech debt. it was pure magic in what it could do though, so it lived far longer than it should.
Its also Python. Which is nice, in terms of readability. And automatically threaded through pipelining, unlike Avisynth.
All of this makes it extremely good for hooking into PyTorch. For instance, VS will automatically queue up processed frames for diffusion or upscaling models. I even tried to hack MVTools into a diffusion video script for temporal stability, with (so far) limited success.
This should be highlighted as the number one feature in the brightest and boldest font possible.
Its not a normal pip installable package, instead its kinda like a seperate Python runtime. Installing plugins without 3rd party software is kinda finicky too, and they are spread all over the place.
It's a DSL for video editing using python as the backing language. You can do things like "take this video, crop it this way" or "apply noise reduction algorithm xyz" or even "Do AI upscaling". Vapoursynth has a pretty decent collection of 3rd party plugins that can do anything you could imagine to a video.