Skip to content

Synthesize music in Python using any audio plugins, both realtime and offline (batch-processing)

License

Notifications You must be signed in to change notification settings

LIMUNIMI/pycarla

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyCarla

A python module for synthesizing MIDI events and files from python code with using any kind of audio plugin!

See docs for more installation and more info.

TLDR

Python has no strong real-time capabilities since it cannot run with parallel threads. This method delegates most of the realtime stuffs to external C/C++ programs, improving the performances and the accuracy against pure-Python based approaches.

This method is really portable and supports almost any type of plugins and virtual instruments thanks to the excellent Carla:

  1. Linux VST2/VST3
  2. Windows VST2/VST3
  3. LV2
  4. LADSPA
  5. DSSI
  6. AU
  7. SF2/SF3
  8. SFZ
  9. Any other format supported by external plugins

HELP

If you need help, please open an issue or create a discussion.

TODO

For sure

  1. Add single function to synthesize midi file
  2. Add single function to batch-synthesize midi files
  3. Make synchronization handling xruns (edit is_ready)
  4. Update Carla
  5. refactoring with a generic start method in JackClient and specific methods get_callback and get_duration

Maybe

  1. Use Carla python code to control Carla host
  2. Support LADISH sessions for automatically starting LinuxSampler if needed
  3. Installation scripts for windows and mac

Credits

  1. Federico Simonetta
    federico.simonetta at unimi.it