Hacker News new | past | comments | ask | show | jobs | submit login

um, I think at least mpeg4 and webm decoders have been emscriptemed to run in pure JS.

https://jsmpeg.com/

http://libwebpjs.appspot.com/vp8/webm-javascript-decoder/

And I think this:

https://developers.google.com/web/updates/2018/08/wasm-av1

So I don't think your "_any_ support at all" comment is correct.




Incorrect, jsmpeg decodes mpeg1 and mpeg2 (which are basically the same)

Decoding MPEG4 in Javascript can be done, check out broadway but it uses massive massive CPU and basically sucks.


They've also been done in WASM but the comment is correct as written because the idea is that the vast majority of times when you serve a <video> with an MPEG-4 source file it'll be decoded entirely in hardware whereas AV1, H.265, and to a lesser extent, VP-9 will be loading up the CPU.

To put this in perspective, I have a 9 year old MacBook Air at home which I use for testing. If you look at 720/1080p video on YouTube, even that ancient hardware it takes 5-10% CPU to play H.264 content. I have a 2017 desktop at work with 4.2GHz Core i7 which still takes almost 100% of a CPU to play 720p AV-1 and ~60% to play VP9, or ~1% to play H.264. That's a really big difference for something like a GIF successor which will be widely shared, often with multiple visible at the same time, and people will expect to just work even on hardware which is more than a year old while still leaving capacity to do other things.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: