Build on the supported package contract
Use @absolutejs/voice-lmnt through its supported public entry points.
@absolutejs/voice-lmntv0.0.1-beta.6betaVoice & MediaLMNT text-to-speech adapter for @absolutejs/voice
bun add @absolutejs/voice-lmntLMNT text-to-speech adapter for @absolutejs/voice.
Wraps LMNT's /v1/ai/speech/stream HTTP endpoint behind voice's TTSAdapter seam for fast, low-latency TTS using the aurora / blizzard / mochi models.
For telephony at 8 kHz μ-law:
Option — Required — Default — Notes
apiKey — yes — — — LMNT API key, sent as X-API-Key.
voice — yes — — — LMNT voice id.
model — no — aurora — LMNT model id.
format — no — raw — Must be raw (PCM s16le) or mulaw (telephony @ 8 kHz). mp3 / wav are rejected because they aren't streamable frame-by-frame.
sampleRate — no — 24_000 — Ignored for mulaw.
language — no — — — BCP-47-ish code, or auto.
speed, temperature, topP, seed, conversational — no — — — Forwarded to LMNT.
baseUrl — no — https://api.lmnt.com — Override for staging hosts.
fetch — no — globalThis.fetch — Inject for tests; opportunistic HTTP/2 multiplexing on outbound HTTPS.
Whitespace-only send() is a no-op.
session.close(reason) aborts in-flight requests and refuses further sends.
This adapter uses LMNT's HTTP streaming endpoint. If you need their WebSocket transport, open an issue.
Outcomes
Use @absolutejs/voice-lmnt through its supported public entry points.
Hardening checklist
Follow in order
Working example for Use.
import { voice } from "@absolutejs/voice";
import { lmnt } from "@absolutejs/voice-lmnt";
const app = voice({
tts: lmnt({
apiKey: process.env.LMNT_API_KEY!,
voice: "lily",
// optional:
model: "aurora", // default; or 'blizzard' / 'mochi'
format: "raw", // default; or 'mulaw' for telephony
sampleRate: 24_000, // default
language: "en", // 'auto' to detect
speed: 1.0,
temperature: 0.6,
topP: 0.95,
conversational: true,
}),
});For telephony at 8 kHz μ-law:
lmnt({ apiKey, voice: "lily", format: "mulaw" });Supported entry points declared by this package manifest.
Package entry point declared in package.json.
Scripts declared by this package manifest.
Search the declarations exported by the current package type files. Expand a symbol to inspect its source-backed signature.