frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Demucs music stem separator rewritten in Rust – runs in the browser

https://github.com/nikhilunni/demucs-rs
7•nikhilunni•8h ago
Hi HN! I reimplemented HTDemucs v4 (Meta's music source separation model) in Rust, using Burn. It splits any song into individual stems — drums, bass, vocals, guitar, piano — with no Python runtime or server involved.

Try it now: https://nikhilunni.github.io/demucs-rs/ (needs a WebGPU-capable browser — Chrome/Edge work best)

GitHub: https://github.com/nikhilunni/demucs-rs

It runs three ways:

- In the browser — the full ML inference pipeline compiles to WASM and runs on your GPU via WebGPU. No uploads, nothing leaves your machine.

- Native CLI — Metal on macOS, Vulkan on Linux/Windows. Faster than the browser path.

- DAW plugin — VST3/CLAP plugin for macOS with a native SwiftUI UI. Load a track, separate it, drag stems directly into your DAW timeline, or play as a MIDI instrument with solo / faders.

The core inference library is built on Burn (https://burn.dev), a Rust deep learning framework. The same `demucs-core` crate compiles to both native and `wasm32-unknown-unknown` — the only thing that changes is the GPU backend.

Model weights are F16 safetensors hosted on Hugging Face and downloaded / cached automatically on first use on all platforms. Three variants: standard 4-stem (84 MB), 6-stem with guitar/piano (84 MB), and a fine-tuned bag-of-4-models for best quality (333 MB).

The existing implementations I found online were mostly wrappers around the original Python implementation, and not very portable -- the model works remarkably well and I wanted to be able to quickly create samples / remixes without leaving the DAW or my browser. Right now the implementation is pretty MacOS heavy, as that's what I'm testing with, but all of the building blocks for other platforms are ready to build on. I want this to grow to be a general utility for music producers, not just "works on my machine."

It was a fun first foray into DSP and the state of the art of ML over WASM, with lots of help from Claude!

Comments

vishrajiv•4h ago
Thanks for sharing! Seems to work well from the song I uploaded. Would be nice to have some example songs preloaded on the web UI to see what it looks like without having to upload.

What was the hardest part of this stack? It sounds like porting the weights to Rust via burn was straightforward. Curious if WASM gave you any difficulties.

nikhilunni•39m ago
Checkout the README on GitHub! It has an example split.

Honestly the WASM part was pretty straightforward, other than some shader performance issues with Burn + CubeCL , but nothing this project can really change.

The hardest part was the weight porting honestly, since I had to perfectly recreate all of the digital signal processing and model, any deviations from the original PyTorch implementation, and you ended up with subtle loss of signal in the outputs. Added that folder `bench/` to step through the two implementations piece by piece to help debug where they were diverging -- and it's still not a perfect replication of the original after all the tuning!

Show HN: Open-Source Article 12 Logging Infrastructure for the EU AI Act

35•systima•14h ago•2 comments

Show HN: Explain Curl Commands

https://github.com/akgitrepos/explain-my-curl
36•akgitrepos•3d ago•1 comments

Show HN: Effective Git

https://github.com/nolasoft/okgit
23•nola-a•2d ago•2 comments

Show HN: Agent Action Protocol (AAP) – MCP got us started, but is insufficient

https://github.com/agentactionprotocol/aap/
9•hank2000•7h ago•2 comments

Show HN: Interactive WordNet Visualizer-Explore Semantic Relations as a Graph

https://wordnet-vis.onrender.com/
2•ricky_risky•3h ago•0 comments

Show HN: I built a sub-500ms latency voice agent from scratch

https://www.ntik.me/posts/voice-agent
548•nicktikhonov•1d ago•152 comments

Show HN: Demucs music stem separator rewritten in Rust – runs in the browser

https://github.com/nikhilunni/demucs-rs
7•nikhilunni•8h ago•2 comments

Show HN: TrAIn of Thought – AI chat as I want it to be

https://bix.computer/graphMode
2•two-sandwich•3h ago•0 comments

Show HN: We want to displace Notion with collaborative Markdown files

https://www.moment.dev/
15•antics•6h ago•3 comments

Show HN: A tool to give every local process a stable URL

https://github.com/logscore/roxy
3•lsreeder01•4h ago•0 comments

Show HN: React-Kino – Cinematic scroll storytelling for React (1KB core)

https://github.com/btahir/react-kino
17•bilater•2d ago•2 comments

Show HN: Omni – Open-source workplace search and chat, built on Postgres

https://github.com/getomnico/omni
165•prvnsmpth•1d ago•41 comments

Show HN: Timber – Ollama for classical ML models, 336x faster than Python

https://github.com/kossisoroyce/timber
197•kossisoroyce•1d ago•33 comments

Show HN: Pianoterm – Run shell commands from your Piano. A Linux CLI tool

https://github.com/vustagc/pianoterm
57•vustagc•1d ago•21 comments

Show HN: OpenMandate – Declare what you need, get matched

https://openmandate.ai
2•raj-shekhar•5h ago•0 comments

Show HN: uBlock filter list to blur all Instagram Reels

https://gist.github.com/shraiwi/009c652da6ce8c99a6e1e0c86fe66886
123•shraiwi•1d ago•48 comments

Show HN: Apcher – Generate self-hosted Node.js workflows from prompts

https://apcher.dev
3•Samueedwards1•6h ago•8 comments

Show HN: Govbase – Follow a bill from source text to news bias to social posts

https://govbase.com
210•foxfoxx•1d ago•88 comments

Show HN: AI tool that brutally roasts your AI agent ideas

https://whycantwehaveanagentforthis.com
4•Sattyamjjain•7h ago•1 comments

Show HN: Web Audio Studio – A Visual Debugger for Web Audio API Graphs

https://webaudio.studio/
64•alexgriss•1d ago•7 comments

Show HN: DejaShip – an intent ledger to stop AI agents from building duplicates

https://github.com/mingulov/dejaship
3•mdn0•7h ago•0 comments

Show HN: Visual Lambda Calculus – a thesis project (2008) revived for the web

https://github.com/bntre/visual-lambda
48•bntr•3d ago•9 comments

Show HN: Sai – Your always-on co-worker

https://www.simular.ai/sai
2•pentamassiv•7h ago•2 comments

Show HN: Herniated disc made me build a back-safe kettlebell app

https://kbemom.com/
2•blacktarmac•8h ago•2 comments

Show HN: Kai – macOS native fully autonomous AI agent.

https://www.hikai.space
3•StephaneBessa•9h ago•1 comments

Show HN: Diarize – CPU-only speaker diarization, 7x faster than pyannote

https://github.com/FoxNoseTech/diarize
2•loookas•9h ago•4 comments

Show HN: PingMeBud – A macOS app that listens to meetings so you don't have to

https://www.pingmebud.com/
2•spaceman3•9h ago•0 comments

Show HN: Giggles – A batteries-included React framework for TUIs

https://github.com/zion-off/giggles
21•ajz317•21h ago•10 comments

Show HN: LazyTail – Terminal log viewer with built-in MCP server for AI analysis

https://github.com/raaymax/lazytail
3•raaymax•10h ago•0 comments

Show HN: FixYou – AI tool that tells you which cancer screenings you need

https://www.fixyou.app/
2•forrestzhong•10h ago•0 comments