# Convert to compilation

**URL:** <https://discourse.beets.io/t/convert-to-compilation/228>\
**Category:** Help\
**Created:** [December 5, 2017, 7:52am UTC](https://discourse.beets.io/t/convert-to-compilation/228 "2017-12-05T07:52:34Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![specialk](https://avatars.discourse-cdn.com/v4/letter/s/ec9cab/32.png) [@specialk](https://discourse.beets.io/u/specialk)\
**Post date:** [December 5, 2017, 7:52am UTC](https://discourse.beets.io/t/convert-to-compilation/228/1 "2017-12-05T07:52:34Z")

</div>

Hi,  
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?

Thanks!

Kai

---

<div class="post-metadata">

**Author:** ![adrian](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/adrian/32/4_2.png) [@adrian](https://discourse.beets.io/u/adrian)\
**Post date:** [December 5, 2017, 2:37pm UTC](https://discourse.beets.io/t/convert-to-compilation/228/2 "2017-12-05T14:37:01Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![specialk](https://avatars.discourse-cdn.com/v4/letter/s/ec9cab/32.png) [@specialk](https://discourse.beets.io/u/specialk)\
**Post date:** [December 5, 2017, 7:09pm UTC](https://discourse.beets.io/t/convert-to-compilation/228/3 "2017-12-05T19:09:39Z")

</div>

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?

---

<div class="post-metadata">

**Author:** ![adrian](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/adrian/32/4_2.png) [@adrian](https://discourse.beets.io/u/adrian)\
**Post date:** [December 5, 2017, 7:24pm UTC](https://discourse.beets.io/t/convert-to-compilation/228/4 "2017-12-05T19:24:43Z")

</div>

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?

---

<div class="post-metadata">

**Author:** ![specialk](https://avatars.discourse-cdn.com/v4/letter/s/ec9cab/32.png) [@specialk](https://discourse.beets.io/u/specialk)\
**Post date:** [December 5, 2017, 10:19pm UTC](https://discourse.beets.io/t/convert-to-compilation/228/5 "2017-12-05T22:19:55Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![adrian](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/adrian/32/4_2.png) [@adrian](https://discourse.beets.io/u/adrian)\
**Post date:** [December 5, 2017, 11:00pm UTC](https://discourse.beets.io/t/convert-to-compilation/228/6 "2017-12-05T23:00:23Z")

</div>

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:

> <https://github.com/beetbox/beets/issues/112>

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.

---

<div class="post-metadata">

**Author:** ![specialk](https://avatars.discourse-cdn.com/v4/letter/s/ec9cab/32.png) [@specialk](https://discourse.beets.io/u/specialk)\
**Post date:** [December 6, 2017, 8:57am UTC](https://discourse.beets.io/t/convert-to-compilation/228/7 "2017-12-06T08:57:41Z")

</div>

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