Instant search for custom lyrics metadata tag/property

If you are experiencing problems with "Everything", post here for assistance.
Post Reply
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Instant search for custom lyrics metadata tag/property

Post by warduweram »

Hey!

I've tried to find a way to pull off what I wanna do by going through the documentation and forum, but I wasn't able to figure it out with my low patience attitude, maybe one of you wizards can help me? :p

I add lyrics to my mp3's with Lyrics Finder, it adds a metadata field called lyrics or maybe uses an existing one off of Windows properties, I'm not sure. I wanna be able to instantly search for songs by parts of the lyrics. I've added the Lyrics field through the Windows properties in Everything (not sure it's the right one) and when I perform a custom tag: search, it starts scrubbing the files. Can I somehow limit the search for that specific lyrics field, so Everything only has to access the DB? And how do I make sure it is the right field?

This metadata/property/tag searching is extremely powerful, I'd really appreciate it if there was a way to do more granular searches. You're probably already working on it, so big kudos again, Everything is the shit. :D
NotNull
Posts: 5961
Joined: Wed May 24, 2017 9:22 pm

Re: Instant search for custom lyrics metadata tag/property

Post by NotNull »

To index song lyrics in Everything:
  • Go to Menu => Tools => Options => Indexes => Properties
  • Press the Add button
  • In the left pane of the Select Property window, select Windows Property System (at the bottom)
  • In the right pane, type lyrics in the Search field
  • Select Lyrics (Canonical Name: System.Music.Lyrics)
  • Press the OK button
  • Check and adjust the details for this property, like filetypes and folders to index.
  • Press the OK button
  • Give Everything some time to index the lyrics (progress bar will be shown in the statusbar)




To search for song lyrics "mah na mah na" in Everything, add the following to your searchquery:

Code: Select all

property-system:system.music.lyrics:"mah na mah na"
As that isn't very convenient to type out each time, consider creating an alias for property-system:system.music.lyrics:
  • Activate Everything's search bar
  • Type or paste
    /define lrc=property-system:system.music.lyrics:
  • Press ENTER
  • From now on you can search for
    lrc:"mah na mah na"
    instead
Instead of lrc, you can use another alias like lyrics too. As long as you don't use existing Everything names.



