5 comments

  • gpasquero a day ago ago

    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
  • ianeff a day ago ago

    Weird that everyone was bagging on your Voog project, but they've got nothing to say about this. I guess Yamahas lack the caché..?

    Anyhow, they're both nice reads, man!

  • undefined a day ago ago
    [deleted]