If each song is a different scene, you might use the Advanced Scene Switcher plugin to switch from one to the next, and show/hide a text source in that scene that has the relevant information.
This plugin will allow you to automate various tasks using "Macros". Macros consist of a list of conditions under which a list of actions will be performed. Examples and guides can be found in the wiki. Feel free to contribute! If you run...
obsproject.com
When you add or remove a song, you'll need to add or remove the corresponding Song X macro, both in the list on the left and in the Random action of the Switch Songs macro. Each scene is expected to have a video for the song itself, and a text source for the meta info. The names of the sources don't matter.
The idea here is that the main macro triggers when the currently playing song has 1/2-second remaining. It picks a random other macro to run, from the Random list, which switches to the next one with a 1/2-second transition to match the 1/2-second remaining. Then the main one shows the text source on that one, whichever it is, waits to be able to read it, and hides it again.
If you want a specific sequence, not random, then you can replace the Random action with a Sequence action. Otherwise the same.
If you want to switch between Sequence and Random, you'll need to have both present, and use the switch at the top left of each one to disable the one you don't want. Changing an action loses all of its settings, but disabling keeps them and simply skips over it.
If it shows/hides the wrong one (might appear to simply not show at all), you might need to check the "Wait for complete" box in the switching macros, and/or add a Wait to the main macro so that it's shown after the main transition is complete.
Since the trigger time is so close to something critical (only 500ms from end of song), you should probably run the "Check every" setting all the way down. It takes a *little* bit more CPU load that way, but if that's a problem, then you probably have other issues anyway.
My old version only goes down to 50ms, but the latest I believe will do 10ms. Just run it all the way down.
---
Poke around Adv. SS and see what else you find useful. It does a LOT!