• Hi and welcome to the Studio One User Forum!

    Please note that this is an independent, user-driven forum and is not endorsed by, affiliated with, or maintained by PreSonus. Learn more in the Welcome thread!

SongLens, a free/open-source Windows desktop tool for browsing metadata from PreSonus Studio One 7 and Fender Studio 8 `.song` files.

Doc McCoy

Member
Hi all,

I just posted the first public release of SongLens, a free/open-source Windows desktop tool for browsing metadata from PreSonus Studio One 7 and Fender Studio 8 `.song` files.

It may also work with older versions, but I haven’t been able to test that myself.

I built this because I’ve got 200+ songs and got tired of trying to remember what was in each project. For years I’ve hated having to launch Studio One or Fender Studio and open the song just to figure out what it actually was. My goal was to stop relying on a spreadsheet and start using the song/session information already stored in the project files. For me, it’s already replaced that workflow.

SongLens is currently a Windows desktop app, targeting Win 11 x64

What it does:

- Fast folder browsing for song libraries
- Search across title, artist, tempo, key, year, comments, and notes
- Summary view, raw `metainfo.xml` view, track details, and history viewer
- Autosaved song filtering
- Light and dark theme support
- First-launch prompt for selecting your songs folder

What it does not do right now:

- Launch Studio One or Fender Studio directly from a `.song` file

There are just too many variables there for me to call that reliable yet.

If you want to learn more before downloading:

Download:

Note: Windows may show a SmartScreen warning on first launch since this is a new build. If you downloaded it from the official release page, you can click More info > Run anyway to continue.

This was built with help from Codex and is released as-is. I’m not promising active support or major future development, but if you try it and have suggestions, feel free to share them.

Thanks,
Doc
 
Last edited:
Hi all,

I just posted the first public release of SongLens, a free/open-source Windows desktop tool for browsing metadata from PreSonus Studio One 7 and Fender Studio 8 `.song` files.
Doc

Just downloaded the standalone and pointed it at a folder full of S1v7/SPv8 *.song files - nothing came back in the browser.

Not a lot of control in there so I am unsure what is not happening - but even on a single folder with a single song - I still get nothing.

VP
 
so you input your path to your song library and it didn't find anything?

Correct. Several paths in fact.

