Author Topic: Using AZ Controller for Cakewalk control of external audio mixer  (Read 22258 times)

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #75 on: December 16, 2020, 05:02:50 PM »
Hello Alexey
I followed your previous advice to set up predictable MIDI monitor values for each Track Input

--------------------------

I would recommend to use:
1) separate from Cakewalk Input parameter (as I have written before for all parameters which do not have equivalent in Cakewalk)
or (if for some reason you want Cakewalk Input)
2) (a) define Friendly Names for inputs in Cakewalk preferences and enable use of them
    (b) define Software Set with "Unknown" + all possible input names
    (c) in the monitor, first use Text Value action to get the name of input, then use State By Text to find correct state in the set (preset with Unknown, just in case...) and then use State conditions to send predictable MIDI messages for particular inputs.

---------------------------

This works fine.

I now need to use those MIDI values to control other track input sources within Cakewalk.

My Software Set is called "FriendlyNames" and I have allocated MIDI values to each Track Input Source.

Let me give you a specific example:-

Track 1 Feedback output uses MIDI Channel 1 and CC0 and MIDI values () for FriendlyNames sources:-

--- None ---  (0)
Left input 1 (1)
Right input 1 (2)
Stereo input 1 (3)
Left input 2 (4)
etc

So now I want to control Track 25's input source to follow Track 1.

I set up a Hardware Control named "T25Source" and assigned it be controlled from MIDI Channel 1 CC0 (i.e. the Track 1 feedback output)

Then I set up a Logic Control for T25Source as shown in the attached image.

But I cannot figure out how to configure the additional actions so that T25Source input source will be set according to the received MIDI value.

Can you advise if this is possible and if yes, the format of the additional actions.

Regards

Robert


Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1701
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #76 on: December 17, 2020, 10:08:23 AM »
So, you want set Cakewalk track input to something absolute. In other words a kind of "reverse" operation to what I have described before.
Sorry, not supported by AZ Controller. May be some lucky day I add that, but I am not sure...
 

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #77 on: December 17, 2020, 11:42:37 AM »
Hello Alexey

Thanks for getting back.  Can I check some more please:-

I am able to control the track source selection by using an external MIDI controller to 'scroll' through the available Cakewalk 'friendlyname' sources.

What is the barrier to mapping each source to a specific MIDI code?

Regards

Robert

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1701
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #78 on: December 17, 2020, 01:18:08 PM »
It was possible to map current value to "friendlyname" and so to MIDI, as i have described before (and you has confirmed it works).
The "barrier" to do reversed operation was the luck of such function.

Well, check current test version. There must be "Set IO from Text" Function. It does that. So, you need set current text to the name (with Text Action) and select input/output (as on your screenshot), then call this function. If the input with such name is found, that input is selected.

The problem... that part of Cakewalk is historically buggy... And I had too much frustration dealing with that bugs before. But for hardware inputs it should work.
With "software synth" input there are already some glitches, in my tests "mono" inputs for some reason are reported as "stereo", even on mono tracks.
Once you insert plug-ins with side chains, "Send output" goes crazy. And so on. That is why I have recommended to use some unrelated parameters to control IO on your device.
Please don't say I have not warned you (now twice) in case you observe some strange effects with IO parameters.

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #79 on: December 17, 2020, 05:40:46 PM »
Hello Alexey

Thank you for helping me with this.

I downloaded the latest test version and found the "Set IO from Text" function, thank you!

I tried to follow your instructions to set up the correct actions but I could not work out how to set the current test to the name (with Text Action)?

In my example, (T25 input follows current T1 input), I don't understand how the looped backup MIDI value (which is derived from the T1 source name feedback) is applied to the text action for T25.

I have attached five images:-

Image-17 shows the T1 Feedback actions.  Each input name outputs a unique MIDI value (this works!)

This MIDI output (using Ch:1 CC0) is looped back into Cakewalk and is used as the Logical Control for T25Source (Image-18)

Image-19, Image-20 and Image-21 show the Action List for T25Source.  (I need to send Image 21 as a separate post)

Hopefully you will be able to see what error I have made in configuring?

Best regards

Robert

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #80 on: December 17, 2020, 05:41:34 PM »
Image-21 is attached (referred to in my previous post)

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1701
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #81 on: December 17, 2020, 05:55:08 PM »
It is better attach SPP files (preset)...

A. If you want to make T25 input follow T1 input (for the reason I don't understand...):
1. you need to monitor T1 input (which you do) and "loop" send midi/OSC from it. Just to execute some control when it is time to resync.
2. In that control you do
* Select T1 input
* Text  <Parameter value>
* Select T25 input
* Function Set IO from Text

B. If you want control T25 input from something on your side, so by sending MIDI from your device:
1. make control which react on that MIDI
2. translate that MIDI into FriendlyName set
4. if (and only if) it could be mapped, then
* Text <FriendlName>
* Select T25 input
* Function Set IO from Text

Note: the text should be exact. Obviously "Text <Parameter value>" form some track input always produce usable for Set IO text (when both track are of the same kind, f.e. audio). With FriendlyName you should be careful and only react on its change (the reason for "if" in (4))
 
 

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #82 on: December 18, 2020, 12:53:11 PM »
Hello Alexey

Thank you for a very clear explanation of options A and B relating to the control of Input Source Selection.
I got Option A (simple follow of T25 from T1) working from your instructions.

However it is option B which I need for my application.
I want to give you an explanation as to why I need this control facility, so that you can see I have some rationale behind what seem to be rather a very unusual applications for AZ control!

In Cakewalk, I have two 'sets' of tracks:-

Set 1
Cakewalk Tracks 1 to 24 are allocated for the control of my analogue mixer (although Tracks 1 to 24 can also record audio if required)
Cakewalk Tracks 1 to 24 can be a mixture of mono and stereo sources.  THIS IS IMPORTANT

Set 2
Cakewalk Tracks 25 to 48 are allocated to 'mirror' my 24 analogue tape machine tracks (both for backup purposes and to provide 'rehearsal' mixdown tracks (via DACs into my analogue mixer).
Tracks 25 to 48 are always mono (because analogue tape machine tracks are always mono!)

So the mapping of source selection between Cakewalk Tracks 1 to 24 and Cakewalk Tracks 25 to 48 is not a simple one to one mapping but instead depends on the mixture of mono and stereo audio sources allocated to tracks 1 to 24.  This will change from session to session (so it is dynamic not fixed).
Here is one partial recording session example:-

Cakewalk Tracks 1 to 24
T1 Mono Vocal 1
T2 Mono Vocal 2
T3 Stereo Piano
T4 Mono Bass Guitar
T5 Stereo Drums
etc

This will be mapped to my analogue tape machine Tracks 1 to 24 (via the MIDI feedback outputs we have working already) as follows:-
T1 Mono Vocal 1
T2 Mono Vocal 2
T3 Stereo Piano LEFT
T4 Stereo Piano RIGHT
T5 Mono Bass Guitar
T6 Stereo Drums LEFT
T7 Stereo Drums RIGHT
etc

And the mapping to Cakewalk Tracks 25 to 48 as follows:-
T25 Mono Vocal 1
T26 Mono Vocal 2
T27 Stereo Piano LEFT
T28 Stereo Piano RIGHT
T29 Mono Bass Guitar
T30 Stereo Drums LEFT
T31 Stereo Drums RIGHT
etc

In summary, the idea is that all allocation of audio sources into my hybrid digital/analogue recording system will be controlled using Cakewalk.  Cakewalk tracks 1 to 24 provide the control elegance of being able to work with mono or stereo tracks.  Cakewalk Tracks 25 to 48 and Tape Machine Tracks 1 to 24 are always mono and so this mapping of source selection (which I described above) is required.

I will use my PIC controller to do the mapping.  For Cakewalk Tracks 1 to 24, the PIC receives the input source selection feedback via MIDI from Cakewalk and also the mono/stereo status of Cakewalk Tracks 1 to 24.  So the PIC has the required information to do the mapping.  This affects a large amount of the level control and signal routing within my analogue mixer.

Returning to your option B: Controlling Cakewalk Track Input Source selection from something on my side, so by sending MIDI from my device (PIC).  That is EXACTLY what I need to do.

I need your help please to understand how the MIDI I send from the PIC to AZ/Cakewalk (which represents required input audio sources for Cakewalk Tracks 25 to 48) can be translated into a FriendlyName set and so control the input sources for Cakewalk Tracks 25 to 48.  Is this possible within AZ Controller?

As always, I am so grateful for your help.  Please add my support to the 'Flowers from community' cause and please add my thanks to your wife for her enormous understanding of all you give to the audio community.

Best wishes

Robert

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1701
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #83 on: December 18, 2020, 02:03:30 PM »
Ok, so the only problem is converting MIDI from your PIC into FriendlyName.
You can do this 2 way, both use MIDI value:
1. as you have done with FriendlyName -> MIDI, but reversed: "Value:4 Set FriendlyName = 'Input channel 4'". "Value" Set is mapped MIDI value when the control is triggered.
2. there are 2 variants, but logic is the same: "Set FriendlyName <Map from MIDI>". So, just one Action. But MIDI values /FriendlyName should be made "compatible".
a) you define just existing FriendlyNames. But in this case the mapping is from 128 to N, so you will need send specific MIDI values.
b) you define exactly 128 States in FriendlyName (most of them can be ""). Then the mapping is 1 to 1.

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #84 on: December 19, 2020, 01:04:43 PM »
Hello Alexey

