Skip to content

Reson8 Turns

reson8/turns

Turn-aware streaming endpoint from Reson8 for voice agents, emitting turn-start, turn-end-candidate and turn-end events with adjustable eager and final probability thresholds instead of a continuous transcript stream.

API
import WebSocket from "ws";
import { readFile } from "node:fs/promises";

// Use mono, 16 kHz, signed 16-bit little-endian PCM.
const audio = await readFile("recording.pcm");
const url = new URL("/v1/audio/transcriptions/stream", process.env.AUDIOLAB_API_URL);
url.protocol = url.protocol === "https:" ? "wss:" : "ws:";
const socket = new WebSocket(url, {
  headers: { Authorization: `Bearer ${process.env.AUDIOLAB_API_KEY}` },
});
socket.on("open", () => socket.send(JSON.stringify({
  type: "session.start", model: "reson8/turns",
  encoding: "pcm_s16le", sample_rate: 16000, channels: 1,
})));
socket.on("message", (data) => {
  const event = JSON.parse(data.toString());
  console.log(event);
  if (event.type === "session.started") {
    for (let offset = 0; offset < audio.length; offset += 3200)
      socket.send(audio.subarray(offset, offset + 3200));
    socket.send(JSON.stringify({ type: "session.finish" }));
  }
});
Input Price
$0.0051 / minute
Output Price
—
Input
Audio
Output
Text

Capabilities

Explore what Reson8 Turns supports, then use the API section for a request tailored to this model.

StreamWord timestampsSegment timestampsPricing estimated

Languages

DutchEnglishFrenchGermanItalianPolishPortugueseSpanishSwedish

Model Information

Provider
Reson8
Product
Speech-to-Text
Data Policy
No training
Input
Audio
Output
Text
Provider Documentation

Playground

Try Reson8 Turns by Reson8. Requests use the selected workspace’s credits and API pricing.

Reson8 TurnsCredits —
Reson8 Turns
This model uses a dedicated input format. Explore its API example or open the supported playground.

Providers

Compare available endpoints, pricing, and context limits for Reson8 Turns.

ProviderContextOutputInput PriceOutput PriceEndpoint
Reson8Not specifiedText$0.0051 / minute—
reson8/turns:reson8

Prices are catalog rates. Your workspace’s estimate and endpoint pricing determine the final charge.

Input and Output Limits

Formats and limits AudioLab enforces on each request.

LimitValue
Max bytesNot specified
Max secondsNot specified
Formats

Provider Notes

reson8/prerecorded handles uploaded files. reson8/realtime streams interim/final transcripts, supports explicit flush, diarization, custom models, confidence, and word timing. reson8/turns is the separate low-latency turn detector: AudioLab emits turn-end candidates as interim text and emits a final transcript only after turn_end (or after the bounded end-of-audio drain). patterns are structured token patterns, not acoustic keyterm boosting. Reson8 does not publish a public usage rate, so all three catalog prices are marked as estimated.

Performance

Status

Current catalog availability. Your workspace’s access is checked separately before a request runs.

Getting Started

Use your workspace API key and the exact model identifier below. Set the API URL to the endpoint shown in your workspace and keep credentials on your server.

API
import WebSocket from "ws";
import { readFile } from "node:fs/promises";

// Use mono, 16 kHz, signed 16-bit little-endian PCM.
const audio = await readFile("recording.pcm");
const url = new URL("/v1/audio/transcriptions/stream", process.env.AUDIOLAB_API_URL);
url.protocol = url.protocol === "https:" ? "wss:" : "ws:";
const socket = new WebSocket(url, {
  headers: { Authorization: `Bearer ${process.env.AUDIOLAB_API_KEY}` },
});
socket.on("open", () => socket.send(JSON.stringify({
  type: "session.start", model: "reson8/turns",
  encoding: "pcm_s16le", sample_rate: 16000, channels: 1,
})));
socket.on("message", (data) => {
  const event = JSON.parse(data.toString());
  console.log(event);
  if (event.type === "session.started") {
    for (let offset = 0; offset < audio.length; offset += 3200)
      socket.send(audio.subarray(offset, offset + 3200));
    socket.send(JSON.stringify({ type: "session.finish" }));
  }
});
Read the Endpoint Reference

Request Parameters

Available parameters depend on the provider and request format. The endpoint reference explains accepted values and required fields.

ParameterDetails
modelreson8/turns — Required model identifier.
encoding / sample_rate / channelsView Accepted Values
custom_model_idView Accepted Values
include_timestamps / include_words / include_language / include_confidenceView Accepted Values
include_interim (realtime)View Accepted Values
diarize / max_speakersView Accepted Values
patternsView Accepted Values

Input and Output Limits

Formats and limits AudioLab enforces on each request.

LimitValue
Max bytesNot specified
Max secondsNot specified
Formats

Similar Models

Explore more speech-to-text and compare their capabilities.

ModelContextInput PriceOutput Price
Reson8 PrerecordedReson8Not specified€0.0034 / minute—
Reson8 RealtimeReson8Not specified$0.0051 / minute—
MAI-Transcribe 2Microsoft AzureNot specified$0.0014 / minute—
Gemini 3.5 TranscribeGoogle GeminiNot specified$0.0043 / minute—
Saaras v4Sarvam AINot specified₹0.425 / minute—
saaras-v4-batchSarvam AINot specified₹0.425 / minute—
View All Speech-to-Text