Hello,
Yes, you CAN change tempo in real time, but not sure how practical this will be.
Tempo is usually set at the start of a piece, but it is often changed during a piece - I certainly have midi files that change tempo during playback. I don't know how the tempo change has been activated mind you. Maybe there are controllers that can do this?
The change tempo code comprises a data sequence (hex) FF, 51, 03 followed by a number for the new tempo, not sure if this is two bytes or a variable number of bytes, I'll have to dig further regarding this. The tempo number is the number of micro seconds per quarter note, or the number of 24ths of a micro second per midi clock. The actual effect of this number will vary dependent on other midi settings, for example the time signature set.
Depending on what sort of tempo changes you wish to implement, you'd need significant numbers, i.e. 1 or two would make almost no difference, even 100 might not be noticeable. You're not sending a change, but the new absolute number, so something (software) would need to keep track of the previous number (i.e. 2000) so that the next event would be 2100 to slightly increase the tempo.
Certainly possible to write a prog to do this, or to do something within an existing midi file, but not sure how a controller would do it. Or if there is something that can do it.
Your Google search should include MIDI CONTROLLER CHANGE TEMPO.
I'll see if I can find anything more.
Geoff