Repository navigation
Importing audiobooks
New audiobooks arrive somewhere else — a download folder, an incoming share — and importing is how they get filed into the collection under the right genre, author and series.
Point Import folder in Settings at that folder, then open Import in the left column.

The list of what is waiting is kept after the first read, so a large import folder is not walked every time you open the page. It keeps itself honest all the same:
- a book whose folder has gone drops off the list as soon as the list is asked for again — it could not be imported anyway;
- while the Import panel is open the folder is looked at every few seconds, so emptying it empties the list, and dropping a book in makes it appear, without your pressing anything;
- Refresh reads the folder from scratch whatever the list says.
Before 1.10.8, emptying the import folder left every book on screen until the page was reloaded.
Every book folder in the import folder, however deep it sits: a folder holding
audio is a book, and so is a folder whose sub-folders are all discs. So an
import folder organised as Author / Series / Book offers you the book, not
the author — which matters, because importing the author folder would file the
whole thing one level too deep.
The list is read once and then kept: opening Import again shows it immediately, ten per page, while a background pass checks the folder for changes and picks them up when there are any. Read again forces a fresh read, and the line at the top says when the list was last read.
Import this opens the form:

The genre, author, series and title are guessed from the folders around the book and from its tags — a leading folder that names a genre you already have is read as that genre, not as an author. Correct whatever is wrong; the line underneath shows exactly where the book will land. Find metadata looks the book up before its folder name is settled, so you can take a proper title from Google Books.
Move into the library does it: the folder is moved into
<genre>/<author>/[series]/<title> and filed in the library straight away, with
no rescan of anything. The page then opens the genre and author it landed under,
so the book is in front of you; Import in the left column is one click away
for the next one.
The folder is moved, not copied, so the import folder empties as you work through it. When the import folder and the library sit on different mounts, the files are copied across and the source removed, with the bar at the bottom counting files. Characters a path cannot hold are stripped from the names.
While an import runs, the Import this buttons are greyed out, so a slow copy cannot be started twice or asked about twice.
If a book already sits where this one would land, nothing is overwritten. The two copies are compared first — the comparison is about audio quality — and you decide:

| Row | Why it is there |
|---|---|
| Bit rate | measured from the actual bytes and playing time, so a mislabelled file cannot flatter itself |
| Sample rate, Channels | 44.1 kHz stereo over 22 kHz mono |
| Format | the codec, and whether it is lossless |
| Playing time | a copy that is much shorter is usually missing a chapter |
| Files, Size | for the picture as a whole |
The better value of each pair is green, and a line underneath sums it up: "The new copy is 32 kbps higher. It is 16 minutes longer."
Then:
-
Replace with the new one — the copy that is in the library is renamed
Replaced - <name>and left exactly where it is; the new copy takes its place, its path and therefore its row, so everyone's position in that book and every listened mark survive the swap. The old copy is listed under Replaced until you delete it. -
Keep the one I have — the incoming folder is renamed
Not Imported - <name>and stays in the import folder, so it is not offered again and you can still see what you turned down. - Cancel — nothing happens at all.
Both prefixes hide the folder from the app: neither shows up as a book, and neither is offered for import.
Replaced in the left column, above Trash, lists what a replacing import set aside — its size, its file count, its bit rate and when it happened:

Delete now removes one for good, Delete them all the lot, both after a confirmation. There is no undo here — the files go — but the copy that replaced them is what your library is now using.
Nothing expires by itself on this list, unlike the trash: a replaced copy stays until you decide, so you can listen to the new one first and only then throw the old one away.
![]()