All Projects → TimDaub → wasm-synth

TimDaub / wasm-synth

Licence: GPL-3.0 license
C++ in the browser? Webassembly? Sounds jarring? Indeed, it is! Synthesizer for the browser.

Programming Languages

javascript
184084 projects - #8 most used programming language
C++
36643 projects - #6 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to wasm-synth

webaudio-synth
WebAudio Polyphonic Synthesizer
Stars: ✭ 83 (-25.89%)
Mutual labels:  synthesizer
esp32 basic synth
ESP32 based simple synthesizer project
Stars: ✭ 134 (+19.64%)
Mutual labels:  synthesizer
HexoSynth
A FLOSS (Open Source) hexagonal modular synthesizer plugin.
Stars: ✭ 143 (+27.68%)
Mutual labels:  synthesizer
OTTO-hardware
No description or website provided.
Stars: ✭ 45 (-59.82%)
Mutual labels:  synthesizer
AttinySound
sound generation on the AVR-Attiny cpus
Stars: ✭ 40 (-64.29%)
Mutual labels:  synthesizer
awesome-puredata
A list of Pure Data libraries, abstractions, projects and presentations
Stars: ✭ 36 (-67.86%)
Mutual labels:  synthesizer
Mt32 Pi
🎹🎶 A baremetal kernel that turns your Raspberry Pi 3 or later into a Roland MT-32 emulator and SoundFont synthesizer based on Circle, Munt, and FluidSynth.
Stars: ✭ 231 (+106.25%)
Mutual labels:  synthesizer
Kickmess
Kickmess - A kick drum synthesizer plugin
Stars: ✭ 33 (-70.54%)
Mutual labels:  synthesizer
guitar
🎸 Online guitar toy and tablature recorder/player
Stars: ✭ 80 (-28.57%)
Mutual labels:  synthesizer
AtomSynth
A modular synthesizer built using the juce api.
Stars: ✭ 20 (-82.14%)
Mutual labels:  synthesizer
diy-synths
List of open-source synths 🎹
Stars: ✭ 56 (-50%)
Mutual labels:  synthesizer
tinyspec-cling
tiny spectral synthesizer with livecoding support
Stars: ✭ 31 (-72.32%)
Mutual labels:  synthesizer
twigs
Alternate firmware for Mutable Instruments Branches synthesizer module
Stars: ✭ 21 (-81.25%)
Mutual labels:  synthesizer
HAGIWOs Module
eurorack modular synthesizers projects using Arduino.
Stars: ✭ 76 (-32.14%)
Mutual labels:  synthesizer
synthrs
Toy audio synthesizer library in Rust with basic MIDI support.
Stars: ✭ 73 (-34.82%)
Mutual labels:  synthesizer
Adlplug
FM Chip Synthesizer — OPL & OPN — VST/LV2/Standalone
Stars: ✭ 249 (+122.32%)
Mutual labels:  synthesizer
CureSynth Whip
Polyphonic MIDI Synthesizer for STM32F7
Stars: ✭ 45 (-59.82%)
Mutual labels:  synthesizer
esp32 multitrack looper
ESP32 Audio Kit based multitrack looper
Stars: ✭ 43 (-61.61%)
Mutual labels:  synthesizer
Eurorack
Eurorack modules designed by Lorenz Neumann
Stars: ✭ 28 (-75%)
Mutual labels:  synthesizer
lessampler
lessampler is a Singing Voice Synthesizer
Stars: ✭ 59 (-47.32%)
Mutual labels:  synthesizer

wasm-synth

A synthesizer built from scratch in C++ and made available on the web through WebAssembly.

Prerequisites

The following tools are required for spinning up a local instance of WASM SYNTH. Click on the links to view the installation manuals:

Docs & Blog post

My previous goal with this project was to learn audio programming. I wrote about it in this blog post. Since until then, a cambrian explosion of webassembly-based browser languages have appeared, I'm currently trying to make WASM SYNTH work properly again.

Compatibility

Since it seems that many browsers-vendors are arbitrarily changing APIs these days, I'm gonna keep track of WASM SYNTHs compatability here.

Commit Chrome Firefox Safari Brave
c4379418bc1cfe116dbf6bc51e25a42fdaa9c6f3 ✓ 81.0 ✓ 76.0 ✗ 13.0.4 ✓ 1.8.86

How are we currently testing?

  • npm run dev and open the displayed site in one of the above browsers
  • Hit some notes on your keyboard or by pressing with the mouse
  • Toggle some UI elements (e.g. toggle off an oscillator)

I know how to improve/automate testing!

That's great! Any feedback or help is welcome! Please get in touch!

Install

To install:

$ npm i

Run

Before running the below specified commands, you'll have to set emsdk's environment variable as is detailed on the above linked page.

For development:

$ npm run dev

To build:

$ npm run build

License

See License.

Third Party resources Licenses

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].