msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
CbB/Sonar crashing with Mackie C4's when controlling ProChannel Compressor [Solved]
I've just added another Mackie C4 to my setup, so it now has: 1 x Mackie MCU 1 x Mackie XT 2 X Mackie C4 The setup appears to work in that I can control two separate sets of plugins on each C4 - but it crashes when changing values. Is more than one C4 supported?
post edited by msmcleod - 2018/07/27 23:41:11
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
mettelus
Max Output Level: -22 dBFS
- Total Posts : 5321
- Joined: 2005/08/05 03:19:25
- Location: Maryland, USA
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/26 15:53:18
(permalink)
There have been reports of hardware with identical IDs (2 identical MIDI controllers) being only seen as one and I forget offhand if there was a workaround for this. Are you seeing 2 separate C4s in CbB preferences or only one?
IIRC, Bob Bone had a thread about this several months ago.
ASUS ROG Maximus X Hero (Wi-Fi AC), i7-8700k, 16GB RAM, GTX-1070Ti, Win 10 Pro, Saffire PRO 24 DSP, A-300 PRO, plus numerous gadgets and gizmos that make or manipulate sound in some way.
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/26 16:28:14
(permalink)
mettelus There have been reports of hardware with identical IDs (2 identical MIDI controllers) being only seen as one and I forget offhand if there was a workaround for this. Are you seeing 2 separate C4s in CbB preferences or only one?
IIRC, Bob Bone had a thread about this several months ago.
I'm using the older MIDI based C4, so there's definitely two listed. However, you may be on the right track.... I've only just started looking into this, but looking at the Cakewalk Mackie Surface SDK code, each Mackie device registers itself as it is loaded, and gets added to a list of devices in a common structure. The way the MackieControl.dll knows which unit is which within this list is by serial number. The SYSEX query to retrieve the serial number is (at least in the code) common to all units - i.e. the same sysex message for MCU,XT,C4. My current theory is that the C4 has a different sysex query, meaning that the C4 ignores this query and the MackieControl.dll never gets the serial number back, and the two C4's end up with indentical blank serial numbers. I've not got access to the C4's sysex commands, so there's no way to quickly check if my theory is correct, but I can probably prove my theory by giving each C4 a random serial number to start with. [Update] - It's definitely not the serial number, this is coming back fine from both devices and they're different. Changes on the 1st C4 are no problem at all. Making any changes on the 2nd C4 causes a crash shortly afterwards (i.e. 1 to 2 seconds later).
post edited by msmcleod - 2018/07/26 18:45:58
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/26 23:32:51
(permalink)
After a lot of messing around, I've found that this is nothing to do with two C4's. The issue is with the Pro Channel compressor, when used with a control surface. I can reliably cause an access violation in Cakewalk by either: - Switching the pro-channel compressor on/off with the mouse during playback; or - Changing any of the compressor settings using the C4 How fast I turn the knobs on the C4 does seem to have a bearing on this - i.e. turning the knobs fast makes it crash almost immediately, but even a very slow subtle change using the C4 can make it crash. Switching the compressor on or off almost always results in a crash 1 or 2 seconds later. Pro Channel EQ seems to be ok, but I can't be sure that the compressor is the only pro-channel module affected. So far 3rd party plugins seem to be ok.
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
azslow3
Max Output Level: -42.5 dBFS
- Total Posts : 3297
- Joined: 2012/06/22 19:27:51
- Location: Germany
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 06:56:48
(permalink)
msmcleod The issue is with the Pro Channel compressor, when used with a control surface.
Sorry that I have not replied you early... Yes, that is known issue the Compressor "Type" parameter name (so just the string "Type"). On any surfaces which display parameter names. You can check: http://www.azslow.com/index.php/topic,341.0.html for a workaround (that is GitHub branch).
Sonar 8LE -> Platinum infinity, REAPER, Windows 10 pro GA-EP35-DS3L, E7500, 4GB, GTX 1050 Ti, 2x500GB RME Babyface Pro (M-Audio Audiophile Firewire/410, VS-20), Kawai CN43, TD-11, Roland A500S, Akai MPK Mini, Keystation Pro, etc. www.azslow.com - Control Surface Integration Platform for SONAR, ReaCWP, AOSC and other accessibility tools
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 09:12:36
(permalink)
azslow3
msmcleod The issue is with the Pro Channel compressor, when used with a control surface.
Sorry that I have not replied you early... Yes, that is known issue the Compressor "Type" parameter name (so just the string "Type"). On any surfaces which display parameter names. You can check: http://www.azslow.com/index.php/topic,341.0.html for a workaround (that is GitHub branch).
Thanks Alexey. I'm pretty sure I merged your workaround into the version I've got (the EQ fixes are definitely there), but I'll double check against your git repo. There is a chance that it's a separate issue, but is definitely related as the crash doesn't happen when the display updates are disabled. I'm in the office at the moment, but when I get back home I'll try removing the "Type" parameter from within MackieControl.ini and see if that helps at all.
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
azslow3
Max Output Level: -42.5 dBFS
- Total Posts : 3297
- Joined: 2012/06/22 19:27:51
- Location: Germany
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 09:19:44
(permalink)
It can be you hit yet another bug in the Compressor, but note that ProChannel general workaround and Compressor "Type" workaround are different. Can it be you have applied one change but not another?
Sonar 8LE -> Platinum infinity, REAPER, Windows 10 pro GA-EP35-DS3L, E7500, 4GB, GTX 1050 Ti, 2x500GB RME Babyface Pro (M-Audio Audiophile Firewire/410, VS-20), Kawai CN43, TD-11, Roland A500S, Akai MPK Mini, Keystation Pro, etc. www.azslow.com - Control Surface Integration Platform for SONAR, ReaCWP, AOSC and other accessibility tools
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 10:08:23
(permalink)
azslow3 It can be you hit yet another bug in the Compressor, but note that ProChannel general workaround and Compressor "Type" workaround are different. Can it be you have applied one change but not another?
I've checked my branch, and the "Type" workaround is definitely there (MixParam.cpp line 342). My branch is basically all the changes from your dyneq branch, plus my workaround for the Korg NanoKontrol Studio / select button. The crashing issue isn't restricted to the Type parameter though. Changing ANY parameter on the ProChannel compressor (either Channel 76 or S-Type Bus) will cause a crash with an access violation. The weird thing is, that it doesn't happen immediately. I can alter the input gain, and the crash can happen a few seconds later. It also doesn't matter whether I made the parameter change via the C4 or via the GUI with a mouse - if the C4 is displaying that plugin at the time, the crash will happen.
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
azslow3
Max Output Level: -42.5 dBFS
- Total Posts : 3297
- Joined: 2012/06/22 19:27:51
- Location: Germany
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 11:02:37
(permalink)
That will not help much... but I have checked right now with AZ Controller and CbB (so the same procedure from Sonar perspective, just different in the plug-in part), all parameters of both types Compressors (except type parameter itself for Track compressor, I guess my own problem in the code) are working correctly. And nothing is crashing on changes/switches. That means it can work (well, AZ Controller is using "optimized" approach when looking for changes, MackieControl is more "brute force") I do not have C4 nor any emulator for it. Can you check that it is also crashing with just MCU when switched into Compressor mode, (just for consistency) with my original mod? If yes, I probably can find the problem.
Sonar 8LE -> Platinum infinity, REAPER, Windows 10 pro GA-EP35-DS3L, E7500, 4GB, GTX 1050 Ti, 2x500GB RME Babyface Pro (M-Audio Audiophile Firewire/410, VS-20), Kawai CN43, TD-11, Roland A500S, Akai MPK Mini, Keystation Pro, etc. www.azslow.com - Control Surface Integration Platform for SONAR, ReaCWP, AOSC and other accessibility tools
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 18:38:00
(permalink)
I tried the ProChannel compressor with just the MCU, and it doesn't crash... tried it again with the C4 and it did crash. I'm going to try a few other things, like moving the C4 to the MIDI device that the MCU is currently using just to rule my MIDI hardware out. If the crash still happens, I'm going to assume it's one of two things: 1. It's something specific in the C4 implementation or 2. The base class is assuming a reply to a sysex request is a common length/format, whereas in fact the C4 is returning a different length message and it causes an access violation. If I can't attach a debugger, I'll try some logging and/or MIDI port monitoring. Hopefully I can track this issue down.
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 20:30:10
(permalink)
I've tracked down the issue. The short story is that the "Type" workaround is never called on the C4 for a default ProChannel setup, and it's down to the following: Selecting "EQ" from the C4 always brings up the 1st ProChannel plugin regardless of whether it's a type of EQ or not. So for a default ProChannel setup, pressing "EQ" always brings up the Track Compressor. However, scrolling through the list of plugins does only show other EQ plugins. A similar thing happens with dynamics, in that the "Dynamics" button always brings up the 2nd ProChannel plugin regardless of its type, but scrolling through any other plugins in the list only shows Dynamics plugins. For a default ProChannel setup, pressing "Dynamics" always brings up the EQ. The Type workaround checks to see if it's the "Type" parameter, but also if filter type is "Dynamics" - however on the C4, you have to either select "Plugin" or "EQ" to get to the Track Compressor if it's the first ProChannel plugin. So the filter type is never dynamics for a default ProChannel setup, and the workaround code never gets called. So half of the fix would be to sort out the EQ & Dynamics buttons and make sure they're checking the ProChannel plugin type before selecting it. This would ensure the type workaround gets called... however if you navigate to the Track Compressor using the "Plugin" button, the workaround code still wont get called. A safer fix (the 2nd half of the fix) might be to set a flag somewhere to say the current plugin is actually the Track Compressor (maybe by checking it's name - as it has to send this to the plugin anyhow, or it's VST identifier if that's available), and check this flag in the Type workaround instead of the filter type. For the moment though, removing "Type" from MackieControl.ini stops the crash from happening.
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
azslow3
Max Output Level: -42.5 dBFS
- Total Posts : 3297
- Joined: 2012/06/22 19:27:51
- Location: Germany
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 21:22:09
(permalink)
It is good to know my mod is not working for C4. Well, it was not designed for it since I was unable to test. The complexity of finding ProChannel modules is the following (I have written that before): 1) the name for ProChannel modules is not returned, so that can not be used to identify them 2) for current strip, all modules can be accessed, in the sequence they are in the ProChannel. There is special call to find where are EQ and Comp in this case. 3) for other strips, only EQ and Comp can be accessed. The order depends from the order in the current strip. So, broken since the introduction of ProChannel...
Sonar 8LE -> Platinum infinity, REAPER, Windows 10 pro GA-EP35-DS3L, E7500, 4GB, GTX 1050 Ti, 2x500GB RME Babyface Pro (M-Audio Audiophile Firewire/410, VS-20), Kawai CN43, TD-11, Roland A500S, Akai MPK Mini, Keystation Pro, etc. www.azslow.com - Control Surface Integration Platform for SONAR, ReaCWP, AOSC and other accessibility tools
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 21:58:08
(permalink)
I've got a fix - just tidying it up and doing a bit more testing before I commit. The EQ / Dynamics button issue is to do with the host name changing from "SONAR" to "Cakewalk". This meant that the flexible ProChannel flag was always false, and hence it didn't "look" for the correct class of plugin. Adding in another clause for "Cakewalk" fixes this. I've also improved the "Type" workaround by setting a "current plugin is track compressor" flag when it retrieves the plugin information. This is passed down during the binding to the MixParam class and is checked instead of the plugin filter type. This makes the workaround safe when using the "Plugin" button as well as the "Dynamics" button. I'll let you know once it's committed to GitHub and point you to the location so you can merge the changes in to your branch.
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|
msmcleod
Max Output Level: -72 dBFS
- Total Posts : 920
- Joined: 2004/01/27 07:15:30
- Location: Scotland
- Status: offline
Re: CbB/Sonar crashing with two Mackie C4's - is this supported?
2018/07/27 23:25:33
(permalink)
Mark McLeod Cakewalk by BL | ASUS P8B75-V, Intel I5 3570 16GB RAM Win 10 64 + Win 7 64/32 SSD HD's, Scarlett 18i20 / 6i6 | ASUS ROG GL552VW 16GB RAM Win 10 64 SSD HD's, Scarlett 2i2 | Behringer Truth B2030A / Edirol MA-5A | Mackie MCU + C4 + XT | 2 x BCF2000, Korg NanoKontrol Studio
|