On Sat, 2008-01-26 at 19:16 +0100, Dennis Schulmeister wrote:
> Just a litte question to better understand your idea. How would a
> sequencer request a certain patch on a certain channel on a certain
> port?
I think the patch selection would be more part of the JSM than the
sequencer, but the details must be figured out in collaboration with
sequencer authors. So it wouldn't be the sequencer requesting a patch,
but rather patch selection throughy the JSM, the JSM providing all
necessary info to the sequencer and changing connections.
> With plain MIDI the sequencer would just send the appropriate control
> change / program change values on the given channel and midi port.
> Without knowing which device would interpret the values in which way.
>
> How would that be different with an abstraction layer? How could an
> abstraction layer assure that a given PC/CC value pair would always
> refer to a certain kind of patch? Regardless of the system and
> synthesizer setup employed.
> Obviously there would be some kind of translation. But who would define
> the translation rules? Who would define what kind of patches JSM can
> handle and which not. The JSM developers might come up with a "snappy
> synth bass". All a user would have to do was to tell JSM how to select a
> "snappy synth bass" patch on a given synthesizer.
> But they might not come up with a "blurry sound from space which sounds
> like a cat screaming when its tail gets clamped by the door". The user
> wouldn't be able to reliably select such a patch. Simply because it
> wouldn't be offered to him. On the other hand he could extend the
> translation rules to offer such a patch. But than again it wouldn't work
> on a foreign setup.
The minimum the abstraction layer would do, is automatic switching
between profiles. One per environment. This way you would not have to
adapt everything on each iteration of working on a project in turns.
Patch selections could be stacked. One selection for each environment.
The next thing could be virtual ports to represent roles in the project.
Roles like drum-module or lead-synth.
Then replacing unavailable patches with patches that are similar as far
as that can be discerned from meta-data.
-- Thorsten Wilms thorwil's design for free software: http://thorwil.wordpress.com/ _______________________________________________ Linux-audio-dev mailing list Linux-audio-dev@email-addr-hidden http://lists.linuxaudio.org/mailman/listinfo/linux-audio-devReceived on Sun Jan 27 00:15:02 2008
This archive was generated by hypermail 2.1.8 : Sun Jan 27 2008 - 00:15:02 EET