TEC BC2 produces abrupt threshold

Feel free to ask here all the necessary questions about our Virtual Instruments
dstong
Posts: 145
Joined: Mon Dec 14, 2009 9:01 am
Location: Chicago, IL USA
Contact:

TEC BC2 produces abrupt threshold

Post by dstong » Mon Sep 18, 2017 7:35 am

I've been a windcontroller player, but in order to play Strings better I got a TEC BC2 to use with a keyboard and it is really wonderful except for a serious problem.

When I want to start a really soft note, there is no sound at all and then an abrupt start, after which the loudness works as expected. Put another way, in case I have not made it clear, you cannot gradually and smoothly increase the loudness from silence, nor can you fade out properly -the note stops before it really goes very, very soft.

I experience this with all SWAM and with Kontakt Samplemodeling instrumements. No combination of settings with the TEC Controller Utility fixes this problem. If I switch BC to control Expression I still experience the same problem.

No such problem has ever existed with my EWI windcontrollers, so clearly it appears to be a TEC BC2 compatibility issue.

I suspected a problem with the TEC BC2, but they suggested that I look at the MIDI output, and when I look at CC2 in Kontakt (you can see the little knob rotate and the values change from 0 -127. It returns to zero when blowing stops, but there is no sound until the value reaches 4 or 6 or sometimes a bit higher (even with the amplifier gain turned up high : )

When I use the TEC BC2 with Aria Engine and GPO, where I have use CC for Volume rather than Breath I do not have an abrupt threshold issue. I also tested some non Samplemodeling instruments in Kontakt, using Volume paramater and that also works as it should.

Have any of you who use TEC BC2 experienced this issue?
If yes, what is the fix?

Thanks,

Dan

MSchnell
Posts: 506
Joined: Mon Jul 09, 2012 5:06 pm
Location: Krefeld, Germany
Contact:

Re: TEC BC2 produces abrupt threshold

Post by MSchnell » Mon Sep 18, 2017 12:46 pm

Hi Dan.

I also use SWAM Flute with the TEC BBC v2. I am also practicing playing Cello with the BBCv2. I use these controller assignments:
- Breath pressure -> "Expression"
- Bite -> Bow pressure
- Key after touch -> Vibrato depth
- Head tilt left/right -> Vibrato speed slow/fast
- Head nod l up/down -> Pitch bend up/down
- Expression wheel: bow position
- Pitch bend wheel up: Flagolet
- Hold pedal -> reverse bow direction.

The great count of controllers allows for a very natural playing feel.
Seems to work rather nicely for me, but I still need a decent amount of practicing to prevent the Cello from sounding "blown" .

I in fact see the same problem and it already has been discussed here in the forum several months ago. (-> e.g.: https://forum.samplemodeling.com/viewto ... arsh#p4910 , https://forum.samplemodeling.com/viewto ... arsh#p5046 , https://forum.samplemodeling.com/viewto ... ion#p35695 )

In fact I - exactly like you - found that the instruments starts with a rather harsh attack when expression reaches a value of about 7, when very gradually increasing the blowing force.

With the TEC monitoring tool and with viewing and logging the midi data stream, I verified that there is no problem with the TEC, and Sample Modeling told me that the behavior is by design.

So I am really astonished to hear that your wind controller does not show that problem. I wonder what it can do other with the sound start than the TEC does.

In fact it can create a note-on event based on blowing pressure, which the TEC can't.

That would be really interesting to know because:

(1) needing a note-on after (instead of before) expression rises to a non-zero value to create a really soft sound start should be considered a bug that Sample Modeling should (and supposedly will) take care of.

Also velocity might (but IMHO should not) have some influence. I did test velocity variants but did not get a result regarding this issue.

(2) As I have nice tools for midi programming, I would be able to recreate the expression vs note-on behavior of your wind controller when a keyboard and a breath controller is played.

Please let me know when you are able to analyze what exactly the wind controller sends to make the SWAM instrument create a really softly starting sound.

BTW: I suggested as well to Sample Modeling as to TEC to implement high resolution Midi CC. Both say that this is a good idea, but did not start working on it. With high resolution CC (16384 rather than 128 steps), really soft playing could be a lot more accurately supported. (-> https://forum.samplemodeling.com/viewto ... ion#p30883 )

-Michael
Music examples -> http://www.boa-sorte.de

dstong
Posts: 145
Joined: Mon Dec 14, 2009 9:01 am
Location: Chicago, IL USA
Contact:

Re: TEC BC2 produces abrupt threshold

Post by dstong » Tue Sep 19, 2017 12:36 am

Michael,

Thanks for your fast reply which immediately confirmed that my experience is not unique, due in some mysterious way to my setup.

I'm amazed no one else has brought up this matter. On the other hand, too many musicians, pay far too little attention to dynamics, and the importance of the need to vary it. Perhaps some think that the louder you play the better it will sound, which may only be true if there is a lot of noise...

I was hoping that there is some SWAM engine or Kontakt engine parameter that I need to set correctly.
You know a lot more about MIDI parameters than I do so maybe Note On is at the heart of the matter, as you appear to be thinking. I'm afraid that although I have heard the term, I know nothing about it.

Is there a setting for it hidden away somewhere ?

Thanks,

Dan

PS I searched for TEC BC2 and just TEC but could not find your prior posts

MSchnell
Posts: 506
Joined: Mon Jul 09, 2012 5:06 pm
Location: Krefeld, Germany
Contact:

Re: TEC BC2 produces abrupt threshold

Post by MSchnell » Tue Sep 19, 2017 5:10 am

Dan,

To make a sound, the SM instruments (as well SWAM as Kontakt) need to get a "Note-On" event defining the note to be played and at least one "Expression" event defining the "sound power". When using the TEC and a keyboard, these events are independent .

"Expression" is sent by the TEC (a new event any time your blowing pressure changes, transferring a number for the "power" (0 = no blowing ... 127 = very hard blowing) ). A "Note-On" events is sent by the keyboard at time you press a key. It also sends a "Note-Off" event when you release the key, which makes the instrument stop the sound, even when you continue blowing.

When using the EWI, these events are not independent, but the EWI decides when to send a "Note-On" and "Note-Off" event. Obviously, when you continue blowing and change the fingering, the EWI will send a Note-Off for the old note and a Note-On for the new one (exactly like a keyboard when you first release a key and then press another one). But when you increase the blowing power up from Zero, the EWI will send "Note-On" (defining the note to be played) only after it detects that you are blowing at all.

So the sequence of events seen by the instrument software is different when you "normally" play the would-be same "performance" using an EWI or a TEC/keyboard combination.

To make things even more complicated, each Note-On comes with the definition of the "velocity" the key is pressed. With a keyboard, the meaning of this is obvious, but it's opaque how the EWI decides which velocity value it sends with any Note-On.

I did already try tweaking the parameters for the SWAM Flute without any success regarding this issue. I don't have an SM Kontakt instrument, so I can't comment on that.

I do have a Wind controller (a 30 yeras old Yamaha WX7) but same is rather worn out (the blow pressure sensor "Zero"-control is very unstable) and that is why I did not yet test if using same results in the said "attack" problem.

If you really feel, that your SWAM instruments don't show the problem when used with the EWI, please lets try to find out how this can be. Maybe you can record a Midi file that I can play back and analyze.

At best, you would record Midi files of a small would-be similar performance one done with the EWI and one done with the TEC, so that Sample Modeling and I can find the difference.

(P.S.: The links I gave in the other post should point you to the previous discussions in the forum.)

-Michael
Music examples -> http://www.boa-sorte.de

leleswam
Posts: 156
Joined: Tue Jan 03, 2012 5:01 pm

Re: TEC BC2 produces abrupt threshold

Post by leleswam » Fri Sep 22, 2017 10:03 am

Hi folks,

I was pretty sure that we have already explained how things works.
It is pretty simple.

When the "Expr. Trigger Mode" is active (Normal or Fast) - and it is for the Default Breath Controller Preset - the instrument can perform NOTE RETRIGGER based on the input breath pressure.

NOTE RETRIGGER means that a "virtual" note-on is triggered by the breath rising from zero while a note is still pressed on the keyboard.
There is no other way to trigger a "virtual" note-on, with proper note-on velocity associated, than measuring the derivative of the rising breath pressure. This means that:
1- we need a threshold to be sure that the new attack is deliberately performed
2- we need to measure the derivative to understand what velocity to apply for the attack generation: it takes some millisecond to check the rising breath BEFORE the note-on is triggered

If you switch-off the "Expr. Trigger Mode"​ (as in the Default Wind Controller preset), the sound does not stop until a note-off is received, even if the breath is zero: you hear just a very subtle tune.
This does not happen for Wind Controllers, since the note-off is produced by the device itself. The device takes care to measure the breath, but it is made with much more resolution directly on the electrical signal taken from the sensor.

The solution for SWAM is simple: just map the Main Volume CC to the same CC as the Expression (i.e. CC2 for Breath Controller, usually).
Then you can act on the Expression Curve or to the Breath Controller sensitivity curve to compensate the different dynamic curve.

Best,
Emanuele
Audio Modeling

MSchnell
Posts: 506
Joined: Mon Jul 09, 2012 5:06 pm
Location: Krefeld, Germany
Contact:

Re: TEC BC2 produces abrupt threshold

Post by MSchnell » Fri Sep 22, 2017 12:24 pm

Hi Emanuele, thanks for listening !

From our previous discussions, I did already know most of what you point out here nice and clear.

But I fail to see (and I never did such test) how (like Dan states) the issue is not triggered when using a Wind controller instead of a Breath controller.

I understand that the "Wind Controller" and "Breath Controller" presets are just that: Presents, and after selecting either of them, all parameters of the SWAM software can be tweaked to any value. I don't know whether Dan changed to the other Preset (or a preset based on same) when switching from Wind Controller to Breath controller. If yes he (like myself) might have failed to find the parameter that triggers the said behavior (no soft starting sound possible) - supposedly to provide a benefit regarding some other aspects of Breath Controller usage.


Technical detail:
I do understand that a threshold (say CC val = 7) is needed to detect the "virtual note on" as you need to detect the "expression" derivative from several previous CC events. Now that derivative should determine the softness/explosiveness of the attack.

But when very gently increasing the expression value, the derivative should be very low and hence when CC val = 7 is reached a very soft starting sound is supposed to be generated.

The detection of the derivative is (at least in the case of no note running since some time before) completely independent of any Midi note-on events.

So if (with a Breath controller) the note on is issued way before the CC val gets greater than Zero, the "virtual note on" (at CC val = 7) should start the sound appropriately.

Maybe a wind controller issues a note on together with the CC val jumping from 0 to 1, and this influences th way the derivative is calculated (now correct) ? --- Hmmm --- I suppose even with a wind controller SWAM will do flap-noises with no blowing (expression CC = 0). So the Wind controller seems to issue note-on events at that time...

I will do some more tests.

Thanks again,
-Michael
Music examples -> http://www.boa-sorte.de

leleswam
Posts: 156
Joined: Tue Jan 03, 2012 5:01 pm

Re: TEC BC2 produces abrupt threshold

Post by leleswam » Sat Sep 23, 2017 7:39 am

Michael, you are not considering these main things:
1) SWAM receives MIDI values. MIDI values are very limited, 127: the derivative is calculated on the first 7 steps.
2) The Wind Controller generates the Note-on / Note-off itself. It measures an electrical signal that has maybe 65535 resolution points. It can compute the derivative on the first 100 points, which converted to MIDI means that the threshold is less than 1 (in MIDI values).
3) The Breath controller is an independent controller from your keyboard and it cannot generate the note-on/note-off itself. From the plugin's point of view, which receives both the keyboard events and the breath controller events, it can get a note-on when you are not breathing and it can get a note-off when you are still breathing. This is impossible with the Wind Controller, because the note-on / note-off are triggered by the device itself when you start and stop breathing.
So if (with a Breath controller) the note on is issued way before the CC val gets greater than Zero, the "virtual note on" (at CC val = 7) should start the sound appropriately.
This is exactly what we avoided to do: if you use the note-on velocity of the real note-on issued before the breath rising, you will always have the same identical attack for every next "virtual note on" triggered by the breath. Think of a fast repetition of the same note made with fast tonguing technique.

