Actually anyone can generate graphical subs right now – Project Threepio is more than just the subs, it’s the whole subtitling toolkit I use to create them. Creating the graphical subs does require some technical expertise, computing power, and patience, however. So I do a basic batch that should cover most needs. But there’s utilities in there to re-time them to Puggo and do all kinds of crazy extra things that aren’t provided out of the box. Check out the README, it’s actually pretty comprehensive.
As for speed, well, graphical subtitles are just images, so compare rendering them to rendering a movie (as in rendering images from scratch like Pixar, not processing existing images like applying color correction to an existing image). So a full set of subtitles for all films in all languages is approximately 150,000 images, and right now I render them at 1080p. That’s approximately rendering a full feature-length film of 1080p images, albeit simple ones and not taking up the whole frame. But there’s more to it than that. The software I use to render the text has some quirks I need to work around (I chose it because other software had quirks I could not work around). To avoid aliasing, I actually render the text at 4K, then resize it to 1080p (which means for 4K, I’d render at 8K… yeesh!). Then it attempts this subpixel antialiasing thing which results in a colorful fringe around all the letters (would be good if it aligned to actual subpixels, but it doesn’t), so I convert everything to grayscale and back to erase that. Then there’s the more obvious post-processing – drop shadows and such. And some weird stuff I do for custom line spacing and text justification, and so on. The code is… convoluted. Anyway, it all adds up, and also I’m fully willing to believe I didn’t write the world’s most efficient code. And that maybe my computer is also not a technical marvel of modern computing power. But it’s actually a pretty complicated process.
And compared to how things used to be, it’s great. I used to have to click through every subtitle file in a piece of software, render it, and move on to the next one (I didn’t do as many languages back then). When I slept, nothing got rendered until I woke up again and started clicking through it. Now, I just kick off the process one day, leave the computer alone for eight days, come back, and it’s done. If you just want to render one language instead of all of them, as most people would, it’s actually not bad at all.
But as for 4K, I’m glad to hear we can afford to wait a while at least. I’ll get ready for it, but I can’t say I’m really looking forward to it. 😕