IPB

Welcome Guest ( Log In | Register )

> foobar2000 General Forum Rules

This is NOT a tech support forum.
Tech support questions go to foobar2000 Tech Support forum instead.

See also: Hydrogenaudio Terms of Service.

 
Reply to this topicStart new topic
When does Foobar2000 recognize an album as an album?
sodof
post Feb 21 2012, 23:13
Post #1





Group: Members
Posts: 5
Joined: 21-February 12
Member No.: 97317



Hi everyone,

I already searched the forum a bit but did not find the answer to my (probably simple) question: When does foobar recognize an album as an album? Or how can I tell it that a couple tracks (with different artists) all belong to one album?

My concrete issue: I have a number of albums with various artists (aka samplers). The individual tracks are tagged with the different artists, but each album has the same Album Artist and Album Title tags in every track. Shouldn't they then be recognized as whole albums, isn't this what the Album Artist tag is there for? Foobar, however, still shows me the albums as several albums, one for each artist. The files are FLAC, in case that matters...

Cheers, Sodof
Go to the top of the page
+Quote Post
db1989
post Feb 21 2012, 23:21
Post #2





Group: Super Moderator
Posts: 5275
Joined: 23-June 06
Member No.: 32180



QUOTE (sodof @ Feb 21 2012, 22:13) *
When does foobar recognize an album as an album?

You tell it how tracks should be grouped, by specifying which field(s) to examine in order to determine relationships between tracks.

QUOTE
The individual tracks are tagged with the different artists, but each album has the same Album Artist and Album Title tags in every track. Shouldn't they then be recognized as whole albums, isn't this what the Album Artist tag is there for?

That depends. Do you have it set to group by %album artist% rather than plain old %artist%? It won’t do anything unless told.

When asking questions such as this, it helps to specify things like your grouping string and (as a contingency) which UI you are using, etc.
Go to the top of the page
+Quote Post
derty2
post Feb 22 2012, 02:44
Post #3





Group: Members
Posts: 580
Joined: 5-June 11
Member No.: 91257



Create a blank new playlist and drag all your target files from Explorer into foobar2000, and have a look at how they group.
If they don't group as you expect, then you select all in the Playlist (CTRL+A) and go into Properties (ALT+ENTER)
and see if some Tag name which should be common to all files is maybe not.
The Album tag should be common to all, and so should the Album Artist tag.
The Artist tag should be unique for each track. It is also known as the 'Track Artist' tag if 'Album Artist' tag has a value (i.e., is not blank ).
If you want each unique artist name to appear with the track title then you need to include the %track artist% variable in your
formatting for the Track Title column of your Playlist Viewer; maybe something like: [%track artist%' — ']%title%

Here is a sample Playlist Viewer grouping scheme you can try using...
CODE
//======================================================================
// IF CD DISC, DISPLAY LIKE THIS ...
// ELSE IF NETWORK STREAM (Online Radio , etc), DISPLAY LIKE THIS ...
// ELSE IF FILE, DISPLAY LIKE THIS ...
//======================================================================


//----- (A) LINES SPLIT FOR EASY VIEWING OF CODE SECTIONS

$if($strstr(%path%,'cdda:'),
CD DISC'        '$directory_path(%path%)
,
$if($strstr(%path%,'http:'),
NETWORK STREAM['        '%title%]['        '%genre%]['        '$directory_path(%path%)]
,
$if2($trim(%album artist%),'%artist%')'   ●   '$if2($trim(%album%),'%album%')'   '$if2('('$trim(%date%)')','(%date%)')'        '$if2($trim(%genre%),'%genre%')'        '$directory_path(%path%)
)
)


//----- (B) LINES JOINED

$if($strstr(%path%,'cdda:'),CD DISC'        '$directory_path(%path%),$if($strstr(%path%,'http:'),NETWORK STREAM['        '%title%]['        '%genre%]['        '$directory_path(%path%)],$if2($trim(%album artist%),'%artist%')'   ●   '$if2($trim(%album%),'%album%')'   '$if2('('$trim(%date%)')','(%date%)')'        '$if2($trim(%genre%),'%genre%')'        '$directory_path(%path%)))
Go to the top of the page
+Quote Post
Ouroboros
post Feb 22 2012, 07:22
Post #4





