Settings query

Find out what all those theatre organ console button do
User avatar
bdalton
Posts: 446
Joined: Mon Aug 20, 2007 1:39 pm
How many Style 216 did Wurlitzer make?: 0
Location: West Cumbria, United Kingdom

Settings query

Post by bdalton » Wed Nov 07, 2012 1:37 pm

In ,Settings/output, at the bottom of the page what does "Use configured control values" mean ?

Barry
Barry

User avatar
Jim Henry
Admin Group
Posts: 6134
Joined: Mon May 23, 2005 11:44 pm
Spam Stopper: theatre organ
How many Style 216 did Wurlitzer make?: 12
Location: United States

Re: Settings query

Post by Jim Henry » Wed Nov 07, 2012 2:34 pm

"Use configured control values" works in conjunction with "Select Merged Out device:" which is a feature most people will never use.

If you use "Select Merged Out device:" to set a MIDI Out device, the Miditzer will take ALL the inputs--MIDI In, screen and mouse, and computer keyboard--merge them, and produce a MIDI Out data stream that could be sent to another copy of the Miditzer as MIDI In to cause it to do exactly what the first Miditzer is doing. You could do other things with the MIDI Out data stream too. Your imagination is the only limit. I use "sent to another copy of the Miditzer to cause it to do exactly what the first Miditzer is doing" as a shorthand to decribe what is in the data stream.

The Miditzer has a default set of control values--the MIDI messages that can control pistons, stops, and the other control elements of the console. These are the values used when the Miditzer first starts up or is reset to "base camp" configuration. The default behavior for the Merged Out is to use the default set of control values rather than what has been set in the Settings. This allows you to send the Merged Out to an unconfigured copy of the Miditzer without regard to how you needed to configure the first Miditzer.

You can select "Use configured control values" to cause the Merged Out to use the set of control values configured for the first Miditzer. This would be used if you had two copies of the Miditzer that were identically configured and you wanted to make one copy sync with the other.

I think a few people have used this to create multicomputer systems that run the Miditzer. Since the Miditzer will run on computers that are close to obsolete, a Windows XP system is fine, you probably can pick up suitable computers for next to nothing and use multiple computers to spread the sound synthesis over multiple computers.

As I think about it, I think it might be better to send the MIDI Out from a single Miditzer to MIDI-OX. Use MIDI-OX to split the MIDI channels amongst multiple MIDI Outs that are sent to the computers doing the sound synthesis.

Using multiple copies of the Miditzer would be easier to configure. I just don't know if setting the volume of a MIDI channel to zero will stop FluidSynth from spending time synthesizing the sound for that channel. My guess is that it would but I would do some experiments to confirm that before gathering up a bunch of old computers. It might be kind of fun to have computer screens spread around, each displaying a copy of the moving Miditzer console.
Jim Henry

User avatar
bdalton
Posts: 446
Joined: Mon Aug 20, 2007 1:39 pm
How many Style 216 did Wurlitzer make?: 0
Location: West Cumbria, United Kingdom

Re: Settings query

Post by bdalton » Wed Nov 07, 2012 5:14 pm

Thanks for that Jim.
The reason I asked the question was because I'm using the "Select Merged Out device:" to output to the Teensy controlling the stoprail and I wondered if there might be some way of stopping the note On/Off messages so that the Teensy dosen't have to spend time throwing them away.
I know I can use MIDIOX to filter out the note On/Off messages.

Barry
Barry

User avatar
Jim Henry
Admin Group
Posts: 6134
Joined: Mon May 23, 2005 11:44 pm
Spam Stopper: theatre organ
How many Style 216 did Wurlitzer make?: 12
Location: United States

Re: Settings query

Post by Jim Henry » Wed Nov 07, 2012 5:49 pm

The time it takes for a controller like the Teensy to discard MIDI messages that are not of interest should be far less than the time it takes for the next MIDI message to be sent.

MIDI is an old and very slow protocol. The Teensy should be able to process any received MIDI message and send a MIDI message in less time than it takes to transmit the next MIDI message being sent to the Teensy even if both MIDI In and Out are at 100% of capacity.

Don't worry about overloading the Teensy. The most likely problem in a MIDI organ console is a poorly designed swell shoe MIDI encoder "jittering" and swamping the MIDI Out cable with expression messages. That might interfere with MIDI messages from the stops getting sent to the Teensy. The Teensy itself would probably still spend most of its time twiddling its thumbs.

I don't recall if you are programming the Teensy yourself. If you are and my memory is correct, there is an on-board LED. You might be able to turn on the LED when the Teensy enters its "spin idle loop" where it waits for something to do. Turn off the LED when the Teensy exits the loop to do something productive. My guess is that the LED will hardly ever visibly dim, much less go dark.
Jim Henry

User avatar
johnh
Posts: 884
Joined: Wed Nov 09, 2005 12:12 am
How many Style 216 did Wurlitzer make?: 0
Location: Santa Cruz County, CA
Contact:

Re: Settings query

Post by johnh » Wed Nov 07, 2012 9:46 pm

Jim Henry wrote: You could do other things with the MIDI Out data stream too.
I've used it to control real wind blown pipes along with the fluidsynth 'pipes'.

User avatar
bdalton
Posts: 446
Joined: Mon Aug 20, 2007 1:39 pm
How many Style 216 did Wurlitzer make?: 0
Location: West Cumbria, United Kingdom

Re: Settings query

Post by bdalton » Thu Nov 08, 2012 8:44 am

The reason that I asked the question in the first post in this thread, is because Miditzer ocasionaly
crashes while playing with notes locked On. This locks up the PC requiring a switch off by holding in the power switch.
As I said, I suspected the Teensy was not removing the Note On/Off messages fast enough.
As you said, Jim, the Teensy should not have a problem, as the MIDI output from Miditzer is at
32KHz and the Teensy clock is 16MHz.
Experiments today have shown indirectly the Teensy is to blame.

The main loop of the Teensy program, (written by me with Graham (moonskin) help), starts with
a "while MIDI input present" loop statement followed by a " Get MIDI message type" and a
"if message type is CC" ,if the MIDI is a Note On/Off, the "if----" is false and the program returns to the "while----".
This happens so quickly that the "while----" returns false because the next MIDI from
Miditzer has not had time to present itself , I'm assuming that there is a string of Note On/Off
messages waiting in a buffer due to fast playing, which is when the problem presents itself.
When "while----" is false the Teensy program goes into the "scan the stop switches" loop, which
takes 0.3mS to complete the scan before it checks again for input MIDI from Miditzer, and can there-by miss a message.
The problem does not occur if I use MIDIOX between Miditzer to filter out the Note ON/OFF
messages.

I'm happy to live with using MIDIOX.


Cheers
Barry
Barry

User avatar
Jim Henry
Admin Group
Posts: 6134
Joined: Mon May 23, 2005 11:44 pm
Spam Stopper: theatre organ
How many Style 216 did Wurlitzer make?: 12
Location: United States

Re: Settings query

Post by Jim Henry » Thu Nov 08, 2012 12:03 pm

It sounds like something is not right but it could be a hard thing to find. If putting MIDIOX in as a filter makes the issue go away, then that probably will have to suffice unless Graham wants to dig into this. Glad you figured out a way around the issue.
Jim Henry

User avatar
johnh
Posts: 884
Joined: Wed Nov 09, 2005 12:12 am
How many Style 216 did Wurlitzer make?: 0
Location: Santa Cruz County, CA
Contact:

Re: Settings query

Post by johnh » Thu Nov 08, 2012 1:07 pm

Jim Henry wrote: MIDI is an old and very slow protocol. The Teensy should be able to process any received MIDI message and send a MIDI message in less time than it takes to transmit the next MIDI message being sent to the Teensy even if both MIDI In and Out are at 100% of capacity.
Looking at Barry's thread on the Schober Recital the Teensy is doing MIDI over USB which will be much faster than the MIDI standard hardware supports.

Does the Teensy support interrupts? Having a routine that queues incoming MIDI data would be a possible solution.

---john.

User avatar
Jim Henry
Admin Group
Posts: 6134
Joined: Mon May 23, 2005 11:44 pm
Spam Stopper: theatre organ
How many Style 216 did Wurlitzer make?: 12
Location: United States

Re: Settings query

Post by Jim Henry » Thu Nov 08, 2012 1:26 pm

Good point about MIDI over USB being a different and faster protocol for the hardware delivery of messages. The Miditzer is unusual as a MIDI device because the Merged Out creates a number of simultaneous Note events when more than one stop is engaged for the note played. It is hard to say if each of the pieces that have to handle the MIDI data considered the possibilty of a significant number of near simultaneous note messages arriving on a regular and fairly quick basis.
Jim Henry

User avatar
bdalton
Posts: 446
Joined: Mon Aug 20, 2007 1:39 pm
How many Style 216 did Wurlitzer make?: 0
Location: West Cumbria, United Kingdom

Re: Settings query

Post by bdalton » Thu Nov 08, 2012 1:45 pm

quote from Teesy web site:- (http://www.pjrc.com/teensy/td_midi.html)
"MIDI messages are grouped together into USB packets. Up to 16 messages can transmit at once! They are held for a brief time, not more than 1 ms, to facilitate grouping. You can use the send_now() function to immediately allow any buffered messagse to transmit."

Jim wrote "The Miditzer is unusual as a MIDI device because the Merged Out creates a number of simultaneous Note events when more than one stop is engaged for the note played."

Are you sure ,Jim. Looking at the merged output on midiox shows only one Note message with many stops set.

Barry
Barry

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests