Supported Bit Versions
  1. 32-bit
  2. 64-bit
Source Code URL
https://git.vrsal.xyz/alex/tuna
Minimum OBS Studio Version
28.0.0
Supported Platforms
  1. Windows
  2. Linux
Tuna
WoSty1N.png
Lets you display information about the currently playing song in obs without running a separate program.
Currently supports these music sources:
  • Spotify (All song information (except for song label), including Cover art)
  • MPD (All song information*, including Cover art)
  • VLC Video source (All song information*, including Cover art)
  • last.fm scrobbling Cover art, some song information)
  • MPRIS and Windows Media control, i.e. most media players (Cover art, some song information)
  • YouTube Music Desktop App (Cover art, some song information)
  • Window title/process name (additional formatting, like cutting characters)
  • Soundcloud, Yandex Music and Spotify Web Player via the tampermonkey script
*as long as the files are tagged correctly, check with mp3tag.de or kid3.kde.org. Will also extract lyrics if a tag with the same name exists.

How does this work?
A basic part of this plugin is the ability of OBS to load both image and text files from disk. If you do not know how that works it is strongly recommended that you familiarize yourself with both the image and text source first:

The first step is to install the plugin for which you'll have to follow the installation steps for your platform:
Windows
Either run the installer or follow these steps:
  1. Open your obs-studio installation folder (eg. Right click on the shortcut and click "Open file location")
  2. Navigate two directories up
  3. Drop the contents of the zip file (a "data" and "obs-plugins" folder) into the obs-studio directory
  4. Merge the files
  5. Tuna should now show up in the tools menu of obs-studio
Linux
If you use a Debian based distro you can use the installer, all other distros currently have to either build the plugin from source or extract the binaries from the debian installer and move them into the correct folders themselves. If you use the flatpak version of obs I can't help you as I have no experience with it. There have been reports that the plugin does not load with the flatpak version.

After you've installed the plugin you should see a new option in the Tools menu:
Screenshot_20220827_121710.png
If it does not show up it means that either the plugin wasn't installed correctly or that OBS couldn't load it. In that case an obs studio log is necessary to help fix the issue.
After you click on the menu this dialog will open:
Screenshot_20220827_121035.png

  1. This is the path to which Tuna saves the cover of the currently playing song. You can leave the default or change it via the "..."-button to a different path if you want. Just remember it later when you add an image source for the cover.
  2. If you uncheck this checkbox Tuna will not download the cover of the currently playing song
  3. If you check this option Tuna will attempt to look for covers by querying Apple's iTunes servers. This will use the album and artist of the currently playing song to search for matching album art. This means that the art that is found might not be exact. You can also choose the resolution that should be downloaded.
  4. If this option is enabled Tuna will remove file extensions from song titles (e.g. .mp3, .wav, .flac etc.). This is useful if you play music through the VLC Source and the songs do not have any metadata saved. In that case VLC will use the entire filename as the title, including the file extension.
  5. With these buttons you can add, remove and edit format outputs. They'll be described shortly.
  6. Enable this option if you want to use the user script which allows Tuna to receive song information from your web browser or if you want to use the browser widget.
  7. All output text files will contain this text if nothing is playing
  8. Here you can switch between the different supported music sources. Tuna will use the selected one to look for the currently playing song.
  9. This is the rate at which Tuna will refresh song information
  10. With these buttons you can start and stop Tuna. If the plugin is stopped it will not look for song information and it will not update the outputs.

What are song outputs?
Since the information is displayed through text sources, which read text from files on your computer you have to configure Tuna to tell it to create these text files and what should be in them. In the main dialog under the "Basics" Tab you can add, edit and remove outputs:
Screenshot_20220827_123844.png

Adding or editing outputs will show this dialog:
Screenshot_20220827_124030.png

The first option defines where the information is going to be saved. Click the "..."-button to select a file path. After that you have to define what information the text file is going to contain. The dialog gives you all options that are supported by Tuna, but keep in mind that not every music source provides all information.

If you want to display the artist and the song title you would enter "{artists} - {title}" into the textbox at the bottom without the quotes. {artists} and {title} will be replaced by the artists and the title of the currently playing song. So the text file would for example contain "Rick Astley - Never Gonna Give You Up". If a song features multiple artists it will list all of them separated by commas. If you only want the first artist to show up you would use {first_artist}. If you use a formatting option that isn't supported by the currently selected music source the plugin will notify you.

The plugin also has the option to capitalize all letters. If you use {TITLE} instead of {title} the file would contain "Rick Astley - NEVER GONNA GIVE YOU UP". You can also limit formatting options to a certain amount of characters. {TITLE:10} would make sure that the song title will be cut off after ten characters so the file would contain "Rick Astley - NEVER GONN...".

If the "Chat log mode" option is enabled Tuna will append the currently playing song at the end of the file so if you are currently paying "Never Gonna Give You Up" and then switched to "Whenever You Need Somebody" the file would contain:
Rick Astley - Never Gonna Give You Up
Rick Astley - Whenever You Need Somebody

When you've set up the output click "OK" to save it. Then click "Apply" in the main dialog to apply the changes.

How do I display the information?
After you've setup the cover path and the song outputs it's time to setup the music source. Here you can find tutorials for the supported sources:
If the information refreshes slowly, you'll have to use your own API Credentials:
To use the Spotify source follow these steps:
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "Spotify" as the music source
  4. Select the "Spotify" tab
  5. Click "Open login page" and accept the info message (might also wanna read it)
  6. Verify the URL, login and grant access
  7. Copy the code into the "Authentication code" field
  8. Click "Request token"
  9. That should be it, if there were errors they will be logged in the textbox under "Response log"
