Feature suggestion - Colors on piano keyboard

• Feb 18, 2020 - 02:39

Currently, when the piano is displayed (I think "P" is the default key), any notes that are played appear in blue. I think the user should be able to select the color of each note in the inspector just like they would change the color of the elements in the staff. This way, it would be easier to tell what notes each each instrument is playing on the piano.


Comments

I've just got this working. My implementation uses individual note colors if they've been set, and voice colors otherwise.

Here's a quick comparison:

MuseScore - Piano with colored voices and notes demo.gif

  • Top: Single color (current implementation)
  • Middle: Voice colors
  • Bottom: Note colors (colored using the “Color Notes” plugin)

Thoughts?

In reply to by Splodinate

Yes, you could use the Inspector to set the notes to whatever color(s) you want and it would work just fine with what I've already implemented. The “Color Notes” example I posted was just that: an example.

I could also do what @worldwideweary suggested and support using the track colors as an option. That way you wouldn't even have to color the notes.

In reply to by Spire42

I've got track colors working.

Now it needs to be configurable, because you can't have track colors and voice colors enabled at the same time. (Sigh.)

I wonder if I should also add support for “color notes outside of usable pitch range”.

In reply to by Spire42

How would it work if two tracks play the same note, which track color takes priority?

How about adding a color feature to help differentiate between live play-along midi/virtual keyboard input and Musescore playback--e.g., darken the color when the user and Musescore are playing the same note during playback? This would make Musescore an even better tool for learning to play scores on the keyboard as it would provide visual immediate feedback when the user was playing the right note at the right time with the score.

In reply to by Sambaji

> How would it work if two tracks play the same note, which track color takes priority?

The way it's currently implemented, the one that started playing first takes priority. Additionally, if the first track's note ends while the second one is still playing, the color switches to the second track's. Does that work for you?

> How about adding a color feature to help differentiate between live play-along midi/virtual keyboard input and Musescore playback--e.g., darken the color when the user and Musescore are playing the same note during playback?

Already done, actually. Notes that come from MIDI input have their own configurable color. (Currently no UI yet; it's lumped in with all the other colors under Advanced in MuseScore Preferences.)

In reply to by Spire42

hi did this get implemented yet? And is there any way to have the falling notes in the software like in the website version of the keyboard visualizer? but also to have three windows in the software so that one can resize either the score with zoom in, 2) falling notes with zoom in, and 3) resizeable keyboard window with zoom in? The reason this is badly needed is because its not as nice to learn in synthesia which has all of that except doesnt have proper pedal and dynamics markings in the score part of synthesia.

@Spire42: Looks decent. P.s., there was a post mentioning the ability to use a mixer channel's peculiar color for the onscreen piano. Something between that and what you have currently would be really nice, one peculiar use case being the user's ability to set a [left hand] and [right hand] color which may or may not include multiple voices.

This with the addition of some sort of "practice mode" would be really slick. I'll be doing something like that for personal reasons on a private branch (a note-entry mode that works not for note-entry but for MIDI device input for score traversal that only moves forward when the correct notes are played given a chosen selection of tracks/voices to use for midi device practice).

Happy developing

Do you still have an unanswered question? Please log in first to post your question.