|
From: Andreas P. <and...@lk...> - 2004-11-20 17:01:24
Attachments:
velocity.patch
|
Hello, This is my first post to this list, and my first attempt to contribute to this impressive project. What I have done is some rather overambitious measuring and fine tuning of the velocity curves. The three functions for linear, nonlinear and special are replaced with 15 separate curves, approximated with line segments. The scaling parameter is also handled a bit different than before. /Andreas |
|
From: Christian S. <sch...@so...> - 2004-11-20 22:07:55
|
Es geschah am Samstag 20 November 2004 18:01 als Andreas Persson schrieb: > Hello, Hi Andreas! > This is my first post to this list, and my first attempt to contribute > to this impressive project. What I have done is some rather > overambitious measuring and fine tuning of the velocity curves. So you actually measured Gigasampler's original velocity curves? > The three functions for linear, nonlinear and special are replaced with > 15 separate curves, approximated with line segments. The scaling > parameter is also handled a bit different than before. Do you think it might be worth to approximate a polynomial function instead of using linear segments? Btw here http://www.linuxsampler.org/doc/engines/gig/velocitycurves.pdf is a graphical comparison betwenn the original measurement curves made by Mark Knecht and the calculated functions currently in use in LS/libgig - just in case somebody's interested in a graphical comparison of the curves. Has somebody already tested Andreas' patch? Do the new curves feel more accurate? Mark perhaps? CU Christian |
|
From: Andreas P. <and...@lk...> - 2004-11-21 10:59:16
|
Christian Schoenebeck skrev: > Es geschah am Samstag 20 November 2004 18:01 als Andreas Persson schrieb: > >>Hello, > > > Hi Andreas! > > >>This is my first post to this list, and my first attempt to contribute >>to this impressive project. What I have done is some rather >>overambitious measuring and fine tuning of the velocity curves. > > > So you actually measured Gigasampler's original velocity curves? > Yes, I did a lot of measurements of GS 2.5. Input was a minimal gig with a sawtooth sample and a MIDI sequence of the same note repeated with all 127 different velocities. Output was a wav, which I run through a small program to get data for a velocity x volume graph. I did this for all 15 curves with scaling set to 20, and for some curves I also varied the scaling parameter. >>The three functions for linear, nonlinear and special are replaced with >>15 separate curves, approximated with line segments. The scaling >>parameter is also handled a bit different than before. > > > Do you think it might be worth to approximate a polynomial function instead of > using linear segments? Btw here When looking at the graphs for the measured nonlinear curves, it seems as GS also uses linear segments. For the special curves I'm not so sure, perhaps some of them or some segments of them could be replaced with polynomials or perhaps exponential functions, but I doubt it would be worth it. I did try to find functions, I found this site for function fitting to be great: http://zunzun.com, but I did not found any functions that could approximate whole curves well in a consistent way. > http://www.linuxsampler.org/doc/engines/gig/velocitycurves.pdf > > is a graphical comparison betwenn the original measurement curves made by Mark > Knecht and the calculated functions currently in use in LS/libgig - just in > case somebody's interested in a graphical comparison of the curves. Uh-oh, It seems as somebody else than me has spent a lot of time and effort on this, I didn't mean to step on any toes... I started doing this tuning when I noticed that my favorite piano gig was not feeling right, It was not audible at all when playing soft. It uses curve type nonlinear, range 1 and scaling 0. Here's a plot of a measured nonlinear-1-20 curve together with my line-segment-approx and the original linuxsampler function: http://hem.spray.se/andreas56/plotfile.png > Has somebody already tested Andreas' patch? Do the new curves feel more > accurate? Mark perhaps? Well, I have :). Apart from some artificial tests, the piano feels better with the patch. Other than that I have not tested the feel that much. > CU > Christian /Andreas |
|
From: Mark K. <mar...@gm...> - 2004-11-21 16:41:18
|
Andreas, Welcome! Great work! On Sun, 21 Nov 2004 11:57:57 +0100, Andreas Persson <and...@lk...> wrote: <SNIP> > > Yes, I did a lot of measurements of GS 2.5. Input was a minimal gig with > a sawtooth sample and a MIDI sequence of the same note repeated with all > 127 different velocities. Output was a wav, which I run through a small > program to get data for a velocity x volume graph. I did this for all 15 > curves with scaling set to 20, and for some curves I also varied the > scaling parameter. Good stuff. <SNIP> > > Uh-oh, It seems as somebody else than me has spent a lot of time and > effort on this, I didn't mean to step on any toes... No! No! No! Not stepping on my toes at all! I got involved early on and did what I could to help out. I'm not a programmer, just a composer/recordist that uses GSt 2.5 and would like to help with LS. That said, we all add value, both you and I. I think you've gone further than I did which is great, but even if what your work did was duplicate and verify what I did earlier, that is helpful in making sure we really understand how GSt works. I truly welcome your contribution. > > > Has somebody already tested Andreas' patch? Do the new curves feel more > > accurate? Mark perhaps? I have not used LS in quite awhile now. I moved in May and for months much of the studio was in boxes. It's now getting set up again so maybe I can find some time. I am retiring my GSt box in favor of combining GSt onto a much more powerful machine that runs most all of my Windows-based synths - Acid Pro, Battery, Reaktor Session, and today (hopefully) GSt. If I have no major issues with GSt loading up and working along side these other tools then I'll take the Gig library disk out of the old GSt machine and install it in the new one. At that point I'll likely be in a better position to do some comparisons. With the holiday this week I'll be traveling and won't work on this until the 1st of December. On the other hand I has (happily and blessedly) laid off last week and am now jobless. I've decided to not look for wok until next year so hopefully December can be productive both the writing music and, if there is some new life here, in the development and testing of LS. It's a bit weird to be out of work after 25 years in Silicon Valley. I have a smile on my face. We'll have to see how long that lasts... ;-) > > Well, I have :). Apart from some artificial tests, the piano feels > better with the patch. Other than that I have not tested the feel that much. > I'm probably not musical enough to test too much for feel, but I can do a lot of MIDI based work recording audio from both into Ardour and seeing what I uncover. I have recently been considering the purchase of the GS3 upgrade. Has anyone had a chance to really play with it? I'm really only interested in the unlimited voice count version. Cheers, Mark |
|
From: Christian S. <sch...@so...> - 2004-11-21 12:04:54
|
Es geschah am Sonntag 21 November 2004 11:57 als Andreas Persson schrieb: > > So you actually measured Gigasampler's original velocity curves? > > Yes, I did a lot of measurements of GS 2.5. Input was a minimal gig with > a sawtooth sample and a MIDI sequence of the same note repeated with all > 127 different velocities. Output was a wav, which I run through a small > program to get data for a velocity x volume graph. I did this for all 15 > curves with scaling set to 20, and for some curves I also varied the > scaling parameter. Very good! > > Do you think it might be worth to approximate a polynomial function > > instead of using linear segments? Btw here > > When looking at the graphs for the measured nonlinear curves, it seems > as GS also uses linear segments. For the special curves I'm not so > sure, perhaps some of them or some segments of them could be replaced > with polynomials or perhaps exponential functions, but I doubt it would > be worth it. Ok, then we forget about that. > Uh-oh, It seems as somebody else than me has spent a lot of time and > effort on this, I didn't mean to step on any toes... I started doing > this tuning when I noticed that my favorite piano gig was not feeling > right, It was not audible at all when playing soft. It uses curve type > nonlinear, range 1 and scaling 0. Np :), at least for me it wasn't much work, even though you might get that impression, but I just fed Maxima with the data from Mark and the curve fitting was done in few minutes that way. Fortunately Mark already did those time consuming measurements. > Here's a plot of a measured nonlinear-1-20 curve together with my > line-segment-approx and the original linuxsampler function: > > http://hem.spray.se/andreas56/plotfile.png Looks very good! If you have plots of the other two functions as well, please let me know. Just in case you already have, that doesn't mean you have to create them. But it would be nice for the docs to have comparison graphs between our curves and the original ones. > > Has somebody already tested Andreas' patch? Do the new curves feel more > > accurate? Mark perhaps? > > Well, I have :). Apart from some artificial tests, the piano feels > better with the patch. Other than that I have not tested the feel that > much. Ok, I'll apply it today. Thanks! Christian |
|
From: Andreas P. <and...@lk...> - 2004-11-21 16:17:49
|
Christian Schoenebeck skrev: > Looks very good! If you have plots of the other two functions as well, please > let me know. Just in case you already have, that doesn't mean you have to > create them. But it would be nice for the docs to have comparison graphs > between our curves and the original ones. Lots of plots: http://hem.spray.se/andreas56/curves /Andreas |
|
From: Rui N. C. <rn...@rn...> - 2004-11-24 14:02:42
Attachments:
libgig-0.7.2-0.patch.gz
|
Hi Chris, While integrating libgig support into QSampler I've detected a minor quirk in the "gig.h" header file, that has been solved by simply inserting a oneliner: a forward declaration of gig::Region class. Apparentely, a compiler error was just exposed if you include "gig.h" under a Qt C++ project (as is qsampler), and was all about "Region" being an already typedef'd symbol. This all comes to the attached patch, which also applies for correcting some other minor documentation install problems (man pages and doxygen docs). If nothing or no one goes against this, I'll be ready to commit into CVS soon. Oh, this patch also applies for bumping up the libgig package version to 0.7.2. Please check it out carefully, and tell me if you agree. Hope so. Cheers. -- rncbc aka Rui Nuno Capela rn...@rn... |