[yoshimi] Re: adding external midi controller

  • From: <distro@xxxxxxxxxxxxxxxxx>
  • To: Yoshimi <yoshimi@xxxxxxxxxxxxx>
  • Date: Mon, 31 Dec 2018 23:47:15 +0100 (CET)

Will,

yes to reiterate (and it appears you understand)

for example, with pkg alsa-utils, you can run command:
$ aconnect -i

RESULTS:
client 0: 'System' [type=kernel]
    0 'Timer           '
    1 'Announce        '
client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 20: 'Impact LX25+' [type=kernel,card=1]
    0 'Impact LX25+ MIDI 1'
    1 'Impact LX25+ MIDI 2'

1. Now the key value here would be client 20: Impact LX25+
The identifier and which all other programs, whether it be the pkg alsa-mixer 
will identify as the sound source (along with Intel, PulseAudio, soundcards etc)

2. For an example, easily seen I assume VMPK is available widely for most 
distros..

You can go to the Edit > Midi Connections. With ALSA selected as driver, you'll 
see a drop-down where you can keyword: specify the driver, which displays the 
identifier: "Impact LX25+"

3. Now in Yoshimi, under Yoshimi < Settings, under ALSA tab, you do have a 
form-field it appears where you should be able to specify this value "Impact 
LX25+" similarly. SEE form field "Alsa Midi Source"

See the logic? It is not a drop-down currently but a form text field. It would 
be great at least if one could just pop in their midi-controller and value. And 
obviously the coding behind making a simple drop-down would be warranted if 
function.

4. So the question is: is this form field functional? Is there a method into 
which one can specify their midi controller under ALSA. ( simple yes or no on 
the first will suffice, latter question, if yes, how?)

In reference to below, note the difference,

$ aconnect -l

RESULTS
client 0: 'System' [type=kernel]
    0 'Timer           '
    1 'Announce        '
client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 20: 'Impact LX25+' [type=kernel,card=1]
    0 'Impact LX25+ MIDI 1'
    1 'Impact LX25+ MIDI 2'
client 128: 'yoshimi' [type=user,pid=28366]
    0 'input       

THUS, naturally tried the client in the field, rebooted etc. No dice.

So still working on it, I am guessing then there is no direct way currently to 
config ALSA?
#




Dec 31, 2018, 4:28 PM by willgodfrey@xxxxxxxxxxxxxxx:

Going back to the start...

First of all, please keep in mind that Yoshimi has a *very* small number of
people who can devote a lot of time to it. That small number being 1 - me :(

When I first looked at the MIDI code it didn't attempt to make any connection
at all (neither did most other software I came across). Some stuff did, and
used the ALSA port primitives to connect to the first device it saw. Which was
highly dependent on what order things are started up, and assumed no 
re-starts.

None of this mattered much to most people as qjackctl was used to quickly link
stuff together by name, or they used session software. Also Rosegarden (my
sequencer of choice) could find Yoshimi and auto connect to it if configured 
to
do so. That last bit is important because if it was not configured to, then
trying to connect via qjackctl would appear to work but Rosegarden ignored the
connection - it had to be the boss.

Over a period of time I worked out how to identify a source by ID (rather than
port number) if it was known, and provided the entry in the ALSA tab for that.
If you know the ID the hardware reports (which may not be quite the same as
printed by aconnect -l) just enter that, save settings and Yoshimi will find 
it
and connect to it every time it starts.

That did everything I wanted it to at that time, and apparently what everyone
else wanted, so I moved on to other more important issues.

I would refer you to "The Short Yoshimi Guide.odt" in the "doc" directory for
some more info on this.

This is the first time anyone has raised this since then, and although I'll 
put
it on the list, I can tell you there is still much more that Yoshimi *really*
needs.

If we were really smart we'd be able to find inputs in real time as they
appear, but although that is easy to suggest, it is enormously complex to
implement.

Yoshimi is first and foremost a soft-synth, When Cal forked it from Zyn 2.4.1
he initially stripped out everything that was not essential, and since I've
been in the driving seat I've tried to keep as close to that as seems
reasonable.


-- 
Will J Godfrey
http://www.musically.me.uk ;<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: > 
https://sourceforge.net/projects/yoshimi ;
<https://sourceforge.net/projects/yoshimi>
Or: > https://github.com/Yoshimi/yoshimi ;<https://github.com/Yoshimi/yoshimi>
Our list archive is at: > https://www.freelists.org/archive/yoshimi ;
<https://www.freelists.org/archive/yoshimi>
To post, email to > yoshimi@xxxxxxxxxxxxx <mailto:yoshimi@xxxxxxxxxxxxx>


Other related posts: