Tim, that setup is FANTASTIC! That may be dinner and a drink when we meet!
I did take it a step further with some adaptations. My courses allow learners to auto start the audio, captions only, or audio and captions on each page. The jump/interval piece still worked beautifully, but I couldn’t get the audio to stop at the beginning of the first interval (i.e. stop at 4 seconds, since the first interval started there in your example).
Instead, I used timeupdate with a series of “if” statements to mark the pause points and the play points. It’s a bit ugly, especially if there are more than a couple of intervals, but it works whether the audio auto starts or the learner starts it manually. There may be a cleaner way to do it so I might take some time to see if I can further combine the solutions.
The other ugly part is that to get the pause, I had to use “>== && <==”. My suspicion is that it’s related to the nature of variable rate MP3s and how they are very rarely going to hit the EXACT value for seconds.