(bet you started singing to yourself when you read the lyrics, didn't you? :lol: )
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Re: Instant search for custom lyrics metadata tag/property

Post by warduweram »

Awesome, NotNull again, my hero! Thanks so much. I had added that specific property already, but I wasn't aware of how to query it.

Aye, I do it all the time, have a sound bite in my head, but I can't remember the song title, so I just search by lyrics. :D Everything enables so many workflows and is such a joy to use in general, it should be the first tool for the kids to learn after they turn on a computer for the first time. Oh wait, kids don't learn anything any more these days. :D
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Re: Instant search for custom lyrics metadata tag/property

Post by warduweram »

@NotNull

Sorry, but apparently it's gonna be a little bit more difficult. The lyrics mostly aren't in the lyrics field, but in the UNSYNCED LYRICS field, how can I add that? It's not in the Windows Property System anywhere. :D So ideally I'd want to search both fields in one go.
NotNull
Posts: 5961
Joined: Wed May 24, 2017 9:22 pm

Re: Instant search for custom lyrics metadata tag/property

Post by NotNull »

That is a bit strange .. I downloaded and installed MediaHuman Lyrics Finder specifically to find out where the lyrics would be written.
It was in the property mentioned above :?

OK, let's dig deeper...

- Type a search in Everything to find audio files with lyrics, for example
c: audio:

- Add the following to your search:
add-column:property-system:system.music.lyrics;property-system:system.music.synchronizedlyrics


2 extra columns will be added to the result list (you might have to scroll to bring them into view.
In which of these columns are (partial) lyrics shown? (hover the lyrics field to show more of the lyrics)
Or are there no lyrics visible at all in these columns?
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Re: Instant search for custom lyrics metadata tag/property

Post by warduweram »

There are very few lyrics in the lyrics section, none in the other. Also, if I use ext:mp3 instead of audio:, there are no lyrics at all. I think Lyrics Finder tries to get the regular, synced lyrics first, but if they aren't available online (since they need manual timing), it will just grab regular lyrics from any source and dump them into the <UNSYNCED LYRICS> (this is precisely how the field is named as per foobar2000) field. When checking the files manually in foobar, most seem to be of the UNSYNCED variant. So you'd need a song for which the timed lyrics don't exist. I can send you an mp3 if it helps, just let me know. Thanks for the effort!
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Re: Instant search for custom lyrics metadata tag/property

Post by warduweram »

I'd reckon it's not a legal system.property field, but something custom that's created by Lyrics Finder. I think I had to manually set foobar up to be able to recognize it.
NotNull
Posts: 5961
Joined: Wed May 24, 2017 9:22 pm

Re: Instant search for custom lyrics metadata tag/property

Post by NotNull »

As far as I remember, foobar saved lyrics in separate textfiles? Will have a look (one of these days)

But if the lyrics are not in one of these properties, the Everything has no way to access them. Currently, but that might change in the future when the location and structure of these properties is known.
Quite peculiar that I *do* find them. Will have a closer look as I really like your idea of indexing the lyrics.
NotNull
Posts: 5961
Joined: Wed May 24, 2017 9:22 pm

Re: Instant search for custom lyrics metadata tag/property

Post by NotNull »

warduweram wrote: Mon Feb 03, 2025 10:54 pm I'd reckon it's not a legal system.property field, but something custom that's created by Lyrics Finder.
That could explain it. I converted the setup to a portable "installation". So any shell integration it would like to install is not possible in that case.
Would not call illegal though; applications can add their own properties to Explorer, like for Word documents or PDF files.

If you right-click one of these files where you added lyrics (but are not reported by Everything), could you:
- select Properties
- Go through all tabs and see if any of them shows your lyrics?

If so:
- post a screenshot
- download ShellExView (by NirSoft, a reliable source)
(further instruction will follow later, but it's past midnight here)
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Re: Instant search for custom lyrics metadata tag/property

Post by warduweram »

Top o' the morning!

Aye, it was the same time here, I'm in Germany. Void is German, too, isn't he? So you might be as well, I guess. :D

Let's dig deeper into this.

First of all, the lyrics are in the files, not in separate files, this is how Lyrics Finder handles it, which I find much superior to separate (text) files, even if the music files are altered. The Windows property dialog is not gonna help in this case, there is no property called lyrics, you need another tool like foobar, MediaInfo or mp3tag to show the fields. In the case of the working Lyrics column as per your audio: add-column and so on instructions, the lyrics are only shown for the few .wma files I have (under system.music.lyrics), possibly because for some reason that property is not assigned to audio: in the case of mp3 for some reason? The wma files have another filetype icon assigned, too.

If I do a MediaInfo on one of the few wma files (for which the above Everything query works) the lyrics show up under the property WM/Lyrics (I can still make screenshots for you of course, but I think it's more helpful if I describe it like this, I'm not dumb in terms of these things, I just don't work with them all the time, so I might forget a detail or two after a while :D). The wma files also have special properties like WM/ProviderRating and WM/ProviderStyle, so I reckon that system.music.lyrics property only queries these WindowsMedia properties, not the ones Lyrics Finder uses. If I do a MediaInfo on an mp3 that is like most of my mp3s with unsynced lyrics, it shows the property as just Lyrics. mp3tag, though, shows it as UNSYNCEDLYRICS (if you do and Alt + T / View - Extended Tags...). foobar shows it as <UNSYNCED LYRICS> as I've mentioned before. I must have assigned it when getting the foo_uie_lyrics3 to work, here's the description of this foobar plugin:

https://wiki.hydrogenaud.io/index.php?t ... e_lyrics3)

foobar2000 is by far the best music player btw. and I've tested a lot over the decades, it's lightweight and extremely customizable.

I think I did the setup back then with the help of these:

https://praxistipps.chip.de/foobar2000- ... ehts_13359
https://wiki.hydrogenaud.io/index.php?t ... ery_syntax
https://github.com/tripod31/foo_lyricsource

Here's the regular plugin itself:

https://www.foobar2000.org/components/v ... ie_lyrics3

And foobar2000 in its latest version:

https://www.foobar2000.org/download

As per one of the steps of the above, it tells foobar to read the lyrics from the THREE properties "LYRICS;SYNCED LYRICS;UNSYNCED LYRICS;"

Sorry this is all so convuluted, it's a bit finicky, but once it's set up, it works flawlessly if Lyrics Finder finds the lyrics. You can just dump a huge collection of files into Lyrics Finder, it will then write the lyrics automatically into the files and foobar shows them in the little panel while playing the songs, even with the right timing and highlighting if it can find synchronized lyrics.

I have the NirSoft tools at hand and am ready to use them, all we need is your property magic. :D
warduweram
Posts: 17
Joined: Fri Aug 25, 2023 2:08 pm

Re: Instant search for custom lyrics metadata tag/property

Post by warduweram »

This is what it looks like the way I've set it up:

I can do a quick search on the left, select an album, then the songs show up on the right and if you play them, you get the lyrics on the bottom right. And it's all customizable to the extreme.
image.png
image.png (305.21 KiB) Viewed 4561 times
Post Reply