How may I import MediaMonkey ratings?

Despite reading the Help, I have never understood Mp3tag's handling of ratings in WMA so have avoided wherever possible.

Now it is not possible. I want to take a text file of ratings exported by MediaMonkey into Mp3Tag Textfile - Tag. In absence of adequate official docs for Textfile - Tag, I have followed Detlev's advice on %_path%... but what to put for rating here? Not %rtatign mm% It seems:

My mapping analysis below shows me something strange is going on. E.g. MM text values up to 100. And Mp3tag interpreting 0 and 20 both as 1.

Help urgently needed and much appreciated.

I am pretty sure, that I have not suggested to use an import text file, which is formatted in columns.
I am pretty sure, that each character on a line, within the import text file, is significant for the Mp3tag import function.
Therefore it is not good, to offer data columns, because the possible imported trailing spaces have to be removed afterwards from the tag-fields.
(Annotation: Your preview picture shows, that Mp3tag seems to understand the data, which have been formatted in columns, but the formatstring for importing looks ugly.)
The import text file should have left aligned floating lines of text with unique separator between the data fields.
In Mp3tag you can choose the separator character or string as you wish, but it should not be part of any data field.

Bad format aaaaa bbb aa bb aaa bbb aaaa b Good format :aaaaa:bbb: :aa:bb: :aaa:bbb: :aaaa:b:

In your case you can offer a text import file:
|-1|C:\temp\media file 1.wma|
|0|C:\temp\media file 2.wma|
|20|C:\temp\media file 3.wma|
|40|C:\temp\media file 4.wma|
|60|C:\temp\media file 5.wma|
|80|C:\temp\media file 6.wma|
|100|C:\temp\media file 7.wma|

Import mask:

Have a look there ...
Rating and mp3tag/MediaMonkey sync problem
Different Rating tags
... there are more forum posts about RATING ...
... and ...

The problem to solve seems to be ...
... to align the numerical/star ratings from Rating_MM to WM/SharedUserRating
... to find the transfer formula between Rating_MM and WM/SharedUserRating.

Stars MM WM

0 0 0
1 1..23 1..24
2 24..64 25..49
3 65..128 50..74
4 129..196 75..98
5 197..252 99

If you could transfer the stars between the rating systems, then the problem is trivial.

DD.20140830.1111.CEST, DD.20140830.1515.CEST

D, my data formatting in not columns and is with unique separator, but that separator is TAB. Sorry to be unclear.

Thanks. The key question is: what to place at _XXX?

Well, if I could transfer the values WITHOUT align/transfer between systems, then the problem is trivial!

I want Textfile-Tag to transfer textfile WM/SharedUserRating values to WM/SharedUserRating tags. Surely there is a format string that can do that?

I have tried %rating%, but this transfers to a different field, not WM/SharedUserRating . I believe %rating% <-> WM/SharedUserRating was supposed to work when Florian said he was trying to fix it for the next release seven years ago Progress on WMA Rating fix? , but now I find that RATING is absent from the Tag Fields Mappings .

I'll ask a separate question without the reference to MediaMonkey, which now seems to me to be irrelevant and confusing?

Here is a way to go ...

  1. Load the MM rated media file into Mp3tag.

  2. Create an action, which makes a string of star characters right from the MM rating value ...
    $repeat('*',%RATING MM%)
    and put it into a tag-field, which can be removed later in time, if necessary.
    Or apply this formatstring only when exporting to text-file.

  3. Create the export text-file.
    Decide if you need the path string or not.
    Before importing, the entire filepathname resp. it's extension in the import text-file has to be adjusted to the target filename and type.

1: $loop(%_path%)%RATING MM%'|'$repeat('*',%RATING MM%)'|'%_path%

2: $loopend()

  1. Import each line from the text-file into each target WMA file.
    Convert "Text-File to Tag"
    Formatstring: %DUMMY%|%RATING WMP%|%_path%

  2. Mp3tag should automatically adapt the string of stars into the fitting numerical value.


The roundabout way using a string of star characters is superfluous.
You can use the numeric values directly.
Export "RATING MM" ==> Import "RATING WMP".

Convert "Text-File to Tag"
Formatstring: %RATING WMP%|%DUMMY%|%_path%

So easy.


Thanks D, but I don't have MM rated media files. As I said, I have "a text file of ratings exported by MediaMonkey":

It looks like my only option is to adjust the values, either before exit (e.g. in the MM export script), or less preferably after, in Mp3tag.

And if I was to use MM rated media files...

note %rating mm% shows empty for all MM star values:

due to this Mp3tag bug: RATING MM not recognised by MediaMonkey

and %rating wmp% does shows star values with the aforementioned error on numeric zero:

due I now find to this MM bug: .

Because I do not know anything about MediaMonkey ... I have to ask, ...
is there a MM database in the background, where the rating has been stored, ...
or does MM store the rating directly into the tag within the WMA file?

In Mp3tag, regarding WMA file, use tag-field "RATING WMP".
Make sure that there has been stored a rating value in the tagged WMA file, ...
technical tag field named "WM/SharedUserRating".
If so, Mp3tag should display a value within the tag-field "RATING WMP" from the set [1,2,3,4,5].

Using Mp3tag v2.63 there is no problem to write numerical values from the set [1,2,3,4,5] or a string of [1..5] star characters to a WMA file, into tag-field "RATING WMP".
Mp3tag saves it technically as "WM/SharedUserRating" with the mapped WM integer value.

So what is the mapping ...
between the numbers ... -1, 0, 20, 40, 60, 80, 100 ... and the amount of star characters?

RATING WMP <== $replace(%RATING_XXX%,-1,0,0,0,20,1,40,2,60,3,80,4,100,5)


There is a MM database holding Rating (from where I exported nu data list) and MM stores Rating in the tags... except it very often fails (which is why I am trying to store it using Mp3tag).

Well, MM does not allow me to store just pre-existing Rating in the file - only all pre-existing fields, which I cannot afford wince I think some others are wrong.

And the further problem is that MM does not store its full Rating in WM/SharedUserRating. Its Rating has half stars and these are stored only in its proprietary SDB/Rating field.

As the screenshots in my original post.

Not quite. I now have a solution and I will put it in a new post.

With Detlev's input, I have devised this solution.

These MediaMonkey tracks

through custom script exporting path and Rating give:

Imported by Mp3tag Textfile- Tag gives .

Then, this action group

Format value "RATING WMP": $replace(%rating_mm_raw%,100,5,90,4,80,4,70,3,60,3,50,2,40,2,30,1,20,1,10,1,0,1,-1,)
Format value "SDB/RATING": $replace(%rating_mm_raw%,-1,)


This is the correct recreation of the fields representing Rating for MM, confirmed by viewing again in MM:

It is worth noting that while this is successful for my requirement to restore MM Ratings from a MM database export, it is much less successful for using Mp3tag to edit MM ratings since there seems no way for the user to configure Mp3tag to compute the MM representation. That requires a fix to Mp3tag's implementation of %rating mm% for WMA /t/12523/1 .