IIRC hydrogen expects normalized samples for all layers and then
automatically compensates for this by decreasing the gain for each layer as
you go 1 layer down (hope that makes sense!)
i think we had a discussion about this at some point, but i cant recall in
what context. i'll see if i can find something
grtz
Thijs
2014-09-22 22:17 GMT+02:00 <mau...@smoors.de>:
> Hi,
>
> i don't have enough knowledge about the hydrogen audio engine to answer
> your question, but you could try to have a look at sampler.cpp[1] and
> see if this helps for you..
> Best Regards,
>
> Sebastian
>
> [1]:
>
> https://github.com/hydrogen-music/hydrogen/blob/master/src/core/src/sampler/sampler.cpp
>
>
> On 2014-09-19 15:19, ju1ius wrote:
> > Hi,
> >
> > Thanks and congratulations for all the work you're doing on Hydrogen!
> >
> >
> > I have a question concerning instrument layers and gain compensation.
> > I'm making an Hydrogen drumkit, sampled from another hardware
> > instrument.
> >
> > I isolated (by ear) the different samples of each instrument,
> > recorded them at their maximum velocity, and put all the info in a
> > JSON file, that look like this:
> >
> > {
> > "instruments": [
> > "Snare": {
> > "key": 33,
> > "layers": [
> > {
> > "sample": "samples/Snare_layer1.flac",
> > "min_velocity": 126,
> > "max_velocity": 127,
> > "peak_level": -2.92
> > },
> > {
> > "sample": "samples/Snare_layer2.flac",
> > "min_velocity": 111,
> > "max_velocity": 125,
> > "peak_level": -3.84
> > },
> > {
> > "sample": "samples/Snare_layer3.flac",
> > "min_velocity": 96,
> > "max_velocity": 110,
> > "peak_level": -4.86
> > },
> > // ... 7 more layers
> > ]
> > }
> > ]
> > }
> >
> > Then I generated the drumkit XML file using a python script.
> > The problem is that, since Hydrogen applies runtime gain compensation
> > according to note velocity, the "velocity envelope" of the instrument
> > ends up being incorrect.
> > The gain decreases too quickly with velocity, and layers with a
> > maximum velocity inferior to 0.5 (MIDI 64) are inaudible.
> >
> > So here's my question: WHAT IS THE FORMULA TO COMPUTE THE LAYER GAIN
> > COMPENSATION SO THAT THE ORIGINAL "VELOCITY ENVELOPE" OF THE
> > INSTRUMENT IS PRESERVED ?
> > By this I mean that the ratio between the output peak levels of two
> > notes, belonging to two adjacent layers and played at their maximum
> > layer velocity, should remain roughly the same.
> >
> > I tried to do something like this in my python script, but it didn't
> > produce satisfying results:
> >
> > max_velocity = round(max_velocity / 127, 7)
> > gain = 1.0 + (1.0 - max_velocity)
> >
> > It would be very useful to know since this problem is likely to occur
> > when sampling any real world instrument at different velocities.
> >
> ------------------------------------------------------------------------------
> > Slashdot TV. Video for Nerds. Stuff that Matters.
> >
> http://pubads.g.doubleclick.net/gampad/clk?id=160591471&iu=/4140/ostg.clktrk
> >
> > _______________________________________________
> > Hydrogen-devel mailing list
> > Hydrogen-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/hydrogen-devel
>
>
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
>
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> _______________________________________________
> Hydrogen-devel mailing list
> Hydrogen-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/hydrogen-devel
>
--
follow me on my Audio & Linux blog <http://audio-and-linux.blogspot.com/> !
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
Hydrogen-devel mailing list
Hydrogen-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hydrogen-devel