Skip to content

FR: Multiple metronomes, more logical notation editor #67

@Aphexus

Description

@Aphexus
  1. It would be really nice to be able to have multiple metronomes going on simultaneously to practice multiple rhythmic patterns. This is mainly for polyrhythms and polymeters(such as 3 against 7 or 5 against 4).

Maybe as sample way to add this feature would be to abstract the metronome so that multiple can be run.

Then add an overlay or easy way to add or remove multiple instances.

Then it is just a matter of synchronizing the metronomes(so some work on dealing with how the sounds are played is in order. Probably the easiest way is to render the waveform directly to an audio buffer and the ship the buffer to the audio output. The main issue here is to make sure everything is nearly perfectly synced so there are no weird timing issues between the different instances.

  1. Add some ability to add a latency to the sound including negative. The issue is that there is some delay from the animation effects and the sound itself and if one is watching the metronome it can be a little discombobulating.

  2. The notation editor is a nice feature but it is a little strange to use. It would be better if it was more like standard music notation editors in which a beat is literally is specified by the time signature. Then a beat can be divided in a natural way. Currently one has to "add notes" but a note is, tempo speaking, an arbitrary unit specified by the notation rather than specified by the meter/bar. E.g., if I add 3 "units" those can be anything I say. When a quarter note is selected and turns it in to an eighth note it will change time signature(say from 4/4 to 7/8).

Maybe adding an "optional logic" for more standard notation would be better than to replace the current system. This way it could be done gradually. I'm mainly interested in the first request so I can practice polyrhythms more accurately.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions