Use MP3Tag to rename other file types (V2)

Reopening a closed question for context:

I love the flexibility of MP3Tag to rename media files; however I would really like to use it to rename my other files as well (MPG, AVI, TXT, anything...); Is there a way to extend renaming features to any file type for basic renaming usage (without tags support obviously);
Reason is simply that I have build a lot of custom "regular expression" actions and having to redo all this work in a different software just to rename unsupported files seems counterproductive;

Except for ID3 tagging which can be ignored or disabled, I don't see any reason for limiting support to specific file types.

Let me know what you think, thank you!

**Original answer was:

Unfortunately, either I didn't test properly in the first place or this doesn't work anymore;

Even if add the proper extensions to "restrict incoming files to", they never make it to the files list. ( I see the right number of files on "reading tag data" but once completed, all files without tag data are discarded)
I made sure no filters were enabled.
Is there some other option I need to enable/disable?


Which MP3tag version do you use?
[2021-01-28] REL: VERSION 3.05 (for Windows 10/8.1/8/7/2008/Vista/2003/XP SP3)...
[2020-12-16] FIX: regression where unsupported files are not listed despite file extensions are added to files to read. (#51187)

An update might help you.

Thank you! That was it; had version 3.04.
Makes more sense now; it was working when you originally responded to my question;
Glad the bug was already fixed.

One last thing:

I use a single group of actions for all files (mp3, mp4, avi, mpg, mkv, etc.)
It's a filename "clean-up" type group and contains various actions (close to 100)
It works a charm.

however, if the group contains certain action types (see the 3 examples below I extracted from the group via trial and error), the entire group of actions will be ignored for "non tag based files" (.avi, .mpg, .mkv, .txt, etc.)

any way to automatically just "ignore" these actions when not relevant instead of bypassing the whole group ? I really want to keep this within a single action group as it is automated / triggered externally.

Thanks for your assistance,




Not very friendly to read that list of actions.
AFAIK actions for file operations are always executed last (and only once - not quite sure about that).
Anyway: applying actions to file properties with fields that are non-existent will most certainly lead to invalid filenames and folder names.
E.g. a jpg file does not have any data in GENRE. so a _DIRECTORY would get a zero-length name which is invalid.
Similar results can be expected for a _FILENAME that is treated with COPYRIGHT.
So seriously, apply your actions only in contexts that make sense.
Or include a lenghty $IF() construction that makes sure that only valid results can be expected, e.g. revert to the already existing _FILENAME.
Renaming folders with data from files without readable metadata stays a bad idea.


will add Mp3/Mp4 conditional for these 3 as they are the only ones generating this issue.


But I still think that bypassing actions (and not the whole group), when "invalid" data is returned would be a better behavior. Unless it breaks the code in some way; just a suggestion :wink:

Thanks again for your help.

The conditional won't work either; as it probably still tries to access the field no matter the outcome of the conditional. My scripting knowledge is limited so let me know if you have another option that would not take action at all unless the extension is right.


Otherwise I guess I'll have no choice than to split the actions in two groups.


Please note that the function is case-sensitive.
The $if() function only sets a value for the TRUE branch - the FALSE branch then creates a zero-length string which is probably invalid again.
I would have assumed that it should be the other way round: set the _FILENAME if the extension does not equal mp3, otherwise use GENRE (or whatever).

Quick update,

I have abandoned the idea of keeping all actions within the same group and split it in multiple action groups;

however it seems like launching multiple actions groups (selecting groups via actions / alt-6) behaves exactly like a single action group. Is this the intended behavior as it forces me to launch each group manually one after the other;

Is there a way to launch multiple groups in sequence and have them apply output right away instead of "merging" all groups as a single group ?