There are times when I persist in the most random things. Sometimes it’s productive; other times it betters my life in no significant way. What I’m about to show you is very handy, but the amount I spent tinkering on it didn’t save me too much effort. Well, it actually did shape up 20,000 of my mp3s in an automated fashion so it was not futile. The geek in you will enjoy some of the techniques, and laymen will have some upper-level tools to clean up and fix tags.
Quick Links
If you are impatient, jump to what you need:
– Trim Trailing/Preceding/Extra Space
– Spacing…(Proper, Amount)
– Title Case (It’s a Smart Conversion)
– Namings (O’Brian, McCarthy, MacDonald)
– DJ, vs., MC, EP, CD, XVI. (Upper Case)
– Contraction- Add Apostrophe’s (Can’t, let’s)
* Download All (zip) or Right Click>Save individual .mta file.
Instructions:
1. To locate the mp3tag actions directory, click “OpenActionsFolder.bat” from the zip file or find %appdata%\Mp3tag\data\actions in your user’s “Documents and Settings” folder.
2. Copy the “.mta” files you downloaded into that folder
3. To use them, open Mp3tag and choose the Action Groups in the toolbar- “[Aa] button,” Alt+5, or Menu>Convert>Actions.
Before we start
First off, you should know that Mp3tag is a must for a music tagging aficionado. Hands down best freeware for id3/tag manipulation. One of the best features is Web Sources, which’ll lookup album info (after it’s been encoded to your preferred music format) from a variety of databases (freeDB, amazon, and many others you can add).
Secondly, you can automate tagging from the filename. Let’s say your mp3 is called “06 You Make Me Feel Like Dancing (1976).mp3” and your album needs tagging. Below the programs menu bar is a button that transforms filename->tag. This can format your results by entering “%track% %title% (%year%)” and all you need to do is add the artist and album afterward. Flexibility is a blessing here. Also the same procedure can be done with an external file. If you have a text file with a list of song titles or a log of taggable info separate by lines, you can add them to several mp3s (in the order they appear in mp3tag). This is a sample of one of my txt inputs (pasted from a website) for a Thelonious Monk CD:
Recollections (W. Thomas) 2:41 Flyin' Hawk (W. Thomas) 2:49 Drifting On A Reed (W. Thomas) 3:04 On The Bean (W. Thomas) 2:53 Thelonious (Monk) 3:01 Evonce (Quebec) 3:05 Monk's Mood (Monk) 3:08 Humph (Monk) 2:55 Who Knows (Monk) 2:42 April In Paris (Duke – Harburg) 3:22 Introspection (Monk) 3:14 Evidence (Monk) 2:35
My format string is %title% (%composer%)%dummy%. The dummy tag is excluded (the time) since the mp3 already knows how long it is.
Get your hands dirty
…But keep your music clean.
Some of these actions use a special language that is common to advanced text editing. I do not claim to be a RegExpert (REs, Regex, or Regular Expressions). I’m sure some simplifications are possible, but I only have self-taught limited knowledge of the mathematical/typographical language known as regular expressions. Some of these actions and regexps are made by others, and others are tweaked. Nonetheless, these actions are grouped in a logical way to perform specific tasks.
Trim Trailing/Preceding/Extra Space
http://liquidparallax.com/files/actions/Trim Trailing-Preceding-extra Spaces.mta
This will transform 1 into 2.
1. ” This Song Title ”
2. “This Song Title”
It works great on those mysteriously spaced tags, and should consolidate artists that had different spaces in iTunes.
Spacing…(Proper, Amount)
http://liquidparallax.com/files/actions/Spacing…(Proper, Amount).mta
Pretty self-explaining. It will add an appropriate space after punctuation and erase unwanted whitespace in a grammatically correct manner. Grammar school is good for something! Here are the highlights in no order:
1. Add a space after a period. It will not add it if there’s already a space or any of these: :”;.’. It will also ignore abbreviations like “U.S.A.” so that it will not be spread into “U. S. A. ” and will also keep triple dots, or ellipsis, intact (…).
2. Commas and others characters .])?:;, should have no space predecing it, but one following.
3. Opening parenthesis like “(” and “[” should not have a space afterwards, but before (unless it is the beginning of the line).
4. Surround characters such as +& with a padded space.
5. Smart detection of quotation marks. This sentence with”these words”will get separated so “these words” are spaced correctly. Also works for ” too much ” space that turns into a “right amount” of space.
6. Adds a space if needed after a colon, but ignores times such as 3:15 and also after “/”.
This set was difficult to put together since I was just learning, but I refined it to make it better than it would have been. A while ago I’d never know what the string (“.*?”)([^\s\]\)/\}!\-=,.;:])(?!$) means. Automanaging spacing is great but there may be things it misses. There is limited correction of apostrophe vs. single quote [‘] and the forward slash (/) depends on how it is used (01/01/2000; aesthetic reasons; or quoting lines). Please let me know if you come across any new situations or troubles. There was a problem with websites, but I made a fix to avoid most URLs.
Title Case (It’s a Smart Conversion)
http://liquidparallax.com/files/actions/Title Case (It’s a Smart Conversion).mta
Mp3tag has a built-in case conversion for ALL CAPS, lower case, Mixed Case, and Beginning of a sentence. Mixed Case is often the closest that you can come to proper capitalization of a title. Better still is to follow almost every rule in the book of English. Capitalize everything except 4-letter-or-less prepositions, conjunctions, and articles. Regardless of the previous rule, capitalize first and last words. This action does just that. The caveat is that computers can’t tell the difference between when words like out or over are prepositions or adverbs. I left these out purposely because the majority of my songs should have them in capitals. The ones it detects are a, the, of, for, as, at, an, by, off, on, from, in, to, and, with, or, nor, von. It also detects breaks in the title and will retain capitalization if there is a specific punctuation barrier. Some examples of final results with these exceptions in mind:
Redondo Beach: The Ending
(Break on Through) To the Other Side
A Live or Studio / At the Five Spot
A Life to Be a Part Of (With You)
This was borrowed and slightly adjusted from this thread. Additionally, it will capitalize words beginning with an apostrophe (not possible with mixed case or the previous action). Words like ’twas and ’tis will have the first letter after an apostrophe capitalized and others (not O’Er, She’S, Don’T) will be ignored from capitalization. Also note that website addresses (in the tags) will be capitalized according to these rules and websites usually depend on case anywhere after the .com, .net, .org, etc. so they may not work correctly.
This has been tested by myself but I can’t guarantee it will catch everything. If things don’t turn out right, you can still undo changes in the program while still in cache. For important info, please backup your files or do a test yourself beforehand.
Namings (O’Brian, McCarthy, MacDonald)
http://liquidparallax.com/files/actions/Namings (O’Brian, McCarthy, MacDonald).mta
Non-English Names often have CamelCase (Mixed capital words). This’ll capitalize letters other than the first, so do this one after my “Title Case” action. This fixes O’Names, McSurnames, and MacDougals. This will not ruin words like sMacK, ORange, or ArMcHair.
Irregularities still abound like MxPx and mewithoutYou. You can monitor stuff like this on your own because it varies from person to person. Other impossibilities include discerning the US nation from the us as in “we,” unless U.S. uses periods.
DJ, vs., MC, EP, CD, XVI. (Upper Case)
http://liquidparallax.com/files/actions/DJ, vs., MC, EP, CD, XVI. (Upper Case).mta
Adjusts Dj Dolores to DJ, while maintaining gypsy guitarist Django Reinhardt. It lowercases “vs” and UPPERCASES a few abbreviations like UK, OC, CA, and others. Add in your own to suit your taste (Separate|with|vertical|pipes). This also finds roman numerals at least up to the thirties (XXIX). The numeral action was made by dano over at the mp3tag forums, but it suffered from incorrectly capitalizing I’M, I’D, and the common MIX. It also stripped commas out of tags. I wasn’t sure how to resolve all those problems so I made my own edits and reduced the lettering to only be concerned with I, V, X, and C; and all works fine now. Talk about World War III Blues.
Contraction- Add Apostrophe’s (Can’t, let’s)
http://liquidparallax.com/files/actions/Contraction- Add Apostrophe’s (Can’t, let’s).mta
Now you might think I have OCD at this point. I wasn’t in dire need for this, but once I thought of it I couldn’t resist. This one will fix words that need an apostrophe. If you wont do it yourself, this action will. You didnt, but this did. Don‘t fret! I got the more frequent ones included here. Another stickler I avoided was “its” because it’s something that isn’t always apostrophized. It can’t decipher on its own whether it’s a contraction of “it is” or a possessive.
12 comments
liquid parallax says:
Oct 19, 2007
I’ve got a few less important ones and if anyone wants those I’ll add them, such as smartly adding a period after Mr and Mrs.
How to Manage Your Digital Music Library- liquid parallax's Blog says:
Dec 8, 2007
[…] at connected internet guide to tidy up ID3s. I’ve also made some actions for Mp3tag that will correct common mistakes in tags (extra or weird spacing, advanced CaSe capitalization, and even grammatical […]
blackspawn says:
Dec 22, 2007
I noticed a bug in the uppercase roman numerals, “Part Ii: ” doesn’t get converted to “Part II: “. I’m not very knowledgeable in regular expression so I can’t say how to correct this (though I am trying to figure it out by myself)
Oh and thanks for this awesome collection of precious formating actions 😉
blackspawn says:
Dec 22, 2007
eh eh just figured it out.. in the last condition add “|:” after $ and your good to go. By the way shouldn’t the “?:” match the “:” in “Ii:” and therefore uppercase the “Ii”? (this isn’t happening without the “|:” at the end).
liquid parallax says:
Dec 23, 2007
blackspawn,
thanks for the info. I’m updating the action because it probably occurs fairly often. It’s my mistake that I didn’t take colons into consideration for roman numerals.
The “?:” in the parenthesis is a regular expression statement look for this but don’t capture it for manipulation…
so (?:missing_sock|5|string|:)(KeyItem) looks for a missing_sock, 5, string, or “:” but doesn’t do anything to it. It only needs to be there before KeyItem, then we can perform a change to it or replace it with something else.
Harry says:
Nov 4, 2008
Thanks for the info. I need to delete all trailing spaces on the Artist field of the selected items, in the Mp3tag v2,42 program. Can you help?
Thanks in advance.
Regards,
Harry
liquid parallax says:
Nov 9, 2008
Harry,
Trim Trailing/Preceding/Extra Space action can do this. If for some reason you want trailing spaces on other tags, just select that Artist field is affected.
O Garçom says:
Jul 4, 2009
This is simple wonderful. I’ve made all that stuff twice, and unfortunately lost all the actions again, due to pc changing and numerous windows reinstallings.
Thanks, man. You’re the best.
Jimbo says:
Mar 5, 2011
Hi, I’ve changed the field in all actions from ‘_TAG’ to ‘_ALL’, as I want to modify filenames too. Is it safe to do so, or might it corrupt some filenames? Thanks, good work!
Jimbo says:
Mar 6, 2011
One more thing, I’d like the title case script to leave alone upper case words. As it stands, when the title case action is performed, the artist name KISS will be changed to Kiss. Is there a fix for this? Many thanks.
Jim says:
Mar 29, 2011
Just a quick update. Together with the guys at mp3tag forums, I’ve managed to fix a lot of the problems with this script and a added a few new things, too. Hope you don’t mind, and thanks for the all the work you did with the original version.
Cheers,
Jim.
http://forums.mp3tag.de/index.php?showtopic=13185
Jackie says:
Aug 4, 2012
I usually don’t comment on random help sites I find via Google, but this is really great. I completely understand your desire to make your music library grammatically correct. I’ve been mp3tagging away and the desire hit me as well. Thanks to you! Your work does not go unappreciated!