Sound font files

D
Don posted Jun 9, 00:03:

Would it be feasible to process an .sf2 sound font file to produce your sampler format?

I have some instrument sound fonts that I would want to use in samplerbox, but they are in existing sound font file format.

J
joseph posted Jun 9, 01:16:

If you want to extract WAV files from a SF2, here is a way to start:

  • Install this soft http://audio.clockbeat.com/sfZed.html
  • File > Import Soundfont, then choose your SF2 file
  • File > Save As, then save it as SFZ. Choose Save the samples > Yes.
  • You'll have the WAV files in the output folder!
N
Netanel posted Jun 9, 21:30:

Please note that usually these samples will be short lengthed. A sampler which uses soundfont files will automatically loop them.
According to Joseph, looping is supported in samplerbox by default. you could use the following softwares:

Sony Sound Forge
Or the opensource Audacity
I have not yet tested the Audacity method, but it should work. by using both these methods (exporting as wav files and looping them) you could virtually port ANY SF2 library.

D
Don posted Jun 19, 03:57:

While trying to figure out the .sf2 file format I came across discussions about the .sfz format which has superceded .sf2.

AFAIK, which is not much, the .sfz format uses raw .wav files and a text file of directives. Which sounds similar to samplerbox.

Does it make sense for samplerbox to use a sub-set of the. sfz format instead of inventing its own format?

One problem is that, although the .sfz format is open and license-free, there does not seem to be a freely available definition of the format. It is apparantly defined in a physical book: Cakewalk Synthesizers by Simon Cann.

This link provides an outline of the format:
http://www.soundonsound.com/sos/apr08/articles/sonartech_0408.htm

J
joseph posted Jun 19, 09:01:

I know it's very annoying to not support existing formats (such as .sfz and .sf2) and start and (n+1)th format ;) But really I prefer to start something fresh (based on more than 10 years of experience with all these formats), and short...

An example: here is the definition.txt file in SamplerBox format, for a banjo sample-set:

piano/%notename.wav,%velocity=0
forte/%notename.wav,%velocity=64

Now here is exactly the same definition file in .sfz format:

// Dynamic: piano (normal)
<group>
lovel=0
hivel=63
<region> pitch_keycenter=57 lokey=57 hikey=57 sample=/Instruments/Banjo/piano/A3.wav
<region> pitch_keycenter=69 lokey=69 hikey=69 sample=/Instruments/Banjo/piano/A4.wav
<region> pitch_keycenter=81 lokey=81 hikey=81 sample=/Instruments/Banjo/piano/A5.wav
<region> pitch_keycenter=58 lokey=58 hikey=58 sample=/Instruments/Banjo/piano/A#3.wav
<region> pitch_keycenter=70 lokey=70 hikey=70 sample=/Instruments/Banjo/piano/A#4.wav
<region> pitch_keycenter=82 lokey=82 hikey=82 sample=/Instruments/Banjo/piano/A#5.wav
<region> pitch_keycenter=59 lokey=59 hikey=59 sample=/Instruments/Banjo/piano/B3.wav
<region> pitch_keycenter=71 lokey=71 hikey=71 sample=/Instruments/Banjo/piano/B4.wav
<region> pitch_keycenter=83 lokey=83 hikey=83 sample=/Instruments/Banjo/piano/B5.wav
<region> pitch_keycenter=48 lokey=48 hikey=48 sample=/Instruments/Banjo/piano/C3.wav
<region> pitch_keycenter=60 lokey=60 hikey=60 sample=/Instruments/Banjo/piano/C4.wav
<region> pitch_keycenter=72 lokey=72 hikey=72 sample=/Instruments/Banjo/piano/C5.wav
<region> pitch_keycenter=49 lokey=49 hikey=49 sample=/Instruments/Banjo/piano/C#3.wav
<region> pitch_keycenter=61 lokey=61 hikey=61 sample=/Instruments/Banjo/piano/C#4.wav
<region> pitch_keycenter=50 lokey=50 hikey=50 sample=/Instruments/Banjo/piano/D3.wav
<region> pitch_keycenter=62 lokey=62 hikey=62 sample=/Instruments/Banjo/piano/D4.wav
<region> pitch_keycenter=74 lokey=74 hikey=74 sample=/Instruments/Banjo/piano/D5.wav
<region> pitch_keycenter=51 lokey=51 hikey=51 sample=/Instruments/Banjo/piano/D#3.wav
<region> pitch_keycenter=63 lokey=63 hikey=63 sample=/Instruments/Banjo/piano/D#4.wav
<region> pitch_keycenter=75 lokey=75 hikey=75 sample=/Instruments/Banjo/piano/D#5.wav
<region> pitch_keycenter=52 lokey=52 hikey=52 sample=/Instruments/Banjo/piano/E3.wav
<region> pitch_keycenter=64 lokey=64 hikey=64 sample=/Instruments/Banjo/piano/E4.wav
<region> pitch_keycenter=76 lokey=76 hikey=76 sample=/Instruments/Banjo/piano/E5.wav
<region> pitch_keycenter=53 lokey=53 hikey=53 sample=/Instruments/Banjo/piano/F3.wav
<region> pitch_keycenter=65 lokey=65 hikey=65 sample=/Instruments/Banjo/piano/F4.wav
<region> pitch_keycenter=77 lokey=77 hikey=77 sample=/Instruments/Banjo/piano/F5.wav
<region> pitch_keycenter=54 lokey=54 hikey=54 sample=/Instruments/Banjo/piano/F#3.wav
<region> pitch_keycenter=66 lokey=66 hikey=66 sample=/Instruments/Banjo/piano/F#4.wav
<region> pitch_keycenter=78 lokey=78 hikey=78 sample=/Instruments/Banjo/piano/F#5.wav
<region> pitch_keycenter=55 lokey=55 hikey=55 sample=/Instruments/Banjo/piano/G3.wav
<region> pitch_keycenter=67 lokey=67 hikey=67 sample=/Instruments/Banjo/piano/G4.wav
<region> pitch_keycenter=79 lokey=79 hikey=79 sample=/Instruments/Banjo/piano/G5.wav
<region> pitch_keycenter=56 lokey=56 hikey=56 sample=/Instruments/Banjo/piano/G#3.wav
<region> pitch_keycenter=68 lokey=68 hikey=68 sample=/Instruments/Banjo/piano/G#4.wav
<region> pitch_keycenter=80 lokey=80 hikey=80 sample=/Instruments/Banjo/piano/G#5.wav

