Convert to compilation

just starting out with beets, so sorry if I am missing something obvious here.

I have collections of songs that I would like to turn into compilations and have beets move them into the compilations folder. Right now, these songs are organized by a custom field and moved by a custom path style. However, this causes trouble in my player and I want to try converting them to a compilation.
So far I set albumartist="Various Artists", comp="TRUE" and albumtype="compilation". However, when I remove the custom path from the config file, the songs are not moved to a compilation, but to the non-album folder, although they share the same album name. Obviously, I want to keep the artist field.
What am I missing here?



Hi! What command are you using to make the changes? If you’re using beet modify, be sure to use the -a (album) flag, because you’re modifying an album-level field.

hm, I did use beet modify, but without the -a flag. beet modify -a mix:w2 albumartist="Various Artists gives me “error: No matching albums found.” while beet list mix:w2 gives me all the songs. Same for album. Why doesn’t beet find the albums, although the flag is set correctly for each individual file? How can I create albums from singletons?

Right. Even if all the individual tracks have their mix field set to w2, the album-level structure does not necessarily have the same field.

So you can use beet modify -a mix=w2 album:foo, for example, to set the flag at the album level. Then, it will work to do beet list -a mix:w2. The idea is that you want to manipulate whole albums at a time, so you’ll basically want to use -a across the board. Does that make sense?

ok, but how do I create new albums / compilations from existing singletons? beet modify -a mix:w2 album="foo" obviously won’t do the trick.

Aha! If they’re singletons, you’ll need a way to merge them into a new album structure. This requires a re-import, at least currently—there’s lots more discussion here:

The idea is that you can run a beet import in album mode. I think this should work even for singletons that are already in your library, but it’s worth trying out.

ok, re-importing worked just fine, no errors. After the import beet modify -a did the job. Thanks for the support. Excellent tool!