I want a map of tempo and time signature vs. time, over the timeline as a DAW project plays and completes. I am aware that I can fill in an AudioPlayHead::CurrentPositionInfo object in processBlock() each time that processBlock() is called, and get the currentPositionInfo.bpm, currentPositionInfo.timeSigNumerator, and currentPositionInfo.timeSigDenominator values at the current moment currentPositionInfo.timeInSamples.
My question is: is there any other way to get this info and obtain this map besides waiting for processBlock() to run and building my own map?
I am pretty certain that I know the answer to this question, but I can’t help wonder if I have missed something.
In general this is not possible, but I do believe the ARA Audio Random Access sdk should enable you to get the information from hosts that support that.
There is a special ARA juce fork. I have never used it, but getting the entire time information somehow needs to be possible to make audio random access make sense. Maybe some of the JUCE_ARA users can chime in.