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: foo_discogs (Read 1373894 times) previous topic - next topic
0 Members and 3 Guests are viewing this topic.

Re: foo_discogs

Reply #2000
Hi Just_Addict,

Remembering position is something that should be added.

Updating tags is currently not implemented in foo_discogs 2.0 version.

I will look into the artist art issue. It could be a bug.

Not sure I understand your problem with the default tag formats. They roughly match the defaults from foo_discogs 1.x, but if you changed the defaults there you'll have to change them in 2.0 as well.

The best thing to do for creating your own tag formatting string is look at defaults as examples. If you need to use additional fields or functions, check the help guide but be warned it's a bit tricky.

Re: foo_discogs

Reply #2001
Well, as far as I can remember I haven't changed anything in the 1.x defaults. I was rather daunted by the number of things I could change so I mostly set everything to only write if not present and left the remainder of the settings as they were.

What I know is that there were many tags that got returned as
Code: [Select]
 
[ "string", "string", ... ]
which now get written as
Code: [Select]
"String, String, ..."
and I've not yet found out how to format the result so it gets written in the 'old' way. So that I don't need to completely rewrite my track info panel (which was a pain to begin with so I rather don't want to have to if it can be avoided).
It will already be a lot of work to rename tags that now have a different name.

Tricky you said ... can say that again...

Re: foo_discogs

Reply #2002
Think I ran into another nigglet in my trials to get it written the way it used to.

There's this entry written named "DISCOGS_TRACKLIST_INDEX" which is composed of  the combo "%TRACK_DISCOGS_TRACKLIST_INDEX%/%RELEASE_DISCOGS_TRACKLIST_COUNT%"
The part after the "/" always gets written as "?". The tag "TOTALTRACKS" however receives the total track count from "%RELEASE_TOTAL_TRACKS%" and is always filled correctly.

And wouldn't you know, this one can't be edited to make it write the total tracks :p

EDIT: Ok, I give up, I've been focusing on DISCOGS_ARTISTS_MEMBERS and DISCOGS_ARTISTS_URLS.

No matter how I format the strings in the middle column, whether it be %TAGNAME% or %<TAGNAME>%  or as in the default %<<TAGNAME>>% for these two tags, the value always gets written as a single, comma separated string instead of as an array of strings separated by a comma.

Re: foo_discogs

Reply #2003
Thanks for the update, zoomorph!

*edit* Uh-oh.  It crashes if I try to modify the tags in the 'preview tags' pane.


Re: foo_discogs

Reply #2004
Well, as far as I can remember I haven't changed anything in the 1.x defaults. I was rather daunted by the number of things I could change so I mostly set everything to only write if not present and left the remainder of the settings as they were.

What I know is that there were many tags that got returned as
Code: [Select]
 
[ "string", "string", ... ]
which now get written as
Code: [Select]
"String, String, ..."
and I've not yet found out how to format the result so it gets written in the 'old' way. So that I don't need to completely rewrite my track info panel (which was a pain to begin with so I rather don't want to have to if it can be avoided).
It will already be a lot of work to rename tags that now have a different name.

Tricky you said ... can say that again...
[a,b,c] represents a list of 3 values: a, b, and c. They are written as a multi-value tag. foobar2000 displays them by default joined with commas. If you look in the "properties" for the metadata, they are separated with a semicolon there.

If you don't want them written as multiple values, but as a single string, you need to use $joinnames() (as in the default tag "Artist Name") or $join().

I don't know what your "old way" was so I don't know what exactly you want to do.

Re: foo_discogs

Reply #2005
Fixes:
* "Remove any pre-existing tags" feature wasn't working correctly.
* Artist artwork was being saved to Album artwork location.
* Throw OAuth error if trying to download image that is unavailable (= not authenticated).

Re: foo_discogs

Reply #2006
Well, as far as I can remember I haven't changed anything in the 1.x defaults. I was rather daunted by the number of things I could change so I mostly set everything to only write if not present and left the remainder of the settings as they were.

What I know is that there were many tags that got returned as
Code: [Select]
 
[ "string", "string", ... ]
which now get written as
Code: [Select]
"String, String, ..."
and I've not yet found out how to format the result so it gets written in the 'old' way. So that I don't need to completely rewrite my track info panel (which was a pain to begin with so I rather don't want to have to if it can be avoided).
It will already be a lot of work to rename tags that now have a different name.

Tricky you said ... can say that again...
[a,b,c] represents a list of 3 values: a, b, and c. They are written as a multi-value tag. foobar2000 displays them by default joined with commas. If you look in the "properties" for the metadata, they are separated with a semicolon there.

If you don't want them written as multiple values, but as a single string, you need to use $joinnames() (as in the default tag "Artist Name") or $join().

I don't know what your "old way" was so I don't know what exactly you want to do.

My 'old way' was as in the top example, multiple strings enclosed in double quotes, separated by commas and the whole enclosed with brackets. i.e as an array.  For the exact tags I mentioned later, e.g. DISCOGS_ARTISTS_MEMBERS and DISCOGS_ARTISTS_URLS.

What I get now is a single string where each name is separated by comma and the whole enclosed within double quotes instead of as an array of strings.

And I'm looking at raw output here, so that I don't get blasted out of the water by under-the-hood formatting FB might apply, such as your example of ";" getting replaced by "," if using the properties dialog.

Which brings me to the reason I came back.
If in the tags DISCOGS_RELEASE_CREDITS and DISCOGS_TRACK_CREDITS there appears text in the raw JSON input enclosed with right-angled brackets, it gets stripped from the resulting value.,,

E.G, for  RELEASE ID: 4549423
the raw release credits extracted from the JSON output, contains for instance the following two lines in the "extraartists" section
Code: [Select]
    {"join": "", "name": "WCI Record Group", "anv": "", "tracks": "", "role": "Mastered By [CDD Pre-mastering]", "resource_url": "https://api.discogs.com/artists/577832", "id": 577832}, 
    {"join": "", "name": "Bobby Hata", "anv": "", "tracks": "", "role": "Mastered By [LP Originally Mastered By]", "resource_url": "https://api.discogs.com/artists/384610", "id": 384610},
In the old version foo_Discogs (1.55), those were nicely written to the tags. In this version they are stripped out.

This may happen in other tag values too, I only noticed it in these two since there they were present before.

Re: foo_discogs

Reply #2007
My 'old way' was as in the top example, multiple strings enclosed in double quotes, separated by commas and the whole enclosed with brackets. i.e as an array.  For the exact tags I mentioned later, e.g. DISCOGS_ARTISTS_MEMBERS and DISCOGS_ARTISTS_URLS.
So you actually want the tag value to be, for example, this?
Code: [Select]
["artist1", "artist2", "artist3"]

Try this formatting string:
Code: [Select]
'['$join($multi_wrap(%<ARTISTS_NAME>%,"))']'

Which brings me to the reason I came back.
If in the tags DISCOGS_RELEASE_CREDITS and DISCOGS_TRACK_CREDITS there appears text in the raw JSON input enclosed with right-angled brackets, it gets stripped from the resulting value.,,
Good catch, this was a bug (in release credits only). Fixed in the attached build.

Re: foo_discogs

Reply #2008
Thanks, that formatting string produces the result I was looking for, but at the same time I'm now completely floored and wondering what the heck is happening.

Ok, could you please explain this? As I cannot wrap my head around it. Use the same Release ID as in my previous post if you want to compare with what I get.

Given the following 4 Discogs tags with their respective formatting strings (as I have them now).
Code: [Select]
DISCOGS_ARTISTS_MEMBERS		%<ARTISTS_MEMBERS>%
DISCOGS_ARTISTS_URLS %<ARTISTS_URLS>%
TEST_RELEASE_CREDITS_ROLES %<RELEASE_CREDITS_ROLES>%
TEST_RELEASE_CREDITS_NAMES %<RELEASE_CREDITS_NAMES>%
The last two I defined myself to see what happens without changing the defaults (other than that I changed the << >> to < > in the first two.

In the preview dialog, ALL FOUR, show their value as
Code: [Select]
DISCOGS_ARTISTS_MEMBERS		[Magne Furuholmen, Morten Harket, Paul Waaktaar-Savoy]	
DISCOGS_ARTISTS_URLS [http://www.a-ha.com, http://www.myspace.com/aha, http://www.darsu.btinternet.co.uk/discography/a-ha.htm, http://en.wikipedia.org/wiki/A-ha, https://www.facebook.com/officialaha?fref=ts, http://a-ha-live.com/, http://www.allmusic.com/artist/a-ha-mn0000480108]
TEST_RELEASE_CREDITS_ROLES [Art Direction,Art Direction,Design,Management,Mastered By,Mastered By,Photography By,Remix,Written-By]
TEST_RELEASE_CREDITS_NAMES [Jeffrey Kent Ayeroff,Jeri McManus,Jeri McManus,T.J. Management,WCI Record Group,Bobby Hata,Just Loomis,John Ratcliff,Pl Waaktaar]
Yet when this get written to the tags, the first two end up as a string, whereas the bottom two end up as an array. Yet all four have the exact same formatting string syntax and all 4 are multi value fields.

Now, what I cannot for the life of me follow is why with the last two user-defined tags, I get exactly what I wanted, but in the two native DISCOGS tags, the same formatting produced a totally different result? And if I want the same format I have to use
Code: [Select]
'['$join($multi_wrap(%<ARTISTS_MEMBERS>%,"))']'
to get the desired result?

Re: foo_discogs

Reply #2009
Sorry, couldn't edit anymore...

Question: Got a hunch this isn't (yet?) possible but in which object would I need to look for the identifiers section?

I found a couple of cases where the barcode was written to the tags (presumably by previous version), but I see that this is no longer so. Would be nice if this (and the other ones like matrix / runout codes) could be retrieved as well.

Re: foo_discogs

Reply #2010
The help html file should explain this. It's all about the depth of the arrays. %<<X>>%  is an array of depth 2, or an array of arrays. If you change it to %<X>%, it will automatically reduce the depth of the array to 1 by joining the inside arrays (using ", ").

When writing tags to file, any deep arrays are reduced to depth 1. And any empty values are discarded.

The preview dialog syntax is something I did last minute, and may be changed yet. Currently it does not do the same thing as when writing tags to file. It just shows the result as is, using brackets to represent the array structure. Similar to what is done in the help file. It also has a bug/limitation: [,] symbols are not escaped, which may cause an error if trying to modify a value that contains one of these symbols. I will probably change it to just show the final result... I'm only skeptical because it can be useful for modifying/understanding the tag formatting strings to see this representation. Maybe I'll make an option for which is shown.

RELEASE_BARCODE is available (see the help html file). Others I don't think are available yet but could be added.

Re: foo_discogs

Reply #2011
Updates:
* Replace ANVs button on preview dialog is now functional.
* Preview dialog now shows the actual results that will be written, analogous to what's shown in the "properties" dialog, by default.
* New "Preview raw" option to display the underlying list representation, which can be helpful for debugging  formatting strings.

Re: foo_discogs

Reply #2012
The DISCOGS_RELEASE_NOTES tag does not seem to get written properly - it strips out anything in parenthesis.

e.g.
    Flute [Alto] – Mwile Bennie Maupin* (tracks: C1 to C3)
    Guitar – Ray Parker Jr. (tracks: D1, D2)
becomes
Flute [Alto] – Mwile Bennie Maupin*; Guitar – Ray Parker Jr.

Is there a way to get the full details?
Since those credits only apply to specific tracks (C1, C3, D1, D2), foo_discogs treats them as Track credits instead of Release credits.

How could I tag single files that have no metadata?
foo_discogs is mainly meant for tagging complete releases, not individual tracks.

Fixes:
* Some small bugs reported by fuffi

Re: foo_discogs

Reply #2013
This one still happens.
Think I ran into another nigglet in my trials to get it written the way it used to.

There's this entry written named "DISCOGS_TRACKLIST_INDEX" which is composed of  the combo "%TRACK_DISCOGS_TRACKLIST_INDEX%/%RELEASE_DISCOGS_TRACKLIST_COUNT%"
The part after the "/" always gets written as "?". The tag "TOTALTRACKS" however receives the total track count from "%RELEASE_TOTAL_TRACKS%" and is always filled correctly.

And wouldn't you know, this one can't be edited to make it write the total tracks :p

Also, as mentioned before, I am trying to capture the artist name in the filename pattern for artist artwork, but none of the available variables seem to work here. I always get an underscore as a result.

tried:
the default fb version: %ARTIST%
the variable from objec:t %ARTISTS_NAME%
the formatting string as found in the tagmapping; $joinnames(%<ARTISTS_NAME>%,%<ARTISTS_JOIN>%)
and several other ways I can't remember right now...

I'm likely doing something wrong but at this point I'm clueless. How to capture artist name into filename pattern?


Re: foo_discogs

Reply #2015
Updates:
* Remove DISCOGS_TRACKLIST_INDEX stuff
* Fix artist release caching on find release dialog
* Fix filtering of master releases on find release dialog

 

Re: foo_discogs

Reply #2016
Hi, I have this request, plz. add Catalog # and Country to releases info in release list.
It's important to pick the rite album issue.
Unfortunately, that information isn't available without loading the full release pages. This would mean loading all releases when expanding the master release. Not sure that this is feasible (probably slow).

I realise this is from ages ago, but I just updated to the latest version and the release country has disappeared from the search listings. It's invaluable for tagging the correct release.
I added it back as %RELEASE_COUNTRY% and it does work, but for an artist with heaps of releases (I'm tagging Kanye right now, sue me) it takes forever, possibly crashing. I guess that's just how it is? No way of paginating, or (ideally) re-fetching countries after I select the master release perhaps?

Re: foo_discogs

Reply #2017
I added it back as %RELEASE_COUNTRY% and it does work, but for an artist with heaps of releases (I'm tagging Kanye right now, sue me) it takes forever, possibly crashing. I guess that's just how it is?
Crashing is not right, that would be a bug. Actually, it is possible. :-)

Updates:
* Show release country (by default) for expanded master releases on search dialog

Re: foo_discogs

Reply #2018
Crashing is not right, that would be a bug. Actually, it is possible. :-)

Updates:
* Show release country (by default) for expanded master releases on search dialog

Well, it may not have been crashing, just taking a verrrrry long time 'cause I chose an artist with a huge discography.

@zoomorph you're amazing, thanks for the swift update!

Re: foo_discogs

Reply #2019
Updates:
* Fix master release titles in search dialog sometimes wrong
* Fix functionality of "Find deleted releases"
* Automatically retry when API rate limiting occurs (max 20 times)
* Remove unused zlib decompression

Re: foo_discogs

Reply #2020
Is there a way to disable/ignore errors or force over ride.
e.g. (FATAL) Error: Unable to map index to Discogs tracklist.

One of the previous version's valuable 'features' was to be able to select a different release (which I often do if it has more complete information, e.g. LP release with credits/notes instead of CD with none) and then adjust the tags manually afterwards.

I have all "automatic matching options" unchecked.

Re: foo_discogs

Reply #2021
Is there a way to disable/ignore errors or force over ride.
e.g. (FATAL) Error: Unable to map index to Discogs tracklist.
That was a bug. Should be fixed below.

One of the previous version's valuable 'features' was to be able to select a different release (which I often do if it has more complete information, e.g. LP release with credits/notes instead of CD with none) and then adjust the tags manually afterwards.
I would recommend updating the Discogs database with the correct information before tagging instead of manually adjusting the tags.

Fixes:
* Fixed above error when you "remove" files on matching dialog
* Fixed memory leak

hiddden tracks

Reply #2022
With the new version of the plugin I'm trying to create a mapping for hidden tracks, starting with titles. I'm able to get the track titles with %<TRACK_HIDDEN_TRACKS_TITLE>%. However this gives only the 'hidden' tracks as the name suggests, not the 'first' track.
My goal for the track title in the following example
track numbertrack title
1.1First
1.2Second
1.3Third
is to map track number and track title into
track numbertrack title
1First / Second / Third
Any hints? Cheers.

Re: foo_discogs

Reply #2023
I would try putting the track title in an array then extending it with the hidden track titles, and finally joining it with " / ".

Re: foo_discogs

Reply #2024
Hi @zoomorph, problem with current version (not sure when it goes back to) when tagging multiple-disc releases.
Actually, the tagging is fine, but when it shows the tracks for matching, it is currently showing the last disc for all overlapping track numbers.
e.g. https://www.discogs.com/x/release/1236790
For disc 1, I see tracks
2-1
2-2
2-3
1-4
However, when I go on to preview tags and then actually tag, it correctly gave me tracks 1-1 to 1-4. Still confusing :)