StreamFluentStreamFluent
Documentation

StreamFluent Docs

Everything you need to set up real-time AI voice dubbing for your live streams. Stream in your language, reach every audience.

Quick Start

Get your first dubbed stream running in under five minutes using the OBS plugin.

Step 1

Create your account

Sign up at streamfluent.ai with email or social login (Google, Twitch, Kick). You'll land on your dashboard immediately.

Step 2

Install the OBS Plugin

Download the plugin for your OS from the OBS Plugin page. Install it into your OBS plugins folder (or run the installer on Windows) and restart OBS.

Step 3

Log in and configure

Open View β†’ Docks β†’ StreamFluent.ai in OBS. Log in with Google, Twitch, Kick, or email. Select your audio source, choose target languages, and adjust caption and volume settings.

Step 4

Go live

Click Connect in the StreamFluent dock β€” the status dot turns green when connected. Add the dubbed audio and caption sources to your scene, then start streaming in OBS as usual.

Tip
The OBS plugin only processes audio β€” your video goes directly to your streaming platform. No RTMP relay, no stream keys to copy, no extra setup.

How It Works

StreamFluent processes your speech in real time β€” translating and re-voicing it into other languages while you stream.

OBS Plugin

Recommended
Your MicAudio capture
PluginWebSocket
AI PipelineSTT β†’ Translate β†’ TTS
OBS MixerDubbed sources

The OBS plugin captures your microphone audio and sends it to StreamFluent's AI pipeline over a WebSocket connection. Your speech is transcribed, translated, and re-voiced β€” then the dubbed audio is returned as mixer sources directly in OBS.

Your video stream goes directly to your platform (Twitch, YouTube, Kick, etc.) without passing through StreamFluent's servers. Only audio is processed remotely, keeping latency low and stream quality unaffected.

RTMP Relay

Alternative
Your OBSAudio + Video
RTMP IngestDemux streams
AI PipelineSTT β†’ Translate β†’ TTS
DestinationsPer-language output

With RTMP relay, you point your streaming software at StreamFluent's ingest server instead of your platform. We receive your full stream, process the audio through the AI pipeline, and distribute dubbed versions to your configured destinations.

Video is forwarded without re-encoding. Each translated audio track is remuxed with your original video and pushed to the corresponding destination channel.

Note
Your original video is never re-encoded in either method. Only audio is processed, keeping video quality identical to your source.

AI Dubbing

AI Dubbing is the core of StreamFluent β€” real-time voice translation that converts your speech into other languages as you stream.

How Dubbing Works

When dubbing is active, StreamFluent runs three stages: speech recognition converts your voice to text, neural translation adapts it to each target language, and voice synthesis generates spoken audio using your selected voice profile.

The entire process runs with under one second of latency. Dubbed audio is delivered alongside your original audio β€” with the OBS plugin, it appears as separate mixer sources you can control independently.

Dubbing Modes

You can control how dubbing behaves for each target language:

ModeBehavior
AutoDub into the target language when it differs from your source language (default)
Original OnlyPass through your original audio with no dubbing β€” useful for your native-language output
Captions OnlyNo dubbed audio β€” viewers hear your original voice with translated captions
Tip
Use Captions Only mode for audiences who partially understand your language β€” they get the authenticity of your real voice with subtitles as a safety net. It also uses fewer dubbed minutes.

Voice Technology

StreamFluent offers three tiers of voice technology depending on your plan.

TierTechnologyPlan
Basic TTSDefault male or female AI voice with natural intonationAll plans
Custom VoiceChoose from 28 premium voices with optional per-language overridesBasic+
Voice CloningClone your own voice β€” record a 30-second sample and stream in your voice across all languagesPro+

Setting Up Your Voice

  1. Navigate to Voice in the dashboard sidebar
  2. Choose your voice type: Basic (male/female toggle), Custom (browse 28 voices), or Replicated (clone your voice)
  3. For Voice Cloning: record or upload a 30-second sample. Status will change: Not Started β†’ Processing β†’ Ready
  4. Preview your voice in any supported language from the Voice page

