Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I built a real-time Yamaha DX7 synthesizer emulator in pure Python (~2500 lines). It implements the full DX7 FM synthesis architecture: 6 operators, all 32 algorithms, 4-rate/4-level envelopes, LFO with 6 waveforms, keyboard level scaling, velocity sensitivity, and feedback — all computed sample-by-sample at 44.1 kHz.

  Includes 32 factory presets from the original ROM1A bank (BRASS 1, E.PIANO 1, STRINGS, etc.), a tkinter GUI with a DX7-style panel layout, pitch bend
  and mod wheels, a clickable 5-octave keyboard, and optional MIDI input.

  The audio engine runs in a real-time callback via sounddevice/PortAudio with ~5.8 ms latency. No external DSP libraries — just NumPy for the math.

  Tech: Python 3.10+, NumPy, sounddevice, tkinter. Optional python-rtmidi for MIDI controllers.

  pip install numpy sounddevice && python main.py


very nice, helped a friend a little on this one a few years back, if it sparks any https://github.com/cannc4/DX7-Supercollider


How much overlap does this have with the voog project? Why not factor out common components?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: