Changeable Stops

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
I'm working on a disposition that has a large number of possible ranks (300ish) but a small number of stops (1 to 5 per division). I'm trying to figure out how to quickly change the rank each stop references without having to go into construct mode. I would like a drop-down list (of all the ranks) for each stop that will allow me to select the rank a stop uses. It would also be nice if typing in the drop-down list brought up relevant rank and if piston messages could change the selected rank in each list.
Is this doable? Have I missed it somewhere on the forum? Does a drop-down list element exist?
Thanks,

Sam
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

John Reimer
Administrator
This post has NOT been accepted by the mailing list yet.
samibe wrote
I'm working on a disposition that has a large number of possible ranks (300ish) but a small number of stops (1 to 5 per division).
Sam,

I have thought of a way which uses the existing features of jOrgan to provide the functionality you are seeking, and I think it will work. However, it is a bit unwieldy to set up, but not so unwieldy to actually use. Let us assume that you have 15 stops total. My method would require you to create 15 keyboards and 15 couplers. Each coupler acts as a stop switch for your scheme, and each comes between the main keyboard of the division “its” stop switch belongs to, and its own keyboard.  You have to make the ranks available to be played from each keyboard (or at least as many ranks as you want to be played from the division that stop switch belongs to). You speak of ranks, but since jOrgan uses presets in the soundfont format, you are in effect setting up 300 stops (i.e presets). Each of the 15 stops would have its Properties set so that it is always “ON”, and it is turned on or off by the state of its coupler. You could have pistons change the particular “rank” or “ranks” to be selected (we should really call them “stops"), but these are not to be confused with your 15 stops switches, each of which is controlled by its own coupler. But the whole thing could become a bit of a nightmare.

So far I have said nothing about how you present all this on your monitor. I think it would require a large number of separate Consoles (perhaps 15), in addition to the main Console. Each Console would have to be selected in turn, and would display the particular ranks you want available to its particular stops switch, and would do so by the use of normal jOrgan stop switches (again, not to be confused with your 15 stop switches, which I would prefer to call “stop control switches”, and would probably be displayed on the main Console). You use those stop switches in the selection process. Doable but perhaps rather intimidating to manage.

You have not made it clear whether all 300 ranks are to be available to each and every stop. I think it is possible to achieve this, but I think it would all become a bit out of hand. And I am concerned about the number of ranks: 300!  Which sound engine are you intending to use? We are of the opinion that Fluidsynth allows you only 600MB for the total soundfont size per jOrgan disposition, regardless of how many instances of Fluidsynth you use. So this could be a problem, as it allows you only 2 MB per preset. And it will be slightly less than that, because I assume that the soundfont has some overhead beyond the total size of the wave samples.

And it may turn out that my idea of setting up this whole thing has some fatal flaw in it anyway!

John Reimer
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

John Reimer
Administrator
This post has NOT been accepted by the mailing list yet.
Sam,

There are some very odd things happening in this Mailing List/Nabble Forum at the moment. I mainly consult the Forum, and I do not receive the Mailing List emails. However, I do receive the Digests, all by choice. Nothing strange so far. But I have just noticed that there have been four replies to your post, but only mine made it into the Forum! My reply is identical to that by GrahamG, which appears in the Digest, but I have spelled it out in much more detail. (We both worked out this solution quite independently - I have only just now seen Graham's Reply in the Digest.)

While talking about odd things happening, I notice that Bill Skees' post, according to the Forum, has not yet been sent to the Mailing List. I am not aware of any reason why this is so.

John Reimer
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
John,

I was noticing that, too. I have been getting any replies to the mailing list and the forum via email. Everything seems to be shown on the mailing list.

I think I might try Graham's advice. I'm thinking of making a console for each division that are activated by couplers on a master console. I think if I were to make a custom skin that shows selected stops by highlighting them, it might be easier to show all of the stops for each divisional console on a screen. I could also place the stops in an order that would make it easier to find particular stops more easily.

Sam
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

John Reimer
Administrator
This post has NOT been accepted by the mailing list yet.
samibe wrote
I could also place the stops in an order that would make it easier to find particular stops more easily.
Sam,

None of this addresses the soundfont size issue. I think if you do need to have 300 stops it would be worthwhile considering the use of the VST plug-in VSTSynthFont as your sound engine. It allows at least 2 GB, and you can also have multiple instances of it. Realise that each instance can select only up to 15 different stops at the one time - but this won't matter in your case, it seems. You do of course need RAM capacity to cope with what total size you end up with.

In case you are not sure about it, such a plug-in needs a VST host, plus the use of virtual MIDI cables to communicate with jOrgan.

John Reimer
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
John,

The soundfont I'm using is one I'm still in the process of putting together. It's not a particularly pretty soundfont because only one sample is used for each instrument, the sample was mathematically generated, and I haven't added any attack/decay information. I'm about halfway done and soundfont file size is about 100MB.

If I can get a system setup and working the way I want, I will probably make another version with only 50 of my favorite stops/sound effects (that my organ doesn't have) using a soundfont with samples from several sources.

So, right now the soundfont size isn't an issue. If I can get a console setup the way I want it, I can do some stress testing and figure out how much I can add to the soundfont before it gets too clumsy or stops working.

Sam
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

John Reimer
Administrator
This post has NOT been accepted by the mailing list yet.
samibe wrote
 I'm about halfway done and soundfont file size is about 100MB.
Sam,

Good! Fluidsynth should do nicely.


John Reimer
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
Eventually, after I get MIDI fully implemented on my console, I hope to set up a virtual organ that matches my stop layout with some additional enhancements. I'm hoping that if I can figure out an elegant way to do my current project that I will be able to use that concept on my future virtual organ.

I would like to set my future VO up with 3 to 6 optional voices per stop (theatre, classical, orchestral, and 0 to 3 additional options). The optional voices would match the family and pitch of the existing stop, but would allow me to use additional tone colors. I would setup a general selector switch that would set all of the stops to theatre, classical, or orchestral mode. I could use each mode separately or mix and match some voices and save those as preset piston combinations.

This project is where I might run out of soundfont space. I have 50ish stops on my organ, which would put the total number of possible stops in the disposition at 150 to 300. I might have to be smarter about setting up the soundfont when I get around to starting that project.

Sam
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
Thanks Paul. I'm thinking that I may just have one master console that has a stop layout that matches my organ. I don't think I want to have to switch between master console layouts (but it could be interesting if I could figure out how to do it well). I would probably set up a background console for each division that has all of the voice options for each stop clustered together. For example, the Solo 8' Post Horn tab on my organ would control the Solo 8' FF Reed (relay/coupler) tab on the master console which would play whichever stop is selected on the Solo console in the 8' FF Reed cluster of stops (8' Post Horn, 8' Solo Tuba, 8' Trombone with delayed vibrato, etc.). The overall organ mode selector would probably just change all of the selected stops on the divisional consoles to the first, second, or third (theatre, classical, or orchestral, respectively) stop in each stop cluster.

If there is a way to have the relay/coupler tab's name change based on the selected stop it is referencing, that would be very cool. I also probably need to figure out a way to limit the selection for each cluster of stops to only one stop (if I select the 8' Solo Tuba, then the 8' Post Horn is automatically unselected). It could get really crazy if all of the optional stops could be selected.

Sam
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
By cluster I meant the groups of 3-6 optional voices for each stop on my organ. This is a workaround from my original idea of using a drop-down list of optional voices for each stop.

My current thinking is to use only couplers on the master console that will activate the selected voice in the corresponding group (cluster) of voices on the divisional consoles. The thing I really needed was a compact stop skin element that's easy to read and select. I copied a couple of skins into my project folder and I turned a label from one of them into a stop. I also made it so that it would turn yellow and bold the text when it was selected. This would allow me to have dozens of stops close together on the divisional console, all easy to read and easy to see what is selected. The skin for the master console is the regular theatre skin.

I worked on a proof of concept this weekend that is starting to look promising. My organ has 8 pedal stops. so my Master console also has 8 "stops" (which are actually couplers to the pedal division console). The pedal division console has 8 groups of 3-6 voices each (somewhere between 24 and 48 optional voice stops). All of the voices on the divisional console are the modified label (stop) skin element that allows them to be grouped closely together and the highlighting labels make it easy to see which voice in each group are active. It would work by having one voice in each of the 8 groups on the pedal division console pre-selected and ready to play if/when the corresponding coupler/stop on the master console is selected.

So, for my organ of 54 stops, there would be one stop in each of the 54 groups of stops (on all of the divisional consoles) selected and ready to go. As I move stops on my organ or hit presets, it activates or deactivates the corresponding stops (couplers) on the master console which send the active stop in the corresponding groups on each divisional console to fluidsynth. Alternatively, I could also set it up so that not only do the presets change which stops (couplers) on the master console are activated/deactivated, but also which voice is selected for all of the groups on all of the divisional consoles.

I still haven't figured out how to make sure only one stop in each group is selected at a time. I'll keep digging on that one. I'm also going to keep working on a stop selection drop-down list and a dynamic text coupler. We'll see what I come up with.

With my new stop skin elements, I should be able to create a reasonably good divisional console for my original concept (300+ optional stops per division). I think I can fit almost 100 stops on a display without scrolling (2 or 3 page downs/ups to see all stops). I can group them in columns of voice families. I can also sort each voice family by pitch lengths (long to small) then stop name in alphabetical order.

Sam
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Changeable Stops

samibe
This post has NOT been accepted by the mailing list yet.
This post was updated on .
Update: Here are some photos of my proof of concept. I haven't put the soundfont together yet, so I used another one to test the couplers and stops to make sure my logic was working correctly.
This is the Master console. All of the stops are actually couplers that activate separate groups of stops on the divisional consoles.


The TH and CL pistons on the master console change the selected stops on each of the divisional consoles to theatre (TH) or classical (CL) stops. I'll probably add one piston for orchestral stops (OR) and maybe a few more for some useful mixed configurations.  Currently the other general presets are set up to only affect the tabs on the Master console. I can set them up to change the Master stops and the selected voices on the Divisional consoles, but I haven't figured out an elegant way to do both. So right now I'm going to leave it as is.

This is the Pedal division console. Each label is a stop that turns yellow if it is selected. The vertical stack is a group that corresponds to the stop (couplers) on the Master console. I've got the theatre stops on the bottom. I'm planning on putting classical stops on the row above that but I haven't finished the stoplist for that. Orchestral voices would go on the third row and any additional voices would go above.


Here is what the Pedal console looks like if the CL piston is selected.


The stack of 32' stops on the far right of the Pedal console are for the Alt to Pedal coupler on the Master console. It will probably have more than 6 voices when I get done with it, but they will all be useful in the Pedal division. I still don't have a way to limit the number of stops selected from each group on the divisional consoles. So, it is possible to select all of the voices on each division console and play them all at once, but that would be crazy (and would probably sound muddy). I might use that to test the polyphony of my system, though.

Sam
Loading...