CS349 Final Projects Spring 2023
Alex Dumouchelle

Downloads:
multimedia2.jar (if you don't already have it)
MetroSteinMachine.jar

Requirements:
Must have a sound card that supports 16-bit .wav files.

To Run:
java -Xms256m -jar MetroSteinMachine.jar

Controls:
Pressing the "Start" button will activate the metronome.
Pressing the same button (now "Stop") will turn it off.

Adjust tempo either through typing, inrementing/decrementing, or tapping the desired tempo.
In the text field above the start button, a tempo between 1-500 bpm can be input.
The buttons below the "Start" button (-/+) will increment or decrement the tempo by 1 bpm.
The "Tap" button after being clicked 3 times will detect the tempo of the last 3-5 presses
After 2 seconds it resets its timer, so tempi below 30 bpm are not supported by Tap.

Choose time signatures from 1/4 - 16/4.
In the dropdown above the beat buttons on the right side, you can select a time signature.
Only time signatures over 4 (eg. 4/4, 3/4, 16/4) are supported.
It supports 1/4 to 16/4.
Functionality of meters over 8 or 16 can be simulated by adjusting the tempo and accent marks.
Example: You want a 6/8 (3+3) pattern at dotted quarter note = 100 bpm.

  1. set the time signature to 6/4.
  2. set the tempo to 300 bpm (100 * 3).
  3. Change the accents to occur on beats 1 and 4.

Set the click type for each beat in the measure to accented, normal, or none
All of the beat numbers on the right side function as buttons.
Click each beat to cycle through ACCENT, NORMAL, and OFF.
The first beat of each measure will always have a stronger accent when it is on ACCENT mode.

Set subdivisions
Supported subdivisions:

Set the tempo based on ratios
On the left side, there are buttons which display tempos in relation to the current one.
Supported ratios:

Known Bugs: