🔥 Lifetime deal! Get Control Surface Studio for Just £67 👉 Click Here To Get It
Time left... mailtimers.com
⚠️ Lifetime licenses are ending soon, get yours before they're gone ⚠️
Your shopping cart is empty.

Status message

Search for either of the two terms with uppercase OR. For example, cats OR dogs.

CSS not monitoring MIDI signals in case DAW is opened. Log.txt busy or locked

Submitted by peterpavlov on Thu, 01/27/2022 - 21:15
peterpavlov
Control Surface Studio User

Hello,

I'm experiencing a really anoying problem for which I saw only 1 topic but without any answers -
https://remotify.io/community/question/midi-monitor-doesnt-work-when-abl...

So basically only 1 application can receive MIDI signals from a device (I have both LPD8 and Beatstep) and if another app is opened it would throw an error that the device is already in use.
This prevents me from logging signals from Ableton to CSS and also when making any script changes I have to close CSS first, then open Ableton, then close Ableton and open CSS again.
By watching the vides there is no need to close any app but just reload the Ableton session. But not working for me.

The behavior is the same for any MIDI device and any app - Ableton, CSS, Midi Control Center, MidiView.
Only 1 app can use the device at certain point...

CSS log throws the following error if Ableton is opened first and then CSS

An error occurred creating the file:EBUSY: resource busy or locked, open .....\AppData\Roaming\Ableton\Live 11.0.12\Preferences\Log.txt

Windows 10
Ableton 11
CSS 2.6.3


:2: DeprecationWarning: Live.Track.Track.current_output_sub_routing is deprecated since Live 9.7. Please use Live.Track.Track.output_routing_channel instead.
:2: DeprecationWarning: Live.Track.Track.current_output_routing is deprecated since Live 9.7. Please use Live.Track.Track.output_routing_type instead.
:2: DeprecationWarning: Live.Track.Track.current_input_sub_routing is deprecated since Live 9.7. Please use Live.Track.Track.input_routing_channel instead.
:2: DeprecationWarning: Live.Track.Track.current_input_routing is deprecated since Live 9.7. Please use Live.Track.Track.input_routing_type instead.
Traceback (most recent call last):
File "..\..\..\output\Live\win_64_static\Release\python-bundle\MIDI Remote Scripts\_MxDCore\MxDCore.py", line 1320, in update_observer_listener
File "..\..\..\output\Live\win_64_static\Release\python-bundle\MIDI Remote Scripts\_MxDCore\MxDCore.py", line 1343, in _observer_update_listener
File "..\..\..\output\Live\win_64_static\Release\python-bundle\MIDI Remote Scripts\_MxDCore\MxDCore.py", line 1373, in _observer_install_listener
RuntimeError
:
Master-, Group- and Sendtracks have no arrangement clips
Traceback (most recent call last):
File "..\..\..\output\Live\win_64_static\Release\python-bundle\MIDI Remote Scripts\_MxDCore\MxDCore.py", line 1320, in update_observer_listener
File "..\..\..\output\Live\win_64_static\Release\python-bundle\MIDI Remote Scripts\_MxDCore\MxDCore.py", line 1343, in _observer_update_listener
File "..\..\..\output\Live\win_64_static\Release\python-bundle\MIDI Remote Scripts\_MxDCore\MxDCore.py", line 1373, in _observer_install_listener
RuntimeError

Topic Category: 

5 Responses

Comments

Wim
Control Surface Studio User
#1

Hello peterpavlov,

You can find some 'good to know' info about Ableton 11 and CSS at https://remotify.io/community/question/script-reload-fails-ableton-live-11

I guess there is a misunderstanding about 'midi monitoring';
You mention: 'This prevents me from logging signals from Ableton to CSS'
That is not the purpose of 'midi monitoring'. Ableton does not send midi to CSS. Your midi controller (LPD8 or Beatstep) sends MIDI info to Ableton and the script you create with CSS translates those MIDI signals into code Ableton understands.

About CSS 'midi monitoring'; if you want to monitor what your midi controller does, you should indeed close Ableton, that is true. (for Windows at least, I don't know about Apple)
I guess it kind of makes sense that if Ableton is using the midi port of your midi controller, it is not available for another program.

In practice, till now, I have only used/needed 'midi monitoring' when setting up a controller template. And since you only do that once for each controller, I don't mind that so much. There is no need for Ableton to run at that time anyway ;-)

I hope you got some worthwhile info.
Enjoy Remotify!

peterpavlov
Control Surface Studio User
#2

Thanks for the comment,
So It is normal that only 1 application at time is able to receive MIDI signals from the device and if another one is opened it would receive?
By logging the signals. sorry I meant that there is a script that allows sending the parameters of ableton device into CSS. I've tested this script but it won't work due to the above problem.

Wim
Control Surface Studio User
#3

You're welcome!

I don't understand the second part of your sentence: 'So It is normal that only 1 application at time is able to receive MIDI signals from the device and if another one is opened it would receive?

First part: I think it is normal behavior, it makes sense to me that only one software at a time can use the midi port of that device; Or Ableton is using the midi port of your device, or CSS is using the midi port of that device.

Second part: can you explain what you mean by 'and if another one is opened it would receive' (if another one of what is opened, it would receive what?)

What script do you mean? Is it 'selected parameter control'? There is a very good tutorial of that one: https://www.youtube.com/watch?v=-4jT5RRg5Wc

When I read the log file you have sent, I can see:
Live.Track.Track.current_output_sub_routing is deprecated since Live 9.7. Please use Live.Track.Track.output_routing_channel instead.
I am guessing that is your culprit. Since you are using Ableton 11; swap out the deprecated code in your script with the new one.

Good luck!

peterpavlov
Control Surface Studio User
#4

"I think it is normal behavior, it makes sense to me that only one software at a time can use the midi port of that device; Or Ableton is using the midi port of your device, or CSS is using the midi port of that device."

If that's the case, then it explains the issues I'm observing.

Sorry for the second part, I've missed a bit lol..
I meant to say that if I open 1 application (Ableton first) and then open CSS while Ableton is running, then CSS will throws the errors I posted above. The MIDI monitor won't work and trying to install script would also fail as well.
I have to close Ableton first, close CSS and only then opening CSS would work normally.
Same thing would happen when opening CSS first, installing script and if I want Ableton to work I have to close CSS first, open Ableton second separately.

The confusion comes from the videos where both apps are opened at the same time and after installing a script you all have to do is to reload the Ableton session and not having to close the apps all the time.
But it might be the case for Mac users only. Shame for Windows if this is a limitation, only 1 application using the MIDI port at a time ....

As for the error in the log,
I'll have a look but all I've done is setting up a couple of mappings, nothing special and no idea where this routing is set or can be changed.

Thanks for the support.

Wim
Control Surface Studio User
#5

No problem! :-)
About the error in the log; My guess is that you have a 'Reaction' in your script, where you do something with the track output (which is mostly set to 'Master'). Change that action to that of the screenshot.

Try also unplugging the midi encoder in your routine of opening and closing programs, it might help. It did for me.
Every now and then my script won't install and CSS would freeze. If you check the 'ProgramData\Ableton\Live 11 Suite\Resources\MIDI Remote Scripts\CSS-name-of-your-script' folder, the .json and .py files willl have 0 kb of data.
Then (in this order) I unplug the midi encoder, close the programs, restart CSS, install the script, close CSS, plug the midi device in, open Ableton, and as last open CSS. After this little dance, everything works again as it should (most of the time ;-).

I understand the confusion but as mentioned in https://remotify.io/community/question/script-reload-fails-ableton-live-11, closing Ableton is only necessary for Live 11, I use Windows 10 as well, but I do my scripting in Live 10. That way, you can reload just as in the tutorials and you do not need to close any program at all :-)
So it probably is not really a Windows/Mac thing. (Sure, for audio, Apple has natively an aggregate device, where you can 'mix' different audio hardware. Windows natively only supports one audio interface being used at the same time. There is a program 'Asio4all' which does the same thing as Apple's aggregate device. But now we are talking audio interfaces, not midi.) I am not aware that there is something like an 'aggregate device' for midi devices. Maybe a mac user can shed some light on this? Do Mac users have to close Live in order to use the midi monitor?

Why I said that it makes sense that only one program at a time is using the midi device, is because otherwise each time you turn a knob, midi data would travel to multiple programs, CSS and Live,... which is not necessary. It only needs to go to Live. CSS does not need to listen to midi, it only has to know what midi CC's and notes the midi controller has in order to render a script.
The midi data which is sent by the midi controller gets interpreted by the script (which is installed in Live, not in CSS) and then does its magic in Live :-)
The other way around, if more than 1 program would use your midi controller, there should be some kind of midi merging going on, otherwise, your controller would probably not function properly.

Well, a lot of nerding out here which doesn't really help your case..
I hope that, if you find the issue with the 'Reaction', things will be much smoother and you will not have to do the dance of turning off and on all the programs anymore. :-)

Cheers!

upload files: