BPM field in Play Panel is not immediately synced

• Dec 18, 2015 - 19:41
Reported version
S4 - Minor

OS: Mac OS X 10.9.5
Version: Unstable Pre-Release for Version 2.1.0
Revision: c012358

Expected behavior: In the play panel, if tempo is 120bpm while the percentage reads 100%, a change to 90% should cause the tempoLabel to read 108bpm.

Actual behavior: When the percentage is changed, the slider moves appropriately but the value displayed by tempoLabel remains the same.

Steps to reproduce:

1.) With a score open, click the ''View' menu.
2.) Click 'Play panel'
3.) Highlight the '100%' shown in relTempoBox and replace it with some other percentage.

At this point, you witness the unexpected behavior referenced above.


Confirmed. To be clear, moving the slider works fine, but clicking in the percentage box then using up/down arrows, or typing a new value, does not. The percentage value within the box changes but the slider and the BPM display remain unchanged until you actually start playback. At that point everything is updated correctly.

Also, are you vounteering to fix this? If so, great, otherwise, you might want to unassign yourself or no one else will be likely to look into it :-)

Marc & Jojo,

Yeah, I'm going to start working on this today. I'm not familiar with the codebase, and this will be my first commit (assuming the pull request is accepted), but I'll try not to make any mistakes.

Fantastic, always great to see new contributors! Good luck!

I'm guessing the problem will turn out to be that the BPM value is only updated in the callback for the slider, not for the percentage box. Could be more subtle than that, though.

Just to make sure I'm on the right track here, this is how I think the tempo change aspect of the play panel should work

Let say our score has a tempo of 120bpm:

1.) Open play panel and type 80% in place of the 100%
2.) Tempo label changes to 96bpm
3.) Close play panel, and do not save score
4.) Re-open play panel to see that tempoLabel still reads 96bpm, and relTempoBox still reads 80%


(repeat steps 1 and 2)
3.) Close play panel, and save score
4.) Re-open play panel to see that tempoLabel still reads 96bpm, and relTempoBox reads 100%

As far as I know, changes in the play panel are *not* supposed to be saved. So on reload, all should be back as it was before. The play panel is meant for temporary overrides to the tempos (remember, there might be multiple tempos in the piece).

Got it. That makes sense

For some reason I was under the impression that the play panel was where the tempo for the entire piece was set

That wouldn't help the human musicians reading the score :-). Anyhow, it's been suggested we should scrap the display of actual tempo in BPM entirely, since it really is based only on the initial tempo of the puece and doesn't reflect any of the changes that might occur throughout the score.

"…it really is based only on the initial tempo of the puece and doesn't reflect any of the changes that might occur throughout the score."

That doesn't seem to be the case to me. When I try it, the value in the Play Panel changes accordingly as the playhead moves across a tempo change.

Not to me, no, but I can see why it has been suggested. It would also drastically cut down on the number of cases of people errornouesly trying to use the Play Panel to set the basic tempo for a piece rather than using Tempo Text. With no BPM value displayed, they might clue in quicker that maybe they are looking in the wrong place.

I think it's quite useful, though—it lets you know that at 65% of 72 BPM the tempo is 47 BPM, which is not something I would want to have to do in my head or via a calculator. ;-)

Title tempoLabel on play panel does not update when percentage in relTempoBox is changed BPM field in Play Panel

[Note: This comment should have been in reply to Marc's item #13]

My search didn't turn up that thread or I would post my comment there ...

I'd rather see the word "override" added to the Play Panel label for BPM (and Volume?) than to have the numeric field emoved. I use that field a lot.

Having said that, I have to agree that the existing behavior is confusing enough to beginners that it needs to be addressed. I think a different GUI tweak is the best way to address it. But it should be addressed.

I think the tempo concept is probably quite confusing to the uninitiated. It may be worth discussing (via a new thread) how best to report the different kinds of tempos:

- Written tempo vs Actual tempo (score vs Play Panel)
- Beats-per-minute vs Quarter-notes-per-minute (or eighth-note, etc.)
- Relative vs Absolute (Accel. vs Allegretto, etc.)
- Changes due to the time signature ("crotchet equals minim")

(Confusion is hardly surprising when you consider that, interestingly, in many of these cases standard practice for musicians is the opposite of what would appear to make most sense physically or mathematically. Music theory often seems to emphasise written notation over actual audible effect, even though many aspects of notation have no audible effect (e.g enharmonics).

In terms of tempos, look at Example 1 in the link above. The change from 4/4 to 2/2 is labelled as "Double time, old crotchet equals new minim". However, physically the "tempo" in BPM has not changed, and to a computer scientist it would make more sense to write "new minim equals old crotchet" because it is a assignment.)

In reply to by System Message

Status (old) closed active
Status closed active

I have started testing 2.2 072c135 and I'm going through closed issues. This one seems to not be properly fixed.

If you change the % and press enter the display disappears. If you alt-Tab to another program and alt-Tab back it displays the proper BMP. I'm on Window 10.