I don't think there's currently a way to make beets understand multiple
format libraries in a graceful way. There is no way (currently) to have
beets separate your formats, and disambiguate between different releases of
an album, without introducing some messiness in the directory structure. If
you want to keep both the US
<https://musicbrainz.org/release/367c8521-2d98-4e12-878e-b19acfb38c3b> and
GB <https://musicbrainz.org/release/11939557-adb6-4f5c-8f80-9b1822b466a7>
releases
of Squarepusher's Big Loada on disk, you need %aunique. And if you want to
keep multiple formats, you need $format. But since the two work
independently, anytime you're importing an album in two formats one of the
two is gonna have a superfluous disambiguation appended to it.

Personally, I include the format early in the path, include an album level
disambiguation, and configure beets to accept duplicates. In practice, I
don't find the messy directory structure a big deal, because all of the
applications I use obscure the actual directory structure. Kodi, subsonic,
iTunes, etc, all maintain their own internal library.

I've actually considered blowing away my current beets library and instead
setting up parallel libraries based on the format. You can specify the
library path on the command line. In my case I've automated much of my
beets workflow, so adding logic to check for filetype and selecting the
library appropriately wouldn't be too hard. For interactive use with beets
I'd setup some bash aliases pointing at the library in question (fbeet or
mbeet, for instance).

On Sun, Apr 23, 2017 at 12:39 AM, twrightsman <[email protected]>
wrote:

> Ah, this plan now looks so much worse in hindsight. How would beets know
> what format to assign if there was a mixture of formats in the album...
> This gets back to the old issue (#2316) I raised on GitHub about supporting
> multiple formats of the same track, related to 1640, similar to how Calibre
> supports multiple book formats. But it sounds like a big paradigm shift for
> beets at the moment.
>
> As a user I could imagine cases where I'd want to choose the
> format/quality of a given track (if multiple formats/bitrates already exist
> in the library, otherwise convert could do it on-the-fly) from beets:
>
>    1. I'm streaming over WAN and want to downgrade to OGG to improve my
>    listening experience; when I get back to LAN (assuming my beets server is
>    at home) I can upgrade back to FLAC or something.
>    2. I don't want to take up too much space on my phone with lossless
>    FLAC so I'll load the MP3 or AAC for on-the-go but keep the FLAC on my
>    server or other computer for listening at home.
>
>
> On Saturday, April 22, 2017 at 7:07:21 PM UTC-7, Adrian Sampson wrote:
>>
>> I believe the problem is that `format` and `bitrate` are track-level
>> fields, so %aunique isn't able to read them from the album structure. You
>> might try using the inline plugin to define album-level equivalents for
>> these fields, which might make this work.
>>
>> I believe "Broken Silence" must come from the label or another field in
>> your disambiguator list. You might try using the info plugin to list all
>> the fields on the music.
>>
>> Adrian
>>
>> On Apr 22, 2017, at 8:27 PM, twrightsman <[email protected]> wrote:
>>
>> Before I posted this as an issue to the beets GitHub repo, I wanted to
>> make sure this wasn't an error on my end.
>>
>> I'm attempting to do a simple task: import an album that already exists
>> in my beets library but is of a different format. The FLAC version is
>> already in my library and I'm trying to import the AAC version as well.
>>
>> $ beet -vv import ~/Downloads/Hvel/Hvel\ AAC/
>> user configuration: n/home/twrightsman/Documents/D
>> ropbox/Music/config.yaml
>> data directory: /home/twrightsman/Documents/Dropbox/Music
>> plugin paths:
>> Sending event: pluginload
>> library database: /home/twrightsman/Documents/Dr
>> opbox/Music/beetslibrary.blb
>> library directory: /home/twrightsman/Documents/Dropbox/Music
>> Sending event: library_opened
>> Sending event: import_begin
>> Sending event: import_task_created
>> Sending event: import_task_start
>> Looking up: /home/twrightsman/Downloads/Hvel/Hvel AAC
>> Tagging Árstíðir - Hvel
>> Searching for discovered album ID: db886617-dffa-4999-a19d-72061dcf2f65
>> Candidate: Árstíðir - Hvel
>> Success. Distance: 0.00
>> Album ID match recommendation is Recommendation.strong
>> ID match.
>>
>> /home/twrightsman/Downloads/Hvel/Hvel AAC (12 items)
>> Sending event: before_choose_candidate
>> Tagging:
>>     Árstíðir - Hvel
>> URL:
>>     https://musicbrainz.org/release/db886617-dffa-4999-a19d-72061dcf2f65
>> (Similarity: 100.0%) (Digital Media, 2015, XW)
>> Sending event: import_task_choice
>> found duplicates: [43]
>> default action for duplicates: a
>> This album is already in the library!
>>
>> *Old: 12 items, FLAC, 786kbps, 44:58, 256.7 MiBNew: 12 items, AAC,
>> 160kbps, 44:58, 55.1 MiB*
>> [S]kip new, Keep both, Remove old? K
>> [truncated]
>> $ ls Árstíðir
>> Hvel  Hvel []
>> $ beet move
>> Moving 12 items.
>> $ ls Árstíðir
>> Hvel []  Hvel [Broken Silence]
>>
>> ----------------
>> And my beets config:
>>
>> $ beet config
>>
>> plugins: edit mbsync absubmit
>> acoustid:
>>     apikey: [redacted]
>>
>> paths:
>>     default: *$albumartist/$album%aunique{albumartist album,albumtype
>> year label albumdisambig format bitrate}/$track $title*
>>     singleton: Singles/$artist/$title%aunique{artist title,year label
>> format bitrate}
>>     comp: Compilations/$album%aunique{albumartist album,albumtype year
>> label albumdisambig format bitrate}/$track $title
>>
>> ui:
>>     color: yes
>>
>> import:
>>     copy: yes
>>     write: yes
>>     resume: ask
>>     languages: en
>> threaded: yes
>> directory: /home/twrightsman/Documents/Dropbox/Music
>> library: /home/twrightsman/Documents/Dropbox/Music/beetslibrary.blb
>> edit:
>>     ignore_fields: id path
>>     albumfields: album albumartist
>>     itemfields: track title artist album
>> absubmit:
>>     extractor: ''
>>
>> Beets is obviously detecting the format/bitrate differences between the
>> two albums at import time but it names the FLAC album something strange
>> "Hvel [Broken Silence]" when I'm expecting "Hvel [AAC]" then I expect the
>> original FLAC Hvel album to rename to "Hvel [FLAC]" when I run "beet move"
>> but nothing happens. I have no idea where this "Broken Silence" string is
>> coming from, it is not in my beets library.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "beets" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "beets" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"beets" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to