Please post your FAQ here!



  • Hello sample library developers, please post your questions in this thread. I'm sure you have many. I will use your questions to create a frequently asked questions list.



  • RESERVED FOR FAQ

    How do you control an envelope's curve?
    CTRL + Mousewheel while hovering the mouse over the envelope point which comes after the line you wish to affect.

    What's the difference between buffer size and loading size, and what is the number unit type?

    What is the difference between voice amount and voice limit?

    How do you create an end-user GUI?



  • What's the difference between buffer size and loading size, and what is the number unit type? kilobytes? What is the kontakt equivalent?

    What is the difference between voice amount and voice limit?


  • administrators

    @2l94v5ko:

    What's the difference between buffer size and loading size, and what is the number unit type? kilobytes? What is the kontakt equivalent?

    The streaming engine has two intermediate buffers for each voice which are periodically swapped (one is used for providing the sample data to the engine while the other fetches the data from the disk). The buffer size controls the size of those buffers and the loading size (aka Preload size) is the buffer which contains the start of the sample (until the first intermediate buffer is filled).

    The units for all buffer sizes are samples so in order to calculate the actual memory amount you will need this formula:

    memoryAmount = preloadSize * 4 * 2 * numSounds + streamingBufferSize * 4 * 2 * numVoices
    

    4 because they are saved as float (4 bytes) and 2 because the stereo configuration is hardcoded for now (I will add multichannel stuff later, but this will be a rather heavy redesign).

    Also it gets a little more complicated if you want to use sample start modulation (because then the whole area that can be modulated must be preloaded…
    But you don't need to calculate this actually (the "Memory" label does that for you). So in order to keep the memory usage down, you could:

    1. lower the Preload Size
    2. lower the buffer size
    3. decrease the voice amount (if you don't need full 64 voice polyphony)
    4. Don't use sample start modulation (it is of course turned of by default).

    1. and 2. come with the usual performance vs memory consumption tradeoff and 3 and 4 can be applied if the instrument design allows it.

    BTW all these properties can also be changed via scripting, so you can add this to your instrument's setting page if you want.

    @2l94v5ko:

    What is the difference between voice amount and voice limit?

    Voice amount is the actual amount of voices (you can see the impact on the memory label if you change this value. Voice limit is some kind of "soft clipper" for polyphony (so it starts killing voices if this value is reached, but the actual voice amount remains unchanged).

    If the voice amount is reached, the old notes will be chopped off with no fade which will result in clicks. So you can use a little less value for Voice limit (eg. 62 for 64) to reserve two voice slots for the fade when killing voices.


Log in to reply
 

2
Online

343
Users

1.1k
Topics

7.1k
Posts

Looks like your connection to Forum was lost, please wait while we try to reconnect.