Simple Grand Piano Emulation

I’m new to this and I’ve had fun building all the examples here and on YouTube. I wanted to try to synthesise real instruments and after reading an article in Sound on Sound I got an idea for a patch. Although I’ve had good results using Vult’s Basal and Slap, I wanted to build from first principles using basic modules.

This is the idea - each key on a grand piano hammers a set of 3 strings; a high, a medium and a low string tuned an octave apart. These are slightly out of phase with each other.

The 3 XCOs used here represent these 3 strings, each tuned to C an octave apart and each slightly out of phase with the others. I used the XCOs because they have the ability to mix square, sawtooth, triangle and sine waves which gives a rich and complex wave.

The 3 strings are mixed to different levels before being sent on to the main mixer. This allows for the low tones of the note to resonate more than the high tones.

This is far from perfect I know and the complexities of all the resonances present in a real grand piano are probably only theoretically possible to build this way. I will try to build in a mute/sustain pedal of some kind for the next version.

[Edit] This contains many errors and bad assumptions - thinking again about this one. I can’t see a way to do this without treating individual strings differently and then how do you trigger from a standard MIDI interface?


Are you sure about this part? :thinking:

It would be neat to hear your patch :slight_smile:

I think that’s supposed to be cents apart and not octaves


Nice link - I’ll check it out.

If i can figure out how to post sound files, I’ll put one up. In the meantime why not build it and see for yourself?

Dr. Manny Fernandez has an interesting series of videos in which he details how he constructed a grand piano emulation using a Yamaha Montage: the building blocks there being 8 independent layers of 8-operator FM synthesis, each layer having access to its own pair of insertion effects and separate send levels for the two system effects.

Even if you aren’t planning to follow his structure or use FM at all, it’s still interesting to see the different elements of a piano’s sound which he picks out for modelling. This includes the inharmonicity of the strings as well as what he affectionately calls “the stuff”: sounds such as the thunks of the hammers. This provides a lot of ideas for ways to expand on a simple piano emulation.

The total run time is ~70 minutes. There’s also an accompanying series of articles.


That’s completely incorrect about pianos. I wonder where you obtained that idea. The trichord set is tuned very precisely in unison to a high degree of accuracy. I speak as a former professional piano tuner and instrument maker. On a piano octaves are always true and beatless, but due to the departure from ideal infinitely thin strings of the relatively thick steel wire in pianos, tuners make the octaves ever so slightly sharp and increasingly so in the upper range, and likewise modify the bass, but it is a very small effect. Find a grand piano, and pluck the individual strings. You will see. And there are no exceptions to this, either now or historically. Harpsichords had registers of single strings at 8 foot, 4 foot, and sometimes 16 foot pitch. A piano is not a harpsichord.

If you have questions about how pianos actually work you are welcome to contact me.

Most pianos are sampled, as the synthesis of the complexity across the compass is overwhelming. There are very successful piano models achieved with Physical Modelling technique, such as Pianoteq. Nearly indistingishable from a sampled instrument. The Sound on Sound article is very simplistic. Nevertheless interesting.


Thanks for this - I will definitely check this out.

Thank you very much for your insight. I have obviously made several mistaken assumptions here. Your advice will help me improve my modelling. I am very grateful for your expertise.

You can use Soundcloud and link it here.

That’s a fairly low bar. Nearly indistinguishable from a recording of the real thing, I’d say, but you’ll probably disagree.

OK I figured out how to load it up to Patch Storage so you can hear it for yourselves. Slightly revised version without the hubris.

By no means perfect, this is to my ears at least a good approximation of a piano sound. Most definitely a work in progress.

Polyphonic so chords sound good.

Detuning the High and Low strings by moving the Fine Tuning on the XCOs can approximate an honky-tonk piano, or bar room upright.

Feel free to make improvements and let me know.