// AI TOOLS · OVERTONE

Overtone

An open-source, MIT-licensed caption toolkit that transcribes, corrects, and recuts subtitles for every screen shape — 16:9, 9:16, or any aspect — from one source file.

Last verified · 2026-10-29 · by Moe Ameen

What Overtone is

Overtone (the `lonthq/overtone-captions` project, made by Lont at lont.ai) is an open-source, MIT-licensed caption toolkit built around one idea: "captions cut for every screen shape, from one file." Rather than storing finished subtitle cues the way SRT or WebVTT do, Overtone stores each spoken word once, with its time and speaker, and then derives a separate caption track for each picture shape. The defaults are 16:9 and 9:16, and you can name any aspect ratio you want.

It ships as three npm packages. The CLI (`overtone-captions`, Node.js 22.12+) exposes commands like `transcribe`, `recut`, `burn`, `export`, and `validate`. The `videojs-overtone` plugin renders those captions in a video.js 8.5+ player with five style packs (clean, social, minimal, high-contrast, lumora). The `overtone-format` package defines the `.overtone.json` file — with types, a JSON Schema, a validator, and WebVTT/SRT/text exporters — and has no runtime dependencies. There is also an agent skill for Claude Code and Codex.

Two workflows cover most jobs. `recut` runs fully offline with no API key and no ffmpeg: point it at an existing SRT or WebVTT and it rebuilds the line breaks for each shape, estimating word times from the cues. `transcribe` needs ffmpeg and provider keys — OpenAI's gpt-transcribe and Azure AI Speech by default, ElevenLabs Scribe optional, or `--local` on whisper.cpp and Ollama — and a `--dry-run` flag estimates provider cost first. Under the hood, several engines hear the audio, an LLM resolves disagreements, a second LLM corrects terms and names against your glossary and flags uncertain edits, and a versioned rule set does the line-breaking. The LLM never sets a timestamp; code validates only the structure of its edits.

The honest creator framing: Overtone is a precision caption layer for people who are comfortable in a terminal. It makes excellent subtitle files cut for multiple frames, but it makes files — not finished video. It does not generate the clip, reframe or render the footage, add a brand look to the video itself, translate, or publish anything, and its full line rules cover only English and Dutch. Media is capped at two hours and there is no GUI editor.

What you can make with it

  • A single `.overtone.json` source holding each word once, from which 16:9 and 9:16 (or any aspect) caption tracks are derived
  • WebVTT and SRT subtitle files exported per screen shape for use in any player or editor
  • An offline recut of existing captions (from WhisperX, stable-ts, or an ElevenLabs/SRT export) with cleaner line breaks
  • A fresh transcription from audio or video via OpenAI + Azure, optional ElevenLabs, or fully local whisper.cpp + Ollama
  • Speaker-labeled, glossary-corrected caption text with uncertain edits sent to a review list
  • In-player styled captions via the video.js plugin — useful for a website demo, not a posted social clip

How Kompozy turns Overtone output into content

Overtone and [Kompozy](/) solve the same captioning insight from opposite ends, which is exactly why they pair well. Overtone is downstream of a finished recording: it needs audio or an existing transcript to exist, and it turns that into provider-grade caption files cut for each frame. Kompozy sits both upstream and at the finish line — it generates the video that would need captioning in the first place, and it publishes it. A [Persona Short](/glossary/persona-shorts), a Clipped Short cut from a long recording, a Listicle Video, a brand-exact [Carousel](/glossary/hyperframes), a Blog Article, a newsletter: none of these exist for Overtone to caption until something makes them, and that generation is Kompozy's core job.

So the practical division of labor is clean. If you are a developer who wants the actual subtitle files under your control — to archive, to feed another system, to style in a video.js player, or to recut captions another tool produced — Overtone is the right tool and Kompozy does not try to replace it. If what you want is captioned, reframed, published video, Kompozy already burns on-brand auto-captions into the clip and reframes to each platform's aspect ratio in the same render, then schedules the output across the eight social platforms plus blog and email with a per-post review. One useful combined workflow: produce and clip the video in Kompozy, and for any asset where you need the raw caption file on disk, recut its transcript through Overtone. For the platform-native captioning angle, see [iOS 27 generated subtitles](/ai-tools/ios-27-generated-subtitles) and [Apple SpeechAnalyzer](/ai-tools/apple-speechanalyzer).

  1. Generate the video in Kompozy — a Persona Short, a Clipped Short from a long recording, or a Listicle Video — with auto-captions burned in and the clip reframed per platform.
  2. If you need the raw caption file on disk, export or transcribe that clip and run `overtone transcribe` (or `recut` on an existing SRT) to produce a clean .overtone.json plus 16:9 and 9:16 WebVTT/SRT.
  3. Use Overtone's glossary correction to fix product names and jargon in the caption text, and keep the reviewed file as your archival source of truth.
  4. Back in Kompozy, fan the same recording into the formats Overtone cannot make — a carousel, quote graphics, a blog, and a newsletter — all in your Persona Brief voice.
  5. Review the batch in one pipeline, add your AI-disclosure line, then schedule and publish across the eight social platforms plus blog and email on autopilot.

Frequently asked questions

What is Overtone?

Overtone (lonthq/overtone-captions) is an open-source, MIT-licensed caption toolkit. It transcribes, corrects, and recuts subtitles, storing each spoken word once and deriving a separate caption track for each screen shape — 16:9 and 9:16 by default, or any aspect ratio you name — from that single source.

Is Overtone free, and do I need to code to use it?

It is free and open-source under the MIT license. It is a command-line tool and a set of libraries on Node.js 22.12+, with no graphical editor, so it is aimed at developers. The offline recut costs nothing; the AI transcribe path uses providers that charge roughly $0.023–0.029 per audio minute, or you can run it locally.

Can Overtone caption video in different aspect ratios automatically?

Yes — that is its defining feature. It stores words once and derives caption cuts for 16:9, 9:16, or any aspect from the same source, so you do not re-wrap lines by hand for each frame. It outputs caption files, though, not reframed or rendered video.

How does Overtone work with Kompozy?

They sit at different layers. Kompozy generates and publishes the video — Persona Shorts, clipped shorts, carousels, blogs — with captions already burned in and reframed per platform. Overtone is a developer layer for producing and controlling the raw caption files. A combined flow is to create and ship the video in Kompozy and recut its transcript in Overtone when you need the subtitle file itself.

Related tools

  • iOS 27 Generated Subtitles — Apple's systemwide, on-device auto-caption feature — it transcribes any uncaptioned video during playback so you can watch sound-off. English in the US and Canada at launch.
  • Apple SpeechAnalyzer — Apple's on-device speech-to-text framework — a new proprietary transcription model, introduced at WWDC 2025, that benchmarks against OpenAI's Whisper.
  • Final Cut Pro — Apple's professional video editor for Mac and iPad — and, since the June 30, 2026 Final Cut Pro 12.3 update, an editor with on-device AI Generate Captions, Edit Detection, and (on Mac) Auto Mask.
  • Voxtral 3 — Mistral AI's third-generation speech suite: batch and real-time speech-to-text with diarization, expressive text-to-speech with voice cloning, and a LiveKit-based voice-agent SDK across 50+ languages.
  • BetterWispr — A free, open-source, local-first dictation app for Mac: hold Option + Space, speak, and cleaned-up text is typed into any app — transcribed entirely on-device, with no account, no subscription, and no cloud by default.

← All AI tools · Get started →