That said. Does the trick of mapping the Main Volume has been useful?

Best,
Emanuele

MSchnell
Posts: 506
Joined: Mon Jul 09, 2012 5:06 pm
Location: Krefeld, Germany
Contact:

Re: TEC BC2 produces abrupt threshold

Post by MSchnell » Sat Sep 23, 2017 8:45 pm

leleswam wrote:
Sat Sep 23, 2017 7:39 am
1) SWAM receives MIDI values. MIDI values are very limited, 127: the derivative is calculated on the first 7 steps.
This is exactly what I supposed.
leleswam wrote:
Sat Sep 23, 2017 7:39 am
2) The Wind Controller generates the Note-on / Note-off itself. It measures an electrical signal that has maybe 65535 resolution points. It can compute the derivative on the first 100 points, which converted to MIDI means that the threshold is less than 1 (in MIDI values).
Yep.
But I don't think it makes a big difference to have the threshold at CC= 1 instead of CC=7. We would just loose 7 of the 127 values for the resolution from ppp to fff.

Do you suggest that in wind controller mode note-on velocity is used to define the sound attack and in fact the EWI sends note-on velocity derived from the blowing attack. (how else could it make use of the derivative ? ) Obviously this is something that I myself can't check, so this is new to me.

So I don't see what this could mean in this context. SWAM could (be configured to) start the sound at expression CC = 7 (i.e. do a virtual note on at that point, of course only if a midi note-on has been received before) and nonetheless use the derivative taken while receiving expression CC = 1...7 (independent of a midi note-on) ) to determine the sound attack.
leleswam wrote:
Sat Sep 23, 2017 7:39 am
3) The Breath controller is an independent controller from your keyboard and it cannot generate the note-on/note-off itself. From the plugin's point of view, which receives both the keyboard events and the breath controller events, it can get a note-on when you are not breathing and it can get a note-off when you are still breathing. This is impossible with the Wind Controller, because the note-on / note-off are triggered by the device itself when you start and stop breathing.
Yep the Breath controller can do things a Wind controller can't. But that does not mean that SAWM would (and should) not be able to ignore ore re-interprete this additional possibility.
leleswam wrote:
Sat Sep 23, 2017 7:39 am
So if (with a Breath controller) the note on is issued way before the CC val gets greater than Zero, the "virtual note on" (at CC val = 7) should start the sound appropriately.
This is exactly what we avoided to do: if you use the note-on velocity of the real note-on issued before the breath rising, you will always have the same identical attack for every next "virtual note on" triggered by the breath. Think of a fast repetition of the same note made with fast tonguing technique.
I did not say note-on velocity should be used (why do you think I did ? ). In fact SWAM is very cleverly using note-on velocity for controlling the portamento speed. A really nifty feature !!!

