markusschwenk / midieditor

Provides an interface to edit, record, and play Midi data
GNU General Public License v3.0
464 stars 67 forks source link

Request: Adjustable Quantization #6

Closed Majumafoo closed 4 years ago

Majumafoo commented 5 years ago

I use this software to write music for my Tesla coil. It has a few limitations, including number of notes it can play at a time, and a need for down time between notes.

These 2 issues which could be solved with 1 change.

1. Quantizing notes causes them to overlap and not sound. Currently, when quantizing, MidiEditor makes notes as long as they possibly can, extending into the timing of other notes. For example, 4 quantized quarter notes would take up the following ticks: 0-192 192-384 384-576 576-768 Notice how the off tick of each note is the same as the on tick of the next.

In typical applications, this isn't an issue. However, the Tesla coil is programmed to only play 2 notes at a time, so when harmonies, or just several notes come on in quick succession, the software I use to translate Midi to Tesla coil cuts notes, which isn't ideal for the listening experience.

I'm hoping/suggesting that an adjustment or option could be made to accommodate this. I believe that adjusting quantized notes to take up 1 fewer tick and lift earlier should stop this issue:

For example, the same notes above could take up these ticks: 0-191 192-383 384-575 576-767

2. If similar notes don't have enough space between them, they blend together. Currently, if similar notes are too close together (less that 16 ticks) they blend together to sound like one note when they are played on my Tesla coil.

Proposed Solution It would be beneficial to have the ability to adjust spacing from one note to another when using the quantize function. That is to say, it would be nice to be able to choose to have off ticks 1, 2, 4, 16, or whatever number away from following notes.

This would allow me to write music, and then very easily adjust their spacing, removing a whole lot of tedious work that I'm doing currently.

markusschwenk commented 4 years ago

I believe this is fixed. Now quantization makes the notes end at one tick before another note starts.