Nice reads, and I can relate to pretty much everything you are experiencing. Keep 'em coming ;-)
Thank you kindly. -blush- I figure I can at least be entertaining.
And if you come up with scripts that you think that might be useful, perhaps share them here?
I thought I was good with my pretty simple Naming script;
$if2(
%_secondaryreleasetype%,
%_primaryreleasetype%,
%_secondaryreleasetype%
)
/%albumartist%
/%album%
/$pad(%tracknumber%,3,0) - %artist% - %title%
This gives me
<Library Root>
\release type (Album if it isn't a Compilation, Soundtrack, etc.)
\Artist
\Album Artist
\<Track No. 000> - <Track Artist> - <Track Name>.<Extension>
Now, I think I'm fancy;
$if(
%_secondaryreleasetype%,
$upper($firstalphachar(%_secondaryreleasetype%))$rreplace(%_secondaryreleasetype%,.\([^;]*\).*,\\1),
$upper($firstalphachar(%_primaryreleasetype%))$rreplace(%_primaryreleasetype%,.\([^;]*\).*,\\1))
/%albumartist%
/%album%
/$pad(%tracknumber%,3,0) - %artist% - %title%
This gives me the exact same thing, except now the Secondary and Primary "albumtype" directory is properly capitalized.
The first script took me 5 minutes. The second iteration took me like 5 days. I just couldn't be happy with all lower case, could I?
So, I have spent the last week fighting the tagging script to bend the tags to my will, and I find myself re-evaluating why I'm using MusicBrainz. (Great, more self-examination.) On an unrelated note, my S.O. asked me what I was doing as I sat at my computer staring into space, and I got to throw her one of my movie quotes; "Self realization. I was thinking of the immortal words of Socrates, who said; "I Drank What? (http://www.youtube.com/watch?v=B7YEeIdZBGc&t=0m16s)" She rolled her eyes and walked out. Love her to pieces.
I had a really long script that did all kinds of cool things; only Year for release, strip prefixes from sort order (not move to the end, strip) strip out total tracks/discs, etc. Then, I got to the part where I tried to set Album Artist for soundtracks to be "1Soundtrack" and standard compilations to "1Various." "Various" gets buried in the Album Artist list if I don't add the "1." I can't for the life of me figure out how to do this in a script without resorting to some strange gymnastics. I got this sorted, and realized that I still had some other things like that I wanted to do, and started thinking that this was way too complicated.
Finally, the white-hot blast of realization came to me; "I'm doing it wrong." I was trying to use MusicBrainz to make my tags work the way I wanted them to work. I should be thinking of MusicBrainz as a way to tag my files consistently so that I can use my media manager to make my library work the way I want it to.
Suddenly it all makes sense. Now I understand why there was so little talk about tagging scripts; they shouldn't do much. File naming is more important, because the tags are canon, but the operating system is capricious. There is so much talk about custom tags here in MusicBee, because the tag is immutable, and the view is changed to suit desires.
So, I had a huge script that took into account potential tag variance, and changed all kinds of information. I was up to 100 lines of text in Notepad++ at one point. And now I have this;
$noop((Number Padding Track to nnn, Disc to NN)
$set(tracknumber,$pad(%tracknumber%,3,0))
$set(discnumber,$pad(%discnumber%,2,0))
$noop(strip out embedded lyrics)
$unset(%lyrics%)
$noop(Going off the rails)
$set(%PicardRate%,%_releasecomment%)
I did not realize how prescient my title would be.
Welcome back from the edge. :)
FWIW, here's my tagger script in total. It just gets tags where I want them, removes things I don't use, and takes care of things that I can't handle in bulk in the library manager. I also use the "feat artist in titles" and "Standardize performers" plugins.
$if($eq(%totaldiscs%,1),$unset(totaldiscs);$unset(discnumber))
$if($gt(%totaldiscs%,1),$set(discnumber,$num(%discnumber%,2));$unset(totaldiscs))
$set(tracknumber,$num(%tracknumber%,2)),$unset(totaltracks)
$set(date,$if2($left(%originaldate%,4),%date%)),$unset(originaldate)
$copymerge(composer,writer)
$copymerge(composer,lyricist)
$unset(writer)
$unset(lyricist)
$setmulti(composer,%composer%)
I went through everything, and I think I'm done pondering now. I have transcended and I am just going to let MusicBrainz run pretty much have it's way with my library.
I added this section in because I really don't like trying to think of artists by their last name. I also really really don't like having to think about groups that may or may not have "A" or "The" as the beginning of their name. I always mentally drop those. I look for the boys from Liverpool under "B" not "T." I had a heck of a time until I realized that for some reason I have to $unset albumsort first. all the others seem to play nicely.
$noop(Set Sort orders to something useful)
$set(artistsort,$delprefix(%artist%,prefixes=A,An,The))
$set(albumartistsort,$delprefix(%albumartist%,prefixes=A,An,The))
$set(titlesort,$delprefix(%title%,prefixes=A,An,The))
$unset(albumsort)
$set(albumsort,$delprefix(%album%,prefixes=A,An,The))
$set(composersort,$delprefix(%composer%,prefixes=A,An,The))
The final piece is going to be how I import to Musicbee. Now, I send to a single folder from MediaMonkey using the "<Root>\<Album Artist>\<Album>\<Track#> - <Artist> - <Title> format. When I import to Musicbee, I go through each album, tag it as "Studio" "Compilation," etc. I rate songs I already like, and I import to the library by renaming files to my library structure which includes the "Album Type" directory. I think I'm going to get rid of the step where I tag it with an "Album Type" and just use the MusicBrainz "Release Type" instead of my "Album Type" assessment. My only concern is that I may end up at odd with what MusicBrainz calls a "compilation." I used the Wikipedia Discography to determine the album type, and I've seen a few albums go through that did not match that assignment. I'll just see where that takes me. It should also let me keep track of where I am in the re-tagging process.
I'm still giddy, I feel like a great weight is being taken off me with my library. All my experiments so far have had positive results. My tags have way more information for way less work. Artists and albums are way more consistent. I haven't actually gotten to my existing library, so I'm going to have a challenge there, but the only tags I'm really concerned about are my Musicbee ratings, and possibly my static playlists. All the Auto-Playlists should be no problem to tweak, and may end up better than they are now. A lot of them can probably be removed because most of them were about fixing inconsistencies instead of playing music. I had a huge stack of albums that were waiting for import because it was such a pain to import properly. I would just import the tracks I wanted into a separate folder so I could listen to the track I wanted. That changes, now.
Of course this will not be quick. Musicbee shows 6,753 albums. My "Separates" section which contains all the single tracks not associated with an album in my library will be a challenge, but I have them dealt with for now. I also have some "albums" I've created which, while they are realistically just playlists, I like having the files physically separated the way they are. Once I get my backlog cleared up, I can get to listening instead of tagging.
Now, maybe I can start getting a bit more serious about my DAC, headphone amp, and cans. Maybe I can even start realistically dreaming about being able to setup a usable system with Musicbee as the base. I have been kind of putting that off because I wanted my library solid before I released to the rest of the house.