Resource icon

[Windows] Now Playing OSD with foobar2000

(This is an updated and simplified from this classic guide. Thanks to the original creator.)

This guide assumes you already have foobar2000 installed and have configured it as you like it. There's a world of other tutorials that will get you to that point if you're not there yet; start there, and come back once you're ready.

  1. Install Skipy Rich's Now Playing plugin for foobar2000:

    1. Download Skipy Rich's Now Playing plugin.

    2. Extract the archive.

    3. Open foobar2000's Preferences window and click 'Components' on the left.

    4. Drag and drop the .DLL file from the archive into the window. Click Apply and restart when prompted. When foobar2000 re-launches, move on to the next step.

  2. Configure the plugin:

    1. Open foobar2000's Preferences window. On the left, under Tools, click 'Now Playing Simple'.

    2. Ensure the following settings are configured as detailed below:

      • 'Save to file' is checked, set the path to something reasonable (I used '%AppData%\foobar2000\now-playing.txt'). Encoding should be 'UTF-8 with header'. Log mode and Delay should be unchecked.

      • 'Copy to clipboard' is unchecked.

      • Click the Events button to show when the text file is updated. All options should be checked with the exception of 'On every second'. If you experiment with 'On every second', I would ensure your text file is not being written to an SSD.

      • Use the Formatting String field to configure what data is output into the text file. The box below the field will render a sample based on whatever foobar2000 is currently doing. I've included an example below that looks similar to the MTV music video titling format that will disappear when playback is paused or stopped:

        $if($not(%ispaused%),$if(%isplaying%,%artist%$crlf()"%title%"$crlf()%album%',' $padcut(%date%,4),)))

      • The 'on exit' field will catch foobar2000's shutdown event and write this message to the text file. Set as desired, or blank it out if you don't want anything displayed when foobar2000 isn't running.
    3. Once you're satisfied with your configuration, click OK to accept the changes and close the Preferences window.

  3. Configure OBS:

    1. In a scene where you want the Now Playing OSD to appear, add a new 'Text (GDI+)' source. Open its Properties sheet.

    2. Check the 'Read from file' checkbox. To the right of the 'Text File (UTF-8)' field, click the Browse button and locate the file you configured the plugin to create. (If it doesn't exist, try doing something that would trigger the plugin to write to the file, like starting playback or changing tracks).

    3. Configure the remaining settings and position the source as desired.
First release
Last update
0.00 star(s) 0 ratings