Skip to main content

recito

recito turns a PDF or EPUB ebook into an audiobook you can listen to anywhere — narrated entirely on your own machine (an unpacked-epub directory, such as an ebook source tree, works too). It exists so that listening to a book you own doesn't mean renting a cloud narrator: no accounts, no uploads, no per-hour fees, nothing leaves your computer. The voice is an open-weight AI model and recito itself is free software.

Project page: recito.org Source: spacecruft.org/books/recito

recito reads PDFs the way a person does — two-column layouts, running headers, watermarks and page numbers are all handled — and epubs are read chapter by chapter, following the book's own table of contents. Numbers and abbreviations are spoken properly ("$3.5mn" is read as "three point five million dollars"). And every passage is checked by listening back to it: anything that comes out wrong is re-narrated automatically. The result is a single .m4b file with chapters, title, author and cover art, ready for any audiobook player.

What you need

  • A computer with an NVIDIA graphics card (about 8 GB of video memory)
  • Python 3.12 and ffmpeg
  • About 5 GB of disk space for the voice model, downloaded once on first use

Install

pip install recito

Best in a virtualenv. Detailed setup and other ways to install: the install guide.

Quick start

recito speak mybook.pdf

A while later, mybook-ryan.m4b sits next to the book. If anything interrupts the render, run the same command again — finished parts are never redone.

ryan is the default voice; recito voices lists all nine and --voice serena picks another. To check the narration before committing to a whole book, skim the text it will read (fast, no GPU needed), or render a single page:

recito extract mybook.pdf --dump-text mybook.txt
recito speak mybook.pdf --voice serena --pages 10 -o preview.m4b

You can also narrate in your own voice from a few seconds of clean audio (--voice clone:ref.wav), and books in German, French, Spanish, Italian, Russian, Chinese and Japanese work with --language.

Learn more

License

AGPL-3.0-or-later. See LICENSE.txt.

Copyright © 2026 Jeff Moe — Loveland, Colorado, USA

Metadata

Release files for recito 0.8.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for recito 0.8.3
File Size Uploaded
recito-0.8.3.tar.gz 1.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for recito 0.8.3
File Interpreter ABI Platform
recito-0.8.3-py3-none-any.whl Python 3 none any Details

Total release size: 3.2 MB

Release files / recito-0.8.3.tar.gz

Download URL recito-0.8.3.tar.gz
Size 1.9 MB
Tags Source
SHA-256 checksum
How to use checksums
542bec645c8b644e821b964eeea2d25a4d6871547897ec7aa21c3e3ccde93409
BLAKE2b-256 checksum
How to use checksums
d4923ed5ae1b9e6f87f3f9b8cf0a9fa12cff6d5f70cbf80741030b416c92dac9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / recito-0.8.3-py3-none-any.whl

Download URL recito-0.8.3-py3-none-any.whl
Size 1.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
0b33e52aee36e752049eec9811aba4a64eac7b76a57114023237972d7ef3d4ab
BLAKE2b-256 checksum
How to use checksums
6349f4075ea0702cbd2ebfda7ac4986f7ca66ff9ca732883e1bd8a30342b1db1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

0.9.0

2 release files

This release

0.8.3 This release

2 release files

0.8.0

2 release files

0.7.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page