Voice Settings

SettingRangeDescription
Speaking Rate0.5x – 2.0xSpeed of the dubbed voice output
Pitch Adjustment-12 to +12 stShift pitch up or down in semitones
Emotion Preservationon / offMaintains emotional tone in dubbed audio Scale

Supported Languages

StreamFluent supports 32 languages for both speech recognition (source) and translation (target). Every language works in both directions.

All supported languages work as both source (the language you speak) and target (the language you translate into):

EnglishSpanishJapanesePortugueseFrenchGermanKoreanChineseItalianRussianArabicHindiTurkishDutchPolishSwedishDanishNorwegianFinnishCzechRomanianHungarianGreekThaiVietnameseIndonesianMalayTagalogUkrainianBulgarianCroatianSlovak

Supported Platforms

StreamFluent works with all major streaming platforms:

TwitchYouTubeKickRumbleAny RTMP endpoint
Tip
A Japanese speaker can stream to English, Spanish, and Korean audiences just as easily as an English speaker can stream to Japanese, Spanish, and Korean. All languages are fully bidirectional.

OBS Plugin

The OBS plugin is the recommended way to use StreamFluent. It captures your audio locally, processes it through our AI pipeline, and returns dubbed audio directly into your OBS mixer.

How It Works

The plugin connects to StreamFluent via WebSocket. Your microphone audio is sent to our servers, processed through the AI pipeline (speech recognition β†’ translation β†’ voice synthesis), and dubbed audio is returned as virtual sources in your OBS mixer.

Your video stream goes directly to your platform β€” StreamFluent never touches it. Only audio is processed remotely, so your stream quality and stability are completely unaffected.

Installation

  1. Download the plugin for your OS from the OBS Plugin setup page
  2. Install the plugin into your OBS plugins folder (macOS/Linux) or run the installer (Windows)
  3. Restart OBS Studio

Login

Open View β†’ Docks β†’ StreamFluent.ai in OBS. You can authenticate using:

  • Google, Twitch, or Kick (OAuth)
  • Email and password
  • API key from Dashboard β†’ Settings

Configuration

Once logged in, configure your dubbing settings directly in the dock:

  • Audio source β€” select which mic/audio input to capture
  • Target languages β€” choose one or more languages to dub into
  • Caption style β€” toggle captions and customize appearance
  • Volume β€” adjust dubbed audio and original audio levels

OBS Sources

The plugin creates virtual sources for each target language that you add to your OBS scene:

StreamFluent Dub β€” [Language]

Dubbed audio track for the target language

StreamFluent Captions β€” [Language]

Live caption overlay for the target language

Going Live with the Plugin

  1. Click Connect in the StreamFluent dock β€” the status dot turns green
  2. Add dubbed audio and caption sources to your OBS scene
  3. Start streaming in OBS to your platform as usual
  4. Monitor transcription in the dock to confirm audio is being processed
Tip
With the OBS plugin, you stream directly to your platform. No RTMP relay, no stream keys to copy into OBS, no destination setup needed β€” just log in and go.

Chrome Extension

The StreamFluent Chrome extension lets viewers watch any live stream dubbed into their language in real time.

How It Works

The extension works on Twitch, YouTube, Kick, Rumble, and other streaming sites. It captures the stream audio, sends it through StreamFluent's AI pipeline, and plays back dubbed audio in your chosen language β€” all in real time with under one second of latency.

Installation

  1. Visit the Chrome Web Store (link on the StreamFluent homepage)
  2. Click Add to Chrome and confirm the installation
  3. The StreamFluent icon appears in your browser toolbar

Setup

  1. Click the StreamFluent icon in your toolbar on any supported streaming site
  2. Log in with your StreamFluent account (Google, Twitch, Kick, or email)
  3. Select the source language (the language the streamer is speaking)
  4. Select the target language (the language you want to hear)
  5. Choose a voice for the dubbed audio
  6. Click Start Dubbing