My point is (see another explanation above) that the just detected expression derivative (not the note on velocity) could be used when CC=7 triggers the virtual note on.
leleswam wrote:
Sat Sep 23, 2017 7:39 am
That said. Does the trick of mapping the Main Volume has been useful?
In fact I don't think that this is a good idea, as the sound "attack" is much more than just a matter of volume.

In fact I would be able to do midi programming to mimic the behavior of a wind controller from the data received by the keyboard and the Breath controller, if I in fact would know how a Wind controller really works.

E.g. (it that is what might solve the problem) I could use CC 1..7 to detect a derivative of the expression, output a note on at CC=7 with velocity according to the derivative just detected (ignoring the velocity received from the keyboard before). It's sad that I would loose the keyboard velocity (defining the portamento speed), which is a definitive plus of using a decent keyboard instead of the wind controller fingerboard (especially with a SWAM String instrument, and this is why Dan started this thread), but the "derivative" velocity might work just as well, even if loosing some flexibility.

But nonetheless it would be better to be able to configure SWAM to do this than to need an additional midi preprocessor.

-Michael

BTW.: I suppose we lost Dan with this sophisticated tech-talk, but I would be very happy if I could help to improve the SWAM usability for Dan and for myself.
Music examples -> http://www.boa-sorte.de

