Rank: Newbie
Groups: Registered
Joined: 3/6/2019(UTC) Posts: 2 Location: Alaska
|
Trying to integrate the Mackie MCU PRO into my VMix workflow for hotkeys and audio control. Have been successful in reading fader input from the control surface - the digital fader moves in correlation to the physical fader movement. There appears to be a problem with MIDI out communication, though, as the motorized fader returns to zero about a second after it is set. This movement is not reflected on the digital fader. As soon as the physical fader is touched again, the digital fader snaps to zero and follows fader movement again. I have set up both the activator and shortcuts as suggested in the User Guide. These are the settings used: shortcut.jpg (32kb) downloaded 3 time(s). activator.jpg (56kb) downloaded 1 time(s).I am sure I have missed something in the setup, possibly on the Mackie driver side - VMIX sees the control surface in the shortcut "MIDI Settings" menu as well as the activator "Enable Devices" menu, but will not display the Controller in the MIDI Channel Mappings menu. Does anybody have any insights? Thanks!
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 4/5/2020(UTC) Posts: 7 Location: Sevilla
|
Good, I also have the same problem, I have a behringer x-touch table, and the fades do the same to me, at the second they go back to low. I have tried all kinds of configurations but nothing. In the behringer I have the option to put it in Mackie mode or HUI mode I think I have tried everything but I have not managed to get the fades to stay in place. did you manage to solve it?
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 4/29/2020(UTC) Posts: 6 Thanks: 2 times Was thanked: 1 time(s) in 1 post(s)
|
I now have the same problem. Sadly, I didn't look at the forum before buying my new X-Touch. All ideas welcome (or even better, added support for Mackie Controllers!)
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 5/20/2020(UTC) Posts: 2 Was thanked: 2 time(s) in 1 post(s)
|
I did a bit of poking around and found that the Mackie faders use PitchBend rather than ControlChange. ControlChange treats the second and third bytes separately as note and velocity, while PitchBend combines the two bytes for its value.
Because it only uses 7 of the 8 bits in the note and velocity bytes, the note field has a maximum value of 127. However, as you probably noticed when you set the Shortcut, vMix reads the note value as 1024. This exceeds the 127 value and it appears the vMix code isn't handling this as we would expect. In fact, there are some erratic MIDI signals being sent, so I'm not sure that the code is handling the overflow properly).
Regardless, the activator is sending a MIDI signal like B0 00 96 and the Mackie is expecting a signal of E0 7F 96, leading the Mackie motorized fader to reset.
I was able to get around this using Bome to translate the MIDI signal. The motorized faders now respond as expected when the digital interface is modified and retain their position. I haven't tried to program the Mackie further yet, so I'm not sure what other issues exist.
The Mackie is a great control board and it would be wonderful if vMix would provide better support for it.
|
2 users thanked gp47 for this useful post.
|
|
|
Rank: Newbie
Groups: Registered
Joined: 5/27/2020(UTC) Posts: 6 Thanks: 2 times
|
Originally Posted by: gp47 I was able to get around this using Bome to translate the MIDI signal. The motorized faders now respond as expected when the digital interface is modified and retain their position. I haven't tried to program the Mackie further yet, so I'm not sure what other issues exist. Hi and thank you for your solution. I'm very interested in how you did it.
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 8/25/2020(UTC) Posts: 2 Was thanked: 2 time(s) in 2 post(s)
|
(I realise that a lot of what I've just written is in fact a repeat of the info above, but I didn't realise this until after I'd posted as I only skim read the thread then went to work it out from scratch - that will teach me to not skim read!) ---
I've just been experimenting with an icon Platform M+ (using the Mackie profile) and Bome translator (classic) - might be missing something, but I'm also using loopMIDI to create a loopback interface between vmix and the M+. Not got a full setup working and probably won't, but I'll leave this as a hint for anyone else searching for a solution.
Controls from the M+ into vMix shortcuts so far just works - although I can't work what do with the pots at the top of the faders, CW they send note velocities of 1-6? depending on how fast, and CCW 65-70. It would be great to map these to the channel gain control to allow quick boosting of sources.
Sending back... Create a Loopback interface and enable in vMix. Set the Bome input to the loopback and output to the Mackie panel. Master volume for example I'm sending out of vMix as a ControlChange (on channel 16 Note 0), event MasterVolume and type Fader. In Bome the translator Incoming is "BF 00 pp" which translates the controller channel 16, note 0 value (pp is the value) and the Outgoing is "E8 pp pp" which is pitch bender 8 (0 indexed, 0=first fader) and pp pastes the values in. In the full Translator software you can do more maths to properly convert the value, but this method works well.
Similar for the other faders.
To make the "Mute" (this example is for fader / input 2) button work I used Bome to invert the value, so one translator is triggered "90 11 00" (90 = note on, then the note/button number, then the value), and outgoing is "90 11 7F". Repeat but reverse the values to turn the light off again. This way when the channel is active the light is off, and inactive the channel is essentially muted. In vMix the activator is a Note control, channel 1, note 17 (17 dec = 11 hex) and again type fader - this is important - button doesn't work!
Edit: also I enabled MIDI thru so that simple button commands work as normal.
Hope that makes sense!
|
1 user thanked BroadcastTechie for this useful post.
|
|
|
Rank: Member
Groups: Registered
Joined: 9/7/2018(UTC) Posts: 22 Location: Australia
Thanks: 4 times
|
Originally Posted by: gp47 I did a bit of poking around and found that the Mackie faders use PitchBend rather than ControlChange. ControlChange treats the second and third bytes separately as note and velocity, while PitchBend combines the two bytes for its value.
Because it only uses 7 of the 8 bits in the note and velocity bytes, the note field has a maximum value of 127. However, as you probably noticed when you set the Shortcut, vMix reads the note value as 1024. This exceeds the 127 value and it appears the vMix code isn't handling this as we would expect. In fact, there are some erratic MIDI signals being sent, so I'm not sure that the code is handling the overflow properly).
Regardless, the activator is sending a MIDI signal like B0 00 96 and the Mackie is expecting a signal of E0 7F 96, leading the Mackie motorized fader to reset.
I was able to get around this using Bome to translate the MIDI signal. The motorized faders now respond as expected when the digital interface is modified and retain their position. I haven't tried to program the Mackie further yet, so I'm not sure what other issues exist.
The Mackie is a great control board and it would be wonderful if vMix would provide better support for it. Hitting the same issue but instead I'm trying to use my avid S1 within vMix in Mackie mode. Wondering if you would be willing to share your project file from Brome? If so that would be amazing and serve as a good starting point . Thanks.
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 6/16/2017(UTC) Posts: 7 Location: Sydney
Thanks: 1 times Was thanked: 1 time(s) in 1 post(s)
|
In Bome MIDI Translator employ the following calculation on Fader message Receive and Transmit: Because Bome's divide function also truncates the decimal digits it works very nicely. If using this in Excel to prove to yourself that it scales the values correctly, use the INT() function around the entire formula to lose the decimal values. Idea triggered by: https://stackoverflow.com/questions/929103/convert-a-number-range-to-another-range-maintaining-ratioCode:OldRange = (OldMax - OldMin)
NewRange = (NewMax - NewMin)
NewValue = (((OldValue - OldMin) * NewRange) / OldRange) + NewMin
Mackie's MIDI Implementation for faders from https://www.jjlee.com/qlab/Mackie%20Control%20MIDI%20Map.pdf Mackie Midi Map.JPG (79kb) downloaded 0 time(s).The formulas below were generated in Excel, but the same principle applies in Bome, just assign the formula to a Bome Variable name and replace the Excel cell with another Bome variable To receive from Mackie: Code:OldMax 8176
OldMin -8192
OldRange 16368
NewRange 127
NewMin 0 (can be ignored as it has no impact on the calculation)
D1 is an Excel cell name containing the old Value - replace with Bome variable name of paramater value
=((D1--8192)*127)/16368 (of course the -- can be replaced with a +)
pp
To Transmit to Mackie: Code:OldMax 127
OldMin 0 (can be ignored as it has no impact on the calculation)
OldRange 127
NewRange 16368
NewMin -8192
F1 is an Excel cell name containing the old Value - replace with Bome variable name ofparamater value
=((F1*16368)/127)-8192
I am about to try this tonight to prove if it works, and can post BOME specific code soon. Of course the Control # will need to be changed in both directions from Pitch Control to Volume and vice versa.
|
|
|
|
Rank: Member
Groups: Registered
Joined: 6/23/2017(UTC) Posts: 28 Was thanked: 10 time(s) in 6 post(s)
|
Shameless self promotion, but if you are looking for an easier way to do it, it's possible with Central Control. Myself and a small Pomeranian dog show you how it's done in this video: There's even a template in the comments to get you started!
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 6/16/2017(UTC) Posts: 7 Location: Sydney
Thanks: 1 times Was thanked: 1 time(s) in 1 post(s)
|
I've been working on several other things in my spare time but I sat down and got this working last night. In Bome MIDI Translator configure as below - changing Hardware midi ports to suit your system, and you can leave the comments out, I left them in here just so that you can undersand what I am doing to the values. Please note I have updated the CC#7 range from 127 values to 128 to include 0 as a valid value - it doesn't make a huge difference and actually works with 127, but 128 is more accurate. Code:Project: MIDITranslator_tmp
Project MIDI IN ports: HDSP9652 Midi Port 2, Bome MIDI Translator 1 Virtual In
Project MIDI OUT ports: HDSP9652 Midi Port 2, Bome MIDI Translator 1 Virtual Out
Route #1: IN 'Bome MIDI Translator 1 Virtual In' -> OUT 'HDSP9652 Midi Port 2'
Route #2: IN 'HDSP9652 Midi Port 2' -> OUT 'Bome MIDI Translator 1 Virtual Out'
_____________________________________________________________
[x] Preset 0: CC to MCU Fader
[x] Translator 0.0: MCU Fader Pitch Bend to CC#7
Options: swallow
Incoming: Pitch Bend on any channel set 'oo' to ch. with any bend and 'pp' to bend
Rules:
// Scale 14 bit number to 7 bit number (16368 discrete values to 128 values)
// Old Minimum om=-8192
// Old Range or=16368
// New Minimum nm=0
// New Range nr=128
// NewValue = (((OldValue - OldMin) * NewRange) / OldRange) + NewMin
// As OldMin is negative, instead of subracting a negative number simply add the absolute value of OldMin
// qq=(((pp-om)*nr)/or)+nm
qq=pp+8192
qq=qq*128
qq=qq/16368
//qq=qq+0 As NewMin is 0 we can skip this step
Outgoing: Control Change on ch.'oo' with CC#:7 (0x07) and value:qq
[x] Translator 0.1: CC#7 to MCU Fader Pitch Bend
Options: swallow
Incoming: Control Change on any channel set 'oo' to ch. with CC#:7 (0x07) and any value set 'pp' to value
Rules:
// Scale 7 bit number to 14 bit number (128 discrete values to 16368 values) Shortcut MIDI.JPG (23kb) downloaded 2 time(s). Activator MIDI.JPG (30kb) downloaded 0 time(s).
// Old Minimum om=0
// Old Range or=128
// New Minimum nm=-8192
// New Range nr=16368
// NewValue = (((OldValue - OldMin) * NewRange) / OldRange) + NewMin
// qq=(((pp-om)*nr)/or)+nm
// qq=pp-om As OldMin is 0 we can skip this step
qq=pp*16368
qq=qq/128
qq=qq-8192
Outgoing: Pitch Bend on ch.'oo' with bend:qq
In VMix Settings -->Shortcuts-->MIDI Settings enable BOME Virtual Input you configured in Bome above Shortcut MIDI.JPG (23kb) downloaded 2 time(s).In Vmix Settings-->Activators-->Enable Devices enable the BOME Virtual output port you configured in Bome above Activator MIDI.JPG (30kb) downloaded 0 time(s).Then add shortcuts and activators as per the VMix documentation and videos and the MCU faders (or Mackie Compatible controller with motorised faders) will respond to the on screen fader position changes correctly instead of jumping to minimum after moving the physical fader. My next thought is to see if I can use the Bank Left and Bank Right buttons to affect more than 8 VMix inputs and the master.
|
|
|
|
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.
Important Information:
The vMix Forums uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close