Features

Toggle dubbed audio on/off independently
Toggle live subtitles on/off independently
Under 1 second latency
Works on Twitch, YouTube, Kick, Rumble, and more
Tip
Use headphones when using the extension to avoid feedback between the stream audio and your speakers.

RTMP Relay

RTMP relay is an alternative connection method available on all plans. Instead of using the OBS plugin, you point your streaming software at StreamFluent's ingest server. We process your audio and distribute dubbed streams to your configured destinations.

How It Works

Your full RTMP stream (audio + video) is sent to StreamFluent's ingest servers. We separate audio and video β€” video is forwarded without re-encoding, and audio is processed through the AI pipeline. Each translated audio track is remuxed with your original video and pushed to the corresponding destination.

OBS Studio Setup

  1. Open OBS β†’ Settings β†’ Stream β†’ Service: Custom
  2. Set Server to rtmp://ingest.streamfluent.ai/live
  3. Paste your Stream Key from the dashboard
  4. Click Start Streaming
RTMP Stream Settings
config
Server:     rtmp://ingest.streamfluent.ai/live
Stream Key:  sk_live_xxxxxxxxxxxxxxxxxxxxxxxx

Streamlabs Desktop Setup

  1. Open Streamlabs Desktop β†’ Settings (gear icon) β†’ Stream
  2. Set Stream Type to Streaming Services
  3. Choose Service: Custom
  4. Set Server to rtmp://ingest.streamfluent.ai/live
  5. Paste your Stream Key from your StreamFluent dashboard
  6. Click Done, then Go Live
Tip
Your RTMP stream key is unique to your account. Find it on the Stream Settings page in your dashboard. Never share it publicly.

Destinations

With RTMP relay, you configure destinations in your StreamFluent dashboard. A destination is a combination of language + platform + stream key.

  1. Go to Destinations in your dashboard
  2. Click Add Destination
  3. Select a target language for dubbing
  4. Choose a platform (Twitch, YouTube, Kick, or Rumble)
  5. Enter your channel name and stream key from that platform
  6. Enable or disable the destination at any time

Where to Find Stream Keys

Twitch: Dashboard β†’ Settings β†’ Stream β†’ Primary Stream key

YouTube: YouTube Studio β†’ Go Live β†’ Stream settings β†’ Stream key

Kick: Dashboard β†’ Settings β†’ Stream Key

Rumble: Rumble Studio β†’ Stream settings β†’ Stream URL & Key

Note
The number of destinations you can add depends on your plan: Free allows 1, Basic allows 1, Starter up to 2, and Pro and above allow unlimited destinations.

Final Destination

Final Destination forwards your original, untranslated stream to your main channel. StreamFluent sits between your encoder and your platforms β€” translated versions go to language destinations, and the original goes to your main channel.

OBSStreamFluentYour Main Channel

Stream to StreamFluent instead of your platform directly. We process your audio for translation destinations and simultaneously relay the original to your main channel.

  1. Go to Stream Settings in your dashboard
  2. Toggle on Final Destination
  3. Select your main platform (Twitch, YouTube, Kick, Rumble, or Custom RTMP URL)
  4. Enter the stream key for your main channel
Tip
With Final Destination enabled, you only need to stream to StreamFluent's RTMP server. We handle forwarding to your main channel and all your translation destinations simultaneously β€” one stream in, many streams out.
Note
Final Destination supports Custom RTMP URLs for destinations beyond the built-in platforms. Enter any valid RTMP endpoint and stream key.

Source Language

The source language tells StreamFluent what language you speak. This drives speech recognition, translation direction, and passthrough detection.

Setting Your Source Language

Configuration

