I’ve been working on putting together a virtual orchestra sample library of my own recently. I’m assembling it from pieces of a few different free libraries. When I’m done, I intend to share it for free since the resource libraries I’m using are also free. In the mean time, I thought I’d gather together some links to information that I’ve found useful.
This first link is the list of the original sfz 1.0 opcodes. These form the basis of creating a sample library for an sfz player.
Some further explanation of the sfz 1.0 opcodes can be found here:
Of course, having an sfz player is very important too. I’ve already posted about my sfz player of choice here:
There are some additional opcodes introduced in sfz 2.0 but information about sfz 2.0 is hard to find online. Here is a link to a list of the sfz 2.0 opcodes that I found:
There isn’t much of a description to accompany the list, but once sfz 1.0 is understood, it’s not too difficult to figure out what an sfz 2.0 opcode does.
And the final SFZ resource, here is are a few online chapters from the book:
That book is apparently the only place the full SFZ 2.0 specification exists. I haven’t read the book but chapter 13 and the appendix are said to address SFZ 2.0.
Because I’m building a virtual orchestra library, I’ve also found this list of instrument ranges to be a helpful guide although, I’m uncertain about the accuracy of some of it. For some instruments, I’ve seen video, and heard samples, of instruments being played outside the specified range, so it’s best to double check.
Finally, although this blog post is mostly about the sfz format, my previous blog post about Looping a sample, taught me how to use the free tool Audacity to determine the values to put in the sfz “offset” opcode. Using the “offset” opcode together with the “ampeg_attack” opcode, and a few others, is the secret to creating a staccato sample from a sustain sample.
UPDATE: I just wanted to add one more. Here is a General Midi percussion key map