Here is a folder containing ALL my Active stuff at this time (don't let the dates influence anything - these are all v7/v8 "songs):

1778680339919.png


and regardless of which one I highlight - I get this

1778680416357.png


All these are in various states of construction. Some finished, others need work.

They all load perfectly into SP v8.0.3 and all have the usual documentation (Notes, track data) and of course plugins.

VP
 
Doc

Just downloaded the standalone and pointed it at a folder full of S1v7/SPv8 *.song files - nothing came back in the browser.

Not a lot of control in there so I am unsure what is not happening - but even on a single folder with a single song - I still get nothing.

VP
well shoot. I do see that you are Windows 10 Pro. I don't know whether that's the cause, but it is bundled specifically for Win 11 x64. Let's see what any others experience and go from there
 
well shoot. I do see that you are Windows 10 Pro. I don't know whether that's the cause, but it is bundled specifically for Win 11 x64. Let's see what any others experience and go from there

Yes - Windows 10 22H2 here - with all the most recent .NET/Visual C++ redistbutables etc.

I am (finally) going Windows 11 later this summer but as of now - I am where I am.

Will keep an eye of this thread.

And congrats on the tool! For my upcoming new DAW build - this would be right up my alley for intel gathering purposes.

Cheers!

VP
 
Correct. Several paths in fact.

Here is a folder containing ALL my Active stuff at this time (don't let the dates influence anything - these are all v7/v8 "songs):

View attachment 3455

and regardless of which one I highlight - I get this

View attachment 3456

All these are in various states of construction. Some finished, others need work.

They all load perfectly into SP v8.0.3 and all have the usual documentation (Notes, track data) and of course plugins.

VP
Doesn't look like WIn 10. What happens if you click Expand? Are there subfolders under those dated ones or are the songs in the dated folders?
 
Last edited:
Doesn't look like WIn 10. What happens if you click Expand?
I see a few "history" folders show themselves on various tracks - but when I highlight the first track and then use the Down arrow on the keyboard to select any main song folder in the "expanded" tree - no actual data appears for any highlighted song in the "tabbed" area in the lower right.

VP
 
I see a few "history" folders show themselves on various tracks - but when I highlight the first track and then use the Down arrow on the keyboard to select any main song folder in the "expanded" tree - no actual data appears for any highlighted song in the "tabbed" area in the lower right.

VP
try using the search and look for a song name, tempo, key, etc... and send the screenshot. I've traced the code and the only occasion that "0" found message should occur is when it can't find a .song in the folder you select. Still checking though.... Apologies for the problem and thanks for your help and patience.
 
Last edited:
try using the search and look for a song name, tempo, key, etc... and send the screenshot. I've traced the code and the only occasion that "0" found message should occur is when it can't find a .song in the folder you select. Still checking though.... Apologies for the problem and thanks for your help and patience.
I will go you one better..

Here is a voiceover session from 16 minutes ago:

1778682746801.png


And the folder structure (with resulting *.song file right in there)...

1778682771179.png


And the SongLens view of that exact location:

1778682962979.png


Nada.

VP
 
This is helpful. I'm curious about the blocked out part of your path in #3. Could you DM me your full path so I can recreate your file structure here?
Unfortunately - I cannot reveal client names.

You will need to recreate your paths - minus those.

But I tested that as well - did not matter.

VP
 
Understood. I know this is getting tedious but did Search fail to return anything as well?
Tried everything that I could think of in the Search field - nothing came back.

VP
 
Tried everything that I could think of in the Search field - nothing came back.

VP
nada again. I took a shot at recreating your path, including the possibility of adding a special character thinking maybe that could be an issue. However, when I walked it down to the .song level up popped the metadata. I'm pretty sure now that this has nothing to do with it, but let me know if I was close on the path or anything I should do differently. I know it doesn't help, but I'm really beginning to suspect Win 10.

I have some research to do....

1778689512861.png
 
nada again. I took a shot at recreating your path, including the possibility of adding a special character thinking maybe that could be an issue. However, when I walked it down to the .song level up popped the metadata. I'm pretty sure now that this has nothing to do with it, but let me know if I was close on the path or anything I should do differently. I know it doesn't help, but I'm really beginning to suspect Win 10.

I have some research to do....

View attachment 3463

Just tested in deep paths and very short paths - like D:\Downloads - still nothing.

Let me know what you discover.

VP
 
Just tested in deep paths and very short paths - like D:\Downloads - still nothing.

Let me know what you discover.

VP
I just added some more diagnostic logging into the app. If you're game, the file is in the same place but the file you want is the 1.0.1 version. You'll need to uninstall the version on you machine first and then install the 1.0.1 version.

Sadly this trip around the horn will likely not produce different results for you, but it will hopefully shine a light on the problem through the logging I've put in place. When you test 1.0.1, try a couple of different folders, maybe some differing naming schemes as well. When you're done send me the 3 .log files located at %LocalAppData%\SongLens (just paste that into File Explorer and it will take you to the right place). With a little skill and lot of luck, this exercise will point out why SongLens refuses to work for you. I know you're busy so no rush.
 
When you're done send me the 3 .log files located at %LocalAppData%\SongLens (just paste that into File Explorer and it will take you to the right place).

Your code is referencing an entity that has not been properly declared.

This identical error block repeats in the diagnostic log - every time a *.song file is parsed:

System.Xml.XmlException: Reference to undeclared entity 'copy'. Line 29, position 42.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.HandleGeneralEntityReference(String name, Boolean isInAttributeValue, Boolean pushFakeEntityIfNullResolver, Int32 entityStartLinePos)
at System.Xml.XmlTextReaderImpl.HandleEntityReference(Boolean isInAttributeValue, EntityExpandType expandType, Int32& charRefEndPos)
at System.Xml.XmlTextReaderImpl.ParseAttributeValueSlow(Int32 curPos, Char quoteChar, NodeData attr)
at System.Xml.XmlTextReaderImpl.ParseAttributes()
at System.Xml.XmlTextReaderImpl.ParseElement()
at System.Xml.XmlTextReaderImpl.ParseElementContent()
at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r)
at System.Xml.Linq.XDocument.Load(XmlReader reader, LoadOptions options)
at System.Xml.Linq.XDocument.Load(Stream stream, LoadOptions options)
at SongMetainfoBrowser.App.SongMetadataReader.Read(String songPath)
at SongMetainfoBrowser.App.MainForm.LoadSongsForFolder(String folderPath)

And - I only see two log files at that location above - "diagnostic.log" and "startup.log"

The other file is a*.json file - which just contains "grid" info.

VP
 
This was extremely helpful. I may have a fix for you with 1.0.2 https://github.com/askinner432/SongLens/releases/tag/v1.0.0

Same deal as before, uninstall, download 1.0.2, run and test. I suggest you delete the 3 files in %LocalAppData%\SongLens so we start fresh with the logging. When you're done then attach the diagnostics.log file in your response so I can see everything it's encountering. I'm feeling optimistic (for what it's worth). Once again, only when you have time....
 
When you're done then attach the diagnostics.log file in your response so I can see everything it's encountering. I'm feeling optimistic (for what it's worth). Once again, only when you have time....

No need for logs now - good to go!

All songs load up just fine. Can see all the attributes etc.

Now - if there was just some way to export this stuff...(heh heh)... like to *csv maybe...

VP
 
No need for logs now - good to go!

All songs load up just fine. Can see all the attributes etc.

Now - if there was just some way to export this stuff...(heh heh)... like to *csv maybe...

VP
Thanks for sticking with it. Since there has been almost no interest in the app, I appreciate you giving it a go and hanging in there. If you're interested, even if you're not, that "&copy" error was unhandled because I never expected it. It's not in any of my 7/8 files. Essentially what was happening is that the program was hitting something it wasn't prepared for and just skipping EVERY .song. I built 1.0.2 to be more resilient. I'll look into .CSV. and....thanks again for the help
 
Back
Top