Jump to content
Matthew Carr

Midi Inputs - Please Help!

Recommended Posts

Hi,

Can anyone please help explain this behaviour - it's driving me nuts and I can't understand WHY this would happen

To simplify, I've created a project that has two midi tracks with input from  2 virtual midi devices (Lower_Keyboard and Upper_Keyboard, created with loopMidi.) Both tracks have input echo set to on, and have their outputs set to different cakewalk synths

image.png.815a169e2628d9b2deb5e32ca24f2d3b.png

All works fine; I save the file, open it, and all stays the same as I expect.

I close the file, and then connect a hardware controller to the PC. When I open the file again, both midi inputs have changed to receive input from both virtual devices!

image.png.8d4a96433610fc771ba9d17844f93998.png

This is crazy.... or am I crazy??? 😬

Note that after connecting the hardware controller, I didn't even select it as an input in preferences, it was just connected to the PC. 

I.e. the original device list was:

image.png.ca20b2d50ee350ce9e9e9cfab7e1b85b.png

And after connecting the hardware controller, the active inputs were still the same, although the hardware controller was now shown in the list

image.png.934f1130d8846f9f6a916a2cc00bc30e.png

So the fact of just connecting a hardware controller to the PC was enough for the project to be corrupted on opening!

I can only think there is a bug with the way inputs are being set on tracks with input echo enabled, but perhaps this is some behaviour I don't understand - if so, I'd really appreciate any ideas on how to stop this from happening!

Cheers,

Matt

 

 

 

 

 

Share this post


Link to post
Share on other sites

Just to add results of a further test

If I enable the newly connected hardware controller for midi input

image.png.0fe90f7c67bb55d8652a7e8f2b026101.png

and then open the project, one of the inputs stays as it was when saved, whilst the other gets set to all three midi inputs

image.png.9fca57f08e15edc3d0dcc24c28779a62.png

So the inputs are now being royally messed up when opening the project! 

Share this post


Link to post
Share on other sites

When you add real or virtual MIDI devices, the MIDI inputs and outputs often get rearranged.  Best to add them and leave them connected even if you don't "select" and use them.  This can also happen if you delete soft synths.

  • Like 1

Share this post


Link to post
Share on other sites

To emphasize what @William W. Saunders, Jr. wrote above, any midi devices you will be using in CbB (ever) should be connected before you start the app; EVERY TIME. If you are using a USB keyboard or any other midi device when you save a project, that device needs to be connected when you open the project again or you will suffer the problem in the OP

Share this post


Link to post
Share on other sites

Thanks for the replies, they're appreciated! Due to the way Windows handles USB connections, we've always had to be super careful with making sure Midi devices are on, and connected to the same physical hardware usb connector to avoid problems, but this seems more than that.

  1. The midi input was changed from receiving midi data from one single device to receiving midi data from three devices. I could maybe understand if the input was switched to a different device -  but why has the input been changed to receive data from three devices?
     
  2. Following the above comments, the conclusion is I can never connect a new piece of USB hardware with midi functionality (mixer, keyboard, interface etc), as if I do, then all my existing projects will be corrupted on opening

My gut feeling is that this may be to do with the way virtual midi ports are being enumerated for tracks with input echo set to on. I'll do a few tests and report back.

Share this post


Link to post
Share on other sites

Sorry for the long post below -  the tl/dr; I think there is an issue with virtual midi ports, but not physical midi ports

(For clarity, in the below tests each physical midi controller was plugged into the same physical usb connector each time)

I removed all virtual midi cables on the PC, rebooted, and created a new project with one physical midi controller connected (Impact LX61)

image.png.026f299829b743a16f6426859cad4537.png

I then closed the project,  connected another physical midi controller (Novation SL MKII), and re-opened the project. No changes, everything as expected

image.png.026f299829b743a16f6426859cad4537.png

I closed the project, enabled the SL MKII as a midi input, and opened the project. Again, no changes to the midi input of the track

image.png.b1bd719dd63de8408c742a50de5abd17.png

This is what I would expect - connecting / adding new midi devices doesn't impact old projects - happy days! 😀

I then disconnected the SL MKII, added a virtual Midi cable (Lower_Keyboard) with loopMidi, rebooted, and opened the project again (note, I hadn't enabled the virtual midi cable). Still good, no changes the the midi input

image.png.026f299829b743a16f6426859cad4537.png

I close the project, connect the SL MKII, and open the project - still good, no changes. 

I close the project, enable both the SL MKII and virtual midi cable as inputs, and open the project - still good, no changes

image.png.2cddec23e4baec37fa7bf2239f9cc63d.png

So, to summarise at this point - if the project only has midi inputs from physical midi devicesthey work exactly as expected - they are not changed by the addition / removal of other physical or virtual midi devices

I then close the project, disconnect the SL MKII, open the project and add another track using the virtual midi cable 'Lower_Keyboard' as  the input

image.png.c33ff13fe9a0f46ba60a516c312b0ffa.png

Opening and closing the project works as expected, the track inputs stay as they were originally saved

I then close the project, connect the SL MKII, open the project and....

  • The midi input from the physical midi device stays the same
  • The midi input from the virtual cable is changed to accept midi data from all active midi inputs!! 😲

image.png.46a80e57f3941de02be53ae0f36cf909.png

 Sooo... this to me really seems like a bug, inputs from virtual midi devices are being changed when new physical midi controllers are added to the setup, whereas inputs from physical midi devices are not changed.

Getting to the limit of my understanding now.. I hope someone can chime in with an explanation, or confirmation that this is a bug and I can report it.

Cheers,

Matt

Just to add, this seems like an edge case scenario that only happens when you add a new midi controller to your setup, but it affects me a lot. E.g. When I open a project in my rehearsal space, that I've worked on in my studio, the inputs from virtual midi devices get corrupted on opening. I even have the same PC and midi controller keyboards plugged into the same physical USB ports at both locations, but it's not enough!! Because there is some gear connected at the rehearsal space that has USB midi functionality (even though it's not checked as active in preferences) , it's enough to trigger this bug.

Share this post


Link to post
Share on other sites

Have you tried using "Manage Presets" , creating a preset for just the Upper or Lower, then using the preset instead ?

Share this post


Link to post
Share on other sites
Posted (edited)

Thanks Mark - that looks interesting, never come across that functionality before so will give it a try!

Updated:

This looks like it could be a great workaround, on a simple test it seemed to work, I just need to try it on a more realistic situation - I'll give an update once I have

Thanks again Mark, really appreciate your help

Edited by Matthew Carr
Updated

Share this post


Link to post
Share on other sites

Spoke too soon, as soon as there's a mix of real and virtual midi inputs, the issues start up

Project with two tracks:

  • one input from a preset mapped to virtual midi cable
  • one input from a preset mapped to physical controller

All mappings look good

266807198_Intialstate.thumb.gif.c5224feb536b50f17e244ef34605dcd5.gif

Close the project, connect another physical controller, open the project and...

597102248_Afterstate.thumb.gif.31e822a6e67d3fec3cbc4259d77ce9c1.gif

  • The mapping for the virtual Lower_Keyboard (PrLowerKB) stays mapped correctly
  • The track with input from the physical controller LX61 has changed to receive input from both virtual midi cables, and the the newly add physical controller SL MKII. The input from the LX61 has been lost
  • The mapping for the virtual Upper_Keyboard (PrUpperKB) is changed to receive input from the physical LX61
  • If I attempt to view the mapping for the physical controller again, the screen shows no mappings - I think this is a different bug on the Input Presets screen (sorry)
    • If I open the preset manager via clicking on the 'Manage Presets' button for the track, the mappings are shown
    • If I use the drop down list to select the preset, the mappings are not shown

Hopefully this helps Mark, please let me know if you need any further info

Share this post


Link to post
Share on other sites
Posted (edited)
11 hours ago, Matthew Carr said:

My gut feeling is that this may be to do with the way virtual midi ports are being enumerated for tracks with input echo set to on. I'll do a few tests and report back.

This was my guess when I read your original posts yesterday.  Thanks for taking the time and doing some tests, to msmcleod for the Manage Presets option, and for your follow-up explanations using that option.  I started a project idea that never got implemented as planned for the Summer of 2020 (outdoor performances using indoor gear, including networked audio PCs) and this option might be very helpful if I implement it this summer or next.  So, thanks for raising this issue here!

Edited by User 905133
to add a missing word ("it")

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...