Displaying On-screen Music Titles in OBS via MusicBee

This is something of a companion to my past blog about displaying on-screen music titles in foobar2000. I recommend looking at both and deciding on which program you prefer.

Getting Started

Displaying the Song Title and Artist On-stream

In MusicBee, go to Edit Preferences > Plugins, then look for the “Configure” button under “Now Playing to Text File”. You’ll get a screen similar to this:

Tags will be added one after the other with the separator you choose, and can include spaces. Keep in mind that you’ll likely want separator text, otherwise the tags will all run one after the other without spaces in between.

Set the song title as a source in OBS

Under “Sources,” go to Add > Text (GDI+) to add a new text source.

Ensure “Read from file” is checked, then click the “Browse” button next to “Text File.” Navigate to the text file listed as Tags file (this is usually under %appdata%/Roaming/MusicBee by default) .

Play some music in MusicBee if you aren’t doing so already. You should now see the text source display the title of the song!

How to make the song title pretty and add cool effects

Some of this is just messing with the font, font size, or adding an outline, but you can also right click on the text source and select “Filters” to add different effects. It’s really up to you how you want to present the text at this point!

In my own layout, I do a few things to help the text pop:

  1. Add a “Text Scroll” effect via “Filters” to have the text constantly moving at a fixed rate. If you want text to scroll horizontally across the screen, set “Horizontal Speed” to whatever rate feels good to you. Make sure “Loop” is checked, too, or the text will only display once until the scene is reloaded.
  2. Create a second text layer that’s slightly offset from the layer above it to create a drop shadow or background effect.
  3. Use the “Transform” tool (right click on the Text source > Transform) to set it at an angle. Place the edges of the text box off-screen to create the appearance of a seamless loop.