Skip to content
username116 edited this page Sep 15, 2024 · 14 revisions

Here is how I tagged audio files with Essentia and Python, on Windows, and used these genre and mood tags with Search-by-Distance-SMP and foobar2000.
It's also possible on Linux, with a few modifications.
This is an alternative to some of the tags provided by AcousticBrainz.


Note

I can only write tags to flac and mp3 files. I don't know how to do it with other file types.


Does it work well with Search-by-Distance?

It's good for moods. For genres, it's a little less good, with variable results. It also depends on the models, and the settings. Maybe my Search-by-Distance settings for moods are too high. All in all, I'm very happy with it. With the Graph and carefully hand-crafted tags, it could be perfect. 👌

Before, I only took these tags from AcousticBrainz:

My old AcousticBrainz tags

AB genre Gtzan      : Jazz
AB genre Elec class : House
AB genre Dortmund   : Electronic
AB genre Rosamerica : Rhythm and Blues
AB bpm              : 162
AB key              : Am
AB mood             : Not acoustic; Not aggressive; Electronic; Not happy; Not party; Relaxed; Not sad

So for me, the new results are much more precise than before. In fact, this precision was already available in the high-level data from AcousticBrainz. But here the analysis can be done locally, and we can choose the models.

Disadvantages:

  • It will take some time at the beginning if you want to understand the script, modify it, make tests.
  • It will take time if you want to tag your entire library. It took me several weeks. It heats up the computer.
  • I only know how to tag mp3 and flac files. For my few files of another type, I converted them to flac, analyzed these copies, and manually copied the tags into the original files, using foobar. Then I deleted the flac copies.
  • If there are different parts in the song, the scores will be an average over the song.
Clone this wiki locally