MSchnell
Posts: 506
Joined: Mon Jul 09, 2012 5:06 pm
Location: Krefeld, Germany
Contact:

Re: TEC BC2 produces abrupt threshold

Post by MSchnell » Sun Sep 24, 2017 3:25 am

BTW.:
AFAIK, (other than my old WX7) EWI uses capacitive sensors rather than mechanical switches for fingering, so technically, it could detect the finger movement speed. Hence it would be able to send this information to SWAM and have same be used for portamento speed control.

So in the EWI there are two candidates as source for the Note-On velocity: derivative of breath pressure before a threshold is reached that actually generates the Note-On, and finger speed when a finger movement generates a note-transition and hence a Note-Off/Note-On sequence. Actually it would be most sensible to use note-off velocity for Finger-speed (while Note-On is Breath pressure derivative), but I have no Idea if such (rather unusual) Midi events are generated by EWI (and interpreted by SWAM). Maybe EWI even uses some CC and/or is configurable on that behalf.

BTW/2: obviously high resolution Midi CC for expression (needing updates as well for the BBC as for SWAM) would be very beneficial with the derivative detection before reaching a breath pressure threshold.

(I sent a note to Tom from TEC to notify him about this issue, as I think it would be great it TEC and Sample Modeling could work together to create an optimum user experience.)

