[yoshimi] Re: On a bit of a roll now :)

  • From: Will Godfrey <willgodfrey@xxxxxxxxxxxxxxx>
  • To: yoshimi@xxxxxxxxxxxxx
  • Date: Sun, 27 Mar 2016 15:22:42 +0100

On Sun, 27 Mar 2016 08:38:25 -0400
Chris Ahlstrom <ahlstromcj@xxxxxxxxx> wrote:

Will,

I have added your examples to the "Vector Control" section of
yoshimi-doc.  The latest is currently only in the "cja" branch.

However, you will note in that section that I have some questions that
occurred to me while working through it.

Thanks man!

NP. You've done a good job of putting it into more digestible form :)

<aside>
Whenever I get a cold I always end with 2-3 days extreme cough. I sometimes
think that's actually far worse than the cold itself -BLEAH
</aside>

Right {rolls up virtual sleeves}

To answer your second question first:

In Yoshimi, all CLI file operations are standard file specs.

"/home/user/directory/file" will go to that specific location.

"file" will look only in the current directory, whatever that happens to be.


Now for the more complicated bit :)

I first thought about vector control long before we had 64 part capability,
iand ntended to use just sequential parts/channels. I was put off by several
things.

First: How do you stop one vector definition overlapping another? Do you
restrict it to blocks of 4? If so, what about the 'wastage' with a mixture of
single and dual vectors?

Second: My compositions frequently use 12 out of the 16 available channels. That
leaves room for only one vectored one.

Third: how do you stop an otherwise valid MIDI CC breaking a vectored setup?

Stepping forward, 64 parts was initially just an experiment to see if it could
be done. Once proved viable, my first thought was vectors!

By going down 'columns', instead of across 'rows' you don't reduce the number
of available channels for normal MIDI operations.

By default an entire column uses the same MIDI channel, so, remembering that
almost all numbers in the CLI start from zero, you have:

CH 0 - parts 0, 16, 32, 48
HH 3 - parts 3, 19, 35, 51

Although seemingly offset by 1, these match up nicely with the part groups in
the mixer panel.

As setting the programs is not done by numbers, but by X/Y L/R I thought it
best to report back the actual parts that were being set. This also meant I
could use the existing code without any modification.

With steady refinements over time, it probably wouldn't be too difficult to give
the user the choice of a vertical' or 'horizontal' basis, but I'm not keen on
the idea myself - we're still falling behind on more important stuff :(

Usual caveats apply: If someone wants to offer a patch I'll look at it :)

Incidentally, with Yoshimi idling on this office computer. 16 parts gives 0.8%
dsp load and 64 parts pushes that up to a whopping 1.1% :)

-- 
Will J Godfrey
http://www.musically.me.uk
Say you have a poem and I have a tune.
Exchange them and we can both have a poem, a tune, and a song.
Yoshimi source code is available from either: 
http://sourceforge.net/projects/yoshimi
Or: https://github.com/Yoshimi/yoshimi
Our list archive is at: https://www.freelists.org/archive/yoshimi
To post, email to yoshimi@xxxxxxxxxxxxx

Other related posts: