Every command supports -h/--help. Global flags (before or after the subcommand): --silent, --debug. Exit codes: 0 success · 1 user error · 2 runtime error · 3 partial success (batch).
Command Description make <file>One-shot: new → compile → auto-cast → render. Flags: --format, --acx, --bitrate, --lang, --cover, -j N, --watch, -o. new <file|folder>Create a project from EPUB/PDF/DOCX/TXT/MD or a folder of chapter files. Flags: --lang, --booknlp, --chapter-delimiter <regex>, --force-text, -o. from-stdinCreate a project from piped text (--title). load <project>Load and summarize an existing .audiobooker project. info · statusProject details · render/cache status (--json). chapters · chapters rename|reorderList / rename / reorder chapters. speakers · speakers --suggest-aliasesList speakers · propose epithet/honorific aliases (--apply). voicesList the engine’s voices (--gender, --search, --engine). diagnoseCheck Python, dependencies, voice engine, FFmpeg, ffprobe.
Command Description cast <char> <voice>Assign a voice (--emotion, --speed). cast --interactiveGuided per-uncast-speaker casting. cast-suggest · cast-apply --autoRanked suggestions · auto-apply the top pick. cast-fillBulk-assign by gender/role: --gender, --voices a,b,c, --narrator, --minor-voice, --minor-threshold. audition <char>A/B ranked candidate voices for one character (-n, --render, --line, --json). cast-preset save|list|apply|deleteNamed, reusable cast presets (across a series). cast-export · cast-importMove a cast table to/from a file (--format json|csv).
Command Description compileDetect dialogue, attribute speakers, infer emotion. --booknlp, --emotion-preset. reportCompile quality: unknown-attribution rate, top weak lines, emotion mix (--json). review-export · review-import <file>Human-editable review round-trip. emotionsList/override emotions; emotions presets; emotions mood-span. pronunciation add|remove|list|import|exportPronunciation overrides + lexicon files (CSV/JSON, phoneme passthrough).
Command Description renderRender the audiobook. Flags: --format m4b|mp3|opus|flac, --acx, --split, --bitrate, --engine, --cover, --narrator/--genre/--series, -j N, --from-chapter N, --no-resume, --allow-partial, --clean-cache, --watch, --chapters, -o. sampleA mastered retail sample clip (--from-chapter, --start-seconds, --duration, --acx). master-check <file>Measure a file vs ACX loudness/peak/noise-floor limits (--json). export-chaptersChapter cue sheet: --format ffmetadata|cue|json. podcastPer-chapter render + iTunes RSS feed (--base-url, -o). previewShort voice-QA clip in the cast voices (--chapter, --seconds). batch <files…>Batch-process books or a --manifest <toml|json> (per-book metadata/cast). cache info|clean|clean-failedManage the render cache. completion bash|zsh|fishPrint a shell-completion script.
--engine NAME (render/batch/preview/make/voices) selects a TTS backend resolved from --engine > AUDIOBOOKER_ENGINE > config > the built-in voice-soundboard. Plugins register via the audiobooker.tts_engines entry-point group.
Config file — .audiobookerrc (TOML) or [tool.audiobooker] in pyproject.toml, merged under explicit CLI flags. Common keys: output_format, output_profile, lang, jobs, booknlp_mode, emotion_mode, chapter_pause_ms.
from audiobooker import AudiobookProject
project = AudiobookProject. from_epub ( " book.epub " ) # from_docx / from_pdf / from_folder / from_string
project. render ( " book.m4b " , output_profile = " acx " )
See the Usage page for the full API walkthrough, and Architecture for how the pieces fit together.