-Michael
Music examples -> http://www.boa-sorte.de

dstong
Posts: 145
Joined: Mon Dec 14, 2009 9:01 am
Location: Chicago, IL USA
Contact:

Re: TEC BC2 produces abrupt threshold

Post by dstong » Sun Sep 24, 2017 7:27 am

Dear Michael & Lele,

I'm indebted to your replies to my posts and I'm delighted to report that my Crescendo/Diminuendo Problem with the TEC BC2 is solved for the Strings by setting:

1- Main Volume to CC2 (found on the SWAM Main MIDI Settings Option page),

and adjusting the

2 -TEC BC2 Breath Curve (Red Curve -1st Tab on Left) to a slight S shape,

and playing with the

3 - Expression Curve (SWAM Options [Advanced Parameter Options page). For now I like the slider all the way on the Right = Exp 1

Now I can get a note to start really soft without an obvious sudden onset, and I can fade a note out to near silence. I can state that with my current settings in Steps 2 and 3, it is about 98% to my satisfaction, which is certainly good enough for me.

At first I had no idea where to find the Main Volume, or how to adjust 2 TEC BC curse to get the threshold adjusted, until I realized that the Expression Curve, that Lele talked about was the SWAM Advanced Parameter Expression Curve (I was too fixated on a graphic curve shape adjustment that the TEC software offers.

I'm pretty sure that now I understand the instructions since now it makes sense & it has solved the problem.

As I said, and Michael noted, my reason for using TEC BC2 in the first place was to get a better STRING sound than I was able to produce with the EWI-4000s windcontroller. I suppose the same or similar adjustments should work for SWAM Wind instruments and for the Kontakt Brasses, but I have not had a chance to test yet.

Thanks Tons !,

Dan :D

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest