feat: load NovelFull chapters directly for audiobooks

This commit is contained in:
Ethanfel committed 2026-10-12 10:47:32 +02:00
1 parent b4c1cb2955
commit 5a5505487c
6 files changed
+1799 -2

No files matched your search

+36
View File
@@ -10,6 +10,7 @@ A ComfyUI custom node for [OmniVoice](https://github.com/k2-fsa/OmniVoice) — a
- **Voice Presets** — built-in curated reference voices, ready to use without any audio file
- **Voice Mixing** — blend two or three reference voices for a hybrid speaker
- **EPUB Loader** — load chapters from an ebook directly into the pipeline
- **Web Novel Loader** — load NovelFull chapters directly from a novel URL, with local caching
- **Audiobook-ready** — handles arbitrarily long text with near-constant VRAM via built-in chunking
- **Multilingual** — 600+ languages
@@ -125,6 +126,41 @@ Loads an EPUB file and outputs selected chapters as plain text, ready to pipe in
**Outputs:** `text` (STRING) — selected chapters joined by `---`, `chapter_list` (STRING) — numbered list of all chapter titles for reference.
### OmniVoice Web Novel Loader
Loads chapters directly from a NovelFull novel URL, such as
`https://novelfull.net/release-that-witch.html`. No EPUB conversion is needed.
| Input | Description |
|-------|-------------|
| `novel_url` | NovelFull's main novel page, rather than an individual chapter page |
| `chapter_start` | First chapter in reading order, starting at 1 |
| `chapter_end` | Last chapter, inclusive; connect the same counter to both inputs for one chapter per audio file |
| `refresh_cache` | Re-download the index and selected chapters; leave off for normal batch generation |
**Outputs:** `text`, `chapter_title`, `chapter_list` — the same outputs as the EPUB loader.
The body excludes the leading chapter heading and translator/editor credits, and filters
injected `ReadNovelFull.com` lines (including `freёReadNovelFull.com`). Connect
`chapter_title` to your existing title-and-body join to speak the title once.
The first run reads all pages of the chapter index. Only the selected chapter bodies
are downloaded. The index and chapter text are cached under
`ComfyUI/models/omnivoice/web_novels/`, so previously loaded chapters can be reused
offline. A counter past the final chapter raises an error instead of repeating the
last chapter. Currently, the supported website is `novelfull.net`.
The included `workflows/novelfull_release_that_witch.json` adapts the existing
chapter-by-chapter audiobook workflow:
- An incrementing integer feeds both chapter inputs, starting at 1.
- The title is joined with the body once, preserving the existing text filters.
- The voice reference, generation settings, and FLAC output are preserved.
- The filename prefix follows `Release That Witch/<chapter index> <chapter title>`.
Restart ComfyUI after updating the extension, load the workflow, and set the integer
counter to your starting chapter. Queue one run per desired chapter. The reference
audio must still be available at the path selected by the Load Audio node.
## Default Workflow
A ready-to-use workflow is included at `workflows/voice_cloning.json`: