Hello!
To be honest, I think that having a reliable tempo system is a bit more than ‘ideal’ I think it’s pretty much ‘essential’ if you want to be doing anything interesting with music…! But given that that’s my thing - I suppose I probably would do…
Your ideas are good ones and would work for some situations, but I want to be able to create a system whereby I can specify transition times between different musical events (be these loops, stingers or transitions). So, yes you could just wait until the end of the loop, but if your loops are a reasonable length (in order to avoid a sense of repetition) then the delay between the context changing and the music changing to reflect this could be relatively long. If we had a reliable tempo system you could choose to apply the transition on either the bar line or even smaller beat sub-divisions depending on fast you wanted to respond and/or the musical material.
Cross-fading works very well for some applications although you do need to bear in mind the cost of having multiple long pieces of music all playing simultaneously. have you tried this yet? How does a fade time of 1ms work?
My initial concern with a fade time of this speed would be that given that things can only be processed/applied in terms of frame (deltatime) time and given the fact that 1ms is considerably shorter than frame time, this would produce the effect of the audio instantaneously jumping between volume levels, thus producing audible artefacts within the audio…
As far as I can tell the [Get Real World Time] and [Get Real Time Seconds] nodes are fairly accurate (although, I have found some very small inconsistencies between the two) I haven’t done too much in the way of rigorous testing… The main problem with checking all of this is that you can only check their outputs at frame time which is inconsistent!