Has anyone here experimented with creating your own original soundfonts?

A recent organelle patch posted by @shreeswifty to patchstorage got me thinking about this. It seems like it might be a way to make songs created using a sprawling studio setup compress down to an ITB format that can be controlled with a MIDI controller or two.

I’ve only started using hardware for synthesis very recently and I’m quickly seeing how problematic it can be to haul all this crap around. But I love the immediacy and flexibility and performability of it at the same time. So I’m trying to figure out how to keep the sprawl at home for inspiration, but extract and concentrate the parts of it I need for performing songs on a stage, without losing fidelity or expressive capability (within the constraints I define for myself for a particular performance).

If I can sort that out, I suppose there’s a danger that my home studio could metastasize into something Junkie XL-like. If that happens to me, please feel free to stage an intervention.

This seems like a nice Mac app for editing soundfonts:

There are also a bunch of free soundfont collections online. Not something I imagine I’d use in my own music necessarily (although I’m not really opposed to the idea either) but definitely useful for seeing how different soundfonts can be constructed.

Would love to hear tales of your own adventures with soundfonts.

1 Like

Not sure I understand correctly, do you want to sample the heck out of your modular and use that on stage?[quote=“jasonw22, post:1, topic:8397”]
If I can sort that out, I suppose there’s a danger that my home studio could metastasize into something Junkie XL-like.

wouldn’t it be the other way around? If you managed to bring the same fidelity or expressiveness to a sample-based instrument, why keep the expensive crap?

I think I know where you’re coming from though. I wouldn’t wanna take my 9u anywhere soon. I’m leaning towards playing loops or one shots from ableton or octatrack, and perform a few voices from a small skiff. In my hypothetical future peformance that is :slight_smile: . I guess this also depends largely on the kind of music.


Because sampling imposes constraints (determined by the needs of the song, ideally). There’s always the next song.

I made a simple prototype of an automatic sampling system, the idea being that I could make a patch on my synth, select how many pitch and velocity layers I want, tell it how long each note is, hit record, walk away for a few [minutes|hours|weeks] until recording is done, and then have a snapshot of the patch. For me the main problem with this approach lies at the intersection of MIDI and combinatorics. MIDI because I find the “note” metaphor tiring. I want to be able to play a sound, change its timbral quality and pitch and so on, and play with multiple interrelated dimensions of sound at the same time. MIDI doesn’t really facilitate this (at least not with the primitive CV converter available to me). Then the arguably much greater issue is that in order to take a snapshot with multiple velocity, pitch, x, y, z, a, b, c, etc layers to facilitate multidimensional control, it’s difficult to keep the sampling time within a reasonable period.


I think you could do some of this using modulators. But you’re right that the combinatorics pile up quick. Hmm.

I’d love to hear more about your system (or use it, if you feel like sharing). Or just explain briefly how it worked?

i have not created my own but this is very timely for me as i just got Fluidsynth working on both the organelle and then soon after on raspi3
i did some searching and i found a trove of sf2 files. 39GBs in fact
pick a country or a synth or an instrument and there was a soundfount for them
the funny thing is i have read through the documentation studied how to address generators and i still am grasping a little so i would LOVE to endeavor to share info here and test directly

1 Like

Any hints you can share as to where one might look?

I’m thinking that tearing open these would be a very educational experience. I’m going to try to do some of that in the next couple of days:

These tutorials seem potentially helpful:

let me figure out how to trim this huge file down to something manageable and I’ll share some.
BTW i tried that Polophonie application and though it looks like it was designed by an engineer, it works for creating custom SF2 files

1 Like

Do the available soundfont players implement all the generator/modulation stuff described in the soundfont specification? I remember reading that spec years ago and being surprised at how comprehensive the modulation was.

I can’t speak for all of them but Plogue sforzando supports all of that and more (via Aria engine extensions, which include a way to specify custom GUIs for controls).

Interesting, I will have to take another look. I have a whole bunch of emu soundfonts on a harddisk somewhere. (11.6 KB)

Here is my proof of concept auto-sampler prototype. It’s very rough around the edges, and may not work properly, but you’re welcome to dig in.

Also worth mentioning, SFZ is technically not a soundfont file format (as I understand it). Rather, I believe it is a separate sampling file format entirely which is slightly more human readable, is more open, and appears to offer better features (e.g. extensibility). At least, that is what I understood from my cursory research on the topic back when I was making the prototype. SF2 is the true soundfont format, but I think SFZ is a better format overall.


I hear what your saying but for Fluidsynth~/Linux organelle use i need the files to be .sf2

widdly:sfspec24.pdf (518.0 KB)

i found this after some time and it’s pretty clear, also that polophonie software lets you get in and see what modulators/generators are in use on the particular sf --very helpful and a great tool.

1 Like

SampleRobot can export to many different formats, including SFZ and SF2.


I spent a couple hours today porting piano samples from pianobook to the SFZ format. It was a reasonable process. Things I learned.

  1. The letter notation format is garbage. Only use MIDI note numbers. 21 is the number for the lowest A on a piano.
  2. The syntax looks like XML but it’s not. It’s closer to the Windows .ini config file format. But like, with XML?
  3. The format supports most professional sampler features, though the documentation is meh. I learned more by reading example files in a text editor.

I’m happy there’s a simple format for making sampled instruments. Feels better than loading up a DAW just to play back some samples.

Some crazy person reverse engineered the ESX24 binary format and wrote a Python script to translate it into SFZ. As a student of reverse engineering, I find this an amusing application of the skill.


Soundfonts on Norns? :thinking:


Yes! This is certainly something I have been thinking about. I think just controlling fluidsynth from lua would be fairly straightforward, similar to the norman script, or just the softcut interface. But I dont know how this would work on the midi end, or what you have to do to connect fluidsynth to crone.

1 Like

fluidsynth~ is usually the answer and it already works in pure data
i have about 9GB of soundfonts to share when we get it working on Norns

i will start sharing these soundfonts i’ve collected over the century :slight_smile: Here are the ones for the Fairlight CMI