No updates, just wanted to keep you posted on current developments. Right now I’m in the middle of a minor revamp of text rendering.
All the versions I’ve posted here so far assemble the final subtitle text comprising multiple lines by essentially adding a line break and redrawing the entire text (while trying to be smart about it) based on what audio sources are currently active (or in the case of dynamic captions, changing text while audio is playing).
This has two drawbacks: firstly, this can cause rapid transitions when a new line of text starts before the previous one ends. This can be observed in the first Manhattan bar scene after Trent rather politely joins Juni’s conversation. While this could be hidden by cutting short or delaying certain captions, it’s not ideal, so I’m looking to make each line’s position fixed for their lifetimes. This has some quirks to work out, like what happens if you have a three-line text area with the middle line occupied and a large two-liner caption is about to appear.
The second drawback is that this setup makes it hard to assign multiple audio sources to the same line (which is exactly what happens when you’re being hailed), or one audio source to multiple lines at the same time (as long as they’re not overlapping, which is exactly what dynamic captions were doing). I was trying to implement some kind of hand-over, whereby these audio chunks would contribute text to a special 0th line reserved for this, but this ended up being too hacky.