Tools for the Analysis and Conversion of SoundFonts #1738
prof-spock
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Dear all,
here are several tools for SoundFonts, which might be useful for SoundFont designers.
soundFontAnalyzer: This tool checks a SoundFont file for possible optimizations.
Those are, for example, moving identical settings from non-global zones to the global zones, defining parameters at the lowest possible level (sample ⇐ instrument ⇐ preset) and so on.
A tricky - but the most interesting - part is the recommendation about modulator use. The algorithm tries to match the settings in different non-global zones by some modulator function and recommends modulator use when the difference between manual values and modulator function falls below some threshold.
Unfortunately, there are some caveats with this. For example, the definition of a concave or convex modulator function is by no means clear-cut. My interpretation of the spec is that those should be circle quadrants, while fluidsynth uses a strange logarithm-plus-hocus-pocus function. I had some discussion with @derselbst and we did not have a final consensus.
soundFontToJSON: This tool allows to extract a JSON file from a SoundFont plus optionally the samples as wave files.
jsonToSoundFont: This tool converts a JSON file plus samples as wave files to a SoundFont file. This is the reverse of soundFontToJSON.
soundFontInPlaceRenamer: This tool allows an in-place-renaming of the sample, instrument and preset names in a SoundFont file (based on regular expressions in a configuration file).
The documentation for the tools is here. If you like to try them by yourself, you can download them via pypi via
Note that this is really a pre-release version, but the tools should work on well-behaved soundfonts...
Best regards,
Prof. Spock
Beta Was this translation helpful? Give feedback.
All reactions