Well i can see several other albums with duplicate folders too. I didn’t have too much time to look through everything thoroughly.
Noob help: Can i achieve my goals with SongKong and if so how?
But that is not an issue of the rename mask itself, that is a consequence of you making a copy of the files and not removing the duplicates created. Under normal circumstances you would not be making a copy of the fies.
For audiobooks i will try your recommendations.
Also for Playlists, i suppose they are more like an unofficial compilation. So i will try your recommendations.
For both media types, and indeed all, i can separate these from one another. Although i believe sk can help when it matches to a release for certain media types.
Yes, final rename mask can be something like
if(standard)
{
rename mask is this
}
else if (audiobook)
{
rename mask is this
}
......
so if metadata is there we can have all in one mask, although I going to do two, rename mask and compilation mask makes it more managfeable.
Here is a complaition rename mask
function brackets(name)
{
if(name.length>0) return ' (' + name + ')';
return '';
}
function squareBrackets(name)
{
if(name.length>0) return ' [' + name + ']';
return '';
}
function yearOnly(year)
{
if(year.length>4) return year.substring(0,4);
return year;
}
"Compilations/"
+ ifnotempty(album + brackets(yearOnly(year)) + " by " + albumartist,'/')
+ ifmultidisc(squareBrackets('CD' + pad(discno,2))+ ' ')
+ ifnotempty(subtitle, ' ')
+ ifnotempty(pad(trackno,2),' ')
+ ifnotempty(title,' ')
+ artist
e.g
I think this is what you want
Note , featured artists are automatically part of artist field as long as using the default value for Format:When tracks contain featured artists to Add all contributing artists to the artist field
I’ll wait for you to review and try these out before I worry about the Audiobooks/Soundtracks/Playlists part.
This is an example of the multiple folders created for albums. as i said before though it may be because i accidentally began processing the files from the master set (kept for backup) instead of the test set. however i would expect that delete duplicates would have removed these extra copies?
Yes I think that is probably what started the issue. First thing do these folder still contain audio files or do they just contain some non audio files?
That depends on a number of things. Worth understanding that unlike other tasks Delete Duplicates does not work on a folder by folder instead its checks each song in turn, keeping a record of each song already checked and if it finds that song being checked is a duplicate it then deletes either this song or the duplicate song previously checked depending on your preferred search criteria. It goes through the criteria in order until it finds a difference between the two songs and then deletes (or moves) the one with the less preferred criteria.
Now you have the When find duplicates delete folder and any sub folders if empty or only contains the following files option checked so if the folder containing the now deleted song is empty or only contains files matching the list
it will delete the folder but if it contains other non-audio files it will not be deleted
Now deciding if two files are a duplicate is dependant on what Song is a duplicate if has same is set to, so it maybe that this setting is not right for determining that files are duplicates of each other.
If you would like help with removing these duplicates this I need you to do the following:
- Run Status Report on Control Set - Complete/A/A Tribe Called Quest folder
- Run Delete Duplicates on Control Set - Complete/A/A Tribe Called Quest folder
- Run Create Support Files
With this information I can then see details of all the files in the folder, and see what you have Delete Duplicates set to and why it is not deleting them
At a later date it would be interesting to return to these masks to help understand the logic and structure so i can hopefully try and adapt things if needed on my own. For now though can i ask if these masks will write features artists into the filename like this? (but only if they’re are any):
Songtitle (feat. FeaturedArtists)
I’m sure I’ve seen a song to do with featured artists but I can’t remember if that deals with this requirement or it needs to be in the masks?
It would be nice if you try them out now that I wrote them and give me some feedback, perhaps in Preview mode as not going to be quite right.
Actually I think I misunderstood your requirement a bit as the example didnt show any featured artists.
So at track level we have two fields that could contain featured artists, the title field and the artist - there is no separate featuredartist field
Now the way MusicBranz and Discogs work is they have an (Track) Artist field for each track and this comprises the main perople credited on the track so for example in the screenshot below the Artist comprises the main artist and the featured artists
and if we go to edit the release we can see that it comprises multiple artists and join phrases between them (such as feat and &) but there is no special featured artists field.
So within the Fix Songs task the Format When tracks contains featured artists option defaults to Add all contributing artists to the artist field and this essentially takes the value of Track Artist as displayed in MusicBrainz.
But we added some processing and two other options to allow you to try and identify featured artists and either just remove them from the artist field, or move them to the title field. But these options are only for Featured Artists, say a track was credited to Johny Cash & June Carter that is equal billing and these options would have no effect in that case.
So I would suggest you decide if you want featured artists in the artist field (that is what I would recommend) or the title field and run Fix Songs with the appropriate option.
Then within Rename Mask make use of artist and/or title field as required, but trying to parse them further at this point to extract featured artists would be very error prone and not a good idea.
What are the ways in which audiobooks can be identified?
If it helps I can move all audiobooks to an “Audiobooks” sub folder if the mask can be programmed to detect if the media is located within that subfolder and then treat them as audiobooks, including automatically making sure the release type is an audiobook?
I like the idea of this, especially in creating my ideal automated processing workflow. I know you said its easier to have separate filename masks for each mediatype but I could see that maybe this would help with automation further if it was set to detect mediatype and then pass it through the correct mask? even if, as i mentioned above, i sort media by mediatype manually; placing them into correct mediatype subfolders such as Audiobooks, Soundtracks, etc?
I’ve noticed a potential bug for your information (when doing match to one album) but not sure if it resolves itself when tags/names are written?
HI no i didnt say that. I said it is easier to have a seperate compilation rename mask and a rename mask, all the subtypes should be added to the rename mask. But Im waiting for some feedback on your on the results before expanding it further.
Im not seeing it, can you explain the issue please.
Ok the masks are almost perfect but there’s a few things i’ve noticed, and instead of creating several replies i’ll just put them into this reply.
characters like ? are still being changed to - (like with the “can i kick it?” single) (1st image). i did ask if it was possible to choose character replacement for ?, etc but not sure you noticed the question and answered it(?). I’d like this character to just be removed altogether. Title case naming - I was under the impression that this was the term for capitalising EVERY word but after looking it up it isn’t; i wanted this though (Capitalising EVERY word - whatever the term is I don’t know) on folders, filenames and also for all tags.
Filename Masks:
Compilation:
I noticed a space before [CD01] which shouldn’t be present, i think its present also for the Artists mask too.
Could you help me put the artist within square brackets “[]” at the end of the filename instead please?
could you help me put "- " after track numbers and before track title please? (it also keeps it consistant with Artists mask too).
both filename masks:
where the code says "+ ifmultidisc(squareBrackets(‘CD’+pad(discno,2))+ ’ ')
- ifnotempty(subtitle, ’ ')" how will this write subtitle?
I was hoping to keep both CD01 and subtitle within the same squarebrackets and separate them with " - "; so
[CD01 - Blue Disc]
is this possible?
I’ve got a strange issue with the X-Ray album song by The Darkness (I believe) where i have processed the song again and now it’s decided it is by Artist vs Poet. this is the renaming now:
Rockin’ Romance II (Compilation) (2010) by Various Artists/11 I Believe in a Thing Called Love Artist Vs Poet
Shazaming the song finds The Darkness as the artist
Where any folder features the mediatype (such as AC-DC’s “High Voltage (Compilation) (1976)” or “Iron Man 2 (Soundtrack) (2012)”) is it possible to format the folder so that the mediatype is at the beginning in squarebrackets like this?:
[Compilation] High Voltage (1976) and [Soundtrack] Iron Man 2 (2012)
I seemed to have fixed the album by using this setting in delete duplicates:
Song is a duplicate if has same - Same MusicBrainz song and same album (any version) and sounds the same
Ok i get what you mean and the options but not sure i understand enough to know the correct decisions according to what i’d like so if i gave you the example you used in the format i’d like could you advise what settings/masking, etc i’d need to achieve this please?:
David Guetta/Guetta Blaster/9 - Higher (feat. Chris Willis).mp3
obviously this isn’t my exact naming format but only used to highlight how i’d like the featured artists to be dealt with. During the fix songs (tagging) section i’m happy for all featured artists to be recorded somewhere and it seems the best place might be the ‘artist’ field and/or ‘albumartist’ field but i don’t know for sure. I like to retain as much information as possible so it is available if i ever need it but also want formatting/organisation not to be problematic. for example i’d like to record all artists, including featured artists, but only want to organise via main artist (for folders) but also include featured artists at the end of the filename and song’s title - like my David Guetta example above.
currently i have these settings in fix songs for the format tab:
When tracks contains featured artists - Only use main artist in the artist field and add others to the title field
and
When albums contains featured album artists - Add all contributing album artists to the album artist field
would this be the correct way to do things based on my needs?
there are lots of semi colons. while trying to adjust metadata for the example songs used when craeting filename masks i noticed that you use ;;; for something and i think it is that i can see. i have a feeling it isn’t a problem or bug
- characters like ?, handled by r function wrapped around results
- I noticed a space before [CD01] which shouldn’t be present, fixed by removing space from squareBrackets function
- Title case naming, since want for tags use Auto Edit task, which i think you did but need to set Capitalizer to the Capitalize Each Word option rather than Title Case option
- Put subtitle in square brackets, done with formatSubtitle function
New Rename mask
function ignoreThe(name)
{
if(name.startsWith('The ')) return name.substring(4);
return name;
}
function brackets(name)
{
if(name.length>0) return '(' + name + ')';
return '';
}
function squareBrackets(name)
{
if(name.length>0) return '[' + name + ']';
return '';
}
function yearOnly(year)
{
if(year.length>4) return year.substring(0,4);
return year;
}
function r(value)
{
return value.replaceAll("\\?","");
}
function formatSubtitle(subtitle)
{
if(subtitle.length>0) return ' - ' + subtitle;
return "";
}
r("Artists/"
+ ifnotempty2(ignoreThe(albumartist).substring(0,1),ignoreThe(artist).substring(0,1),'/')
+ ifnotempty2(albumartist,artist,'/')
+ ifnotempty(album + ' ' + brackets(yearOnly(year)),'/')
+ ifmultidisc(squareBrackets('CD' + pad(discno,2) + formatSubtitle(subtitle)) + ' ')
+ ifnotempty(pad(trackno,2),' - ')
+ title)
Could you help me put the artist within square brackets, done.
New Compilation mask
function ignoreThe(name)
{
if(name.startsWith('The ')) return name.substring(4);
return name;
}
function brackets(name)
{
if(name.length>0) return '(' + name + ')';
return '';
}
function squareBrackets(name)
{
if(name.length>0) return '[' + name + ']';
return '';
}
function yearOnly(year)
{
if(year.length>4) return year.substring(0,4);
return year;
}
function r(value)
{
return value.replaceAll("\\?","");
}
function formatSubtitle(subtitle)
{
if(subtitle.length>0) return ' - ' + subtitle;
return "";
}
r("Compilations/"
+ ifnotempty(album + ' ' + brackets(yearOnly(year)) + " by " + albumartist,'/')
+ ifmultidisc(squareBrackets('CD' + pad(discno,2) + formatSubtitle(subtitle))+ ' ')
+ ifnotempty(pad(trackno,2),' - ')
+ ifnotempty(title,' ')
+ squareBrackets(artist)
)
I cant see without support files, but AcoustIds can match to mutiple totally different songs, so maybe this was the only information available and Fix Songs picked the wrong one.
So you mean release type (media type is CD/Vinyl etectera), Im lost because I thought you wanted soundtracks in their own folder?
This simply indicates mutliple values stored in different fields
e.g
- Johnny Cash
- June Carter
rather than
- Johnny Cash June Carter
This is explained in the help text on most tabs of Manual Edit
e.g