written by Jones (UI)

1. The XYPad

In M4S we use XYPads in several parts of the tool. Specifically in the compressor and the limiter. In theory a XYPad is nothing more than two sliders which are connecting. So with the pad we can modify two values at the same time (one of the x axis and one on the y axis). This helps us changing important values for the tool in a very fast forward manner.

2. Why use the XYPad

The whole idea of M4S was making loudness mastering for streaming more simple and don’t throw thousand of UI rotary sliders and values on the user. The XYPad is again a method to simplify the use of our M4S tool.

As mentioned before the user can modify two values at once (not like one in a normal slider). These two values are obviously logically linked together like “Attack” + “Release”. Two important values for the processor. With the use of our XYPad the user can even close his or her eyes and listen to how the sound changes on changing the XYPad (again two values at once).

3. Setting up a XYPad

Here is an example code of how to set up a XYPad in the limiter of M4S (commented):

	atk_rls_xy_pad.setTitle("RRT"); // Set Name (upper left) y axis
	atk_rls_xy_pad.setSubTitle("RT"); // Set Name (bottom right) x axis
	atk_rls_xy_pad.setRangeX(0.0f, 500.0f); // Attack Range Setting value range x axis
	atk_rls_xy_pad.setRangeY(0.0f, 2000.0f); // Release Range Setting value range y axis
	atk_rls_xy_pad.setXVal(250.0f); // Set Start Value X
	atk_rls_xy_pad.setYVal(500.0f); // Set Start Value Y
	
	atk_rls_xy_pad.showValuesInTitles(true);
	atk_rls_xy_pad.setValueLength(4); // Cutting the value string after a length of four
	atk_rls_xy_pad.setXName("ms"); // Set Name X
	atk_rls_xy_pad.setYName("ms"); // Set Name Y
    atk_rls_xy_pad.x_slider.addListener (this); // Adding Listener
    atk_rls_xy_pad.y_slider.addListener (this);

4. Nice to Have // Lookout

Coding the XYPad on my own was probably the most fun during the development of M4S. Allthough I have to admit I didn’t manage to create everything as planned. Still I am very proud of our beautiful UI result.

There is still something left however - something you can actually see in the mockups which are these little clouds indicating which genre the specific value range is representing. For example “Rock” or “Jazz”.

Maybe I will come back later to M4S and add it just for fun - not sure yet. I am busy working on other projects.