hn.today

Coopiano – physically modelled piano synthesizer

github.com3 points0 comments
Screenshot of Coopiano – physically modelled piano synthesizer

Coopiano is a C++17 physically modelled piano synthesizer that generates sound from simulated hammer, string, soundboard and sympathetic-resonance components, with an optional stereo room reverb. It produces 44.1 kHz, 16-bit stereo WAV files offline (each render peak-normalized) and supports live MIDI input on macOS by linking CoreMIDI, AudioToolbox, CoreAudio and CoreFoundation. No sampled piano sounds or third‑party libraries are required. The codebase is an early public extract: the piano engine and a prototyped AU/VST exist in development but plugins are not included in this release. Offline rendering is portable to other platforms with a C++17 compiler and threads, but live audio/MIDI is macOS-only and the project was built and tested primarily on macOS.

Building requires a C++17 compiler and Make; simple commands render single notes, a demo, MIDI files or enter live mode (examples: ./coopiano A4 0.5 8, ./coopiano demo, ./coopiano performance.mid 1.0 performance.wav, ./coopiano live). Presets are configured via default.ini (copy and edit, then load with preset), with environment overrides such as GP_NO_REVERB=1 and GP_SAVE_SETTINGS=1 to write resolved presets beside WAV outputs. Key source files include coopiano.cpp (CLI/MIDI/WAV/host), piano.hpp (header-only synth), instrument.hpp (voice/pedal scheduling), streaming_soundboard.hpp (convolution), preset.hpp/reverb.hpp, resampling/host helpers, and live diagnostics/bench code. The project is MIT licensed.

Read on github.com0 comments on Hacker News

Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.

More in Hardware

Hyper Optimizing Kimi K3 in vLLM

Hyper Optimizing Kimi K3 in vLLM

Kimi K3's decode performance was optimized on NVIDIA GB300 using agent-assisted development, achieving over 840 tokens/sec on 16 GPUs and up to 1.8 times higher interactivity. The approach emphasizes isolating changes, validating correctness, and managing risk to enable faster, more reliable model optimization. (vllm.ai)

The daily digest

Today's best Hacker News stories, summarized and screenshotted, one email a day.