PDA

View Full Version : Renaming 'The Beatles' to 'Beatles, The'



Will99
12-17-2014, 07:53 PM
I've managed to work out some useful stuff with the ID Tag DSP, such as set Album Artist to 'Various Artists' for compilation discs.
What I also want to do is convert Album Artist or Artist tags from eg. 'The Beatles' to 'Beatles, The'.
I want to do this in a batch conversion for all bands/artists beginning with 'The ', so that it aligns with the naming convention of the music already in the destination library.

I've tried to work out how to do this from the ID Tag help, using commands like DEL and GRAB but it's not obvious that I can do this at all, or what the final command code will look like.

As I also want the destination folder structure based on the new tag values, I imagine that I have to repeat whatever logic I have in the ID Tag manipulation to the folder naming instructions as well.

Any ideas ? Thanks in advance ..

Spoon
12-18-2014, 04:28 AM
To change an artist such as 'The Beatles' to 'Beatles, The':

[IFEQUALS]artist,The [DEL]1,4,[artist][],[TRIM][DEL]1,4,[artist][], The[][]

Will99
12-18-2014, 07:37 AM
Fantastic, thanks very much.

I have noticed that the tag values used in the folder naming code are those in place before any ID Tag manipulation has been performed.
Can I use the same or similar instruction in my folder naming instructions ?

And one last general query - what is the significance of the "[]" code ? It seems like it may be a command delimiter or logical "OR" operand or something like that ?

Spoon
12-18-2014, 11:04 AM
The [] ends condition, such as [IFEQUALS],xxx,xxx,xxx[]

You can use this code in the dynamic filenaming as well.

Will99
12-18-2014, 11:54 AM
Again - many thanks.

Will99
12-21-2014, 12:37 PM
Maybe I'm trying to be too clever but this is the filenaming code I have :-

[IFEQUALS]genre,Classical,Classical[][IFEQUALS]genre,Opera,Classical[][IFEQUALS]genre,Chamber Music,Classical[]\[IF][album artist],=,The [DEL]1,4,[album artist][],[TRIM][DEL]1,4,[album artist][], The[],[IFVALUE]album artist,[album artist],[IFCOMP]Various Artists[][IF!COMP][artist][][][]\[album]\[track] [IFCOMP][artist] -[] [title]


Objective :-

All Classical, Opera and Chamber Music to collected under their own folder named 'Classical' (to avoid them all cluttering up a top level folder view), within that and for everything else :-

Album Artist Folder Name
If album artist tag populated

use album artist tag (transforming eg. 'The Beatles' to 'Beatles, The' if necessary)
Else

If a compilation,


use 'Various Artists'

Else


use artist tag

End-if
End-if

Then next folder name within that uses the album tag
Within that filenames are track + title tags, or track + artist + title for compilation albums.

I've been messing about with this for a while, and feel I may be close, but I'm converting an album with the following tags :-
[album artist] = The Prodigy
[artist] = The Prodigy
It's not a compilation
however the destination folder is being set up as 'Prodigy', i.e. when I want it to be 'Prodigy, The'

I presume it's possible to do what I want, but can't figure out what's wrong with my code above.

Spoon
12-22-2014, 04:39 AM
I not see this value:

[IFEQUALS]album artist,The [DEL]1,4,[album artist][],[TRIM][DEL]1,4,[album artist][], The[][]

in your naming anywhere

Will99
12-22-2014, 09:57 AM
No it is not there. As far as I can tell your suggested [IFEQUALS] code only defines what string should be inserted when a band/artist starts with 'The '. Yes I want that, but I also want to define what should happen when that condition is not satisfied. I did draft a matching [IFEQUALS] and [IF!EQUALS] pair, but it was even longer than the code I specify above, so I tried instead to put the same conditional logic in to a [IF] statement which provides for both sides of the 'IF' condition.

Anyway, I'll play around some more ...

Spoon
12-22-2014, 10:29 AM
Try each section on its own.

Brogue
01-06-2015, 12:26 AM
I have been unable to successfully embed Spoon's code for changing folder names from 'The Artist' to 'Artist, The'. My current naming scheme which works as intended is:

[IFCOMP][IFVALUE]album artist,[album artist],Various Artists[]\[album]\[IFMULTI]Disc [disc] &*8211; [][track] [title] &*8211; [artist][][IF!COMP][IFVALUE]album artist,[album artist],[artist][]\[album]\[IFMULTI]Disc [disc] &*8211; [][track] [title][]

Example results from this naming are:

For compilations: Various Artists\Jingle Bell Rock\02 Little Saint Nick &*8211; Beach Boys, The
For multi-discs: Nina Simone\Gold\Disc 1 &*8211; 02 Don't Smoke in Bed
For single artist, single discs: The Police\Every Breath You Take; The Singles\02 Can't Stand Losing You

To change 'The Artist' to 'Artist, The', I take Spoon's code:

[IFEQUALS]artist,The [DEL]1,4,[artist][],[TRIM][DEL]1,4,[artist][], The[][]

