Kore 2 Reaktor Toolpack

Discussion in 'KORE' started by sleen, Nov 9, 2007.

  1. sleen

    sleen NI Product Owner

    Messages:
    890
    Sustain and Expression

    Hi there, thanks for joining us!

    Un-assigning the trigger: That long list to select a mapping...can have more than one star or assignment. So you can hit a button and generate a burst of stuff at once...cool, but you don't need this. Make sure in that list, that trigger is not selected, and Value; IS. :)

    Double Duty: You can use the same Kore2midi reaktor ensemble to send both CC64 and CC11. You have already learned how to setup the Kore2midi button, and now you must setup a kore2midi knob.

    Select Knob 1 in the kore2midi kore controller page, and change its settings in the 'control' tab of the page editor to use the pedal input like you did before with FS. Then visit panel B of the Kore2midi ensemble. Midi output module 1 or MO1 is already doing something; your sustain messages. By default, Kore2Midi button 1 and knob 1 both use MO1, with the button on the trigger, and knob on the value. Lets use MO2 instead, or MO9. MO9 settings should be type= controller, number = 11, and we will control the value knob ourselves with the pedal. Navigate the drop down list for knob 1 and select MO9 Value, then de-select its former assignment, MO1 value.

    Some not others: To send midi to certain plugins but not others, there are only 2 ways; fixed routing or dynamic filtering. Within filtering, you can filter and rechannelize using internal kore midi effects 'filter', and 'transform'. The NI internal midi filter is very limited and will block all notes or cc. The Toolpack midi filter is more flexible and can filter based on broad selections like message type entirely, or be very specific down to subtracting value 63 from a modwheel sweep.

    Lastly, there is a trick in Kore where you block all CC using the internal midi filter, and then use the control page above to receive midi from the outside world and route directly to a kore function.

    In the case of your particular kore performance using Akoustik Piano and Pro53 and wanting sustain on both, but expression only on Pro53, I would use a single reaktor Kore2midi, send CC 11 on a reserved channel, and then use the internal midi effect transform in the slot above pro53 to rechannelize all incoming midi to the channel that pro53 is using, probably channel 1. CC 11 messages may hit the akoustik piano plugin, but since they are on midi channel 16, they have no affect.

    Hope this helps,

    jonathan adams leonard
     
  2. Scottylad

    Scottylad New Member

    Messages:
    6
    Jonathan:

    I have a few questions about your Scale module.

    I recently purchased Kore 2. My primary disappointment is with the lack of features of the built-in step sequencer. Your Scale module offers a glimmer of hope.

    Kore 2's sequencer is notably lacking - it's transpose feature seem to mindlessly shift everything by the exact same number of half steps as your keypresses, not taking scale into account. It's not an "intelligent" transposition, which I imagine was your motivation!

    I have not installed your Toolpack since I do not yet own Reaktor. Yet...

    My wish of course is to use your Scale module as a MIDI effect in the chain immediately after Kore's step sequencer to "correct" the notes output by the step sequencer before they are passed to the next insert.

    Although there are of course numerous reasons to buy Reaktor, frankly your Scale module would be my primary motivation at the moment. I REALLY need a good step sequencer in Kore and it is one of the main reasons that I bought the product. The AU specification apparently does not allow for MIDI out like VST does. So one of the beauties of Kore is to be able to chain a step sequencer to any AU plugin's input, directly within a plugin hosted within Logic, without using an external product, employing Rewire, etc. Unfortunately the included step sequencer is very rudimentary.

    First question, which I hope I can pose without offense:

    Is your Scale module functioning "up to spec" and bug-free with no stuck notes, etc.? Are there any anomalies that I should know about? I imagine not, especially since you must perform live, but I have to ask.

    Do I merely need to insert Scale as a MIDI effect immediately after the step sequencer, then open the ensemble within Kore to modify its settings?

    Must Reaktor actually be running outside of Logic in order to use this ensemble within Kore (Kore would be running within Logic as a plugin)? Or does Reaktor automatically get instantiated as a plugin when using Ensembles in this way?

    Must I simply set the scale in your module to match the scale that my sequence is written in, then any transpose after that will be locked to that scale? How do you handle the "first note"? If I lazily design my sequence within the step sequencer from a root note of C, then set my scale to E, what happens if the first note that I press to trigger the sequence is in fact E? Will it indeed play from E since it is the defined scale and the note I pressed, or will it transpose up the difference of half steps between C and E?

    Can you elaborate on the features, perhaps offer a screenshot?

    I keep calling Scale an "ensemble", but you call it both an ensemble and Koresound. So here's the big question:

    Can other "MIDI effect" modules (such as transform, arp, step sequencer) from Reaktor be inserted into Kore, or can only Kore's be used by default? In "MIDI effect" I am of course using Kore's terminology. I would imagine of course that you can insert Reaktor synths and tone generators, but can you insert special-purpose Ensembles such as other step sequencers that process MIDI, or do they need to be customized for Kore as yours appear to be? Did you have to develop your modules specifically to be usable within Kore, or can I expect Reaktor factory modules to work in this fashion as well?

    Thanks so much for indulging me, I know I'm presenting a lot of questions.
     
  3. sleen

    sleen NI Product Owner

    Messages:
    890
    answers

    Is your Scale module functioning "up to spec" and bug-free with no stuck notes, etc.? Are there any anomalies that I should know about?

    Not that I am aware of. The last update fixed the issue that came up with the scale module.

    Do I merely need to insert Scale as a MIDI effect immediately after the step sequencer, then open the ensemble within Kore to modify its settings?

    Yes that's pretty much it.

    Must Reaktor actually be running outside of Logic in order to use this ensemble within Kore (Kore would be running within Logic as a plugin)? Or does Reaktor automatically get instantiated as a plugin when using Ensembles in this way?

    No.

    Must I simply set the scale in your module to match the scale that my sequence is written in, then any transpose after that will be locked to that scale? How do you handle the "first note"? If I lazily design my sequence within the step sequencer from a root note of C, then set my scale to E, what happens if the first note that I press to trigger the sequence is in fact E? Will it indeed play from E since it is the defined scale and the note I pressed, or will it transpose up the difference of half steps between C and E?

    The scale module will work according to your settings and map incoming notes to the offsets. Its up to you to decide how the mapping will work or behave. If a 'wrong' note comes in, how would you resolve to fix this if it has 2 equidistant alternatives? You have to decide if this outlyer will be pushed up or pulled down. If this seems too rigid, try using the random knob which will create more variety.

    Can you elaborate on the features, perhaps offer a screenshot?

    There is a good review of the toolpack on kore.noisepages.com giving some more detail, application notes and feedback from me. The toolpack functions are fairly simple and assume both kore and reaktor familiarity.

    Can other "MIDI effect" modules (such as transform, arp, step sequencer) from Reaktor be inserted into Kore, or can only Kore's be used by default? In "MIDI effect" I am of course using Kore's terminology. I would imagine of course that you can insert Reaktor synths and tone generators, but can you insert special-purpose Ensembles such as other step sequencers that process MIDI, or do they need to be customized for Kore as yours appear to be? Did you have to develop your modules specifically to be usable within Kore, or can I expect Reaktor factory modules to work in this fashion as well?

    So long as it is a vst plugin, it will probably have a midi input and output and therefore work in kore. AU plugins don't have midi inputs so those are out. Otherwise you can use whatever means you want to process midi such as plogue bidule.

    Thanks so much for indulging me, I know I'm presenting a lot of questions.

    Hey its no problem! Hopefully you will get into reaktor. Besides being able to use the scale ensemble as a koresound it has quite a bit more to offer.

    Hope this helps,

    jonathan adams leonard
     
  4. sleen

    sleen NI Product Owner

    Messages:
    890
    Update: 1.7 090616

    Version 1.7 090616

    + Delay
    + Mouse2midi
    + Mouse2notes
    + Mouse2midiX16
    + Mouse2midiX64


    Comments:
    Delay is a simple stereo audio delay that can be used in the Kore Matrix for delay compensation.

    Mouse2Midi begins a series of midi output devices that can use a mouse, pointer device or touch screen. Mouse2notes is a basic interface for generating notes to trigger pitched and percussive instruments. Mouse2midiX64 is a 64 cell midi output interface using portions of the popular Kore2midi where each cell generates a specific message of your design. All the Mouse2midi ensembles are based on the Reaktor 5 polydisplay demo to provide custom areas and visual feedback. This series of simple devices was made to provide midi generation in situations where an external controller is not available or needed.

    Koresounds for each above function are provided and additionally a demo koresound that uses the scale and chord functions for quick riffing with a simple mouse scrape.

    For more information and to obtain the software:

    Kore 2 Reaktor Toolpack

    Thank you,

    Jonathan Adams Leonard
     
  5. ew

    ew Moderator Moderator

    Messages:
    21,328
    Well done as always, Jonathan =)

    I'm sure quite a few people will find some interesting uses for mouse2midi.

    ew
     
  6. BobTheDog

    BobTheDog NI Product Owner

    Messages:
    1,339
    I second that!
     
  7. krraqk

    krraqk Forum Member

    Messages:
    60
    Hi there

    Im trying to do some midi controller remapping inside Kore but it seems that its not possible to do that, so ew suggested me to try transformer from your toolpack.

    What I want is to remap cc#7 to other CC#. But when I use transformer ALL the CCs get transformed to the new CC because I cant set a CC number only to remap.
    .
    Is there a solution for this or maybe in a future update would be possible to set the CC number to transform in order to get more control in the transformation?

    Also do you have plans to implement other operations inside this like rescale, or multiple transformations?

    Another doubt: the transformer can send midi out? when I insert it previous to a vsti the vsti dont receive midi.

    Thanks anyway for sharing your work.
     
  8. sleen

    sleen NI Product Owner

    Messages:
    890
    Transform

    Hi Krraqk, thanks for checking out the toolpack!

    The transform ensembles work as you have described and do not yet offer the same level of detail in describing a midi condition as the newer filter ensembles do. To accomplish what you need, a condition must be defined so the comparison can be made, and then if matched, do this action; which would be another set of parameters. So a condition action pair sometimes called IFTHEN. Right now the filters work this way, but the action is all empty meaning to kill that matched message; being a filter. Instead, this could be modified to generate another message with some defined parameters. I would make a single line version, with condition parameters and action parameters, and then maybe an 8X version to allow for 8 transforms at once. Would you or others find this useful?

    If this worked as I am musing it would allow incredible detail - for example using mod wheel (cc1) value 52 to trigger note 72 value 89, leaving midi channel alone. I will have to think about this as some conflicts in mappings might exist but thats my basic idea.

    Concerning any other midi modifiers yes I have done some backburner work which includes open controller curves convex, concave and S of varying strengths, but I have not finished the math to have a single curvature knob where 12:00 is linear, and sides are convex and concave with a 'S' button (ie one function for many performance presets). The other possibility is not a continuous function to modify values, but a table where you can draw a curve or make single point edits....as found in various software.

    To summarize in the area of potential general purpose midi modifiers:
    -scaling (linear, exponential, S, table)
    -transform (by condition)

    Mostly I put things in the toolpack that I or others actually need, to keep things simple rather than a long list of things that people have no need or even time to read about. Since what I hear is like a tip of the iceberg I assume others will need these requested things but someone has to request. And test. ;)

    Ok, and lastly here is your existing kore workaround:

    You could do a basic transform of CC7 with the kore controller pages for the Kore2midi ensemble. Simply setup one of the Kore2midi internal modules to send your desired message, and in the corresponding kore control, assign or midi learn CC7. Now when kore receives cc7, kore2midi will send that message. The only catch is that because controller page midi assignments are outside above and beyond the matrix, you cannot specify a port and channel. The controller pages get midi before the matrix like the global controller:

    Midi Port -> Global Controller -> Controller pages -> Matrix

    Thanks again and let me know what you think would be useful!

    jonathan adams leonard
     
  9. krraqk

    krraqk Forum Member

    Messages:
    60
    This is a very kind offer from you!
    I would find it very useful for sure. I think that remap controllers is a task that I find common in many live situations and probably others would find it useful also. I just dont understand how Kore dont support it being a live host, because although the controller is de heart of Kore, when playing (and Im a guitar midi player) one needs to use the standard controllers like BC, CC1, aftertouch and use those in the best possible way.

    Yes, that would be amazing and would allow to fine tune the behaviour of how the controller drives the synths parameters. If I understand correctly that would mean some type of rescaling or its a fixed conversion?

    Well I dont have words to thank you for your dedication. Of course I would be happy to test it.


    Many thanks for your help, I will try it and will let you know how it works.
     
  10. krraqk

    krraqk Forum Member

    Messages:
    60
    Hi Sleen,

    I have tried your sugested workaround. Well, first I need to recon that I dont know very much about Reaktor ensembles, and Im not had success with midi2kore, I think I dont understand it.

    I tried the following:

    In the "A" section of the ensemble:

    Selected K1 pot // midi learn // blow my BC // the K1 pot moves, GOOD.


    in the "B" section of the ensemble:

    I set the M01 module (the target CC) as follow: control change 2 // channel 1 // number 2 // value 65 (but I dont know what to put here, I dont want a fixed value here !).

    Wanted to use the K1 send, but when I open the menu selection I dont know what to set, there is not a simply M01? well tried M01value and Bingo! te pot value moves as I blow the BC, so the cc7 is mapped to cc2.

    Now I put kontakt player after the kore2midi and ... no midi in kontakt? strange, kore2midi dont send midi to the next module in the chain? Im doing something wrong?

    In order to get the midi out from kore2midi to kontakt in set Kontakt in another kore channel and send midi from the channel where is kore2midi to the channel where is kontakt (its not that an unnecessary routing?), well Kontakt now receives midi from kore2midi, but it receives also from the input midi of the midi input of the channel! Now I need to put a midifilter from your toolpack, filter cc7 and voila! finally kontakt receives the cc2 mapped from kore2midi.


    Finally it worked as intended, now I have CC7 mapped to CC2 in kontakt, great. The main problem I see is all that routing and filtering necessary to get the cc2 in kontakt, seems a bit over complicated, its not?

    Anyway many many thanks, the workaround works, its a bit complicated for me but at the end it works thats what counts. Any simplification of it would be very welcome. Not your fault of course, but a kore fault IMO as I think that those remaps should be provided.
     
  11. sleen

    sleen NI Product Owner

    Messages:
    890
    Remapper

    Hello, I have made 2 new ensembles that are attached and could use some testing to go into the toolpack.

    First, the midi filter has been updated to Valve. The valve switch changes the behaviour of the filter to either block the matching event, letting all else thru; or PASS the matching event, blocking all else. This will not replace the filter as projects might reference the old version, but appear as a new addition.

    Second, I have created a midi remapper. This ensemble only acts on events matching the specified conditions, all else is passed thru. However if an event matches the conditions, you can then remap this event with new values. Each parameter has a thru/fix switch letting you choose to pass the parameter unchanged or modify it. This midi remapper is included with a koresound exposing controls for performance preset recall. Snapshots and scaling for pitchbend is not finished.

    Let me know how this works

    Thanks folks,

    jonathan adams leonard
     

    Attached Files:

  12. krraqk

    krraqk Forum Member

    Messages:
    60
    Hi Sleen

    thats a great addition to you already awesome toolpack.

    I have tried the remapper and it works perfect, finally a remap easy and effective in Kore!
    Also the midi out of this module works, so no need to use two Kore channels to redirect the midi data, thats very good.

    Effectively the pitch bend seems to not be implemented, not only its not possible to remap pitch bend to other midi message, but also pitch bend seems to be filtered completely. When I have done my desired remapping from CC7 to CC2 al works as expected, but the pitch bend not works at all (pitch bend messages are filtered and ignored being completely eliminated from the midi signal). So I will wait for a final version of this remapper with a proper pitch bend if it finally can be done.

    You have plans to implement a reescale function in order to shape completely the player performance? If you do that and make a 8x version, it would be the Swiss knife that Kore urgently needed for live performing (IMO).

    Whether you make or not a more advanced version of this utility, I have to greatly appreciate the work done, sincerely awesome.

    Thanks!

    pd: not tried valve, because whit this new remapper there is no need anymore to filter midi data, but I will try it to let you know how it works here.
     
    Last edited: Jun 24, 2009
  13. sleen

    sleen NI Product Owner

    Messages:
    890
    Remapper

    Hi Krraqk, glad to hear the midi remapper worked and I will check out the situation with pitchbend. You are right, this midi remapper is fully designed to operate inline as opposed to a dedicated source channel in a send configuration. I went to some trouble to make sure that unmatching events don't get affected.

    Well, it sounds like rescaling would be a handy thing to have. It is certainly possible with the kore controls. If you midi learn your breath controller to a kore knob, you should be able to adjust the knob range. In the workaround you attempted recently you decided to midi learn in the kore2midi reaktor knobs. Instead, you can midi learn the kore knobs higher up and set a range in their control settings.

    The ideal tool I have used in the past for these operations is the logic transform module. Of course this is only available in logic but its design is quite simple flexible and powerful in providing so many functions in a single tool. I have been avoiding cloning this in its entirety mostly because I am not sure that reaktor can really everything, and doing that perfectly begins to seem like a commercial function quite honestly.

    I am quite keen on exploring how Max/MSP will be working in Ableton Live as a basic built in way of processing and shaping your performance events. Reaktor is pretty cool, but not cleanly designed for pure event processing and not as cpu or ram efficient as it could be for basic jobs like this. With the current build, kore also suffers from a midi precision problem where the output midi is subject to the audio card buffer size. If you have a latency of 10ms for example, kore will only send midi updates every 10ms. This means that Ableton live receiving these events will look a little chattery instead of smooth when moving controls. There is a chance this will be different in the 2.1 update, but my point is there is a need for a toolkit that is quite transparent to the performance at hand, is integrated and uses as little resources as possible with no latency ;) Kontakt cannot do this with KSP since it is also not designed to be a pure performance processor inline. If there were a way to export reaktor ensembles directly to an integrated midi effect with no reaktor overhead or registration required this would just about do it.

    If you have not checked it out, be aware of Matt Moldover's Controllerism website which contains many reaktor ensembles designed to shape and map performance data. Some of them were done in collaboration with Chris List who designs highly parsimonious and efficient methods.

    I can only marvel at how guitar rig has so many scaling controls for expression, and none of this exists in Kore. I have been studying how to make custom keyboards and my work in the toolpack has been some good woodshedding on how to write these functions in general as well as reaktor. Openlabs provides its own software that is a midi processing and mapping layer for its own controls, but its a binary and cannot be changed by customers, and is only intended for their 'open' products. Which are not as open as they advertize.

    Thanks again for the feedback and check back soon for an update.

    Cheers!

    jonathan adams leonard
     
  14. krraqk

    krraqk Forum Member

    Messages:
    60
    Hi another time Sleen and thanks for the explanation about the rescaling doing the learn to the know and not to the kre2midi knob. Sadly it implies a lot of routing that I find it over complicates to much the scenario, sorry Im a player and all that routing confuses me so much, because if I do a performance with many vstis + effects the last I need is to have more routing here.


    Yes I can do all that in Cubase as well but I wanted Kore just to avoid to get my main Daw while I play live.

    Of course I understand that starts to be complicated and sure looks like a commercial function. As I have stated previously I think its something that Kore would need to be really usable at live performing.



    I agree with you, Kore dont seems to take care very much about the midi aspects of the live performance, not all music control (and of course midi control) is in the Kore hardware, the musician also plays a midi instrument (well almost many times) and need to shape the control of the music aspects with it without the need of some external tools or software. I see that those Reaktor ensembles are not the best solution. Again Kore needs those midi tools inside, by default.

    The Kore latency you mentioned is only related to the Kore hardware or also Kore soft? that sounds like a big limitation (another one).

    Im reading that site but I dont see any midi ensembles here, maybe they are removed.


    Thanks to you I will check often that trhead for sure.
     
  15. sleen

    sleen NI Product Owner

    Messages:
    890
    Version 1.8 090701

    Version 1.8 090701

    + Remapper
    + Valve

    Fixed: Midi In of Midi MonitorZ set to OMNI

    Comments:
    As an update to the existing midi filter, Valve includes a switch allowing the filter to become a sieve. Events matching the specified conditions may be either exclusively blocked, or by enabling the valve switch; passed while blocking all else.

    The Remapper remaps midi events based on the conditions you choose for Type, Channel, Number and Value. The first parameter in the filter lets you select which of the above midi parameters are included in the condition. For example, if you select 1; then the Remapper works on type like note or controllers. If you select 12; then the Remapper only acts on events that match the type and channel. If you select 123, then only the events matching the type, channel and number will be remapped. Same for 1234 pertaining to the event value. Once the conditions are matched then you must decide how to map each parameter by selecting either THRU or FIX. If you select THRU then the incoming value for that parameter will pass unchanged. If you select FIX then the value beneath this switch will be sent out instead. Any event not matching the conditions will be let THRU, allowing it to be used inline. Note: Because of a bug in Reaktor, Pitch Bend events can only be sent on the instrument midi out channel. This means that remapping with pitch bend may not work across channels or as expected.

    For more information and to obtain the software:

    Kore 2 Reaktor Toolpack

    Thank you,

    Jonathan Adams Leonard
     
  16. krraqk

    krraqk Forum Member

    Messages:
    60
    Thanks Sleen for your effort.

    you mean that the pitchbend problem I reported (being filtered when using your remapper) cant be resolved because that Reaktor bug? or its another version without that problem?
     
  17. sleen

    sleen NI Product Owner

    Messages:
    890
    Bug

    Hi, Krraqk it (pitchbend) is indeed not working because of a reaktor bug. It is the only type affected like this and should be resolved hopefully in a future reaktor update. The remapper itself seems to be fine, but at this time pitchbend can only be transmitted on the instrument midi out send channel.

    jonathan adams leonard
     
  18. krraqk

    krraqk Forum Member

    Messages:
    60
    Hi Sleen, I really appreciate very much your help and effort.

    Sadly in the end seems that I will need to search for another solution, pitch bend is very important when playing with midi guitar.

    Thanks another time!
     
  19. sleen

    sleen NI Product Owner

    Messages:
    890
    Requests?

    Ok, how about some requests of what you think might be cool to have in kore that reaktor might provide?

    Should I touch up my ottotoon for some pitch correction/quantization? Or provide some modified standard synths you can sing or play guitar into? A general purpose pitch to midi converter is kind of a hassle to use, but using pitch and gate directly inside a synth is easier as I have found, without dealing with midi messages.

    Curious,

    jonathan adams leonard
     
  20. krraqk

    krraqk Forum Member

    Messages:
    60
    Hi Sleen

    as I mentioned in my previous posts, my needs are very basic, and related mainly to have some tools to shape the midi messages in order to have the best midi control possible per sound or performance, like remapping, rescaling, response curves and maybe some other a bit more sophisticated ones. So nothing really very special and as I have already said I think those tools would need to be integrated in Kore by default if it has to be considered a live tool, all the other similar tools have all that by default (forte, cantabile, etc), so why not Kore?.

    Your help has been amazing and I apreciate it very much, sadly the pitchbend problem limited too much the usability of the midi remapper to me. :(

    I have finally find another tool that I think does what I need, its called MidiMapper I demoed it and works great and I will purchase it (its really cheap) as soon as I get my own Kore (the one that I have now is loaned from a friend and Im returning it in the next days as soon as this friend returns from holidays). I decided to wait until september for Komplete 6 to update my K5, specting it will have Kore integrated, if not I will purchase it separately.

    I dont want to request you anything, I dont want to be opportunistic and abuse of you, sorry if I have looked like that.

    I already have two guitar to midi converters, Axon and VG99, yes they are not perfect and a bit hassle to use, but I can get something good from it, I tend to use it mixed with the guitar sound, that helps very much to have a good response sense. Anyway thats the state of the today guitar-to-midi technology and seems that there is not very much improvement in the horizon so I try to get the best of it as its now. I have tried some "pitch and gate" guitar to synth plugins but those are not very good (imo), if you come with something really playable in real time you would have a winner, Im sure.

    Thanks for your time and help.

    Enrique C.


    pd: what mean the word ottotoon ? I dont understan it (sorry my english is really very poor).