Simionato R., Fasciani S., Holm S., Physics-Informed Differentiable Method for Piano Modeling, in Frontiers in Signal Processing, 2023 .
 
 
 
The article presents a method for piano sound synthesis informed by the physics of the instrument, combining deep learning with traditional digital signal processing techniques. The proposed model is designed to learn to synthesize only the the quasi-harmonic content of individual piano notes using physics-based formulas, whose parameters are automatically estimated from real audio recordings. In doing so, the model emulates the inharmonicity of the piano and the partials’ amplitude envelopes. The inharmonic/noisy component of the of the piano sound  is not modeled, hence there is a significant difference in the timbre of the real recording versus the predicted sound.
Associated code, dataset, and trained models are available on GitHub 
 
Each example includes the following:
Target Output Audio Signal (true output recorded from a Yamaha Disklavier 
Predicted Output Audio Signal (generated by the inference of the trained model, only harmonic component is modeled) 
Spectrum of Target and Predicted Output Audio Signals 
Spectrograms of Target and Predicted Output Audio Signals 
 
The examples refer to two scenarios:
Scenario A . The training set includes all dataset’s recordings, excluding those related to the D4 key.Scenario B . The training set includes all dataset’s recordings, excluding those related to the 90 velocity. 
The title of the waveform plot details the key and MIDI velocity.
Scenario A 
Target
https://stefanofasciani.com/data/Piano/Harmonic/AD460_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/AD460_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/AD470_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/AD470_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/AD480_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/AD480_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/AD490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/AD490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/AD4100_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/AD4100_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/AD4110_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/AD4110_pred.mp3 
Scenario B 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BC390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BC390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BC3s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BC3s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BD390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BD390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BD3s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BD3s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BE390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BE390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BF390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BF390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BF3s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BF3s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BG390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BG390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BG3s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BG3s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BA390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BA390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BA3s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BA3s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BB390_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BB390_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BC490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BC490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BC4s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BC4s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BD490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BD490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BD4s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BD4s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BE490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BE490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BF490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BF490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BF4s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BF4s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BG490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BG490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BG4s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BG4s90_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BA490_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BA490_pred.mp3 
Target
https://stefanofasciani.com/data/Piano/Harmonic/BA4s90_tar.mp3 Prediction
https://stefanofasciani.com/data/Piano/Harmonic/BA4s90_pred.mp3