Set rating for import in VirtualDJ

Hi Markus,

It seems it has been quite a while since your reply. I'm a newbie. I searched the howto's and manuals but I can't seem to figure out where to paste this code. I tried actions and tried to create a new action but could not achieve to see stars rather than values. I'll appreciate if you could help me figure out how to do this if it is not too much trouble. many thanks.

You want to see the POPULARIMETER content in a new column as stars (and not as number)?

Yes. I'll appreciate your kind support if possible.

Create a new column
Copy & Paste this Value:
$if2(%rating winamp%,$ifgreater($regexp(%POPULARIMETER%,'^.+\|(\d{1,3})\|\d+','$1'),196,5 ★★★★★,$ifgreater($regexp(%POPULARIMETER%,'^.+\|(\d{1,3})\|\d+','$1'),128,4 ★★★★,$ifgreater($regexp(%POPULARIMETER%,'^.+\|(\d{1,3})\|\d+','$1'),64,3 ★★★,$ifgreater($regexp(%POPULARIMETER%,'^.+\|(\d{1,3})\|\d+','$1'),1,2 ★★,$ifgreater($regexp(%POPULARIMETER%,'^.+\|(\d{1,3})\|\d+','$1'),0,1 ★,))))))

Your column definition should look like this:

In Mp3tag the final list looks like this:

This only works, if you already have numbers stored in the POPULARIMETER tag.
You can check it pressing Alt+T on one of your tracks.

I think that this can be shortend to

I would like to emphasize that it first should be investigated, whether the player actually reads the rating field. iTunes does not.

Thank you so much for this. I tried, stars are not showing. I tagged all tags with Tag&Rename as stars. Having checking them with Mp3tag it is interesting that some tracks have values in

  • Popularity tag but not as straight numbers but in this format |0 , |0|0 , |128|0 , |255
  • Others appear in rating_wmp column as number values from 1 to 5

I mostly use Virtual DJ and used to use Tag&Rename until it is dead. Star rating fields are interoperable in between those platforms. So if you tag a rating in one it would also appear in the other. If I cannot find a way to achieve this in Mp3Tag, I will have to edit all values from scratch :frowning:

Do you think it is possible to create a column (I guess the correct one is the rating_wmp column) and tag tracks as stars rather than tagging them as numbers but showing as stars in another column?

Many thanks for your help.

If you want a (new) possibility to interoperate between Virtual DJ and Mp3tag I suggest this process:

  1. Load 5 new songs into Virtual DJ
  2. Rate every of this 5 Songs, one with 1 star, the second with 2 stars and so on.
  3. Load this songs in Mp3tag
  4. Change the ratings (pressing Alt+T and manually change them) and don't forget to save the changed values into your files
  5. Load them again and check if Virtual DJ shows the changed values

If this process works, we can help you to create a column in Mp3tag with the used tag.

I would like to point out the Option in Tags>Advanced whether MP3tag should show the raw values in rating or the translated ones.

Please note that there is only 1 field for ratings: POPULARIMETER.
Only the internal format determines how the data will be displayed.
There are dedicated pseudo-ratings for the translated data.
Please see the documentation for

It is ticked.

I'll check the player once again to see if it reads the rating or keeps it in its database.

To simplify the problem i would like to ask another point. Windows File explorer. If you go into any music folder and select to see the rating column it shows the "stars". So in my previous setup Tag&Rename matched exactly the same stars as in windows. 4 stars in Tag&Rename is 4 stars in File explorer.

But in Mp3Tag the popularitometer when I enter value 196 it marks it as 5 stars (Mp3tag|★★★★★) but both file explorer and tag&rename reads this as 4 stars. Could it be that values are not correct in mp3tag script. As I went to the individual files with my comment tags i discover existing values from Windows File Explorer/Tag&Rename are 0=none 1(Poor)=1 star 64=2 stars 128=3 stars 196=4 stars 256=5 stars

I used Mediamonkey to verify if this is true and yes, all three software (file explorer, tag&rename and mediamonkey) share the same standard and read/write correctly in between each other. No scripts are necessary.

Please look at the highlighted sections. Thay are all the same.

But in Mp3Tag it is different. I'm sure there is a way in this brilliant software to get it working as others but how?

Whatever script you use ... you will see the 196 there somewhere and how it translates into stars. You may adapt that according to your preferences.

