Add the step-by-step fixer and library types
Each pair is a Music (Artist/Album/01 Title) or Soundtracks (Album/01 Title) library. The new Fixer tab takes the master, then the slave, through four reviewed steps: folder structure, album tags (optional MusicBrainz lookup; the slave reuses the fixed master's tags), folder names and file names, then links the two libraries. Every fix is an undoable operation. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b11d0806c1
commit
428935dc58
19 files changed
+3503
-23
No files matched your search
@@ -7,6 +7,32 @@ up disk space only once, while both libraries keep looking exactly the same to P
|
||||
It ships as a single Go binary with an embedded React web UI and SQLite state, packaged as a small Docker image, in the style of
|
||||
[qui](https://github.com/autobrr/qui).
|
||||
|
||||
## Workflow: fix, organize, then link
|
||||
|
||||
Each library pair has a **type**: **Music** (recommended layout `Artist/Album/01 Title.flac`) or **Soundtracks** for video game and film
|
||||
soundtracks (`Album/01 Title.flac`, named by game or film). The type sets the default naming; the *Organize* tab can change it.
|
||||
|
||||
The **Fixer** tab takes each library through the same steps, the **master first, then the slave**, and then links the two:
|
||||
|
||||
1. **Folder structure.** Every album in its own folder at the right depth. Songs outside an album folder move into one named from their
|
||||
tags; extra folders around an album (a composer folder around a soundtrack, `Metal/Artist/Album`, a `FLAC` folder inside an album) are
|
||||
removed; songs in disc folders (`CD2`, `Disc 2`) get their disc number; missing titles, track numbers, albums and artists are filled in
|
||||
from the folder and file names (`Album (2010) [FLAC]` → `Album`). When several albums sit in the same extra folder it may be a category
|
||||
you want to keep (`Video Games/…`), so those moves are listed but not selected, with a hint to give that folder its own naming.
|
||||
2. **Album tags** (optional). Each album is looked up on MusicBrainz: the best few releases are compared with your songs' titles (so a promo
|
||||
single never beats the album it is named after), songs are matched to tracks by number or title, and the corrected titles, track and
|
||||
disc numbers, album artist and date are shown per album for review, with a confidence rating. You can pick another release or edit the
|
||||
album by hand. In the slave, albums that are also in the (fixed) master take the master's tags instead, so both libraries match.
|
||||
MusicBrainz allows about one request a second, so large libraries take a while; limit it to a folder or skip albums whose tags are already
|
||||
complete.
|
||||
3. **Folder names.** Artist and album folders are renamed from the tags. Whole album folders move, so covers and booklets stay with them.
|
||||
4. **File names.** Songs are renamed from the tags; multi-disc albums get `Disc 01`, `Disc 02` folders.
|
||||
5. **Link the libraries.** Scan, fix any folders still named differently, link the identical songs, then open **Review** for the rest.
|
||||
|
||||
Every step is a check first: nothing changes until you apply the fixes you selected, each fix is an operation in History that can be undone,
|
||||
and dry run applies. Problems that need a person (a song without an album tag, a folder with songs from several albums) are listed with an
|
||||
**Edit album** button. A step is marked done when everything in it was fixed; you can also mark it done or skip it yourself.
|
||||
|
||||
## What it does
|
||||
|
||||
Files are matched by their **path relative to each library root**. Any folder layout works (`Artist/Album/Title.ext`,
|
||||
|
||||
Reference in new issue
Block a user