// Dynamic: forte (normal)
<group>
lovel=64
hivel=127
<region> pitch_keycenter=57 lokey=57 hikey=57 sample=/Instruments/Banjo/forte/A3.wav
<region> pitch_keycenter=69 lokey=69 hikey=69 sample=/Instruments/Banjo/forte/A4.wav
<region> pitch_keycenter=81 lokey=81 hikey=81 sample=/Instruments/Banjo/forte/A5.wav
<region> pitch_keycenter=58 lokey=58 hikey=58 sample=/Instruments/Banjo/forte/A#3.wav
<region> pitch_keycenter=70 lokey=70 hikey=70 sample=/Instruments/Banjo/forte/A#4.wav
<region> pitch_keycenter=82 lokey=82 hikey=82 sample=/Instruments/Banjo/forte/A#5.wav
<region> pitch_keycenter=59 lokey=59 hikey=59 sample=/Instruments/Banjo/forte/B3.wav
<region> pitch_keycenter=71 lokey=71 hikey=71 sample=/Instruments/Banjo/forte/B4.wav
<region> pitch_keycenter=83 lokey=83 hikey=83 sample=/Instruments/Banjo/forte/B5.wav
<region> pitch_keycenter=48 lokey=48 hikey=48 sample=/Instruments/Banjo/forte/C3.wav
<region> pitch_keycenter=60 lokey=60 hikey=60 sample=/Instruments/Banjo/forte/C4.wav
<region> pitch_keycenter=72 lokey=72 hikey=72 sample=/Instruments/Banjo/forte/C5.wav
<region> pitch_keycenter=84 lokey=84 hikey=84 sample=/Instruments/Banjo/forte/C6.wav
<region> pitch_keycenter=49 lokey=49 hikey=49 sample=/Instruments/Banjo/forte/C#3.wav
<region> pitch_keycenter=61 lokey=61 hikey=61 sample=/Instruments/Banjo/forte/C#4.wav
<region> pitch_keycenter=73 lokey=73 hikey=73 sample=/Instruments/Banjo/forte/C#5.wav
<region> pitch_keycenter=85 lokey=85 hikey=85 sample=/Instruments/Banjo/forte/C#6.wav
<region> pitch_keycenter=50 lokey=50 hikey=50 sample=/Instruments/Banjo/forte/D3.wav
<region> pitch_keycenter=62 lokey=62 hikey=62 sample=/Instruments/Banjo/forte/D4.wav
<region> pitch_keycenter=74 lokey=74 hikey=74 sample=/Instruments/Banjo/forte/D5.wav
<region> pitch_keycenter=86 lokey=86 hikey=86 sample=/Instruments/Banjo/forte/D6.wav
<region> pitch_keycenter=51 lokey=51 hikey=51 sample=/Instruments/Banjo/forte/D#3.wav
<region> pitch_keycenter=63 lokey=63 hikey=63 sample=/Instruments/Banjo/forte/D#4.wav
<region> pitch_keycenter=75 lokey=75 hikey=75 sample=/Instruments/Banjo/forte/D#5.wav
<region> pitch_keycenter=87 lokey=87 hikey=87 sample=/Instruments/Banjo/forte/D#6.wav
<region> pitch_keycenter=52 lokey=52 hikey=52 sample=/Instruments/Banjo/forte/E3.wav
<region> pitch_keycenter=64 lokey=64 hikey=64 sample=/Instruments/Banjo/forte/E4.wav
<region> pitch_keycenter=76 lokey=76 hikey=76 sample=/Instruments/Banjo/forte/E5.wav
<region> pitch_keycenter=88 lokey=88 hikey=88 sample=/Instruments/Banjo/forte/E6.wav
<region> pitch_keycenter=53 lokey=53 hikey=53 sample=/Instruments/Banjo/forte/F3.wav
<region> pitch_keycenter=65 lokey=65 hikey=65 sample=/Instruments/Banjo/forte/F4.wav
<region> pitch_keycenter=77 lokey=77 hikey=77 sample=/Instruments/Banjo/forte/F5.wav
<region> pitch_keycenter=54 lokey=54 hikey=54 sample=/Instruments/Banjo/forte/F#3.wav
<region> pitch_keycenter=66 lokey=66 hikey=66 sample=/Instruments/Banjo/forte/F#4.wav
<region> pitch_keycenter=78 lokey=78 hikey=78 sample=/Instruments/Banjo/forte/F#5.wav
<region> pitch_keycenter=55 lokey=55 hikey=55 sample=/Instruments/Banjo/forte/G3.wav
<region> pitch_keycenter=79 lokey=79 hikey=79 sample=/Instruments/Banjo/forte/G5.wav
<region> pitch_keycenter=56 lokey=56 hikey=56 sample=/Instruments/Banjo/forte/G#3.wav
<region> pitch_keycenter=68 lokey=68 hikey=68 sample=/Instruments/Banjo/forte/G#4.wav

As I really want something fast (a sample-set should be done in 2 minutes, not more), I don't want to support these very verbose formats, for which you need a third-party software to write definition files.

D
Don posted Jun 19, 16:08:

Fair enough and point taken.

Don.

M
Mike posted Jan 1, 10:29:

SF2 matches idea of "drop samples and just play" perfectly.
There is a lot of sf2 free soundfonts around, and typical user probably has tons of that files or can obtain them easily in a minute, in cause if he does not want actually to create a new preset, but just copy something to the card and play. Not everyone is actually going to make preset from the scratch.
Please consider supporting sf2 - because without it you drop a very typical use case.

...

  (not published)
  I want to post as guest
 

Post