J'ai essayé de reproduire le principe avec un script Reaper. Cela donne le fichier http://www.sinerj.org/~loyer/justintonation qu'il faut copier dans le répertoire Effects de Reaper (Options / show Reaper ressource path in explorer/finder).
Le principe du programme est simple : il compte le nombre de touches enfoncées, et à la première il change les notes qui pourraient jouer avec un accord avec avec une gamme basée sur cette note. Il n'y a pas d'analyse combinatoire compliquée évaluant la fonction de la note dans un accord en construction par exemple.
Typiquement, avec une première note C enfoncée, les écarts suivants (en cents) sont appliqués, afin d'obtenir les fractions indiquées avec la note C :
C : +0 1/1
Db : +11,73 16/15
D : -17,60 10/9
Eb : +15,64 6/5
E : -13,69 5/4
F : -1,96 4/3
F#/Gb : +0 (triton)
G : +1,96 3/2
Ab : +13,69 8/5
A : -15,64 5/3
Bb : +17,60 9/5
B : -11,73 15/8
(on note la symétrie...)
Certains rapports se trouvent sur la gamme diatonique indiquée par Wikipedia (https://en.wikipedia.org/wiki/Just_intonation), mais j'ai pris 10/9 pour D (au lieu de 9/8). En effet, si on joue l'accord de dominante D/F#/A/C en commençant par C... le D doit être une quinte pure sous le A à 5/3 de la fréquence du C. Mais je ne prétends pas que le choix soit optimal. (Avec un accord de 9ème, le choix n'est pas bon. C'est le problème avec un algorithme trop simple... mais de toute façon, l'algorithme est en temps réel et découvre les notes dans le sens où elles arrivent : si l'on voit passer un C et un D, difficile de prédire les notes suivantes qui seront jouées).
Pour faire marcher cet effet, il suffit de le mettre en amont d'un instrument virtuel qui supporte les changement de tempérament. En particulier Pianoteq. L'idéal serait un orgue ou un instrument avec des sons plus stables qui supporte le changement de tempérament directement en MIDI. (Modartt prépare Organteq... mais la version téléchargeable gratuitement est standalone, pas VST).
On peut aussi ajouter le tuner ReaTune après l'instrument virtuel. En appuyant doucement (sans relâcher) le C on provoque le changement de tempérament, puis les notes suivantes jouées sont affichées avec l'écart par rapport au tempérament égal. Cela permet de retrouver les chiffres plus haut.