Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: automation and multi-value field questions (Read 1850 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

automation and multi-value field questions

First, let me explain my current workflow when I add a release to my library:

- Tag it using foo_discogs.
- Generate a multi-value field called ARTIST_MULTI by combining the contents of DISCOGS_ARTIST_MULTI and DISCOGS_REMIXED_BY using foo_masstag.
- Generate replay-gain tags.
- Rename/move the files based on the tags.

I use the ARTIST_MULTI tag to populate my artist filter/selection. This allows me to select an artist, say Benga, and see all his tracks, even it is a collaboration with another artist or a remix by him of a track by another artist.
Is there a way to condense all these actions into one step? I just want to select one script or option from the menu and be done with it.

Also, because of how data is represented on discogs.com, tagging using foo_discogs sometimes results in duplicate values in some fields.
Is there any way to automatically rid my multi-value fields of duplicate values?

The multi-value capability makes foobar invaluable to me, but at the same the support for this is so limited that when I use it, it actually makes foobar seem inflexible and frustratingto use. Almost none of the titleformatting functions treat multi-value fields as separate values, and scripting with loops doesn't seem to be possible.I've tried foo_multiformat, which seems to work great and could solve a lot of problems for me, but as I understand it won't do anything except demonstrating potential foobar funcionality at this moment.
For instance, I would like to be able to select the first letter of the artist I'm searching for, before I actually select the artist. There is currently no way to do reliably do this while using a multi-value artist field. I can automatically generate a multi-value tag called ARTISTSORTORDER and fill it with the first letter of each artist name in ARTIST_MULTI, but then artist Walsh would also be listed under 'B', if I had a track that was made by Benga and Walsh.
Any suggestions?

Also, above I described how I generate a tag based on two other tags. This basically is just duplication metadata. I think it would be nice if you could set up a 'virtual tag' with dynamic content, based on the content of other tags.
What do you think?

automation and multi-value field questions

Reply #1
I'm totally with you for virtual tags with calculated values. It would solve a lot of problems.
I'm late

automation and multi-value field questions

Reply #2
You probably can't condense your actions. It would require multiple components to notify each other and work together. At best you can set up an Autohotkey script which would press multiple keyboard shortcuts for you.

You can probably set up an autoplaylist or just a search pattern in general which would find duplicates. You can for example check if the first value in %date% equals to the second value:
Code: [Select]
"$if($stricmp($meta(date,0),$meta(date,1)),1,0)" IS 1

As I recall you can force some pseudo-support for string operations on multivalue fields. It's basically just using a function such as $stripprefix() on $meta(field,0), then on $meta(field,1), then 2, 3... etc (assuming your field contains 1,2,3,4... values). Depending on what you actually want to do with them, that might be sufficient for some.

Take a look at foo_dynfil about your virtual tags idea. However if you just want to essentially create a 'catch all' tag, it would be probably easier to set up remappings in the same fashion as the ALBUM ARTIST->ARTIST->COMPOSER->PERFORMER lookup works by default (it checks the first field, if that's empty, checks the next, until a field with a value present is found, which is then returned). For that the settings are in File/Advanced/Display/Autocomplete fields. You can achieve the same with titleformatting as well. For example:
Code: [Select]
$if2(%primary tag%,%secondary tag%)

The code above will return the PRIMARY TAG if it's present, otherwise SECONDARY TAG is returned (assuming that is not missing as well.)

 

automation and multi-value field questions

Reply #3
However if you just want to essentially create a 'catch all' tag, it would be probably easier to set up remappings in the same fashion as the ALBUM ARTIST->ARTIST->COMPOSER->PERFORMER lookup works by default (it checks the first field, if that's empty, checks the next, until a field with a value present is found, which is then returned). For that the settings are in File/Advanced/Display/Autocomplete fields. You can achieve the same with titleformatting as well. For example:
Code: [Select]
$if2(%primary tag%,%secondary tag%)

The code above will return the PRIMARY TAG if it's present, otherwise SECONDARY TAG is returned (assuming that is not missing as well.)


If I understand what dumbnumbscum is looking forward to, the idea is to display values from different tags as if they were different values in the same split-value tag. Something similar to the multipattern function in facets, but using the the DUI or CUI, for example in the album list tree-view. At least this is what I'm interested in. Please excuse my intrusion.
I'm late