URL: https://mkdocs.justinsforge.com/memory/general/reference_audiobook_download_workflow/
Audiobook download workflow¶
Manual, no *arr automation. Audiobookshelf only watches the library folders; you put files there yourself.
Stack¶
- Audiobookshelf container on CT 102 (
media-server),media-servercompose project. UI ataudiobooks.justinsforge.com(Cloudflare Access gated). - Library mount:
/mnt/storage/audiobookson Finn →/audiobooksinside the container. - Download path: qBittorrent (behind gluetun on CT 102) →
/mnt/storage/downloads/. - No Readarr. Indexer search + grab is on you, via Prowlarr or direct.
Library folders (single source of truth)¶
Audiobookshelf scans these three roots. Drop the audiobook folder directly under the right one:
| Folder | What goes here |
|---|---|
/mnt/storage/audiobooks/Justin Audiobook/ |
Your books |
/mnt/storage/audiobooks/Kristine Audiobooks/ |
Kristine's books |
/mnt/storage/audiobooks/Personal Collection/ |
Shared / niche stuff |
Convention from existing entries: Author - Year - Title (Genre)/ with mp3 or m4b files inside.
Download steps¶
- Find the title in Prowlarr (
prowlarr.justinsforge.com) or directly on a tracker. Audiobook categories: 3030 (Audiobooks). - Send to qBittorrent (
qbit.justinsforge.com) under categoryaudiobooksif it exists, else default. Confirm save path is under/mnt/storage/downloads/(gluetun-routed for VPN). - Wait for completion, then move/rename the folder into the correct library root above.
- Prefer
m4bsingle-file format. If you got mp3s, no conversion required — Audiobookshelf handles both. - Trigger scan in Audiobookshelf UI: Settings → Libraries → "Scan" on the right library, or it'll auto-pick up within ~minutes.
Common gotchas¶
- If qBit + Prowlarr are unreachable: gluetun likely got recreated and the
network_mode: container:gluetunsiblings are stranded. Fix perreference_media_server_stack.md:docker compose -p media-server up -don CT 102. - File permissions: anything dropped into the library should be readable by the audiobookshelf container UID. If a book doesn't appear after scan,
ssh media-server 'ls -la /mnt/storage/audiobooks/<lib>/<book>'and chmod if needed. - Audiobookshelf metadata is best when folder name matches
Author - Titleor includes the title clearly. It scrapes from Audible/Google Books at scan time.
Future improvement¶
Readarr (audiobook fork) would automate this end-to-end (search → grab → import → notify). Not currently wired. Cost: another container behind gluetun + a metadata db. Worth it if Justin starts doing >2 audiobook downloads/month manually.