# Physics instead of samples: a grand piano and a valve amp made of equations

> Devlog on the FK Audio Suite. How FK Grand and FK Rig calculate their sound instead of playing recordings, and what that has to do with business software.

Alongside my work I make music, and I work almost exclusively on Linux. The big music programs do not run there, and for a hobby I did not want to spend a fortune either. So I started building my own workstation: the FK Audio Suite, written in C++ with JUCE and the Tracktion Engine. The requirements, the architecture and the technical decisions are mine; an AI assistant helps with the implementation, and as a Java developer I am learning C++ on the side. Within a few days, audio tracks, MIDI, a sampler, synthesizers and effects were running.

Then I got curious. Most virtual instruments play back recordings: for every key of a grand piano there are samples at several volumes on the hard drive. That sounds good, but it is rigid. What if you calculated the sound instead?

## FK Grand: a grand piano made of physics

FK Grand does not play back a single recording. The instrument calculates in real time what happens inside a grand piano: the hammer strikes the string, the string vibrates in up to 80 modes, the energy passes into the soundboard and from there into the room. Two freely positionable microphones pick up the result, and all three pedals work, including half-pedalling.

The exciting part: whether upright, baby grand or concert grand, the engine stays the same. Only the physical properties change: string lengths, hammer hardness, the size of the soundboard. A new instrument is a set of parameters, not new software.

## FK Rig: a valve amp made of circuit diagrams

With the guitar amplifier I went the same way. Instead of using recorded amp profiles, FK Rig is based on real circuit diagrams and component values. The software calculates the behaviour of the individual stages:

- valve preamp stages with their non-linear characteristics, which is what guitarists hear as distortion
- tone controls derived from the actual resistor and capacitor values of the circuit
- power stages with dynamic voltage drop, the sagging of the power supply on loud strokes
- speaker cabinets with calculated impulse responses
- two freely positionable microphones in front of the cabinet
- effect pedals such as overdrive, distortion, fuzz, wah and delay

As of October 2026, five amp models, six cabinets and 24 presets are included. Here too: a new amp does not need a new audio engine. Its properties are stored in a configuration file based on the circuit diagram. All of this runs inside my workstation, but also as a VST3 plugin or a standalone application in other programs.

There is still work to do, above all the comparison with real amps, ear to ear. But I am happy with the sound so far, and I welcome feedback from guitarists and pianists.

## What this has to do with business software

Real-time audio forgives no delay. If the calculation for one buffer takes too long, you hear a click. That forces discipline: a clear separation between what has to run in real time and what can wait; data structures that work without surprises; and models that are extended through parameters rather than new code.

I take exactly this discipline into the applications I build for businesses. An interface that reconciles data overnight has different requirements from a grand piano, but the same questions: what has to happen immediately, what may wait, and how does the system stay extensible without being rebuilt every time? More on the Audio Suite, the instruments and the state of development is in the portfolio under [FK Audio Suite](/en/portfolio/fk-audio-suite/).