Group: Members
Posts: 291
Joined: 30-May 08
From: UK
Member No.: 53927



I just had to fix this issue. I bet your problem is that some tracks use the foobar standard tag "Album Artist", while some use "Albumartist". Just use the latest foobar, and modify it so that both tags have the same value for all tracks in an album. "Albumartist" will disappear, and all tracks will have the tag "Album Artist" set to the single value (there are posts on why this happens in recent versions of foobar), and the album grouping will work out of the box.
Go to the top of the page
+Quote Post
sodof
post Feb 22 2012, 22:53
Post #5





Group: Members
Posts: 5
Joined: 21-February 12
Member No.: 97317



Ok, I figured out how to configure/customize the album view and have it set up now to group by %album artist% rather than by %artist%. This is my grouping string: %album%[ '['%album artist%']']|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%.

Now, next problem... I understand that %album artist% is supposed to look for “album artist”, “artist”, “composer”, “performer” in that order. Well, this works with a number of files I have from various sources (i.e., Foobar displays the "artist" if there is no "album artist" in the album list). However, it does not work with my EAC rips. It finds "album artist", but if there is none (only "artist") then it fails to display that instead (but only []).

Could that have to do with the way my EAC is set up to tag the files? I use EAC version 1.0 Beta 3 and have never changed the default tagging settings.

I have EAC set to write ID3 V1.1 tags and ID3V2.3.0 tags.

I am new to all this and haven't quite understood these tagging issues yet, so I apologize for my ignorance :-) Thanks for the help so far!
Go to the top of the page
+Quote Post
derty2
post Feb 22 2012, 23:49
Post #6





Group: Members
Posts: 580
Joined: 5-June 11
Member No.: 91257



I don't see a problem with EAC or foobar2000 or your title-formatting display preferences.

EAC, out of the box, just writes normal tags fully readable by foobar2000; it does not create wierd or bad tags.

Analyze one of these 'bad' albums ripped by EAC...

Create a blank new playlist and drag all your target files from Explorer into foobar2000, and have a look,
select all in the Playlist and go into Properties.
Do you see some Tag in Properties which may cause this problem?

Compare the problematic album with a known good album...
Drag the known good album into the same Playlist, and go into Properties.
What difference in Tags do you see between this good album and the bad album?

What happens if you change your formatting pattern to this test pattern (just for testing):
%album%[ '['$if2($meta(album artist),%artist%)']']|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%.

What is your formatting pattern for ...Library Viewer grouping, or Playlist Viewer grouping, or Both?

What is your user interface ...Default UI, or Columns UI?

This post has been edited by derty2: Feb 23 2012, 00:08
Go to the top of the page
+Quote Post
sodof
post Feb 23 2012, 20:45
Post #7





Group: Members
Posts: 5
Joined: 21-February 12
Member No.: 97317



I copied samples of "working" and "non working" files directly into blank playlists and checked the tags. There are no weird tag entries in the files I ripped, they are no different from those of the other (working) files. All the files are FLACs, the working ones, too. I even deleted the artist tag in "non working" files, saved, entered an artist name again. Still did not help.

I use the default UI. I'm at a loss...

Go to the top of the page
+Quote Post
sodof
post Feb 23 2012, 20:58
Post #8





Group: Members
Posts: 5
Joined: 21-February 12
Member No.: 97317



Ok, now I found the problem... Although there is nothing visible in the ALBUM ARTIST tags of my files, there seems to be some sort of zero value to the tags. When I manually remove the album artist tag, foobar suddenly finds the ALBUM tag instead. I will do that with all those faulty albums now and should be good then.

Thanks a lot for the help!
Go to the top of the page
+Quote Post
derty2
post Feb 23 2012, 21:00
Post #9





Group: Members
Posts: 580
Joined: 5-June 11
Member No.: 91257



