Physics-Informed Neural Engine Sound Synthesis
This repository contains the complete implementation and trained models for the Procedural Engines Model (PRCE), a novel deep learning architecture for engine sound synthesis that integrates physics-informed inductive biases within differentiable synthesis pipelines.
Engine sound synthesis presents unique challenges that distinguish it from musical audio paradigms. Unlike sustained musical tones, engine sounds emerge from sequential combustion events creating acoustic phenomena with significant inharmonicity, extremely low fundamental frequencies (down to 5 Hz), and rapid temporal sequences with intervals under 15 milliseconds. Modeling these sound with both precision in timing and complexity in timbral evolution requires methods beyond those commonly found in musical sound synthesis.
The PRCE framework addresses these challenges through two complementary synthesis configurations:
- Harmonic-Plus-Noise (HPN): Modified harmonic synthesis with systematic inharmonicity and temporal-spectral structuring
- Pulse-Train-Resonator (PTR): Direct modeling of combustion pulses aligned to engine firing patterns with differentiable resonator networks
- Physics-informed architecture incorporating domain-specific acoustic principles
- Dual synthesis strategies providing complementary optimization pathways
- Time-varying embeddings of RPM, torque, throttle, and DFCO parameters
- Custom loss function prioritizing spectral energy near engine-order harmonics
prce-model/
├── checkpoints/ # Pre-trained model weights
│ └── 2025-08-31_models_and_weights.zip
├── configs/ # Base configuration files
├── scripts/ # Training and inference scripts
│ ├── train.py # Training pipeline with CLI
│ └── inference.py # Model inference with CLI
├── src/ # Source code
│ ├── audio/ # Audio processing utilities
│ ├── data/ # Data loading and processing
│ ├── models/ # Model implementations
│ │ ├── hpn_model.py # Harmonic-Plus-Noise variant
│ │ ├── hpn_synth.py # HPN synthesis modules
│ │ ├── ptr_model.py # Pulse-Train-Resonator variant
│ │ ├── ptr_synth.py # PTR synthesis modules
│ │ └── model.py # Base model architecture
│ ├── training/ # Training utilities
│ └── utils/ # General utilities
├── requirements.txt # Python dependencies
├── README.md # This file
└── LICENSE # License file
- Clone the repository:
git clone https://github.com/rdoerfler/prce-model.git
cd prce-model- Install dependencies:
pip install -r requirements.txt- Extract pre-trained models:
cd checkpoints
unzip 2025-08-31_models_and_weights.zipTrain the HPN variant:
python scripts/train.py --model_type hpn --dataset C_full_setTrain the PTR variant:
python scripts/train.py --model_type ptr --dataset C_full_setCustomize model architecture:
python scripts/train.py --model_type ptr --num_harmonics 128 --hidden_size 512 --gru_size 1024Generate engine sounds using trained models:
python scripts/inference.pyNote: As of now, the folder name of checkpoint for inference has to be defined directly within the inference.py CLI support will be inplemented soon.
The training and inference scripts use a unified CLI with the following key parameters:
--model_type: Choose betweenhpn(Harmonic-Plus-Noise) orptr(Pulse-Train-Resonator)--dataset: Specify dataset name (default:C_full_set)--num_harmonics: Number of harmonics (default: 100)--num_noisebands: Number of noise bands (default: 256)--hidden_size: Hidden layer size (default: 256)--gru_size: GRU layer size (default: 512)
Configuration is managed through a base config system combined with CLI parameter overrides.
- Modified harmonic synthesis with systematic inharmonicity
- Temporal-spectral structuring of noise components
- Robust to harmonic irregularities
- Greater flexibility across diverse engine configurations
- Direct modeling of combustion pulse sequences
- Differentiable resonator networks for exhaust acoustics
- Superior validation performance (5.7% improvement in total loss)
- More consistent training-validation transfer
This work utilizes the Procedural Engine Sounds Dataset, a comprehensive collection of procedurally generated engine audio with time-aligned control annotations.
- 19 hours of engine audio across varied operating conditions
- Time-aligned RPM, torque, throttle, and DFCO annotations
- Multiple engine configurations and acoustic scenarios
- Systematic coverage of engine operating parameters
Dataset Availability:
- Zenodo: https://doi.org/10.5281/zenodo.16883336
- Hugging Face Datasets: https://huggingface.co/datasets/rdoerfler/procedural-engine-sounds
Evaluation reveals complementary strengths between synthesis approaches:
- PTR: 5.7% superior validation performance, consistent training-validation transfer
- HPN: Greater flexibility across engine configurations, robust to harmonic irregularities
- Both variants successfully capture authentic engine acoustic behaviors with distinct signatures
If you use this code or the Procedural Engines Dataset in your research, please cite:
@mastersthesis{doerfler2025,
title={Neural Engine Sound Synthesis with Physics-Informed Inductive Biases and Differentiable Signal Processing},
author={Robin Doerfler},
year={2025},
month={August},
school={Universitat Pompeu Fabra},
type={Master's dissertation in Sound and Music Computing},
note={Supplementary code and models available at: https://github.com/rdoerfler/prce-model}
}This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0). See the LICENSE file for details.
You are free to:
- Share — copy and redistribute the material in any medium or format
- Adapt — remix, transform, and build upon the material
Under the following terms:
- Attribution — You must give appropriate credit and indicate if changes were made
- NonCommercial — You may not use the material for commercial purposes
For commercial use, please contact the author.
- Audio Examples: Supplementary audio examples demonstrating model outputs are available at: https://rdoerfler.github.io/prce-examples/
- Dataset: Procedural Engine Sounds Dataset on Zenodo and Hugging Face
This research demonstrates systematic integration of physics-informed inductive biases into differentiable synthesis architectures, providing a methodological framework applicable to physically-constrained audio generation beyond automotive contexts.
For questions or collaboration opportunities, please contact [email protected] or open an issue on this repository.
Keywords: Engine Sound Synthesis, Differentiable Signal Processing, Physics-Informed Neural Networks, Inductive Biases, Neural Audio Synthesis