If you experience issues at some point, you can click "Perform refresh" to request a new token, or completely login again by clicking "Open login page" again.
If you continuously experience login issues, make sure that
  1. You have the latest version
  2. The Spotify servers aren't down or the API isn't rate limited (you can check by looking at the obs studio log)
  3. You cleared your cookies for the login page univrsal.github.io (using incognito mode also works)
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "MPD" as the music source
  4. Select the "MPD" tab
  5. Enter the MPD server IP and port (or select local connection)
Only works with VLC >=3.0.0
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "VLC" as the music source
  4. Select the "VLC" tab
  5. (Click refresh if your source doesn't show up)
  6. Select the scene from the drop-down menu
  7. Select the VLC source from the drop-down menu
  8. Click add
This currently doesn't work if your VLC source is in a group or otherwise nested. The hotkeys for switching can be configured in the hotkeys tab in the settings dialog of obs.
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "Web browser" as the music source
  4. Make sure that "Host/receive infromation on local webserver with port:" is checked
  5. Enable the tuna plugin in the youtube music application
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "MPRIS" or "Windows Media Control" as the music source
MPRIS only works with supported players (Web browsers, VLC, Cantata or similar). The same goes for Windows Media Control, if you can see the information in the lock screen it should work.
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "Window title" as the music source
  4. Select the "Window title" tab
  5. Enter any search term (e.g. Firefox, to search for any window that contains the word Firefox)
  6. Optionally add a search and replace term and/or cut the first or last characters
  1. Click on "Tools" at the top of the obs window
  2. Select "Tuna settings"
  3. Select "last.fm" as the music source
  4. Select the "last.fm" tab
  5. Enter your last.fm user name and if you have it your own api key
Basically just enter the server url and make sure that the server provides information via a status-json.xsl.

Now that you've setup the correct output and selected it in the basics tab you can add an image source for the cover:
Screenshot_20220827_130744.png

and as many text sources as you have configured song outputs:
Screenshot_20220827_130915.png

You can also drag and drop text and image files into obs studio to automatically create the sources.

How do I change the placeholder cover?
The placeholder image is saved under C:\Program Files\obs-studio\data\obs-plugins\tuna\placeholder.png or ~/.config/obs-studio/plugins/tuna/data/placeholder.png. It can be replaced with a transparent png if you don't want anything to show when nothing is playing.

Additional features
YGFyjcu.png
Open or close the dock by selecting View > Docks > Music control. You can also close the dock via the 'x' button when it's undocked or the UI is unlocked. Rightclick anywhere in the dock window to set what information you want displayed.
  • 2019-08-11_23-32.png
    2019-08-11_23-32.png
    926.8 KB · Views: 24,610
  • Screenshot_20200219_022639.jpg
    Screenshot_20200219_022639.jpg
    252.5 KB · Views: 37,454
  • Screenshot_20201013_230446.jpg
    Screenshot_20201013_230446.jpg
    249.8 KB · Views: 140,710
  • Screenshot_20220827_120915.png
    Screenshot_20220827_120915.png
    74.8 KB · Views: 5,524
Author
universallp
Downloads
166,341
Views
345,850
First release
Last update
Rating
4.48 star(s) 40 ratings

More resources from universallp

Latest updates

  1. Translation update and small fix

    Updated Chinese translation Fix some issues where slow requests would freeze the ui Added some...
  2. Fixes, Playlist name and basic lyrics extraction

    Fixed an issue where the timeout for spotify commands would not reset Added the option to output...
  3. MPRIS, Windows Media Control and Youtube music

    Added support for MPRIS, Windows Media Control and fixed an issue with Youtube music. MPRIS and...

Latest reviews

Excellent, customizable and reliable plugin. Have been using for years.
[Spotify]:

I don't understand why it always happens after updating the plugin or OBS that some images are simply not displayed correctly or are not enlarged at all. Without updating the plugin or OBS you can jump so much and fast through the titles without having the slightest problem with the cover. But as soon as you update the plugin or OBS, every now and then the plugin doesn't feel like displaying the cover properly.
Hello universallp I have problems I can't see the file I created for the name of the music I can't enlarge it
I have problems I do not see the title or the title of the artist, only title and artists appear
universallp
universallp
It depends on what song source you are using and whether you have setup the outputs correctly.
Promising plugin apart from the fact that the Album Icon resizing each time a new song is playing and the delay updating info that bugs me.

Any suggestions or fixes I might not be aware of?
universallp
universallp
Setting the bounding box type of the image source will correctly resize the cover art. The delay is usually because Spotify limits the amount of requests that can be sent. Nothing I can do about that, you'll have to register your own Spotify app.
Very good plugin, what I would still be missing for 5 stars, would be, if the textbox in which the title is, is smaller than the title is long, the title would move in an animation. So that it runs through again and again, so that you can read it completely.
Configuration options are nice, but the plugin frequently stops displaying Spotify info despite showing that the plugin is connected and running. Album art is also inconsistently sized when using Spotify. I originally thought these issues were due to a conflicting connection caused by using Elgato Streamdeck Spotify controls, but avoiding the use of these controls has not resolved the issue.
The plugin is really more practical than what already exists and mixed with the Spectralizer plugin the visual experience is really satisfying. Unfortunately, when no sound is played, a square that is not very graphic appears. Would it be possible to hide it or choose a custom image?
universallp
universallp
If you're talking about the question mark image, see "How do I change the placeholder cover?" on the plugin page
Any plans on including Deezer in the supported apps?
universallp
universallp
Maybe once deezer has an API that allows for it. Otherwise you can already use it via the web player.
Best plugin for "now playing"
Widely configurable and easy to use.
Top