And add the following code so that folders get named if the artist does not have a 'The':

[IF!EQUALS]artist,The [DEL]1,4,[artist][],[artist][]

Combining the two results in the code I use to replace [artist] in my scheme:

[IFEQUALS]artist,The [DEL]1,4,[artist][],[TRIM][DEL]1,4,[artist][], The[][][IF!EQUALS]artist,The [DEL]1,4,[artist][],[artist][]

Since I also use [album artist] in my scheme, I use a similar code to replace [album artist]:

[IFEQUALS]album artist,The [DEL]1,4,[album artist][],[TRIM][DEL]1,4,[album artist][], The[][][IF!EQUALS]album artist,The [DEL]1,4,[album artist][],[album artist][]

The result of substituting these into my scheme is:

[IFCOMP][IFVALUE]album artist,[IFEQUALS]album artist,The [DEL]1,4,[album artist][],[TRIM][DEL]1,4,[album artist][], The[][][IF!EQUALS]album artist,The [DEL]1,4,[album artist][],[album artist][],Various Artists[]\[album]\[IFMULTI]Disc [disc] &*8211; [][track] [title] &*8211; [artist][][IF!COMP][IFVALUE]album artist,[IFEQUALS]album artist,The [DEL]1,4,[album artist][],[TRIM][DEL]1,4,[album artist][], The[][][IF!EQUALS]album artist,The [DEL]1,4,[album artist][],[album artist][],[IFEQUALS]artist,The [DEL]1,4,[artist][],[TRIM][DEL]1,4,[artist][], The[][][IF!EQUALS]artist,The [DEL]1,4,[artist][],[artist][][]\[album]\[IFMULTI]Disc [disc] &*8211; [][track] [title][]

However, the output of this scheme is missing ', The' in the folder name: Police\Every Breath You Take; The Singles\02 Can't Stand Losing You

If I extract the part of the code for non-compilations, the problem seems to be with the bold, red comma:

[IF!COMP][IFVALUE]album artist,[IFEQUALS]album artist,The [DEL]1,4,[album artist][],[TRIM][DEL]1,4,[album artist][], The[][][IF!EQUALS]album artist,The [DEL]1,4,[album artist][],[album artist][],[IFEQUALS]artist,The [DEL]1,4,[artist][],[TRIM][DEL]1,4,[artist][], The[][][IF!EQUALS]artist,The [DEL]1,4,[artist][],[artist][][]\[album]\[IFMULTI]Disc [disc] &*8211; [][track] [title][]

If the comma is removed, the result is: Police The\Every Breath You Take; The Singles\02 Can't Stand Losing You

It appears the [IFVALUE] operator doesn't like the comma in the code which works correctly when it is not embedded in the [IFVALUE] operator.

Any ideas on how to make this work for me?

Will99
02-23-2015, 02:21 PM
The [] ends condition, such as [IFEQUALS],xxx,xxx,xxx[]

You can use this code in the dynamic filenaming as well.

Hi, I seem to have found code that works for my dynamic filenaming (utilising [IFEQUALS],[TRIM],[DEL] etc.), but I am also trying to apply similar logic to the ID Tag manipulation. I have tried the following code in my ID Tag manipulation :-

IF Artist=The [DEL]1,4,[artist][]
SET Artist=[TRIM][DEL]1,4,[artist][], The[]
IF Album Artist=The [DEL]1,4,[album artist][]
SET Album Artist=[TRIM][DEL]1,4,[album artist][], The[]

However this code above does not change the [artist] and [album artist] tags from 'The Prodigy' to 'Prodigy, The'.

I have also tried using code more similar to what I have in my file naming string, i.e. :-
[IFEQUALS]artist,The [DEL]1,4,[artist][],SET artist=[TRIM][DEL]1,4,[artist][],The []
[IFEQUALS]album artist,The [DEL]1,4,[artist][],SET album artist=[TRIM][DEL]1,4,[artist][],The []
but this doesn't work either.

So I seem to have found a solution to my file naming, but not to my ID Tag manipulation. Any pointers ? Thanks.

BrodyBoy
02-23-2015, 08:03 PM
Try this pattern (and note that there is a space at the end of the first line (i.e. "The "):

IFCONTAINS ARTIST=The
SET ARTIST=[TRIM][DEL]1,4,[artist][], The[]

Will99
02-25-2015, 04:04 PM
Try this pattern (and note that there is a space at the end of the first line (i.e. "The "):

IFCONTAINS ARTIST=The
SET ARTIST=[TRIM][DEL]1,4,[artist][], The[]

Yes that works, thanks very much.
I like this program, and there obviously is lots one can do with it. Though I would like the ability to have more complex conditional logic in the Id Tag manipulation code (eg. Set Album Artist to 'Various Artists' only when Compilation flag is set AND Album Artist is currently empty). Perhaps having the same language for Id Tag manipulation that you can use in the dynamic folder naming would give this. Otherwise great ....!