The script does nothing more (I assume) than to replace a number with a string, consisting of asterisks.
I still wonder why this is so important - in the end you have to have some values anyway, it is easier to sort and filter by the numeric values - so why the hustle.
But that is just my personal opinion.

In the meantime I have installed VirtualDJ and found a solution for exact this situation:
a) You can set the rating in stars in VirtualDJ.
b) You can see the same stars in Mp3tag.
c) You can NOT set unicode stars in Mp3tag, but you can set the numeric value. This will be reflected in VirtualDJ.
-> Please see the Addendum how to enter rating stars * directly in the File List.

I have not tested MediaMonkey, Windows File Explorer, Tag&Rename, iTunes or other software. If you need support for these, please ask in the MM-/Microsoft-/Tag&Rename/Apple-Forum.

Solution for VirtualDJ and Mp3tag, step-by-step:
(tested with vinstall_virtualdj_2023_b7482_pc and Mp3tag v3.19b)

1.) You have to be aware the following VirtualDJ behaviour:

2.) You have to set the tags settings in VirtualDJ like this:

If you don't set getTagsAuto and setTagsAuto and getRatingFromTags to Yes you can not interchange the rating between VirtualDJ and Mp3tag.

3.) You can add a new column in Mp3tag with this Value:
$if2(%rating winamp%,$ifgreater($regexp(%POPULARIMETER%,'^.*\|(\d{1,3})','$1'),196,★★★★★,$ifgreater($regexp(%POPULARIMETER%,'^.*\|(\d{1,3})','$1'),128,★★★★,$ifgreater($regexp(%POPULARIMETER%,'^.*\|(\d{1,3})','$1'),64,★★★,$ifgreater($regexp(%POPULARIMETER%,'^.*\|(\d{1,3})','$1'),1,★★,$ifgreater($regexp(%POPULARIMETER%,'^.*\|(\d{1,3})','$1'),0,★,))))))

This adjusted Value reflects the way VirtualDJ writes it's rating into the tag POPULARIMETER:

id3v2-POPULARIMETER from VirtualDJ
It seems, that VirtualDJ only writes |1 or |64 or |128 or |196 or |255

4.) The final result in Mp3tag looks like this:

If you want to change the ratings in Mp3tag, you have to set the POPULARIMETER values as numbers, not as stars. You can enter them directly in the POPULARIMETER column (or in a Tag Panel field %popularimeter% you could also add).
These numbers are 1 for 1 Star, 64 for 2 stars, 128 for 3 stars, 196 for 4 stars and 255 for 5 stars.

5.) The very unusual problem lies inside VirtualDJ:
As you know from point 1.) VirtualDJ will only read the tags ONCE into its database. Every later change outside VirtualDJ will not be re-imported automatically in its database!
If you want to "refresh" the VirtualDJ database, the only way I found is to (slighty) change the filename and reimport this file into VirtualDJ.
You have to ask in the VirtualDJ-Forum, why this current behaviour should be the preferred one.

Corrigendum 13.03.2023, 15.30 Uhr:
I eventually found a workaround to "reload" the tags in VirtualDJ without changing the filename.
It seems that selecting the changed tracks in VirtualDJ and right click on them, selecting the context menu
Batch -> Reload tags
does exactly that: Reloading the externally changed tags.

Thank you so much for taking time to investigate this further. I will follow your instructions and stick to this method from now on. All the best.

1 Like

Addendum, 13.03.2023, 16.30 Uhr:

There is an additional way to apply the star rating using "Custom list values" for the Field POPULARIMETER that let you choose your own unicode stars like ★ from a drop-down-box in the Tag Panel.

All you need is to add a new field to your Tag Panel like this (you can name it as you like, in this example it's called POPM):

This allows you to choose the stars for your selected tracks from the POPM drop down box in the Tag Panel:

If you prefer to enter the stars directly in the File List for every single track, you can also achieve that.
You need to add a column with the Value and Field %POPULARIMETER%

In the File List you can enter the amount of stars directly, like * for one star or ** for two stars.
Please be aware that only the usual * (Hex 0x2a, Dec 42, as directly available on your keyboard) will be automatically translated into the according rating number.
Other entered Unicode characters like ★ will not be automatically translated in Mp3tag!

Demo from File List * input:
Add Stars directly into POPULARIMETER field in File List

1 Like

Wow. This is even a better solution. I couldn't thank you enough for taking all the time to help me. I really appreciate this.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.