Support for high-resolution MIDI?



  • Are there any plans to support high-resolution MIDI control messages for breath? Particularly at the low end, I'm finding the quantization to 7-bit MIDI signals to be very noticeable compared to the built-in sounds, so I assume the breath sensor is more sensitive than the 7-bit range represented by a single control message. Would be great to have access to that sensitivity over MIDI as well!



  • I am hoping this explains what I am hearing at low breath pressures. I've only been working with the Sylphyo for 3 days, but my playing style does use low breath pressures, and so this issue stood out.

    I recorded a short demo emphasizing low breath pressure. The demo is on the Sylphyo via Link through the Patchman English Horn sample set, using Kontakt and recorded in Cantabile. Here is the waveform:

    LowBreathPressureScreenshot.jpg

    Here are links to WAV and MP3 (Lame -v2) versions of the recording:

    https://ClintGoss.com/mp3/LowBreathPressureDemo.wav

    https://ClintGoss.com/mp3/LowBreathPressureDemo.mp3

    ... The critical areas are in the areas (in seconds) of 1-2, 13-15, and 20-22.

    Is the "jittering" in those areas due to 7-bit MIDI?



  • Interesting ! I think the clue about what it is, can be found in a midi monitor.
    My first impression is that the the tone generator does not properly react on the low pressure.
    I use the full rage : from very low to very high. Now to virtual instuments hosted by Gig performer: its midi monitor shows the gigantic range.

    Nice sound: I am not trying to play "real" instruments. I combine it with a Vl70m with the Patchman rom. Found that i play most the Plate model..

    I like your approach : sorru i cannot match your data : I am redoing the studio : so all is disconnected.

    Kind regards

    Frank



  • Hi Metered section

    when i look at the midi monitor of my host i see a high resolution data stream is send from Breath.

    I would love it if midi data will be sent in high resolution NRPN 's The synth i intend to use with Sylpyo uses those : ASM Hydrasynth ,

    will try to give extra data when mu studio is up and running

    Kind regards

    Frank



  • Hi Clint,

    We'll have a more in depth look at this. In the meantime, can you try to set the minimum in the breath settings menu lower? The default should be 20, but try something like 5 and it should respond better to lower breath.

    Maxence
    Aodyo Instruments
    Aodyo.com



  • @Support_AODYO Thanks for the info.

    I tried setting Breath => Minimum to 5, 1, and 117. This seems to change the minimum breath pressure where a "Note On" occurs from very low to pretty hig, but the first Breath Controller value transmitted is still 1 (looking in MIDIView). And, if I "hang out" right at that minimum breath are, I still get a "stuttering" that I'm pretty sure occurs when Breath Controller values of 1, 0, 1, 0 are transmitted (I have seen strings of at least 10 of these [1,0] sequences before a Note Off is transmitted).

    The solution might lie in the volume curve of the virtual instrument I am playing. I am not sure right now what I volume curve my virtual instruments are using (or how to change it ... I'm pretty new to virtual instruments), but I can imagine that there is a curve someplace that tells Kontakt how to shape the volume output based on Breath Controller inputs. Rather than a straight line, if it were an "S" curve or Bezier or some such, then the volume output with Breath Controller = 1 would be greatly reduced and the "stuttering" might be inaudible ...



  • @Clint We have experienced some similar issues with Kontakt in the past. It's quite difficult to set it to respond to wind controllers in a satisfactory way. You could try changing the Midi note-off delay on the Sylphyo and see if that changes anything?

    Let me know what you come up with.



  • No Luck. Setting MIDI Mapping => Note-off delay to 1ms is substantially worse. Values of 20ms and 75ms are no improvement. I reset it to 10ms.

    I also experimented with setting Breath => Filtering to Off, which made this stuttering issue much worse. Setting Breath => Curve to anything other than Log made the stuttering issue worse. Log-Lin was worse and Linear was much worse.

    I have also been experimenting with various MIDI filters in Cantabile to try to minimize stuttering, with no success ...

    I am thinking that any solution short of 14-bit BC commands will inherently be prone to stuttering at low volumes.

    What are the prospects for 14-bit Breath Controller output from the Sylphyo?



  • (However, I just found out that Kontakt 6 does not handle 14-bit BC MIDI commands ... Sigh.)



  • Here's (what appears to be) a solution for Kontakt. It was provided in the Native Instruments forum in post #6 of this thread:

    https://www.native-instruments.com/forum/threads/high-resolution-breath-controller.442309/

    In addition, I did find that in Kontakt 6.4.2, I am able to use the Volume modulation in the Amplifier section by using a Flexible Envelope. (I don't know if Flexible Envelope is available in all/earlier versions of Kontakt).

    Using a Flexible Envelope - either using Bezier curves or the Table option - I can then define any curve I like. With a very gentle rising slope from the left (CC2 = 0) end of the range ... I have reduced the stuttering to almost inaudible.

    As Stephen23 pointed out ... "You'll find 7-bit control entirely adequate".



  • Hi there,

    The main trouble about using high resolution MIDI is that it needs 2 MIDI messages to be transmitted thus requiring twice the bandwidth of a standard MIDI message. As there are many other MIDI messages to be transmitted (note on/note off, and all the various MIDI CC messages transmitted by the Sylphyo) using high resolution MIDI messages would double the resolution but would also lead to bigger time between MIDI breath messages and thus stepping effects would come back ...
    Issue is there on the MIDI side but would also have similar impact on the wireless transmission which have to face similar bandwidth constraints.



  • @Laurent_AODYO said in Support for high-resolution MIDI?:

    requiring twice the bandwidth of a standard MIDI message

    Watching the messages fly by, I suspected as much ...

    I believe (hope) that the "server side" solution for Kontakt that I described above, as provided in the Native Instruments forum, is the complete solution. It does require the sampler to have such a custom envelope facility, and I have no idea if other samplers offer that.

    Another "client side" ("Sylphyo-side") solution might be to offer another choice for Breath => Curve ... maybe a "Hyper-Logarithmic" or "Log-Log" or "Log-Squared" (Log^2) curve? That would probably approximate what I am doing in Kontakt ...



  • @Clint

    I check the messages : had to smile when you mentioned 127 bits, i guess you meant 127 value.

    In the NI conversation they talk about the curve, while i think that is not your problem : it is low values of breath.

    My machines are not connected but i remember seeing a very high resolution for breath in the minimonitor of rig control , the host i use when using VST 's I will check if i can values from my hardware, life i want to lmit myself to hardware synth(s) only. My choice has been a Hydrasynth .

    Hydrasynths uses NRPN for data transfer

    regards

    Frank


Log in to reply