⚠️ Loading TTS Admin Panel... If this message persists, check browser console (F12)

# 🔊 TTS Admin Panel

Text-to-Speech System v2.0

Initializing...

## 🎙️ Engine Settings

Default Engine (Main)

The primary TTS engine to use. TikTok TTS is free and requires no API key. Other engines require API keys configured in the API Keys section below.

Default Voice
🎭 Default Emotion (Speechify only)

Add emotional expression to Speechify voices. Works best with shorter sentences.

🔄 Enabled Fallback Engines

Select which engines should be available as fallbacks when the main engine fails. Only enabled engines will be loaded (saves system resources).

TikTok TTS Free, fast, no API key needed
Google Cloud TTS Neural voices, high quality
Speechify 1000+ voices, 60+ languages
ElevenLabs Ultra-realistic AI voices
OpenAI TTS TTS-1 and TTS-1-HD models
Fish.audio Multilingual, Official Fish.audio API
SiliconFlow (Fish Speech 1.5) Multilingual, SiliconFlow API

⚠️ Engines with API keys require corresponding keys in the API Keys section. TikTok TTS is free and requires no API key.

Performance Mode

Fast mode is optimized for low-end PCs with faster timeouts (5s) and fewer retries (1). Balanced mode is recommended for most users (10s timeout, 2 retries). Quality mode provides maximum reliability for high-end PCs (20s timeout, 3 retries).

## 🎚️ Audio Settings

Volume: 80%
Speed: 1.0x
Duck other audio during TTS
Duck Volume: 30%

## 🔒 Permission Settings

Minimum Team Level

Team level equals the number of team hearts sent to the streamer (0 = Anyone can use TTS, 1+ = Only users who have sent team hearts)

Enable TTS for chat messages
Auto-detect language
Enable automatic fallback to other engines

When disabled, only the selected engine will be used. If it fails, TTS will not work instead of falling back to another engine.

Strip emojis from TTS text

When enabled, emojis will be removed from messages before they are spoken, preventing the TTS engine from reading emoji names aloud.

Message Prefix Filter

Messages starting with these characters will be ignored. Separate multiple prefixes with spaces (e.g., "! / .")

## 🌍 Language Detection

Fallback Language (Default if Detection Uncertain)

Used when language detection confidence is below threshold or text is too short

Confidence Threshold: 90%

Minimum confidence required to use detected language (recommended: 90%)

Minimum Text Length for Detection

Short texts (e.g., "ok", "lol", "hi") will use fallback language

## ⏱️ Rate Limiting & Queue

Messages per User
Time Window (seconds)
Max Queue Size
Max Text Length

## 🚫 Profanity Filter

Filter Mode

## 🔑 API Keys

API keys are now managed in the global Settings panel.

To configure your TTS engine API keys (Google Cloud, Speechify, ElevenLabs, OpenAI, Fish.audio, SiliconFlow), please go to:

1. 1. Click Settings in the left sidebar
2. 2. Scroll down to the "TTS Engine API Keys" section
3. 3. Enter your API keys and click Save

This centralized approach makes it easier to manage all your API keys in one place.

## 🎤 Manual Voice Assignment

Assign a voice to a user directly by entering their username

Username (TikTok uniqueId)

Enter the exact TikTok username (case-sensitive) or select from recent chat users

Engine
Voice

## 👥 User Management

## 📋 Current Queue

## 🎵 Now Playing

No audio playing

### 🎤 Test TTS

### 📊 Queue Statistics

### 🔒 Permission Statistics

## 🐛 Debug Logs - Live TTS Pipeline Tracking

Auto-scroll
Total Logs: 0
Displayed: 0
Debug Mode: Enabled
Live Updates: Active
Waiting for logs... Try triggering TTS events

### 📖 Debug Log Categories

INIT: Plugin initialization events
TIKTOK_EVENT: TikTok chat messages received
SPEAK_START: speak() method called
SPEAK_STEP1-6: Each pipeline step (permissions, profanity, validation, voice selection, synthesis, queue)
SPEAK_SUCCESS: TTS successfully queued
SPEAK_DENIED: TTS request denied (permissions/rate limit)
SPEAK_ERROR: Errors during processing
PLAYBACK: Audio playback events
💡 Tip: If TTS works in test mode but not live, check for TIKTOK_EVENT logs. If missing, the TikTok integration isn't receiving events. If present but no SPEAK_START, permission checks may be blocking.

## 🎤 Assign Voice

Assigning voice for:

Engine
🎭 Emotion (Speechify only)
Search Voice
Select Voice