HydrogenAudio

Hosted Forums => foobar2000 => General - (fb2k) => Topic started by: redorb on 2024-03-23 12:48:03

Title: How to create an compilation of 60 flac files?
Post by: redorb on 2024-03-23 12:48:03
How to create an compilation of 60 flac files, each flac has its own complete meta data;
Album artist, Album, Year, Track artist, Title

I have flac files in a folder named VA - Hi-res ~ My compilation (2024)
Now, when adding that folder to foobar2000 2.1.3 [x86] (Tedgo's DarkOne v4.0 theme) all files show up as separate, not inside the compilation folder.

Like this;
1 Album artist, Album, Year, Track artist, Title (album image)
2 Album artist, Album, Year, Track artist, Title (album image)
3 Album artist, Album, Year, Track artist, Title (album image)
4 Album artist, Album, Year, Track artist, Title (album image)
5 Album artist, Album, Year, Track artist, Title (album image)
etc. etc.

I would like it to be like this in folder;
VA - Hi-res ~ My compilation (2024)
1 Album artist, Album, Year, Track artist, Title (album image)
2 Album artist, Album, Year, Track artist, Title (album image)
3 Album artist, Album, Year, Track artist, Title (album image)
4 Album artist, Album, Year, Track artist, Title (album image)
5 Album artist, Album, Year, Track artist, Title (album image)
etc. etc.

Is this doable? Are there any other method of structure for showing my compilation as I wish?
Perhaps another application than foobar?
Any input is highly appreciated.
Thanks and best regards,
redorb
Title: Re: How to create an compilation of 60 flac files?
Post by: redorb on 2024-03-25 12:42:18
It doesn't seem doable, will save the compilation as a simple playlist, case closed...
Title: Re: How to create an compilation of 60 flac files?
Post by: regor on 2024-03-25 12:55:03
Use a folders view on the album list, which uses paths instead of metadata.

Or use a TF expression with paths/folder names, etc.

In any case, you will need to duplicate your physical files. i.e. a copy within the compilation folder, and then the originals in other folders.

You may also use m-tags to create virtual copies of files, which would work like you want. As far as I know m-tags are not available at x64 foobar though.
https://www.foobar2000.org/components/view/foo_tags
Title: Re: How to create an compilation of 60 flac files?
Post by: Defender on 2024-03-25 14:09:02
Ha, that's a nice idea.

Assuming you use the original TedGo's with ELP ... yes, that is absolutely doable. I've done a similar thing for Radio streams grouped together and Youtube videos grouped together, whilst albums still are shown as separate headers.

It requires some coding though since you have to trick the group order and sort order of ELP. I did  that by putting some TF code in the ELP Settings - Field Definition and executing that code in the Group format and Sort format part of ELP Settings - Grouping.

My current grouping basically is:
Radio - grouped
YouTube - grouped
Youtube Shorts - grouped
All the rest is conventionally presented in ELP

I'll implement your idea in my code and come back to you.

Title: Re: How to create an compilation of 60 flac files?
Post by: Defender on 2024-03-25 18:39:46
@redorb

Would look in ELP like the attached picture.

Grouping is triggered by COMPILATION in the folder name (which is stripped in the Group Header).
Track Artist is forced to Artist, if Track Artist was empty.
Sorting within the Compilation group is set to Track Artist.
Title: Re: How to create an compilation of 60 flac files?
Post by: redorb on 2024-03-27 11:12:48
@regor
@Defender
Thanks for the tips, it's appreciated!
Seems easier said than done...
Gonna figure this out a bit.
Quite happy to just create a simple playlists for my compilations.

Best regards,
redorb
Title: Re: How to create an compilation of 60 flac files?
Post by: Porcus on 2024-03-27 12:28:16
In any case, you will need to duplicate your physical files. i.e. a copy within the compilation folder, and then the originals in other folders.
It is possible to use hardlinks. Saves space ... as long as you don't trigger a full rewrite by retagging (note at the end)

You may also use m-tags to create virtual copies of files, which would work like you want. As far as I know m-tags are not available at x64 foobar though.
https://www.foobar2000.org/components/view/foo_tags
foo_external_tags can be used to "temporarily" retag files.
* "Create" external tags
* Modify the external tags
* Copy but hardlink instead of copy
* Then one can "Remove" the external tags that were associated to the original albums. fb2k will then read the tags from the files.
The hardlinked files will also have the same tags in the file, so keep the external tags for those.
That also makes it easier to identify one's own compilations: search for %__tagtype% HAS xt

Question: Is it possible to accomplish this by writing it to .cue instead - without having to manually edit the cuesheet? That is, instead of doing the copy+hardlink, create a cuesheet file with the minimum of tags that a cuesheet supports, and then put the cuesheets in a playlist and - maybe - that playlist will read from cue rather than from file?
Or even: use absolute paths in the .cue, and copy all the .cue files into a "my comps" folder and drag and drop them manually?


Then for that "note" on hardlinks:
* Background for those who don't know hardlinks: a filename like "flacfile.flac" points to some specific spot on the hard drive, where the data reside. Hardlinking means you just introduce a second filename hardlinkfile.flac which also is a pointer to the same spot on the hard drive.  Reading this and reading that ... same data read. (Indeed, it doesn't matter "which one was created first".)
* But, suppose you do a tag update on one of them - say the former - and so much that it triggers a full file rewrite - then a temp file will be written, and then flacfile.flac will be deleted and the tempfile renamed to flacfile.flac .
Now flacfile.flac points to somewhere else on the hard drive, but hardlinkfile.flac happily points to where it was! The hardlinking between them is broken, and they work like two files do - spending the space that two files take up.
* Because this was triggered by writing a new temp file,
Question: If instead one uses a file format with tags at the end - WavPack, TAK, Monkey's, OptimFROG - will one then eliminate this "problem" altogether? In fb2k and most common taggers?
Title: Re: How to create an compilation of 60 flac files?
Post by: 2tec on 2024-03-27 14:34:22
Could you create a custom field called [Compilation], then populate it with the name of the compilation. Then create an autoplaylist <Compilation> PRESENT SORT BY <Compilation>