ffmpeg.wasm
assemblyscript
Our great sponsors
ffmpeg.wasm | assemblyscript | |
---|---|---|
76 | 29 | |
12,983 | 16,432 | |
3.4% | 0.8% | |
8.9 | 7.6 | |
15 days ago | 15 days ago | |
C | WebAssembly | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ffmpeg.wasm
-
Show HN: I open-sourced the in-memory PostgreSQL I built at work for E2E tests
There's already ffmpeg wasm. I've used it in projects. Works great.
https://github.com/ffmpegwasm/ffmpeg.wasm
-
FFmpeg 7.0 Released
There's a low-hanging fruit that I think would make ffmpeg more helpful for regular people.
There's a million terrible websites that offer file conversion services. They're ad-ridden, with god-knows-what privacy/security postures. There's little reason for users to need to upload their files to a third-party when they can do it locally. But getting them to download fiddly technical software is tough - and they're right to mistrust it.
So, there's a WASM version of ffmpeg, already working and hosted at Netlify [1]. It downloads the WASM bundle to your browser and you can run conversions/transformations as you wish, in your browser. Sandboxed and pretty performant too!
If this tool a) was updated regularly b) had a nicer, non-CLI UI for everyday users and c) was available at an easily-Googlable domain name - it would solve all the problems I mentioned above.
[1]: https://ffmpegwasm.netlify.app/
-
FFmpeg-online: ffpmeg running on the browser
As their github page says, based on https://ffmpegwasm.netlify.app ...
I'm guessing no one did GPU-optimizations? I saw a web app (not an ffmpeg transpilation) that went clever and used WebGL so it can access the GPU and use its parallel processing capabilities...
-
Locoly (locoly.app): an in-browser video editor running all computations locally
ffmpeg.wasm: The engine making all these happen. However, I’m a bit concerned about its current situation. The repo has not been updated for more than six months now, and that’s not a healthy sign for an open-source project. Clearly I was reading the commits wrong. The author mentioned “speed up x264 with SIMD intrinsics” in their roadmap (https://github.com/ffmpegwasm/ffmpeg.wasm/discussions/415), which, if landed, could make such on-device video editors much more competitive.
-
[TASK] Reverse Engineer my Web App Before Production
I use https://github.com/ffmpegwasm/ffmpeg.wasm and I want my FFMPEG commands to be hidden from others.
- AWS service for transcoding audio to mp3 and images to jpg?
-
I made a simple online video editor with React and ffmpeg
Possibly using this? https://github.com/ffmpegwasm/ffmpeg.wasm
-
Newbie question: Is there any possible way to grab metadata from local media files and process them in the webbrowser?
You could try using something like ffmpeg wasm which is a way of using ffmpeg client side in browser. Unfortunately WebAssembly only supports files less than 2 gigabytes, which is a problem for videos. And I don't know if ffmpeg wasm contains ffprobe, so you might have to find another project or try to compile ffprobe to wasm yourself. This stuff is out of my wheelhouse so I can't offer much help.
- Show HN: FFmpeg UI
- Petition to add support for Gopher protocol in Firefox
assemblyscript
-
Let's Write a Malloc
Incidentally, it’s also what AssemblyScript uses: https://github.com/AssemblyScript/assemblyscript/blob/main/s...
-
Gentle Introduction To Typescript Compiler API
Use it as a Front-End for other low-level languages.
-
TypeScript Is Surprisingly OK for Compilers
> MHO typescript could just cut loose from its javascript compatibility. Why not compile it to wasm instead of transpiling it to javascript?
Check out AssemblyScript which is exactly that:
https://www.assemblyscript.org/
-
Do you think typescript will ever have native support on brosers? Or we will have only the JS type annotations?
If you're curious, check out AssemblyScript, that might describe better what needs to be cut from TypeScript to make it possible to be compiled to WASM.
-
Ezno's checker (a Javascript type checker and compiler written in Rust) is now open source
This is kinda the idea behind AssemblyScript, but IIRC it's more of a low-level typescript-ish syntax for WebAssembly.
-
Is there a TypeScript to native compiler available?
https://www.assemblyscript.org/ maybe, but I'm not sure exactly what you need.
-
Emerging Rust GUI libraries in a WASM world
Exactly, WASM was designed to be very very lightweight... you can put a lot of logic into a very small amount of WASM, but you need a good compiler to do that, or write WASM by hand to really feel the benefit. If you just compile Go to WASM, with its GC, runtime and stdlib included in the binary, yeah it's going to be pretty heavy... Rust doesn't have a runtime but as you said, for some reason, produces relatively large binaries (not the case only in WASM by the way). Probably, the best ways to create small WASM binaries is to compile from C or from a WASM-native language like AssemblySCript (https://www.assemblyscript.org).
-
Dan Abramov responds to React critics
Well we have all the new ECMA standards that will be introduced in 5 years now. It's looking more like Java actually. its accessor and typing patterns match it the most. TypeScript has had quite the profound influence over future ECMA design. There is a not so well known project called AssemblyScript which I think has a promising future. Since future ecma standards closely resembles it and TypeScripts popularity has exploded I have a feeling it may become a real standard as well.
- AssemblyScript – TypeScript-like language for WebAssembly
-
Do any engines or optimizers product TS-specific performance gains?
If you can guarantee that Typescript type hints will always be followed, you can turn it into more optimised code. Unfortunately, this means you've got to break Javascript semantics, so this means creating a new language, but people have done it. For example, AssemblyScript is a language that is designed as a strict subset of Typescript that compiles directly down to WebAssembly instead of Javascript, producing much more efficient code (most of the time). The tradeoff is that it has some slightly different semantics to Javascript, which means your existing codebase — and most of the libraries you use — will probably require some adaption before running correctly in AssemblyScript.
What are some alternatives?
rust-ffmpeg-wasi - ffmpeg libraries precompiled for WebAsembly/WASI, as a Rust crate.
ffprobe-wasm - A Web-based FFProbe. Powered by FFmpeg, Vue and Web Assembly!
Lua - Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.
ffmpeg-libav-tutorial - FFmpeg libav tutorial - learn how media works from basic to transmuxing, transcoding and more. Translations: 🇺🇸 🇨🇳 🇰🇷 🇪🇸 🇻🇳 🇧🇷
interface-types
node-ytdl-core - YouTube video downloader in javascript.
reference-types - Proposal for adding basic reference types (anyref)
handbrake-js - Video encoding / transcoding / converting for node.js
rust - Empowering everyone to build reliable and efficient software.
ffmpeg.js - Port of FFmpeg with Emscripten
deno - A modern runtime for JavaScript and TypeScript.