Lectures and Narrations app icon

Lectures and Narrations

Audiobooks that read along with you.

An Android player for .m4b audiobooks — with chapter-relative scrubbing, sleep timers, and an EPUB companion reader that highlights the text in sync with the narration.

★ Now on Google Play · v1.3 Android 13+ Kotlin · Jetpack Compose 100% on-device
v1.3 · 29 Jun 2026

What's new

The biggest update yet — collections, library sorting, an adjustable sleep fade, and dark mode for the reader (plus the mini-player and per-book progress from v1.2).

📂

Collections

Group your books into folders, each shown as a little shelf of the covers inside. Create one from the + button, open it to browse, and add or remove books from a book's detail sheet.

↕️

Sort your library

Order books by name or date added, ascending or descending — tap the active field again to flip direction. Your choice is remembered across launches.

🎚️

Adjustable sleep fade

The sleep-timer fade-out is now a slider — Off, 10 s, 30 s, 1 min, or 5 min — so the wind-down matches how you like to drift off.

🌙

Reader dark mode & text size

The EPUB reader gains a light / dark toggle and A− / A+ text sizing, both remembered across books and launches.

⏯️

Mini-player & progress v1.2

A compact playback bar rides along on every screen (play/pause, skips, and a Read button; tap to expand), the library shows a progress bar on each cover, and the player's chapter title doubles as a chapter picker.

See the full changelog for every change, including the v1.2 and v1.0 release notes.

One ecosystem, two halves

LN began as an AI experiment in book understanding — using language models to analyze narrative structure, character traits, and scene dynamics — and grew into an end-to-end pipeline for immersive, multi-voice audiobooks.

ln-vox The Creator

An offline, self-hosted AI pipeline that ingests raw text or EPUBs. It orchestrates LLMs to cast characters and direct emotional delivery, then uses local TTS to generate a fully acted, multi-voice .m4b complete with text-to-audio sync markers.

The Python pipeline on GitHub →

ln-reader The Consumer

A custom Android app built specifically to play these enhanced audiobooks. Chapter-relative scrubbing, sleep timers, and an EPUB companion reader that automatically highlights the text in sync with the audio.

Get it on Google Play →

What ln-reader does

A focused, offline audiobook player — no accounts, no streaming, no tracking.

📚

Library

  • Import .m4b from any SAF source — device storage, Drive, OneDrive, Dropbox…
  • Grid of covers, each with a playback progress bar; sort by name or date added (remembered).
  • Group books into collections (folders) with cover-shelf tiles; add / remove from a book's detail sheet.
  • Tap a book to start playing; detail sheet has Open, Read, images, collection, and Remove.
▶️

Player

  • Foreground media session — background playback from notification & lock screen.
  • Mini-player on every other screen — play/pause, skips, Read button; tap to expand.
  • Chapter-relative scrubber; the stacked chapter title / "Chapter N of M" is a tappable chapter picker.
  • ±10 s / ±30 s skips, prev / next chapter, 0.5×–3× speed; auto-saves and resumes your position.
🖼️

Image viewer

  • Grid of every image embedded in the m4b.
  • Full-screen pager — pinch to zoom up to 5×, pan, swipe between images.
  • Reachable from the library, the player top bar, or the Images tab.
😴

Sleep timer

  • Time mode — 5 to 90 min presets; pauses with playback, resumes on play.
  • Chapters mode — end of current, or +2 / +3 / +5 chapters.
  • Adjustable volume fade-out — Off / 10 s / 30 s / 1 min / 5 min — plus Postpone / Dismiss and shake-to-postpone.
⬇️

Downloads

  • Cloud SAF imports are copied locally so playback streams from disk.
  • Local imports are referenced in place — no copy.
  • Phase-aware progress: Downloading → Parsing m4b → done; pick any SAF folder.
📖

EPUB companion + sync

  • Built-in WebView reader with light / dark mode and adjustable text size, both remembered.
  • A sync manifest ties audio timestamps to EPUB beats & illustrations.
  • Auto-follow: highlights the active beat, scrolls, and turns pages as you listen.

EPUB + sync, in detail

Each book can carry two optional companions, attached from its detail sheet. What you get depends on what's attached:

EPUBSyncResult
Reader auto-follows the audio: highlights the active lnvox-beat span, scrolls to it, and turns pages as playback advances. Scrubber shows tappable image markers.
Plain reader, manual paging only.
Image markers on the scrubber only (no reader).
Plain audiobook.

In auto-follow mode, manually flipping a page pauses following; a Resume button re-engages it and jumps to the current beat. Scrubber image markers sit at each manifest image's position within the current chapter — tap one to open the matching embedded m4b image.

Requirements & Limitations

ln-reader is single-device, offline-first software. Here's exactly what that means.

📱

Requirements

  • Android 13 or newer (minSdk 33, targetSdk 36).
  • A file manager or cloud app exposing a DocumentsProvider for your .m4b files — Drive, OneDrive, the system Files app, and most third-party managers work.

Build it yourself

Prefer source over the Play Store? Build the debug APK in one command.

JDK 21 required. From the project root:

$ ./gradlew assembleDebug

The debug APK lands in app/build/outputs/apk/debug/. Install it with adb install.

Architecture, design decisions, and tooling quirks live in the project's DESIGN.md.

Browse the source →