Learjeff's Soundfonts

Soundfonts are to a software synthesizer what typefonts are to a word processor. They give it new sounds to play. Here are soundfonts I've built, and some tools I used to build them. So far, all are samples of my 1977 Mark I Rhodes Stage Piano, made to sound good using the excellent free 'sfz' soundfont player.

jRhodes3 Soundfont

This is my second soundfont, an improved sampling of my 1977 Rhodes Mark I Stage 73 piano.
Soundfont Size Demo Description
jRhodes3.sf2.zip 57 MB zip,
76 MB sf2
jRhodes3.mp3 Full unlooped soundfont, with 65 samples in 5 velocity layers, sampling at least every 4th white key starting at F1. More technical details below.
jRhodes3a-looped.sfArk.zip 3.5 MB zip,
12 MB sf2
Looped version of the above. You can find a version of this for Kurzweil keyboards HERE.
jRhodes3c.sf2.zip 30 MB zip,
30 MB sf2
jRhodes3b-stereo.mp3 Looped stereo version. A mild stereo pitch shift doubling chorus effect was added, along with some compression. The effect was added using mid-side technique, so it cancels out completely when summed to mono.

For sfArk formats, find sfArk here: WINDOWS     MAC

I really like playing this soundfont, but it has several obvious deficiencies. I need yet more velocity layers, especially at the low end of the keyboard and at high velocities. And no doubt, some hand-tweaking of individual samples & key-map details would help. I also may reprocess the higher layer samples with a bit of compression, because they drop in volume so dramatically versus the lower layers, they sound a bit thin.

Version 3a differs from the original version 3 only in that the volume was raised in samples in the upper registers to even out the level a bit.

If you have any feedback about these soundfonts, please contact me using the email address below. Meanwhile, enjoy!

Just in case anyone's wondering what happened to jRhodes2 -- Well, due to unfamiliarity with the tools, the Preset name in jRhodes1 ended up as jRhodes2. Reusing that name would have been confusing.

Here's the piano itself. The little colored sticky tabs indicate the keys I sampled. No color code, though!

Technical Details

As before, I sampled every 4th white key -- except for in the middle register where I sampled every other white key from G3 to F4. I sampled 5 velocity layers, trying to match the peak for all the samples except the highest keys. The layers were recorded in 6dB intervals, so there's a 24dB difference between the peaks in the loudest and softest layer. Two of the layers only have samples up through F4 or E5, since the sound is too similar to need so many layers there.

I sampled each layer in a single file, using the preamp on my TASCAM M-30 mixer EQing with a substantial scoop from the upper bass and a little boost to upper mid and treble. My goal, as before, was to get the Rhodes sound I started using back in 1977, where the bell-like tone is clear, but the beast will bark nicely when poked.

I used a MOTU 828 soundcard, recording 24-bit samples, using n-Track DAW software. After deleting the snarks, I normalized each layer file and rendered to 16 bits. I fed the 16-bit files into Cool-Edit 96 (which doesn't support 24-bit files) to use it's noise reduction feature. (I suppose I should chip in the cash for a good 24-bit wave editor. So far I've been very disappointed in Audacity.)

I fed the 16-bit layer files into a little Python program I wrote (and used for jRhodes1) which chops up the layer file into individual samples. It measures the pitch of each sample and names the resulting sample files according to the sample's MIDI note number, along with the layer name from the original layer wave file.

I then fed the sample files into a new little Python program that builds a keymap based on what samples are there, plus a little configuration information (e.g., the MIDI velocity to use for each layer). This program just builds a text file, which is processed by yet another Python program, which builds a simple soundfont based on the information in the text key-map file.

If only I could write a de-noiser in Python, almost the whole process could be hands-off, so I could focus on getting the best sample set rather than fussing with the sample files and clicking on silly soundfont-builder program GUIs.

Here is the output from the keymap program, btw.

jRhodes1 Soundfont

In August of 2004, I did a quick knock off sampling of my 1977 Rhodes Mark I Stage piano, to check out methodology and learn the tools. It's not pro-quality, but it's playable and achieves what I was going for: the sound I often use on my Rhodes, rather than the typical vintage Rhodes sound. (If you want that, try Scarbee RSP-76.)

Here's a short clip demo. Please ignore the poor timing; I had latency issues on my computer when I recorded it.

==> jRhodes1.mp3

Here's the soundfont:

==> jRhodes1.sfArk

Find sfArk at Melodymachine.com: sfark.htm. Supported on Windows, Mac OSX, and x86-Linux.

Technical Details

I sampled every 4th white key, starting with F1. I'd intended to use a jury-rigged "key thumper" to strike the keys with consistent velocity, but I didn't use it because it too much noise, which came through on the recording (bam!). I started with three velocity layers, but added a 4th between the mezzo and forte layers, from middle C down, because it really needed it.

I recorded straight off the harp, bypassing the Rhodes' tone controls. I scooped out in the bass, about 100 Hz, using the semi-parametric on my mixer, because that's the sound I want (and what Scarbee, great as it is, isn't).

I recorded each velocity layer in one file, in 24 bits, using a MOTU 828. I normalized and converted to 16 bits, and removed the noise using CoolEdit96 (which only handles 16-bit files). I then processed each file with a Python program I wrote, which chops up the samples into separate files, naming the files according to the note name (based on the frequency using a simple autocorrelation algorithm). I created the instrument using GigaStudio32 (which I found on ebay for $30).

I hope to do another round, and when I do, I probably won't sample more keys -- the Rhodes doesn't seem to need it. What I will pay a lot more attention to is the velocities when sampling, and I'll probably use more velocity layers -- especially at the lower end of the keyboard.


I retain the phonorecording copyright for all samples. These soundfonts are free for anyone to use in their music. You're also free to fine tune or improve them, but please let me know as a courtesy. If you want to include any of these soundfonts in a distribution or collection of soundfonts or similar, you must get my permission; contact me at the email address below.

Hear my music at Learjeff.com.
Feedback: learjef@aol.com