Changes

Jump to navigation Jump to search
Line 74: Line 74:     
[[File:Zynthian jalv plugins.png|right|300px|zynthian_engine_jalv class]]
 
[[File:Zynthian jalv plugins.png|right|300px|zynthian_engine_jalv class]]
 +
 +
<br clear=all>
    
There is a bit of defensive programmiing to prevent damaged files structures from stopping anything happening but the call is then handed up to  
 
There is a bit of defensive programmiing to prevent damaged files structures from stopping anything happening but the call is then handed up to  
Line 100: Line 102:     
The World of MIDI is slower than audio but a little more involved, as we can do some manipulation in this space to really aid the performer. Transpose a keyboard by an octave? Play a chord when one note is pressed ( Bontempi Mode :-) ). By using an LV2 component to do this sort of manipulation and get all the definitions from the declared namespaces means we can make solid assumptions about precisely what effects on the sound environment we are controlling.
 
The World of MIDI is slower than audio but a little more involved, as we can do some manipulation in this space to really aid the performer. Transpose a keyboard by an octave? Play a chord when one note is pressed ( Bontempi Mode :-) ). By using an LV2 component to do this sort of manipulation and get all the definitions from the declared namespaces means we can make solid assumptions about precisely what effects on the sound environment we are controlling.
 +
 +
But there needs to be an important component in the zynthian world to handle the MIDI as it moves in and out of the zynthian, and this is the zynrouter. This engine is a C component and does magic :-D. This allows the zynth to manage several seperate MIDI environments that might well involve all kinds of complicated shenanigans. Oh there's a sequencer down there as well . . .
 +
 +
 
And all from the zynthians setting up a few electronic conversations.
 
And all from the zynthians setting up a few electronic conversations.
   −
'''JALV is the software container that the LV2 component runs in that presents the LV2 objects defined in TTL files to the zynthian.'''
+
Jack does this on our behalf and is probably the single most important component around which the zynth is built. Certainly from following this evolutionary path it's possible to see the advantages of an open source environment at their most visible ! :-D
 +
 
 +
<br clear=all>
 +
 
 +
== Where it gets stored ==
 +
So once an engine has been started up what else does it need to know?, given it's MIDI components, parameters and Audio in's and outs have been nicely presented to the user.
 +
How do we store all this state we are generating?
 +
 
 +
In the Pre LV2 age it was all explicitly defined in the code, but we can now do better. We want to be able to add,enable and disable these lv2 components that we could get hold of from 'sources' or indeed write ourselves and offer to others...
 +
 
 +
What maintains the LV2 zynthian universe?
 +
 
 +
Well there are three basic places lv2 bundles live.
 +
 
 +
* /zynthian/zynthian-plugins/lv2
 +
* /zynthian/zynthian-data/presets/lv2
 +
* /zynthian/zynthian-my-data/presets/lv2
 +
 
 +
 
 +
<br clear=all>
 +
 
 +
== LV2 Webconf configuration ==
584

edits

Navigation menu