I configured using your variant 2b).

For the test I continued to send MIDI feedback out from Track 1 and loop back into Track 25.

I have some functionality but one issue is remaining:-

I added additional 'dummy' states in the Software States 'FriendlyNames' so there was a total of 128 states.  So now I expected to have 1 to 1 mapping.
However these additional states are being ignored by the Track25 action list.
So the 25 'real sources' are still being mapped equally spread across the 128 MIDI values.
I have attached the preset so hopefully you will be able to see my error?

Regards
Robert

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1701
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #85 on: December 19, 2020, 06:17:35 PM »
SPP you attach is somehow broken, my Cakewalk can't import it. It show preset, but I am unable to select...

Sometimes AZ Controller trigger some rare corruption when preset is edited "on the go". I was unable to reproduce so far.
I recommend re-do 128 states (without using them during creation). Mapping should be 1-1.

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #86 on: December 20, 2020, 01:07:27 PM »
Hello Alexey

I did some further investigating and experimentation:

1. I had made a mistake in one of the actions for Track25.  I have attached a screenshot of what is now working except for one issue which I will come to in a moment.

2. I found that the total number of software states which need to be created for one-to-one mapping appears to include 'unknown' as one of the 128 states.  Is this what you expected?

Just to remind you that I am exporting MIDI values from the current state of Track1 input source and looping these back in to control Track25 (for my test).

3. I think I found out why you were unable to load the pre-set.  I have four instances of AZ Controller running in my test system.  I have found that any pre-set which is exported from a particular instance of AZ must be imported into the same instance number.  So the pre-set I have now attached was exported from the 4th instance of AZ (which in my case is called 'Source Selection'.  If you import it into the 4th instance of AZ on your own system (so I mean counting down from the top of the instances table), it should load okay.  I tried this on a different PC and it imported just fine.

4. The only problem I have remaining is that Track1 source selection 'None' is not setting Track25 to 'None'.  It is being ignored.  I can see (using MIDI-OX) that selecting 'None' on Track1 is correctly outputting the correct MIDI code (in my example, decimal 126).  The exact entry of Cakewalk Source  'None' as a state within 'FriendlyNames' is '--- None ---' which I found out using the AZ Display facility (following your previous advice on this point).

So I know that the Cakewalk Track 1 Source 'None' is being interpreted correctly as a Feedback to MIDI output but seems to be being ignored when the reverse operation is required, so perhaps the 'FriendlyNames' from MIDI value action?

I would be very grateful if you could have a look at this one remaining issue, hopefully to find a solution.

Let me know if you are able to load the attached pre-set, using the 4th instance of AZ.

Best regards

Robert

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1701
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #87 on: December 29, 2020, 10:11:13 AM »
There was bugs, it should work correctly now (with None and for all Sends). Please download b407 (latest release).

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #88 on: December 29, 2020, 10:58:40 AM »
Hello Alexey
I have tested with b407 and all sources including None are now working correctly.
Thank you so much for taking care of this.
Best regards
Robert

Offline norfolkmastering

  • Full Member
  • ***
  • Posts: 191
Re: Using AZ Controller for Cakewalk control of external audio mixer
« Reply #89 on: February 09, 2021, 12:53:12 PM »
Hello Alexey

I am programming the Transport commands between Cakewalk and my PIC computer.
I have an unexpected AZ Controller state which I want to check with you please.

I have set up a MIDI feedback output for 'RECORD: : STATE MONITOR'
It is set to output 'Value'.

When I put Cakewalk into record then I get the value 127
When I take Cakewalk out of record then I get no value output

Is this the expected behaviour?

I need to be able to detect when Cakewalk comes out of record.

Best regards
Robert