Vienna Symphonic Library Forum
Forum Statistics

180,803 users have contributed to 42,141 threads and 254,364 posts.

In the past 24 hours, we have 1 new thread(s), 7 new post(s) and 74 new user(s).

  • Patch Organization

    I was wondering if there is going to be a uniform system in the library for organizing instruments by patch and bank numbers.

    I find myself when I Get a new library having to spend hours organizing all the patches the way I want so that they work in my compositions.

    To remedy this I've spent dozens of hours developing a standard patch/bank system for orchestral instruments that I immediately map new sample libraries that I buy to.

    It would be nice if we didn't have to do that though.

    So, 1) will there be a uniform system of patch and bank numbering? 2) If you haven't planned on one but are interested in ideas along those lines, I could let you know my system to give you ideas. IMHO it's very good becuase it works with every instrument and every articulation imaginable, and it allows you to use the same numbering system for articulation regardless of what instrument you're using.

    Let me know if you're interested in these ideas. I know intellectual property law to know that I can't copyright or patent my system, so I might as well let everyone benefit from the ideas if there's anything to benefit from. [:)]

  • Hi Peter!

    We´re trying our best to program a patch and bank numbering, that is easy to overview and consistent within the whole library.

    Nevertheless we´re thankful and open for every good idea...!!

    best wishes, Paul

    Paul Kopf Product Manager VSL
  • Sure, here's how it works:

    The patch is determined by the General MIDI patch numeber (0-127) and the GS bank number (0-16384). The GM patch determines what physical instrument or collection of instruments is played (i.e. violin, trumpet, etc.) while the bank number determines all other information about the instrument (number of instruments, dynamic, playing style, etc.)

    The bank number is divided into binary sections. The bank number is 14-bits (a combination of two 7-bit numbers representing the MSB and LSB).

    Bits 0 through 6 represent the playing style (i.e. staccato).
    Bits 7 through 8 represent the number of instruments in the section (i.e. solo, duet, large section, etc.)
    Bits 9 through 10 represent the dynamic of the sample (pp, ff, etc. - NOT the volume)
    Bits 11 through 12 represent the type of instrument (normal, alto, bass, etc.)
    Bit 13 not used.

    The patch number and the bank number are totally independent. If you have a staccato large violin section ff, and change the patch to viola and keep the same bank number, you'll get a staccato large viola section ff. Ideally, the software would accept a patch change and keep the last bank change without having to resend bank information, and vice versa, so that you could simply switch instruments or styles independently of each other.

    The styles can be whatever is desired, but I've found that:
    0 Short Attack
    1 Slow Attack
    2 Hard Fast Attack
    3 Detached Attack
    4 Slurred
    5 Pizzicato
    6 sFFz (FF=any dynamic)
    7 Tremolo or Roll
    8 Staccato 1 (shorter)
    9 Staccato 2 (longer)
    10 Muted
    11 Minor Up Trill
    12 Major Up Trill
    13 Minor Down Trill
    14 Major Down Trill
    15 Long Crescendo
    16 Short Crescendo
    17 Medium Crescendo
    18 Long Decrescendo
    19 Short Decrescendo
    20 Medium Decrescendo
    21 Long Tremolo Crescendo
    22 Short Tremolo Crescendo
    23 Long Tremolo Decrescendo
    24 Short Tremolo Decrescendo
    25 Major Run
    26 Minor Run
    27 Dim. Minor Run
    28 Major Arpeggio
    29 Minor Arpeggio
    30 Dim. Minor Arpeggio
    31-127 Reserved.

    works for every sample I've yet found.

    For number, it's

    0 Solo
    1 Quartet or Large Section - for certain instruments like trumpets or french horns, this means quartet. For grouped instruments like violins, this means the large orchestra section (20+)
    2 Trio or Small Section - trio for brass + woodwinds, small section (12+) for strings
    3 Duet or Chamber Section - duet for brass + woodwinds, chamber section (2-4+) for strings

    Dynamic (has nothing to do with volume, only the quality of the sound)
    0 Variable - Depends on note velocity
    1 Always Forte regardless of note velocity
    2 MF
    3 P

    Type
    0 Normal
    1 Bass
    2 Alto
    3 Tenor

    This should cover every conceivable sample into a uniform system. It also is nice because, again, it separates the concept of instrument from playing style, and even within playing style separates style itself (bits 0-7, the LSB), from number, dynamic, and type (the MSB). And the ideal software would recognize each message differently and not require all three to complete a patch change like it does now. But even if it did, there's a uniform system so you always know for example, forte staccato solo will always be bank 136 regardless of the instrument.

    Lastly, the instruments themselves are numbered according to General MIDI - 40 = violin, 56 = trumpet, etc., for full compatibility when the composition is played on a GM device.

    Hope this is helpful and gives you ideas. Patch programming is always a ton of work. Making it easy for composers, though, would set you above all other libraries not only in sound quality but in ease of use as well. [:)]

  • This is excellent..great info !!

    I'm definitely gonna dig into this approach of yours..

    One thing, though :

    What sequencer/program/sampler do U use for this type of mapping..??
    I'm using the EXS24 in Logic Audio Platinum 4.8.1, so if U know specificly how to set it up in that I'd be very greatful..!!

    Feel free to correct me if I'm getting this wrong. So far I understand the mapping structure, but I'm not sure that EXS24 responds to Program Changes...

    Cheers

    Spacebass

  • I use this with gigasampler pretty much exclusively. I don't have any hardware samplers. I tried to use it with Soundfonts but they only allow bank numbers up to 127. Sorry I don't know about your sampler. Oh yeah, I use Cakewalk with it, and they allow complex instrument definitions so I can actually name the instruments properly in the program and choose them from a dropdown list.

    The trick is organizing the samples, and that takes a lot of time.