Cookbook / Da ebook ad audiolibro
Trasforma un EPUB in
un audiolibro

Screenshot. Il template in esecuzione in locale.
- Modelli
- sonic-3.6
- Lingue
- Inglese di default, altre con --language
- Licenza
- MIT
- Stack
- PythonGradioEbookLibffmpeguv
- Prodotti Cartesia
- Sonic 3.6
Cosa fa
Lo strumento da riga di comando e l'app web fanno la stessa conversione. Il progetto è un fork di epub_to_audiobook, il progetto open source di p0n1.
Una pagina di lettura guidata inclusa nel progetto evidenzia ogni parola durante la riproduzione, e un clic su una parola salta lì. I file dei sottotitoli funzionano nella maggior parte dei lettori.
Eseguilo tu
Anteprima senza chiave
Esegui i comandi qui sotto. Ti servono Python da 3.10 a 3.12, con uv e ffmpeg installati. L'esecuzione con
--previewnon produce audio e non richiede chiave. Divide il libro di esempio in capitoli, conta 15.065 caratteri (circa 15.000 crediti) e scriveout/cast.json, che indica la voce scelta per ogni personaggio.Variabili d'ambiente - CARTESIA_API_KEY
play.cartesia.ai/keys. Non serve per--preview
Crea l'audio
Copia
.env.examplein un nuovo file.env. Aggiungi la tuaCARTESIA_API_KEY. Caricalo nella shell con set -a; ../.env; set +a. Poi esegui lo stesso comando senza--preview. Negli script, aggiungi -y per saltare la domanda sul costo.Usa l'app web
Esegui
uv run python main_ui.py.Poi aprihttp://127.0.0.1:7860. LaCARTESIA_API_KEYdeve essere impostata in quella shell. Lascia l'host locale predefinito, perché l'app non ha login e spende i tuoi crediti per chiunque riesca a raggiungerla.Leggi mentre ascolti
Apri nel browser il file
readalong.htmldel progetto. Scegli l'MP3 di un capitolo, poi il file .timings.jsonche lo accompagna. La parola corrente si illumina durante la riproduzione.
Crealo con il tuo agente di programmazione
Un prompt che dice al tuo agente di programmazione da dove partire e cosa leggere per primo.
Prompt
Convert an EPUB into an audiobook with Cartesia. Start from https:/ and follow its AGENTS.md for the commands, files and rules. It uses the cartesia Python SDK to stream sonic-3.6 from /tts/sse with add_timestamps and use_normalized_timestamps=False, joins the raw PCM with ffmpeg into one MP3 per chapter, and writes .timings.json and .vtt files for read-along. Run a --preview first, which needs no key, to check the character count and out/cast.json. If I don't have a Cartesia API key yet, follow https:/ to get one.
Come funziona
/tts/sse con timestamp delle parole, fino a 1.500 caratteri per richiestatimings.json e un file .vtt per capitoloPerché funziona così
Lo streaming dà i tempi delle parole
L'endpoint vocale semplice di Cartesia restituisce solo l'audio. I file per la lettura guidata hanno bisogno del momento di ogni parola, e solo gli endpoint di streaming lo restituiscono. L'app imposta anche use_normalized_timestamps=False, che lascia le parole come sono scritte, per esempio $5, così l'evidenziazione corrisponde al libro.
Le voci si fissano prima di ogni capitolo
Il cast si decide una volta, prima che inizi la conversione, così i processi in parallelo e le nuove esecuzioni concordano su chi legge ogni personaggio. Una battuta senza attribuzione, come disse Alice, va all'ultimo che ha parlato, oppure all'altro quando due personaggi si scambiano battute in paragrafi consecutivi.
Gli indizi nei dialoghi impostano l'emozione
Nei dialoghi in inglese, una parola come whispered, shouted o sobbed accanto a una battuta dice a Sonic di leggerla con tono calmo, arrabbiato o triste. Laughed aggiunge una risata prima della battuta.
Personalizzalo
Scegli le voci
Modifica out/cast.json ed esegui di nuovo. Per riusare un cast, passa il tuo file con --cast_file. Ogni valore è il nome di una voce inclusa, come Archie. Può anche essere qualsiasi id di voce da play.cartesia.ai/voices.
Usa una sola voce
Esegui con --cast_mode narrator per leggere tutto il libro, dialoghi compresi, con una sola voce. Scegli quella voce con --voice_name.
Converti un'altra lingua
Passa --language fr o un altro codice lingua di Sonic. Ogni personaggio ha ancora la sua voce. Le indicazioni di emozione e di risata funzionano solo in inglese.
Unisciti ai team che passano a Cartesia
Domande
Quanto costa convertire un libro?
Sonic fattura circa un credito per carattere, e le pause tra i paragrafi vengono aggiunte in locale gratis. Esegui prima con --preview per ottenere il numero di caratteri. Il costo di un credito dipende dal tuo piano, quindi lo strumento non mostra importi in dollari.
Dà la voce giusta a ogni personaggio?
Quasi sempre, nei libri che attribuiscono le battute con disse Alice e simili. Gli sfuggono i personaggi solo sottintesi, e uno scambio senza attribuzioni tra due persone può invertirsi. Controlla il file del cast dopo un'anteprima e correggilo, oppure leggi tutto il libro con una sola voce.
Posso ascoltarlo in un'app per audiolibri come Audiobookshelf?
Sì. Ogni MP3 ha i tag di titolo, autore, album e traccia, quindi Audiobookshelf e server simili raggruppano i capitoli in un unico libro.
Posso convertire qualsiasi libro?
Converti solo libri che possiedi o di cui hai i diritti, e indica che l'output pubblicato è audio generato con IA. Il template include due capitoli di pubblico dominio di Alice nel Paese delle Meraviglie per i test.
Esiste una guida passo passo per questo template?
Sì. La ricetta spiega il codice passo per passo, il README copre configurazione, variabili d'ambiente e deploy, e il riferimento TTS via server-sent events spiega la parte Cartesia.
Altro dal cookbook
Inizia oggi
Parla con un esperto.
Contatta un membro del nostro team e scopri come Cartesia può aiutarti a creare esperienze vocali di altissimo livello.
Inizia a sviluppare.
Accedi ai nostri modelli tramite API e porta un agente vocale in produzione in pochi minuti.

