Re: [linux-audio-dev] Correct sustain pedal emulation (midi hold controller) ?

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] Correct sustain pedal emulation (midi hold controller) ?
From: Benno Senoner (sbenno_AT_gardena.net)
Date: Mon Oct 27 2003 - 18:00:55 EET


Alfons Adriaensen wrote:

>On Mon, Oct 27, 2003 at 12:44:45PM +0100, Benno Senoner wrote:
>
>
>
>>Assume no sustain pedal for now.
>>When I press C2 I hear the note. When I release it the sound does not
>>vanish immediately but takes a small amout of time to decay due to the
>>release envelope. If after releasing C2 I immediately press C2 again I
>>hear two C2 notes for a brief time.
>>
>>
>
>
>
>>Now same situation as above but with the sustain pedal pressed.
>>You hear the first C2, release it (the corresponding note-off is
>>postponed) and then press C2 again.
>>In that case is it correct that you must hear two sustained C2 notes.
>>Or must the first C2 be forced to get faded out / muted ?
>>If not (eg you hear two sustained C2 notes), how far can this go ?
>>Can there be 3, 4 etc sustained notes on the same key too ?
>>
>>
>
>Most synths will just restart the note on the same voice in both cases,
>i.e. begin a new attack phase at the level the previous (same) note had
>reached during its release. So there will one be at most one note of a
>particular pitch at the same time.
>
Keep in mind that linuxsampler streams its samples from disk so we can
use very large sample sets.
There exist many high quality piano samples in .GIG format that have 4-8
layers (velocity splits) for
pedal up and pedal down samples.
My question is mainly how to switch these samples.
What do you mean with "i.e. begin a new attack phase at the level the
previous (same) note had
reached during its release" ?
You mean velocity level ?
Assume I press C2 with velocity 50 pedal up, the C2-pedalup (associated
to velocity 50) sample sounds.
Now I press the sustain pedal and press C2 with velocity 100.
What should the sampler do ? Quickly fade out the C2-pedalup
(velocity-50) note and trigger the
C2-pedaldown (velocity 100) note ?
And of course when you release the pedal all sustained notes will get a
note-off.

for example I ordered the PMI Steinway D Grandioso sample (5 GB of
piano samples) in .GIG format
(see here for an mp3 demo, description etc:
http://www.timespace.com/data/downloads/itemdetail.asp?ID=1133 )

 and I want that this library plays perfectly in linuxsampler thus we
need some inputs for good sustain pedal
implementation.
As said we are not talking about string resonance emulation (yet), we
just want those wonderful sample libs
to play correctly in linuxsampler and this includes correct (withhin the
limits imposed by sampling) correct
sustain pedal emulation.

----
from a a review in SoS: 
http://www.soundonsound.com/sos/oct02/articles/sample_grandioso.htm:

One of the features that adds extra realism to Steinberg's /The Grand/ VST Instrument is its ability to crossfade between the sustain pedal up and down samples when you press and release the sustain pedal. While it's not currently possible to do this with /GigaStudio/, PMI will overcome this with a clever utility called /Virtuoso/, which provides the same functionality in /GigaStudio/ when combined with the /Virtuoso/ patches in the library. I say 'will' because although the /Virtuoso/ patches are supplied, the /Virtuoso/ utility itself isn't ready yet. ----

Is that feature called "re-pedaling" ? IMHO it would be pretty easy to implement if you always start both samples (pedal-up and pedal-down) and then crossfade between the two when the user presses the pedal. (besides from the fact that you need to defer note-offs the pedal is down). Or does that sound bad ?

The more and better inputs you will give us about how to implement sustain the more likely linuxsampler will implement it correctly.

>Small pedantic note: a piano has more than one string per note, but >you always play them all together :-) It's one of the reasons why a >decent piano sound is quite hard to synthesize. > > > Yes string resonance is the problem and not trivial to emulate (eg GEM RealPiano and The Grand VSTi perform some kind of emulation), but for now let's focus to good playback of these high quality multi GByte instrument libraries. Then if some skilled DSP developers want to join our quest and add string resonance (like The Grand VSTi does) then even better.

cheers, Benno http://www.linuxsampler.org A professional grade sampler for Linux


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Oct 27 2003 - 17:21:51 EET