Skip to content

Parameter inference of music synthesizers to simplify sound design process. Supports Vital.

License

Notifications You must be signed in to change notification settings

gudgud96/syntheon

Repository files navigation

syntheon_logo

Syntheon

Syntheon - Pantheon for music synthesizers.

Syntheon provides parameter inference for music synthesizers using deep learning models. Given an audio sample, Syntheon infers the best parameter preset for a given synthesizer that can recreate the audio sample.

**Check out this presentation on the recent advances of synth parameter inference.

For now:

  • ✔️ Vital is supported
  • Dexed is work-in-progress

Try it out on our Colab notebook demo.

Installation

python3 -m pip install syntheon

Usage

from syntheon import infer_params

output_params_file, eval_dict = infer_params(
    "your_audio.wav", 
    "vital", 
    enable_eval=True
)

Testing

python3 -m pytest

Structure

For each synthesizer, we need to define:

  • converter for preset format conversion:

    • serializeToDict: convert preset file to a Python dictionary to be handled by inferencer
    • parseToPluginFile: convert Python dictionary back to preset file, to be loaded by the synthesizer
  • inferencer for model inference:

    • convert: define the workflow of load_model -> inference -> convert_to_preset

Contribution

Syntheon is actively under development, and contributions are welcomed. Some TODOs we have in mind include:

  • Replicating state-of-the-art approaches
  • Improving current model performance
  • Incorporating new synthesizers
  • Code refactoring 😅

About

Parameter inference of music synthesizers to simplify sound design process. Supports Vital.

Resources

License

Stars

Watchers

Forks

Packages

No packages published