Download a fresh copy of foobar2000 and create a new portable setup for testing.

Configure your Library Viewer and Playlist Viewer with your desired Title-Formatting (Configure Media Library folders if you want to populate the Library Viewer).

Drag the same 'good-bad' test albums into a blank new playlist and have a look again.

If there are no problems this time, then there is a bad tweak in your original foobar2000 installation.
Go to the top of the page
+Quote Post
Ouroboros
post Feb 23 2012, 21:05
Post #10





Group: Members
Posts: 291
Joined: 30-May 08
From: UK
Member No.: 53927



Hold on a second. In your first post you said "but each album has the same Album Artist .. tags in every track". Now you say "Although there is nothing visible in the ALBUM ARTIST tags of my files, there seems to be some sort of zero value to the tags". So, which is it, because both can't be simultaneously true......
Go to the top of the page
+Quote Post
sodof
post Feb 23 2012, 21:26
Post #11





Group: Members
Posts: 5
Joined: 21-February 12
Member No.: 97317



At the time of my first post I hadn't figured out how to customize the album view yet at all (being entirely new to foobar).

Then another problem came up:

QUOTE (sodof @ Feb 22 2012, 22:53) *
Ok, I figured out how to configure/customize the album view and have it set up now to group by %album artist% rather than by %artist%. This is my grouping string: %album%[ '['%album artist%']']|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%.

Now, next problem... I understand that %album artist% is supposed to look for “album artist”, “artist”, “composer”, “performer” in that order. Well, this works with a number of files I have from various sources (i.e., Foobar displays the "artist" if there is no "album artist" in the album list). However, it does not work with my EAC rips. It finds "album artist", but if there is none (only "artist") then it fails to display that instead (but only []).


With the next problem came the issue that %album artist% did not find the ARTIST tags in the absence of ALBUM ARTIST. But problem solved now by manually removing the album artist tags.

Sorry that things got a bit mixed up here :-)
Go to the top of the page
+Quote Post
db1989
post Feb 23 2012, 23:58
Post #12





Group: Super Moderator
Posts: 5275
Joined: 23-June 06
Member No.: 32180



QUOTE (sodof @ Feb 23 2012, 20:26) *
With the next problem came the issue that %album artist% did not find the ARTIST tags in the absence of ALBUM ARTIST.

If I am reading this correctly, something is wrong. The placeholder %album artist% maps to the first available literal field from album artist, artist, composer, and performer. If album artist is absent, the placeholder should check artist and return its value if it exists.

Are you sure that album artist is actually absent—might it instead be present, but empty?

There should be no need to delete said field in order to use artist; that defeats the point of the multi-field mapping and, really, of album artist overall.
Go to the top of the page
+Quote Post
derty2
post Feb 24 2012, 00:52
Post #13





Group: Members
Posts: 580
Joined: 5-June 11
Member No.: 91257



   >>   Are you sure that album artist is actually absent—might it instead be present, but empty?

Use the $trim variable in your title-formatting pattern if you want blank spaces to be positively ignored.

Therefore I advise the O.P. to run this test pattern instead of his own, and tell us if it fixes things:
%album%[ '['$trim(%album artist%)']']|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%

P.S. — take a look again at the code of my "sample Playlist Viewer grouping scheme" from post #3

This post has been edited by derty2: Feb 24 2012, 00:55
Go to the top of the page
+Quote Post
db1989
post Feb 24 2012, 00:57
Post #14





Group: Super Moderator
Posts: 5275
Joined: 23-June 06
Member No.: 32180



$trim only removes spaces. It will not do anything to alter the presentation/interpretation of fields that are defined but empty (i.e. zero-length). The fact that sodof observed the desired literal square brackets but with nothing inside may indicate that album artist is one such field in the affected files.

This post has been edited by db1989: Feb 24 2012, 01:05
Reason for edit: What does the server say about my edit counter?
Go to the top of the page
+Quote Post
marc2003
post Feb 24 2012, 01:07
Post #15