Set your source language in the OBS plugin dock or in Stream Settings on the dashboard (for RTMP relay). This tells StreamFluent what language your microphone audio is in and drives the entire pipeline:

  • Speech-to-text β€” the recognition engine is configured for your source language
  • Translation β€” text is translated from your source language to each target language
  • Passthrough β€” target languages that match your source language skip dubbing entirely

Example Use Cases

ScenarioSource LanguageTarget Languages
English speaker reaching global audiencesEnglishSpanish, Japanese, Korean, etc.
Japanese speaker streaming to English viewersJapaneseEnglish, Korean, Chinese
Korean streamer with dubbed & original channelsKoreanEnglish, Japanese + Korean (passthrough)
Tip
All 32 supported languages work as both source and target. A Japanese speaker can stream to English, Spanish, and Korean audiences just as easily as an English speaker can stream to Japanese, Spanish, and Korean.

Audio Settings

Control how original and dubbed audio are mixed in your output.

SettingDefaultDescription
Original Volume20%Volume of your original voice in dubbed output
Dubbed Volume100%Volume of the AI-dubbed voice output
Auto-duckingonAutomatically lowers original audio when dubbed voice is active
Noise ReductionLightAudio preprocessing before speech recognition. Options: Off, Light, Aggressive. Reduces background noise for cleaner transcription.
Tip
Keep original volume at 10–20% so viewers hear enough of your real voice to feel the authenticity, while the dubbed track does the heavy lifting.

Captions / Subtitles

Add live translated captions to your streams. Captions work independently of dubbing β€” use them alone, with dubbing, or not at all.

Enable Captions

Configuration

Toggle captions in the OBS plugin dock or in Stream Settings on the dashboard. Captions are unlimited on all plans.

Caption Settings

SettingOptionsDescription
PositionBottom Center / Top CenterWhere captions appear on the video
Font Size16px – 48pxSize of caption text (default 38px)
Background ColorAny hex colorCaption box background color (default black)
Background Opacity0.0 – 1.0Transparency of the caption background (default 0.7)
Font ColorAny hex colorCaption text color (default white)
FontNoto Sans CJK / othersCaption font family
Caption LanguageTranslated / OriginalWhether captions display in the translated language or your source language

Caption Language Mode

The Caption Language setting controls which language the caption text appears in:

ModeBehaviorBest For
TranslatedCaptions appear in each target language. Spanish output shows Spanish captions, Japanese output shows Japanese captions.Fully localized streams where viewers see everything in their language
OriginalCaptions stay in your source language. Audio is dubbed but subtitles remain in the original.Dubbed audio + original-language subtitles for viewers learning a language

Common Combinations

Dubbed Audio + Translated Captions

Full localization β€” viewers hear and read in their language.

Dubbed Audio + Original Captions

Dubbed voice with original subtitles β€” great for anime-style streams or language learners.

Original Audio + Translated Captions

Your real voice with translated subtitles β€” for audiences who prefer the authentic voice.

Tip
Captions and dubbing work great together. Try Original caption mode with dubbing for an anime-style experience where viewers hear the dubbed voice but can read along in the original language.

Going Live

Once configured, going live with StreamFluent takes just a few clicks.

With the OBS Plugin

  1. 1Click Connect in the StreamFluent dock β€” wait for the green status dot
  2. 2Verify your dubbed audio and caption sources are in your scene
  3. 3Start streaming in OBS to your platform as usual
  4. 4Monitor the transcription feed in the dock to confirm audio is being processed

With RTMP Relay

  1. 1Ensure your OBS stream output points to StreamFluent's RTMP server
  2. 2Verify your destinations are configured in the dashboard
  3. 3Click Start Streaming in OBS
  4. 4Open the Live Monitor in your dashboard to see real-time status
Tip
You can enable and disable individual languages mid-stream without affecting your other outputs or your original broadcast.

Live Monitor

The Live Monitor in your dashboard gives you a real-time overview of every active language output, live transcription, and the ability to hear your dubbed audio.

Language Cards

