AGPL licensed, which seems perfect for this kind of product:
The AGPL (Affero General Public License) is a type of free software license developed by the Free Software Foundation. It is similar to the GPL (General Public License) but with one key difference:
Network Use Clause: If you modify AGPL-licensed software and use it over a network (like a web app or API), you must also release your source code to the users who interact with it.
In other words, with GPL, you have to share your code only when you distribute the software. With AGPL, you have to share your code even if users are just accessing it over the internet (like using a SaaS product). AGPL was created to close the "SaaS loophole" in the GPL.
I get to be one of the lucky few to learn today that ffmpeg was ported (well, transpiled) to WASM. This is more specifically built on that port: https://github.com/ffmpegwasm/ffmpeg.wasm
This also means that despite being a locally hosted ffmpeg frontend, it's still slower than native ffmpeg and bound to WASM limits like file size (still a generous 2GB for images and audio, but not as viable for big video conversions).
Still weird that this project doesn't seem to acknowledge that anywhere.
It really is crazy how true the 1000x statement is.
We use QuickJS (the JavaScript runtime he authored) in Minecraft (Bedrock) where even more developers use it to mod Minecraft. It's a huge pyramid of developers!
Checking out Bellard's website is a great high level list of works: https://bellard.org/
That's kinda like being into sports (maybe even professionally) and comparing oneself to an Olympic champion. It's great to be inspired by them, but it's very important not to be discouraged by what they achieved. We are all standing on the shoulders of giants.
Actually, ffmpeg exists thanks to the legendary Fabrice Bellard. He's the rarest kind of programmer, stunningly capable and on a totally different wavelength of existence in terms of breadth of achievements. He made ffmpeg, incepted QEMU, and is a mobile / cellular communications guru.
I could tell from the list of file formats that it had to be a front-end for ffmpeg. Kind of disappointed, since I can already do that easily enough. What I was hoping for was a converter for 3D model formats, which is a real pain sometimes.
It is wonderful and useful and all that BUT the auto opt-in analytics information should be on the main page.
I appreciate you are using Plausible (good) and it is perfectly understandable and justifiable that you want to know how vert is used, but why hide it at the bottom of the settings screen? It just makes me trust you less. Yes, I could audit the source code for other surprises. That is not the point.
Please treat my comment as a suggestion / feedback. Otherwise, congratulations on an enormously useful and easy to use project!
With the recent findings [0] that some of the “free file converter” websites in the wild were actually injecting malware into the results as the first stage of various attacks, I’ve wanted to stand something like this up on a server for my family.
This looks like exactly what I’ve been looking for.
I'll hijack this to plug Stirling PDF[0], I have it running on a Raspberry Pi with docker compose and from time to time it's incredible helpfull to edit PDFs without sending them to a third party.
I wish it were more common for open source licenses to have an attribution clause, like Apache does with its (optional) NOTICE files. When you put years of effort into a work, you deserve credit for it.
Edit: Actually, using a library via a package manager would likely be considered "linking" and not a Derivative Work, so I don't think even Apache's clause would apply in many cases.
Though I think as long as video conversion requires uploading to a jobserver, you're probably better off just invoking ffmpeg directly. Would suffer a lot from upload and download times on files that large. Though I wouldn't be surprised if problems like that become minimal if/when the video conversions can also run pure out of WASM as well.
Is there a version of this that would support my custom presets for AVC/HEVC mp4 encoding with video filters like deinterlace/resize and similar (and/or audio filters like ebu R128)? (p.s. Also my usual input type is cinefrom/mov, which this one is not happy with for some reason)
As far as I can tell, what you're missing is the massive ease-of-use and approachability, especially for non-technical users, of a web-based graphical "convert X to Y" interface vs. facing command line ffmpeg, which they probably haven't heard of.
I feel this is easier than those solutions in a lot of cases - mainly because you don't need to install anything. Just open website, drag and drop a file, pick target format, done.
All of that. A couple more thoughts. As a project it brings together
energy to a task/configuration: namely that of making sure all those
disparate command-line tools or bits of lib code are brought together
for the specific purpose of serving file translations from some spot
in a transactional fashion. So that's some value.
Why on the front page? That question might also have a non-technical
answer. What's going on in news and events? Who's been setting up file
translators and then "Dude I have over 4,000 soundfiles, pictures,
address-books..." ... "Whoah? Like. howdy manage that one?"
... "People just submitted it. Zuck fucks"
Yeah I also cannot for the life of me understand why anyone would want a web site that converts files. Just install a desktop app to do the same (GUI or otherwise) and it will be more pleasant to use, and more performant. The Web is not a good application platform no matter how much people try to shoehorn it into being one.
yeah you can already build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem. From Windows or Mac, this FTP account could be accessed through built-in software.
For some reason even technical and linux-savvy people, (I’ve seen this on zoom calls) will google up an image or video converter. I don’t get it either, but if this provides an alternative to those awful ad-infested sites I guess it is an improvement.
I've got a few file converter apps on my laptop. They're faster and better and you don't need to stream the data off somewhere just to process and stream back, which is silly.
A relevant audience are the corporate computing inmates, who cannot install anything locally... They are happy to find utilities wrapped behind some web front.
There are already lots of online convertors. This is FOSS and a bit more trustworthy but very few people in corporate environments will care about that
An often missed driver for the cloud-ification of everything is that it offers a way to escape corporate IT. Sending a 20mb file 2000 miles away to do something trivial to it and send it back is easier than getting permission to install an app.
The reality is also that not everyone isn't technical enough to deal with `ffmpeg` directly. At some point I basically hosted hacked-together website which simply used `ffmpeg` under the hood so that my dad, who's not as technically literate, could easily convert his files. Now I don't have to do this anymore because I can just host a vert.sh instance:)
I run a selection of things like this on my home network for my wife to use. It's handy to have their just be tools living on the network to use, particularly if you're setting up a new machine or using a work laptop off the guest network or the like.
The conversion for this one happens all client-side - no streaming data to a server required.
If you're happy using your existing apps, you probably wouldn't see much use in this. But I can definitely see how the UI/UX would appeal to a lot of people.
It's cool the source code really is open and available:
https://github.com/VERT-sh/VERT
AGPL licensed, which seems perfect for this kind of product:
The AGPL (Affero General Public License) is a type of free software license developed by the Free Software Foundation. It is similar to the GPL (General Public License) but with one key difference:
Network Use Clause: If you modify AGPL-licensed software and use it over a network (like a web app or API), you must also release your source code to the users who interact with it.
In other words, with GPL, you have to share your code only when you distribute the software. With AGPL, you have to share your code even if users are just accessing it over the internet (like using a SaaS product). AGPL was created to close the "SaaS loophole" in the GPL.
Further reading: https://opensource.stackexchange.com/questions/7578/what-are...
Does writing a library that does an RPC to AGPL licensed software count? Even if you don’t modify the AGPL code in any way?
As I understand the license, it doesn't apply to clients, just the service itself.
[dead]
It's ffmpeg all the way down. I can't imagine what the internet would be if there weren't such a marvelous piece of software.
I get to be one of the lucky few to learn today that ffmpeg was ported (well, transpiled) to WASM. This is more specifically built on that port: https://github.com/ffmpegwasm/ffmpeg.wasm
That project has an interactive playground that essentially describes and demonstrates how it works: https://ffmpegwasm.netlify.app/playground
This also means that despite being a locally hosted ffmpeg frontend, it's still slower than native ffmpeg and bound to WASM limits like file size (still a generous 2GB for images and audio, but not as viable for big video conversions).
Still weird that this project doesn't seem to acknowledge that anywhere.
It just needs pandoc to do document conversions and we are golden
pandoc-wasm?
That's a whole true, creator Mr Fabrice Bellard, a 1000x developer, also create Qemu, another essential gem of software.
It really is crazy how true the 1000x statement is.
We use QuickJS (the JavaScript runtime he authored) in Minecraft (Bedrock) where even more developers use it to mod Minecraft. It's a huge pyramid of developers!
Checking out Bellard's website is a great high level list of works: https://bellard.org/
WHAT!? Unbelievable productivity. I'm in awe (and a renewed impostor syndrome).
That's kinda like being into sports (maybe even professionally) and comparing oneself to an Olympic champion. It's great to be inspired by them, but it's very important not to be discouraged by what they achieved. We are all standing on the shoulders of giants.
And TinyC, and the Bellard formula for calculating pi.
It is one of the wonders of the world. Such a gift that we get to use it for free, from end users like us to large corporations like Netflix.
Actually, ffmpeg exists thanks to the legendary Fabrice Bellard. He's the rarest kind of programmer, stunningly capable and on a totally different wavelength of existence in terms of breadth of achievements. He made ffmpeg, incepted QEMU, and is a mobile / cellular communications guru.
https://en.wikipedia.org/wiki/Fabrice_Bellard
I could tell from the list of file formats that it had to be a front-end for ffmpeg. Kind of disappointed, since I can already do that easily enough. What I was hoping for was a converter for 3D model formats, which is a real pain sometimes.
It is wonderful and useful and all that BUT the auto opt-in analytics information should be on the main page.
I appreciate you are using Plausible (good) and it is perfectly understandable and justifiable that you want to know how vert is used, but why hide it at the bottom of the settings screen? It just makes me trust you less. Yes, I could audit the source code for other surprises. That is not the point.
Please treat my comment as a suggestion / feedback. Otherwise, congratulations on an enormously useful and easy to use project!
With the recent findings [0] that some of the “free file converter” websites in the wild were actually injecting malware into the results as the first stage of various attacks, I’ve wanted to stand something like this up on a server for my family.
This looks like exactly what I’ve been looking for.
- [0] https://www.fbi.gov/contact-us/field-offices/denver/news/fbi...
I'll hijack this to plug Stirling PDF[0], I have it running on a Raspberry Pi with docker compose and from time to time it's incredible helpfull to edit PDFs without sending them to a third party.
- [0] https://github.com/Stirling-Tools/Stirling-PDF
Wow, this is scary, I was about to ask which some of these websites are, but I found this link that lists some of them. https://www.helpnetsecurity.com/2025/03/18/fbi-free-file-con...
It's a great UI to ffmpeg - I wish they gave it some credit on their landing page.
At least they do in the Settings:
"The vertd project is a server wrapper for FFmpeg [...]"
I wish it were more common for open source licenses to have an attribution clause, like Apache does with its (optional) NOTICE files. When you put years of effort into a work, you deserve credit for it.
Edit: Actually, using a library via a package manager would likely be considered "linking" and not a Derivative Work, so I don't think even Apache's clause would apply in many cases.
I did something similar using ffmpeg WASM in the browser. But it does have limits sadly. You can't really do heavy tasks. https://vididoo.vercel.app/
What's the limiting factor though? limited VM memory in the browser?
This is definitely going in my bookmarks.
Though I think as long as video conversion requires uploading to a jobserver, you're probably better off just invoking ffmpeg directly. Would suffer a lot from upload and download times on files that large. Though I wouldn't be surprised if problems like that become minimal if/when the video conversions can also run pure out of WASM as well.
Is Vert like a simplified version of https://ffmpeg-web.netlify.app/ ?
I think yes.
Nope. They process videos in a server instead.
> Video uploads to a server for processing by default, learn how to set it up locally here.
The server is open source too: https://github.com/VERT-sh/vertd
Is there a version of this that would support my custom presets for AVC/HEVC mp4 encoding with video filters like deinterlace/resize and similar (and/or audio filters like ebu R128)? (p.s. Also my usual input type is cinefrom/mov, which this one is not happy with for some reason)
How is this different from image/graphics magick, ffmpeg, oiiotool etc?
Or: what am I missing here, why is this on the front page?
As far as I can tell, what you're missing is the massive ease-of-use and approachability, especially for non-technical users, of a web-based graphical "convert X to Y" interface vs. facing command line ffmpeg, which they probably haven't heard of.
There are already GUIs for ffmeg and most image editing applications can save in multiple formats so its still not clear to me what this adds
It's not clear to me why that's a problem?
I feel this is easier than those solutions in a lot of cases - mainly because you don't need to install anything. Just open website, drag and drop a file, pick target format, done.
Which is only true if you are not interested in the “self-hostable” part and you installing an app is a significant difficulty.
Once an app is installed locally it is more convenient to use - that is why it is so common for apps to replicate (or just wrap) websites.
If you are not interested in the self-hostable part there are lots of online converters.
All of that. A couple more thoughts. As a project it brings together energy to a task/configuration: namely that of making sure all those disparate command-line tools or bits of lib code are brought together for the specific purpose of serving file translations from some spot in a transactional fashion. So that's some value.
Why on the front page? That question might also have a non-technical answer. What's going on in news and events? Who's been setting up file translators and then "Dude I have over 4,000 soundfiles, pictures, address-books..." ... "Whoah? Like. howdy manage that one?" ... "People just submitted it. Zuck fucks"
Yeah I also cannot for the life of me understand why anyone would want a web site that converts files. Just install a desktop app to do the same (GUI or otherwise) and it will be more pleasant to use, and more performant. The Web is not a good application platform no matter how much people try to shoehorn it into being one.
yeah you can already build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem. From Windows or Mac, this FTP account could be accessed through built-in software.
For some reason even technical and linux-savvy people, (I’ve seen this on zoom calls) will google up an image or video converter. I don’t get it either, but if this provides an alternative to those awful ad-infested sites I guess it is an improvement.
please add HEIC: the default file format from iPhones
Maybe we could compile ffmpeg to WebAssembly and handle video conversion offline too?
That's exactly what this does: https://github.com/VERT-sh/VERT/blob/2c8cb1922cf611489022645...
`@ffmpeg/ffmpeg` is https://ffmpegwasm.netlify.app.If you finessed that `supportedFormats` array to add video formats, this would probably just work.
That isn't what they stated in their website.
> Video uploads to a server for processing by default, learn how to set it up locally here.
The server code is open source too: https://github.com/VERT-sh/vertd
If you follow the link on the sentence you quoted, the reason why is explained there
Like this? https://github.com/ffmpegwasm/ffmpeg.wasm
Another one : ConvertX https://github.com/C4illin/ConvertX
Images, videos, documents, etc.
Tried a video, got "invalid digit found in string". I will stick with ffmpeg on termux I guess.
Why do such things need to be hosted at all?
I've got a few file converter apps on my laptop. They're faster and better and you don't need to stream the data off somewhere just to process and stream back, which is silly.
A relevant audience are the corporate computing inmates, who cannot install anything locally... They are happy to find utilities wrapped behind some web front.
There are already lots of online convertors. This is FOSS and a bit more trustworthy but very few people in corporate environments will care about that
What a silly take.
> Why do such things need to be hosted at all?
because: corporate computing inmates, who cannot install anything locally
Basically, denying or not seeing the practicality factor of web hosted solutions is either trying to be edgy or worryingly myopic.
Ahh good point.
An often missed driver for the cloud-ification of everything is that it offers a way to escape corporate IT. Sending a 20mb file 2000 miles away to do something trivial to it and send it back is easier than getting permission to install an app.
It doesn't send the file though.
The reality is also that not everyone isn't technical enough to deal with `ffmpeg` directly. At some point I basically hosted hacked-together website which simply used `ffmpeg` under the hood so that my dad, who's not as technically literate, could easily convert his files. Now I don't have to do this anymore because I can just host a vert.sh instance:)
This isn't true for me.
My most powerful machine tends to be the home server, and some of my laptops are terrible.
Probably harder to monetize traffic and upsell subscription extras. I agree, if it's all done on the client anyway, it should just be a local app.
I run a selection of things like this on my home network for my wife to use. It's handy to have their just be tools living on the network to use, particularly if you're setting up a new machine or using a work laptop off the guest network or the like.
The conversion for this one happens all client-side - no streaming data to a server required.
If you're happy using your existing apps, you probably wouldn't see much use in this. But I can definitely see how the UI/UX would appeal to a lot of people.
Looks neat. Would love something like this with optional yt-dlp support as well.
Webp supported yay!
Is there a Vert for html to PDF?
Pandoc https://pandoc.org/
Another good option is to actually just use puppeteer (headless chrome)
ffmpeg is so great~
HEIC nonsense from Apple supported?