I think the answer is no to the question but not sure
I guess when there is many changes in "BPM" in a midifile it is just used to calculate the events distance and when you change the BPM of track you recalculate it.
But then it do get confusing i have a midifile with changing in BPM all over the place "a piano piece", if you change the "playup" BPM all those BPM changes becomes fractions of their original values???
And if BPM is not a realtime change, how could sequensers interact "sync" when BPM changes?
I find it confusing to say the least, right now i just handle BPM as a pre calculation together with PPQ "before playup", but it seem a bit suspicious and probably wrong.
I can see now my question is a little confusing, but i mean the "note, program and CC events" are they calculated "using ticks ppq and bpm" before playup start.
Or are the BPM changes at time X calculated at time X, are there a message sent out at time X that says to peripherals that BPM changed?