NarrationStudio (NS)

Read your Twitch, YouTube & TikTok live chat out loud — with smart censoring.

Made by Reliable_Gaming_

Hotkey: Ctrl+Shift+K
Note on message timing: There may be a slight delay in messages appearing — this is normal. YouTube and TikTok APIs enforce minimum polling intervals set by their platforms, so chat messages may arrive a few seconds after being sent in the live stream.

Twitch disconnected

How to get a Twitch Client ID
1. Go to https://dev.twitch.tv/console/appsRegister Your Application.
2. OAuth Redirect URL: paste
3. Category: Chat Bot. Copy the Client ID and paste it above.

YouTube disconnected

🧪 Beta
How to get a YouTube API key
1. Go to https://console.cloud.google.com/ and sign in.
2. Create a project → APIs & Services → Library → search YouTube Data API v3Enable.
3. Go to APIs & Services → Credentials → Create Credentials → API Key.
4. Copy the key and paste it above.
⚠ Restrict your key to the YouTube Data API v3 in the credentials settings.

TikTok disconnected

TikTok LIVE chat access requires the TikTok for Developers Live API (invite-only). Enter your OAuth token below if you have API access approved.
How to get TikTok Live API access
1. Go to https://developers.tiktok.com and sign in.
2. Create a new app and apply for Live Subscription product access (requires TikTok approval).
3. Once approved, generate an OAuth token with live.room.subscribe scope.
4. Enter your room ID from your LIVE stream URL and paste the token above.
⚠ TikTok's public Live Chat API is currently in limited beta. For most streamers, a third-party overlay tool (Restream, Streamlabs) that supports TikTok may be easier.

Text-to-speech

Filter pipeline

Every message — Twitch, YouTube, TikTok, or test — runs through this chain in order. Each filter can drop the message (TTS skipped) or bleep matched words.


Custom Chat Commands

Define ! commands that viewers can type. When detected the configured response is spoken instead. Use {user} to insert the viewer's name.

Test Chat Message

Simulate a chat message to test filters, commands, and TTS — without going live. Press Enter in the message field to send quickly.

🎵 Background Music

Play background music while you stream. Paste a YouTube URL or upload an MP3/MP4 file. Music loops automatically.

0.30
No track loaded

🎵 Custom UI Sounds

Upload your own audio clips to replace the built-in sounds for each event. Supports MP3, OGG, WAV. Click Test to preview. Leave empty to use the default synthetic sound.

0.50

Live chat feed

0messages0queued
KILL SWITCH ARMED — TTS muted. Press Ctrl+Shift+K or click Kill switch again to disarm.
0 queued max 25
Idle — waiting for chat messages…
No messages yet. Connect a platform above, or use the Test Chat panel to try things out.
Owner Splash Text