Each active language is shown as a card with live metrics. You can enable or disable individual languages mid-stream.

Audio LevelsReal-time VU meter
ViewersPer-channel count
LatencyPipeline delay
HealthPipeline status

Live Transcription Feed

A real-time transcription panel shows what StreamFluent is hearing and translating. Interim (in-progress) text is shown in lighter text until finalized.

Language Tabs

Switch between translated languages using the tab bar above the transcription feed. Each tab shows your speech translated into that language in real time. An "Original" tab shows your untranslated speech.

Available language tabs match your active target languages.

TTS Audio Playback

Click the TTS button to hear the dubbed audio for the selected language directly in your browser. This lets you monitor what your translated audience is hearing without switching to their stream.

Audio clips play as new transcription chunks arrive. Toggle TTS off at any time to mute playback.

Tip
Use TTS playback to spot-check translation quality during your stream. Select different language tabs to hear how your voice sounds in Spanish, Japanese, or any other active language.
Warning
If a language output shows degraded health, check your network connection and bitrate settings.

Plans & Usage Limits

StreamFluent uses usage-based pricing. Captions are unlimited on every plan. Each plan includes a monthly allotment of dubbed minutes. Free plans have a hard cap; paid plans allow pay-as-you-go overage.

ResourceFreeBasic ($9.99/mo)Starter ($27.99/mo)Pro ($67.99/mo)Scale ($249.99/mo)
Captions includedUnlimitedUnlimitedUnlimitedUnlimitedUnlimited
Dubbed audio included3 hours10 hours25 hours80 hours250 hours
Languages1Up to 2Up to 3Up to 715+
Destinations (RTMP)11Up to 2UnlimitedUnlimited
When exceededHard capPay-as-you-goPay-as-you-goPay-as-you-goPay-as-you-go
Dubbed overageβ€”$7.20/hr$7.20/hr$6.00/hr$4.80/hr
Spend limitβ€”ConfigurableConfigurableConfigurableConfigurable
Caption Customizationβ€”βœ”βœ”βœ”βœ”
Custom Voice TTSβ€”βœ”βœ”βœ”βœ”
Multi-destination Outputβ€”β€”βœ”βœ”βœ”
RTMP Relayβœ”βœ”βœ”βœ”βœ”
Voice Cloningβ€”β€”β€”βœ”βœ”
Priority Supportβ€”β€”β€”βœ”βœ”
Note
Precision metering: We meter actual processing time, not stream wall-clock time. Dubbed minutes count seconds of TTS audio played per language β€” so a 10-minute stream with 5 languages = 50 dubbed minutes. A typical 1-hour stream uses approximately 15 dubbed minutes per language.
Tip
Paid plans include a configurable spend limit to cap monthly overage. Set it in your dashboard under Settings β†’ Monthly Spend Limit.

API Overview

All API routes live under /api/ and require authentication via JWT cookie or Bearer token.

Authentication

Request header
http
Authorization: Bearer your_api_token_here

Get your API token from Dashboard β†’ Settings β†’ API Key. Tokens are scoped to your account and can be regenerated at any time.

Destinations

GET
/api/destinations

List all configured destinations

POST
/api/destinations

Create a new destination

PATCH
/api/destinations/:id

Update a destination

DELETE
/api/destinations/:id

Delete a destination

Voice Profile

GET
/api/voice

Get current voice profile and settings

PATCH
/api/voice

Update voice settings

POST
/api/voice/upload

Upload a voice sample

DELETE
/api/voice

Delete voice profile

Stream Config

GET
/api/stream/config

Get stream configuration

PUT
/api/stream/config

Update stream configuration

POST
/api/stream/config/regenerate-key

Generate a new stream key

Sessions

GET
/api/sessions

List stream sessions (paginated)

GET
/api/sessions/:id

Get a single session with details

Usage

GET
/api/usage

Get current month usage (caption minutes, dubbed minutes, overage)

Β© 2026 StreamFluent.ai