Hi,
im developing another new agent called "Scale Illuminator" which lights keys according to a reference scale.
i.e. you connect to the controller input on a KG that is say in Chromatic, and give the illuminator a reference scale of C Maj, and it will light the keys of C Maj, on the chromatic scale.
All works perfectly... but ive got a small issue...!!!!
In another development, Ive created a program that creates alternative musical layouts , but changing musical mapping.
again this works fine - and also works very well with my scale illuminator.
EXCEPT, I allow the creation of a musical mapping, that jumps in 3rds (in chromatic)
so I create a mapping that does
1, 1 to 1, 1
1, 2 to 1, 3
1, 3 to 1, 5
etc...
up to
1, 22 to 1,43
(i do same for course 2 and offset by 5.0)
this plays perfectly - so far so good :o)
BUT, Ive noticed with my illuminator, i get told the course length is 22 , not 43 as expected! (i.e. the number of entries in the mapping not, then value for the course) - this means my lights only light up half the keyboard! (they are correct, but only up to where course = 22, which row 11 )
Im getting this by using the control input, and examining the 'courselen' dictionary sent over this , in the same way as scaler does.
A bit of investigation, shows that the 'tonic lights' code in scaler has exactly the same issue, will only light the first 11 rows.
it also seems to assume course length is the number of entries
at first I assumed it was down to physical, but I made sure it used a similar mapping and it continued to have the same issue.
(and looking at the code, discounts this too)|
so apart from a 'small bug' in the tonic lights on scaler....
my question, is how do i get access in an agent to the actual musical mapping? (is it on the controller input?)
it would appear this is necessary, if you are generating lights according to the notes, you would want to only generate lights for which there is a musical entry.
... id also assume this must be possible, as otherwise how does scaler work (or is it just assuming a repeating pattern over 22?)
i know as a work around , I could connect musical mapping from a KG, and parse it , but this is really not a very good approach, and id like to avoid if at all possible!