Group: Members
Posts: 4440
Joined: 27-January 05
From: England
Member No.: 19379



i really dislike EAC for creating empty tags. but you can strip then them in foobar by opening the properties dialog for a bunch of files.

highlight all fields>right click>copy
click the tools button>remove tags. accept the warning.
now right click and paste fields.

you might want to try this on a small subset of backed up files first.

edit: maybe it's unfair to blame EAC for this? unsure.gif afterall, it's just passing command line arguments set through the encoder settings. i'm not sure what would happen when using a command line encoder on it's own????? huh.gif

This post has been edited by marc2003: Feb 24 2012, 01:53
Go to the top of the page
+Quote Post
derty2
post Feb 24 2012, 03:05
Post #16





Group: Members
Posts: 580
Joined: 5-June 11
Member No.: 91257



Does foobar2000 have a title-formatting syntax variable for defined but empty?

Is it not possible to script ones title-formatting pattern conditionally to work around the issue, maybe using something like:
$stricmp($left($trim(%album artist%),1),'')
Go to the top of the page
+Quote Post
kode54
post Feb 24 2012, 03:59
Post #17





Group: Admin
Posts: 4580
Joined: 15-December 02
Member No.: 4082



$len() will return 0 for defined but empty fields. It will return 1 for undefined fields, but $if() conditions may be used to detect if the field is undefined, and enclosing a $len(%field%) in unescaped square brackets will prevent the output from appearing when the field is undefined.
Go to the top of the page
+Quote Post
db1989
post Feb 24 2012, 13:15
Post #18





Group: Super Moderator
Posts: 5275
Joined: 23-June 06
Member No.: 32180



QUOTE (kode54 @ Feb 24 2012, 02:59) *
$len() will return 1 for undefined fields

To clarify, this is due to such fields being mapped to a question-mark for display, as noted in the thread I linked above.

QUOTE (kode54 @ Feb 24 2012, 02:59) *
$if() conditions may be used to detect if the field is undefined

I think one could use something like this:

$ifequal($len(%field%),0,empty,
$ifequal($len(%field%),1,$if($strcmp(%field%,?),absent,
present),present)


This post has been edited by db1989: Feb 24 2012, 13:16
Go to the top of the page
+Quote Post
icstm
post Feb 24 2012, 14:40
Post #19





Group: Members
Posts: 121
Joined: 25-January 12
Member No.: 96698



just a quick point that "album artist" and "albumartist" are similar but different. Both can used within tags, but some players default to a particular one.
Go to the top of the page
+Quote Post
derty2
post Feb 24 2012, 15:28
Post #20





Group: Members
Posts: 580
Joined: 5-June 11
Member No.: 91257



One last question from me,

For testing purposes, how does one create a "defined but empty" value in a tag?
Go to the top of the page
+Quote Post
kode54
post Feb 24 2012, 16:02
Post #21





Group: Admin
Posts: 4580
Joined: 15-December 02
Member No.: 4082



I'm not sure on that one.

Anyway, regarding album artist, for all relevant formats, supported file tags are mapped to "album artist" internally. Any files which are known to use "albumartist" will be read as "album artist" and written as "albumartist".

Another issue which cropped up due to the period in which foobar displayed ID3v2 TPE2 as "band" while storing its "album artist" as a TXXX frame named "album artist", files which were tagged with both fields will display two values for "album artist" in the current version when using default settings. The fix is to mass set "album artist" to format from the script "$meta(album artist,0)" on all affected files.
Go to the top of the page
+Quote Post
marc2003
post Feb 24 2012, 16:35
Post #22





Group: Members
Posts: 4440
Joined: 27-January 05
From: England
Member No.: 19379



QUOTE (derty2 @ Feb 24 2012, 14:28) *
For testing purposes, how does one create a "defined but empty" value in a tag?


you can do it with flac on the command line
CODE
flac "path\to\input.file" -T "COMMENT=" -o "output.flac"


add it to a playlist in foobar and this query will find it.

CODE
comment PRESENT



Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 31st July 2014 - 19:32