Change playback cursor
This is a snapshot from the discussion around recently added PR: https://github.com/musescore/MuseScore/pull/3703.
> I've been using MuseScore to practice reading music for the past couple of weeks. The method (for the classical guitar) I'm following, provides duets that you're supposed to play with your teacher, in order to make the intial lessons, which are inevitably simple and boring, a little more interesting and I've MuseScore to be a very useful tool for practice. It can be used to play back the music, to give you an idea of what it's supposed to sound like, it can mute the instrument you're playing and it has a metronome and lead-in feature, which is more or less all you need.
> One concern was that the cursor and note-highlighting during playback, might interfere with learning to count properly, so I looked into what it would take to disable it. As it might be useful to others, this is a pull request implementing the necessary changes to make highlighting optional.
> I'm not very familiar with MuseScore's source, or Qt development, so, in order to minimize the possibility of introducing bugs, or style violations, I based my implementation on the "pan score during playback" option, which seems related, as it's a visual playback aid. I also ran the result through valgrind, to make sure I haven't introduced any memory-related bugs (which revealed what looks like an unrelated uninitialized value bug, which I'll report separately, as well as a few other issues, which look like they're inside Qt or Freetype code).
>My changes seem to do what they're supposed to, without breaking anything, but if you choose to adopt the PR, please inspect them for unwanted side-effects in other functionality, that I might have missed (since I'm new to MuseScore and have only used a small subset of its features).
> For the sake of completeness, I've also added an icon. It's quite uninspired, but was the only thing I could come up with to get the point across. Feel free to change it (or anything else) as needed.
> Hello, and welcome! I'm not sure I totally understand the value of not having the cursor, but I'm not opposed to providing this is a convincing case can be made for the value of it. Would you still want it to turn the page automatically? What if it still highlighted the notes by coloring them but didn't actually draw the cursor rectangle? Seems worth discussing on the forums first to see if there are others with similar requests. There are other requests having to do with how we present the score during playback, such as people who want the score to move continuously. Might be nice to simply combine all of these different behaviors into a single control that has multiple values.
> Hi and thanks for the quick reply. I should have been a little more specific about the reasoning behind the PR.
> As I've mentioned, I've been using MuseScore to practice on the classical guitar, which I've been playing for some time, but using tablature, so that I'm a complete novice with respect to reading musical notation. I started using MuseScore, to substitute for a second guitar, as the lessons were in the form of duets, but quickly found out it can substitute for a lectern, sheet music and everything else one needs to practice.
> After using it for a couple of weeks, I started noticing that I might often be depending on the cursor showing me where and when to play and counting for me. For instance I might lose count and use the cursor to carry on, or I might subconciously just look at the cursor and forget to count altogether. As you might suspect, none of these observations were very exact, as it's hard to be sure of what you're doing, when you're concetrating hard on something you're not very good at. The concern though, was that the cursor might interfere with rhythmic training over the long run, by making me dependent on such an aid for proper timing, making my counting/timing less precise, slowing down progress, or something along these lines.
> So, to answer your questions, it's hard to know what exactly I'd need to turn off, if anything at all. I can't really know whether the cursor will hinder or help learning to read music and, after turning it off, I don't notice any "withdrawal symptoms" although I haven't been using it for long enough to depend on it. The idea was that, since the tried and true method of music training doesn't include a cursor, or highlighted notes, the safest bet would be to turn such aids off.
> Turning the page automatically is more a matter of convenience and I can't see how it could interfere with the learning process. I suppose turning the page yourself might be a necessary skill during live performances and having such an aid might make you lazier in practicing it, but this is far from being a concern for me and besides, panning is selectable.
> In the end, if noone has requested this feature until now (and I could find anything in the forums), perhaps I'm just being unduly concerned and it's not very useful in general. I'd be happy to keep my own patched version of MuseScore in such a case (which I'd have to do for a long time anyway, until the new version containing the feature got packaged for Debian stable).
> I have a totally different reason for not wanting a cursor... using MuseScore with an e-ink display!
> The ONYX BOOX MAX 2 is an almost A4 sized e-ink tablet which runs Android 6. It really is Android (not a crippled OEM version that ties you in to a Kindle-like store, cough GVIDO cough) so you can install any Android application. Unlike most e-readers, it even has audio-out and (get this!) HDMI-in (!?!?!) so you can use it as a display for any device that outputs HDMI (e.g. a second monitor for a laptop).
> I'm lucky enough to own a MAX 2, so naturally I installed MuseScore on it! The app runs fine (or as well as can be expected on an e-ink device) but during playback there is a noticeable lag between a note being sounded and the e-ink display being updated (i.e. the sound comes first). The cursor also jumps around because the e-ink display is not suited for continuous motion. The lag could be fixed by delaying the audio, but the motion problem requires disabling the cursor altogether.
> Interestingly, the MuseScore website works better than the app on MAX 2, because the website highlights the entire measure rather than a single note, which leads to my next suggestion:
> Perhaps having an option to highlight the measure would be a better solution than disabling the cursor altogether? Even for the OP's use-case of learning to read music, highlighting the measure helps you to see roughly where you are (so you don't get lost) without giving the game away entirely. (I can see this being useful if MuseScore ever gets a "play along" mode that listens to you perform the piece yourself and turns pages for you; you'd want to know that MuseScore has some idea where you are in the score, without the distraction of a moving cursor).