Professional video editing, right in the browser with WebGPU and WASM (tooscut.app)
341 points by mohebifar a day ago
Sportinger a minute ago
hey hi.
i did the same masterselects.com
ashish01 3 hours ago
> Browser not fully supported
> This editor relies on WebGPU for rendering, which currently works best in Chrome or other Chromium-based browsers. You may experience issues in your current browser.
(reminds of works in IE6)
FormularSumo 17 minutes ago
Missing support in Firefox on Linux and Android, otherwise seems to be pretty well supported in recent browsers.
blendaddict 6 hours ago
I tried taking a video and underlaying music from an mp3 i have. This is not possible. I can not create a second audio track only video tracks. When i create more video tracks i can't scroll down to the audio track. If I take the audio from the music and try to drag it over the audio of the video it deletes the video. One of the most trivial use cases of video editing is already not covered.
skyberrys 6 hours ago
It is possible with two videos. When I did this, I dragged the two video files into the timeline (one a LED globe with background noise, second video a fireplace with fire crackling sounds), clicked the eye to hide the fire in one video, clicked the mute to silence the LED globe noise, and then copy pasted the sounds from the fire video a few times over. I think I know what you mean by the scrolling, I hovered over the lower bar top and made the track bars window taller instead so I didn't need to scroll. I didn't try with an mp3.
algolint 9 hours ago
The skepticism around browser-based creative tools often ignores the massive shift that Figma brought to UI/UX design. While 8K multi-track editing might remain a native domain for a while, the vast majority of video content created today is for social media, where accessibility and collaboration speed are more valuable than maximum throughput. The fact that this leverages WebGPU and WASM shows we're finally moving past the "JavaScript is too slow" era into an "architecture matters" era for the web.
m-schuetz 8 hours ago
I actually prefer browser-based tools. Havent installed hex editors since hexedit for web is available; Photopea covers my occasional photo/picture editing needs, google sheets/slides/docs is my main office suit, etc. It's great to not have to install things.
skyberrys 15 hours ago
I used it to combine the sounds from one video with the imagery of another video. It worked easily enough. It feels really simple to use, there aren't many ways for me to make mistakes. I could easily switch to using this tool. Fyi I used Brave Browser without issue.
mohebifar 14 hours ago
Amazing! That's really great to hear! Let me know if you ever have any issues or feature requests in the GitHub issues.
xrd 21 hours ago
I've been using kdenlive and it is functional as an open source video editor. I don't know if kdenlive supports shared assets and projects, but this feels like something this project could offer and exceed expectations. Is that on the roadmap?
mohebifar 20 hours ago
Yes, that was part of the thinking behind the licensing choice. The goal was to keep the engine itself open source, while creating opportunities to monetize adjacent offerings like cloud file management, sharing, AI editing, and other higher-level capabilities.
jqbd 2 hours ago
I'd love some developer love for Blender's editor instead
msalihb 7 hours ago
Thats great, I really enjoy when someone try to shake the *dobe's reign
bilekas 5 hours ago
This is a far cry from Adobe's suite. It's like a version of MsPaint Vs Photoshop.
derodero24 6 hours ago
I do the same thing — Rust core compiled to both native (napi-rs) and WASM from a single codebase, different domain though. The tooling has gotten really solid for this. Curious how the perf splits between WASM compute and WebGPU for the actual video processing — in my experience the WASM overhead is small for pure computation but I/O patterns change things a lot.
blendaddict 6 hours ago
please post link, this is something I need
nextaccountic 5 hours ago
> napi-rs
why not tauri?
mohebifar a day ago
Free and open source NLE video editor powered by WGPU, WASM, WebGPU, Rust, and Tanstack Start
RobotToaster 20 hours ago
This is absolutely not an open source license https://polyformproject.org/licenses/noncommercial/1.0.0/
It violates point 1,5 and 6 of the open source definition https://opensource.org/osd
flohofwoe 11 hours ago
For nitpicking like that let me do some counter-nitpicking: please write 'Open Source (OSI)', 'Open Source (TM)' or at least capitalize it as 'Open Source' so that people know where you're coming from. The commonly used 'open source' just means 'the source is in the open'. Let's not allow organizations to hijack commonly used words.
circuit10 7 hours ago
mohebifar 18 hours ago
You are absolutely right. I just changed the license to ELv2.
RobotToaster 11 hours ago
bilekas 15 hours ago
throawayonthe 11 hours ago
Imustaskforhelp 10 hours ago
maxloh 18 hours ago
dylan604 17 hours ago
If you want free, Resolve will run circles around whatever open source thing you can find. No need for WGPU, it just runs the GPU.
Sadly, things like this just put a bad taste in my mouth about the whole concept of running code in a browser like this. It's buggy as hell. It doesn't run in all browsers. And I really have to ask why we think the browser is the place to run this. We've moved from Java and now to WASM in a browser, but only some browsers.
mashreghi 11 hours ago
Different use case. "Runs everywhere instantly" beats "installs + config" for a lot of workflows.
tim-projects 15 hours ago
In my experience getting it to run on my Intel gpu on Linux was not trivial. And when I did I discovered it doesn't support standard video formats making it a complete non starter.
Kdenlive is much better imho for basic edits
vunderba 17 hours ago
+1 for Davinci Resolve. I used the free version for years (Windows and Mac versions) before finally picking up a copy of Studio which is still very reasonably priced and is a flat fee.
hrmtst93837 11 hours ago
Browser editing makes sense for review links, shared projects, and zero-install onboarding, but if the job is just cutting footage fast on one machine then a desktop app will smoke it and the compatibility mess buys you nothing. The browser sandbox is a decent distribution hack, yet once you stack WebGPU, WASM, codecs, file access, and browser-specific bugs on top of each other, you are rebuilding a worse native stack with extra failure modes and pretending that counts as progress. Resolve exists.
mashreghi 11 hours ago
Fabricio20 17 hours ago
Resolve requiring an account to download is what turned me away when I needed to do a quick edit the other day. Oracle much?
windowsrookie 16 hours ago
nullpoint420 14 hours ago
motoxpro 16 hours ago
ErroneousBosh 9 hours ago
RobotToaster 11 hours ago
I stopped trusting resolve after they decided to paywall reactor. Putting a paywall on plugins that users contribute for free is just shitty.
csomar 16 hours ago
> And I really have to ask why we think the browser is the place to run this.
This is a big barrier if you want cross-compatibility and making Linux usable for everyday people. My whole interface is a terminal and a browser. I could use/pay for something like this in the same way I use figma. I don't need an app and when I open my iPad I can access whatever I was working on.
The browser should have been the place to run all of this from the very start; but Apple/Google decided to create walled gardens for their systems.
empressplay 20 hours ago
I think you selected the wrong license. Your license currently as written actually forbids _using_ the software for a commercial purpose, eg if someone monetizes a video edited using your software, they are in violation of your license, which is not what you want.
Look at something like the Hashicorp BSL [1] for inspiration on crafting a license that forbids specific commercialization of the software itself.
mohebifar 18 hours ago
You are right. Thanks for the insights! I just changed the license to ELv2.
esafak 20 hours ago
Any plugin plans? In case you don't know, there is a standard for it: https://openeffects.org/
Would you like to share your development experience? I suggest creating a CONTRIBUTING.md and enabling discussions if you are open to PRs.
mohebifar 20 hours ago
Great question! I actually have built a poc that is not released yet. It's on the roadmap. It requires some tooling for the devs building these plugins like a CLI for building the WASM binaries, bundling, manifests, etc.
The current poc still has significant performance overhead, and that overhead grows as the plugin system becomes more powerful. If plugins are only allowed to apply a WGSL shader, the performance impact is almost negligible. But features that require broader access to timeline data, such as time shifts, speed ramps, or full timeline transformations, become much more expensive and make zero-copy architectures harder to reason about.
mohebifar 12 hours ago
I added CONTRIBUTING.md. I also took a look at OpenFX. My current view is that supporting OFX in the browser would be hard, since the standard and its existing tooling are not designed around wgpu or browser execution. Tooscut would likely need its own plugin model rather than adopting OFX as is.
That said, I would be very interested in hearing your thoughts if you are open to contributing or discussing what a practical plugin system should look like in this environment. Please file a GitHub issue if you can
esafak 5 hours ago
bensyverson 21 hours ago
Really cool! It may not replace a dedicated NLE for professional editors, but I love that it's a fully functional NLE that you could drop into an existing web app that handles video.
mohebifar 21 hours ago
Yes, but the goal is to become the photopea of video editing. Something quick that you can launch via web that can support 80% of the day to day use cases.
jofzar 10 hours ago
Good goal, I love photopea for this exact reason. I have no need for photoshop anymore (which I had purely for quick edits) I would love the equivalent for video
bensyverson 20 hours ago
Nice. It feels like mobile is the natural place for it—how feasible is that today?
sails 5 hours ago
This is good! Switching from the various terrible online tools I cobble together. (Descript, Riverside, etc etc)
Request for transcription and transcription editing
xnx 19 hours ago
How does this compare to https://omniclip.app/ ?
mohebifar 18 hours ago
Seems interesting. I had not seen Omniclip specifically. But like most web-based NLEs I've seen, its UX feels unfamiliar. My goal was to build a desktop-grade professional editor that feels familiar to editors like Premiere Pro, DaVinci Resolve, and Final Cut Pro, rather than reinventing the editing experience.
Saris 7 hours ago
I had not used either before reading this thread, but omniclip has an odd interface, it's very unfamiliar to me compared to a standard NLE, and the loading time was quite long (maybe just HN load?).
Retr0id 20 hours ago
Tried it in Firefox and it was working for a few minutes and then managed to crash the whole browser. Definitely a firefox and/or gpu driver bug though. I can't wait for WebGPU browser/platform support to get a bit more mature, because it's awesome (although the security implications do make me nervous).
mohebifar 18 hours ago
Yep. Unfortunately, Firefox has a poor WebGPU support atm.
skiing_crawling 18 hours ago
What would be really awesome is if it could use the server its hosted on's GPUs. I have a multi GPU server and it would be great to be able to edit videos from my table or couch without spinning up my laptop so hard.
ubercow13 4 hours ago
TechSquidTV 18 hours ago
I like the promise, but the hill is very steep and I don't see much on delivery here. Very hopeful, but I would rather see this kind of thing launch significantly further than where it is at. This appears to be a good base, now let's see it again when there is Text support, animations, transitions, filters, etc.
mohebifar 18 hours ago
We actually already support text, transitions, and animation of basic properties as well as some filters. I would be interested to hear more about your use case and which capabilities you felt were missing from what you saw.
Jayakumark 20 hours ago
great project but non commercial license, makes me not to go near it.
mohebifar 20 hours ago
I see. I haven't decided on the commercial license yet. This might be temporary. I started this as part of another for-profit side project (for dubbing videos with AI). I may change the license later as the quote unquote "copyright owner". If I see the open-source community is active and finds it useful, I'd switch to a free-er license. Things are not super clear yet to me re what can be done with a web based video editor.
tredre3 20 hours ago
I personally don't see a problem with having the code be for non-commercial use only, but your hosted instance probably should allow commercial use. Otherwise I don't see how you're going to become the Photopea of video, which you stated as a goal.
mohebifar 18 hours ago
cpb 20 hours ago
+1 for seeking clarity on commercial use.
I want to support some colleagues with automating some of the setup of routine video editing. Can't consider this impressive work without that clarity!
mohebifar 18 hours ago
pjmlp 13 hours ago
This will only handle toy videos, given the browser limitations in sandboxing and 3D rendering.
Not really sure why someone would use this instead of a proper native application.
mohebifar 13 hours ago
The goal here is not to replace Premiere Pro across every professional workflow. But it is also not intended to be a toy editor.
Modern browser and GPU capabilities are already sufficient for a large category of practical video editing tasks. We are not targeting blockbuster scale 8K movies at least for now, but we are targeting real jobs people do every day across social, commercial, and non-commercial video production.
pjmlp 12 hours ago
Except WebGPU 1.0 isn't modern, it exposes hardware capabilities from a decade ago, better than WebGL 2.0 sure, which is what mobile GPUs were in 2010.
And the sandboxing get up to 4 GB, which in most cases will kill the browser depending on how many tabs are open.
mashreghi 11 hours ago
m00dy 12 hours ago
A chrome tab still has 4gb max memory limit right ?
mohebifar 11 hours ago
mashreghi 11 hours ago
mashreghi 12 hours ago
Same argument was made about Figma vs native tools, didn't age well.
smallerize 4 hours ago
Figma made the switch in 2017, and since then, they are still the example that gets brought out because other deployments have been a lot more muted.
pjmlp 8 hours ago
Figma is the exception that confirms the rule, and mostly used by Web designers anyway.
aprilthird2021 11 hours ago
Same argument was also made about progressive web apps vs native apps, and the latter are still going quite strong. Idk
onion2k 10 hours ago
Unreal Engine 5 can run in your browser. What "3D rendering" capability is missing for video work?
pjmlp 8 hours ago
Unreal Engine 5 can limp on my browser, and usually most demos end up crashing it, not really a good example.
What is the most successful game on the browser, done with Unreal 5 that can compare to Flash 3D games, other than the citadel demo done with Unreal 3, and with Infinity Blade graphics as baseline?
Exactly, crickets.
mashreghi 12 hours ago
Photopea wasn't "Photoshop replacement" either, still massively useful.
jofzar 10 hours ago
Imo photopea is a Photoshop replacement, it's just not a professional Photoshop replacement.
It's for everyone who had a pirated version of cs3 on their computer for basic edits.
pjmlp 8 hours ago
Never heard of it.
bilekas 16 hours ago
Nice tool, but not a very useful license.. I would love to integrate something like this as an additive to users but if I'm not mistaken, that's completely off limits for this license type ?
mohebifar 11 hours ago
Could you please tell me more about your use case. I've changed the license once today. I'm open to changing it again.
bilekas 9 hours ago
So for example, we offer a Digital Assets Management system, we off free plan right up to enterprise plans. If I wanted to enhance the users experience by having a tool *your tool( loaded for them to make quick basic modifications to their video media in browser that would not be possible.
The enhancement is not core to the product and available to free and paid users, but because its a commecial product your ELv2 license does not support it. As I understand, and its limited, the ELv2 is best suited for tools that are source available but only usedage in backend tools / single developer experience.
In your case that may be the case, so it depends on your desired direction, if you want media creators to be able to use their tool individually then sure, your license is fine.
wwdx 7 hours ago
The easiest way to on-ramp people to try it out for the first time is to write a claude code skill. This is what remotion did and I think you should do the same.
thefourthchime 21 hours ago
This is very cool!! but a test video I did and I played it back on Safari, the video playback was very, very choppy (m2 air). Is this a known issue?
mohebifar 21 hours ago
Ah I believe I should have clarified browser support. Safari is not very well supported. Have you tried chrome?
ErroneousBosh 9 hours ago
It's not supported in Chrome either.
stefan_ 18 hours ago
So Safari doesn't work, Firefox doesn't work. It's professional video editing, right in the ~~browser~~ Chrome window.
ukuina 18 hours ago
gnarbarian 16 hours ago
very cool. I was trying to implement a MP4 encoder in webGPU recently by porting sections of ffmpeg (NOT EASY).
it's for this:
https://ubernaut.github.io/recordMyScreen/
which uses a the wasm build of ffmpeg.
rikroots 6 hours ago
My tool uses the browser's built in encoders (which vary by browser, but whatever). I did use wasm though, for the MediaPipe background removal stuff.
beepbooptheory 3 hours ago
To maybe save people some time, repo shows this has ~25 commits and was started in January.
skyberrys 20 hours ago
This looks cool! I'll check it out later from my computer, I'm guessing it's not so easy to use on mobile.
durakot 16 hours ago
Had a look. "Professional" is doing a lot of work here.
mashreghi 12 hours ago
If people can ship paid work with it, it's professional enough.
Jaxkr 21 hours ago
Great project. The last time someone did this idea well they got acquired by Microsoft. Clipchamp has since been enshittified, making them ripe for disruption. The wheel continues to turn…
bstsb 20 hours ago
looking good! getting red/inverted video flashes on Firefox, M4 Pro. could be an issue with canvas anti-fingerprinting though, not sure its root cause
evegalactica 11 hours ago
best for every day use! i tried it and it was fun!
SlavikCA 20 hours ago
Great project!
Is there similar project for image editing?
Just basic features:
- cropping
- rotating
- brightness & contrast
fragmede 20 hours ago
photopea?
modeless 20 hours ago
Yeah, Photopea isn't exactly basic but it's great. If this became the Photopea equivalent for video that would be awesome.
SlavikCA 19 hours ago
Thank you. Just tried it.
UI is rather confusing.
Saris 7 hours ago
anthk 9 hours ago
For WASM, there are interpreters written in Go:
https://shithub.us/slashscreen/ricket/HEAD/info.html
I'd love to have nethack/slashem, the terminal version, ported to it. No, not HTML+JS, VT220 output with colour at least, usable in any VT emulator with Ricket.
That way I would play Slashem everywhere without even needing to have an ANSI C+POSIX compiler with tons of Unix dependencies. 9front has some compat but the game looks like a maze of ifdefs for different Unix systems. GLHack can be compiled with NPE (a small POSIX+SDL2/3 wrapper) and TinyGL but for these games I'm faster with the terminal output.
bitwize 19 hours ago
Is it feature-parity with Adobe Premiere and Final Cut Pro? If not, then it's not professional.
dylan604 19 hours ago
If you make money at it, you're professional. People are making so much money being content creators and don't give a damn about your definition of needing Pr or FCP to be professional.
It doesn't take much functionality to make jump cut videos and silly zooms an other non-traditional editorial styles that are the new normal for content.
However, as a professional editor, I laugh at these attempts using professional in the description when you're telling me to edit in a browser. <face_palm> It's great that they want to create a new thing and try some experimental stuff, but it's not going any where near my use of professional. Also, the landing page is dry as can be and not really informative. It's the visual equivalent of bullet points. What codecs does it support? What level of audio features are available. The lame video is just some panning shot. There's no editorial features being demoed at all. Does the timeline behave like FCP elastic or a more traditional timeline? What professional tools are available? Hmm, no data available, so I guess we'll have to just play with it. Oops, browser not compatible. Thanks for playing.
mashreghi 11 hours ago
"Professional" = people getting paid, not feature checklists.
Saris 7 hours ago
That's a weird take. There are plenty of professional use cases like quickly putting together a few short clips for social media shorts or whatever, that does not require anywhere near feature-parity with the big NLEs.
aboardRat4 6 hours ago
I'm baffled each time people re-implement stuff from scratch instead of contributing to existing mature projects.