Video wird geladen...

Video konnte nicht geladen werden

Zur Startseite

Here's how that same benchmark looks like at 1080p, using pure Mediabunny instead of Remotion. It's not surprising that the web is fast here: both the rendering and the encoding happens fully on the GPU. I'm not saying this to make fframes look bad, and I appreciate any effort...

12,897 Aufrufe • vor 10 Tagen •via X (Twitter)

30 Kommentare

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

Full benchmarking code and methodology can be found here:

Profilbild von Wiedy Mi
Wiedy Mivor 10 Tagen

Honestly I expected from openai employee more professional behavior, calling web a crap is so lame, imho

Profilbild von jj
jjvor 10 Tagen

vibeslopper on their next /goal they will forget in a week vs real media perf chad

Profilbild von speech-ka
speech-kavor 10 Tagen

your balls are faster than his bouncing balls so i must give you th victoery

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

They are bigger too

Profilbild von Tamamo🦫
Tamamo🦫vor 10 Tagen

@neogoose_btw time to pay him $5000 as you promised for benchmark where web faster than fframes. Because asking for remotion to be in the benchmark was straight up cheating so the web will lose as many people already said.

Profilbild von Tequila Funk
Tequila Funkvor 10 Tagen

Framemogged!

Profilbild von Ahsan Tahir
Ahsan Tahirvor 10 Tagen

Agreed. I built a screen recorder powered entirely by web technologies:

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

Always be selling @jvstudnitz

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

gifs you can hear

Profilbild von Carl Assmann
Carl Assmannvor 10 Tagen

web web web!

Profilbild von John Pollard
John Pollardvor 10 Tagen

Does it perform differently depending on the browser? I might not be understanding fully so thought I’d ask!

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

Performs similarly everywhere, although Chrome usually comes out ahead. As long as browsers have fast GPU rendering and an encode path that talks directly to the hardware encoders, there's not much performance difference in reality. Safari is great with this too, and Firefox is okay.

Profilbild von John Pollard
John Pollardvor 10 Tagen

So instead of running remotion or fframes through my terminal, it’s better run with mediabunny in my browser? The only thing I need then is AI to be integrated to help with the command.

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

I have no problem with you using fframes or Remotion, the only point I'm making is "web is fast too"!

Profilbild von ExtraBinoss
ExtraBinossvor 10 Tagen

While I agree for Windows and Mac, it seems that Linux is left out by WebCodecs, and I have faster results of about 1.40x with ffmpeg exporting. My bottleneck is basically the chromium frames waiting. With Mediabunny my media encoder is at 0%, with ffmpeg at 20%, might be a real edge case with linux + intel though. I do think Mediabunny is faster for 90% of the work asked by people.

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

If it's at 0% then it sounds like it's not routing to the HW encoder at all? 🤔

Profilbild von ExtraBinoss
ExtraBinossvor 10 Tagen

check discord #help ;)

Profilbild von a neko
a nekovor 10 Tagen

🐇

Profilbild von Rodrigo Belfiore
Rodrigo Belfiorevor 10 Tagen

The browser is native!

Profilbild von The Doctor
The Doctorvor 10 Tagen

Browser is arguably one of the most powerful "platform" to develop on. It's also extremely easy and easy to create slop. So people have this idea that browser/web = bad

Profilbild von CRusty
CRustyvor 10 Tagen

I take it you're an "Electron is just as good as native" person

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

I think Electron is overhated, yes!

Profilbild von Beardo Schmidt 🦗
Beardo Schmidt 🦗vor 10 Tagen

Is it fair to say “do not need to go native” is true because the overwhelming majority of the work _is native_ (to the GPU/dedicated hardware)? Like, I’d imagine JS/video has a similar perf story to JS/WASM: it tends to degrade with increased data interop.

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

Not quite! I definitely see what you mean, and this is one of the strengths of the web: the browsers provide you with SO much fast built-in functionality that there will be little benefit to going native. Obviously, native code will always be faster than JS/WASM, but the difference is smaller than you think. You can achieve incredibly fast applications in both JS and WASM, and even the same codebase compiled to WASM usually reaches within 25% of the native performance (in my tests at least). This doesn't mean native has no advantages whatsoever, but the feature gap has been shrinking every year

Profilbild von TS-good
TS-goodvor 10 Tagen

@eyelidlessness any pointers on how you learned to optimize JS/WASM to that level? Im coming from more regular SWE work, so Im guessing part of it was going through v8 internals/source, but curious what helped the most

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

I've done two WASM projects at this point, TurboRes (which is public) and an internal audio engine project which is unreleased. The only time spent doing assembly-level optimizations was for the SIMD logic, because Zig Vector instructions may not always map to the WASM SIMD instructions as intended. AI is actually great for this: you can tell it which section in the binary to inspect, and it'll tell you if the compiler emitted optimal WASM instructions or not. All of the non-SIMD code comes out pretty optimal from the start. The performance difference I talked about came from me comparing TurboRes with TurboRes native, which is literally just the (almost) same Zig codebase but compiled for native targets here

Profilbild von Miguel Ángel
Miguel Ángelvor 10 Tagen

Love it

Profilbild von yam
yamvor 10 Tagen

Mediabunny leverages webgpu/wgsl?

Profilbild von Vanilagy
Vanilagyvor 10 Tagen

Neither, Mediabunny is concerned with reading and writing media files. The actual rendering in the above benchmark is being done in the Canvas 2D API. It could obviously be optimized much further by going WebGL/WebGPU, but I wanted a simple, canonical implementation.

Ähnliche Videos