Odczytuj czat na żywo lokalnymi głosami AI. Zacznij od opcji bez instalacji, a lokalnego serwera użyj tylko w razie potrzeby.
Social Stream Ninja może odczytywać wiadomości czatu na głos za pomocą lokalnego AI do zamiany tekstu na mowę. „Lokalne” może oznaczać dwie rzeczy: głos działa wewnątrz przeglądarki lub uruchamiasz mały serwer TTS na własnym komputerze.
Istnieją dwa podejścia:
Kilka wysokiej jakości głosów AI jest wbudowanych bezpośrednio w Social Stream Ninja. Działają w przeglądarce przy użyciu WebAssembly lub ONNX — bez serwera, Dockera i instalacji.
Wystarczy dodać parametr URL i działa.
Uruchom lokalny serwer TTS na swoim komputerze i skieruj na niego Social Stream Ninja. Daje więcej głosów, klonowanie głosu i sterowanie po stronie serwera.
Używa wbudowanej w Social Stream obsługi: Punkt końcowy zgodny z OpenAI .
To najkrótsza droga dla większości streamerów:
&speech=en-US&ttsprovider=kokoro lub &speech=en-US&ttsprovider=kitten do swojego dock.html URL.Testing local TTS. Przy Kokoro lub Piper poczekaj na pierwsze pobranie modeli.To najczęstszy błąd przy lokalnym TTS.
localhost i 127.0.0.1 zawsze oznaczają „ten sam komputer”. Jeśli OBS jest na jednym komputerze, a Kokoro na innym, 127.0.0.1 wewnątrz URL OBS wskazuje komputer OBS, a nie komputer Kokoro.
127.0.0.1 tylko wtedy, gdy serwer TTS jest na tym samym komputerze co strona odtwarzająca dźwięk. Jeśli serwer jest na innym komputerze, użyj jego adresu IP LAN.| Twoja konfiguracja | Punkt końcowy do użycia |
|---|---|
| OBS i Kokoro działają na tym samym komputerze | http://127.0.0.1:8880/v1/audio/speech |
| Kokoro działa na innym komputerze w sieci domowej | http://192.168.x.x:8880/v1/audio/speech, używając adresu IP LAN komputera Kokoro |
| Przycisk testu aplikacji komputerowej SSN działa, ale OBS milczy | OBS nadal potrzebuje własnego działającego punktu końcowego. Test aplikacji nie dowodzi, że OBS może dotrzeć do serwera. |
W Linuksie, macOS i Windows upewnij się też, że zapora zezwala na port, a Docker opublikował go przez -p 8880:8880.
W oknie rozszerzenia otwórz wybór dostawcy TTS i wybierz Własny / lokalny punkt końcowy TTS. Pokazuje to pola lokalnego punktu końcowego zgodnego z OpenAI i łącze do tego przewodnika.
SSN traktuje lokalny/samodzielnie hostowany serwer TTS jak punkt końcowy mowy zgodny z OpenAI. Podstawowy przebieg:
Dla ttsprovider=customtts, localtts lub openai, SSN wysyła żądanie POST JSON do skonfigurowanego punktu końcowego:
CORS to sprawdzanie uprawnień przeglądarki. Mówiąc prosto: serwer TTS musi powiedzieć przeglądarce „tak, ta strona może prosić mnie o dźwięk”. Bez tego uprawnienia żądanie może zostać zablokowane, zanim Kokoro lub inny serwer TTS je zobaczy.
dock.html w Chrome lub OBS, CORS może mieć znaczenie.https://beta.socialstream.ninja/dock.html, Chrome może też blokować wywołania lokalnych lub prywatnych adresów HTTP.Jeśli serwer nie zezwala na żądania przeglądarki, uruchom Lokalny most TTS SSN i skieruj SSN na http://127.0.0.1:8124/v1/audio/speech. W przypadku OBS najłatwiej uruchomić most na tym samym komputerze co OBS.
| Odpowiedź | Obsługa w SSN | Uwagi |
|---|---|---|
| Binarny dźwięk | Tak | Najlepsza opcja. Zwracaj audio/mpeg, audio/wav, audio/ogg, audio/aac, lub inny typ dźwięku odtwarzany przez przeglądarkę. |
| JSON z adresem URL audio | Tak | SSN sprawdza url, audio_url, output_url, zagnieżdżone data.url, a pierwszy data[] element. |
| JSON z dźwiękiem base64 | Tak | SSN sprawdza audio, audio_data, audioContent, b64_json, zagnieżdżone data pola i adresy data URL. |
| Surowe PCM | Tylko z warstwą pośrednią | Zwracaj PCM jako plik WAV lub WAV base64. Element audio przeglądarki nie potrafi niezawodnie odtwarzać bezpośrednio surowych bajtów PCM. |
mp3 dla małych plików i szerokiej obsługi przeglądarek, wav dla lokalnych serwerów klonowania i testowania mostu oraz opus tylko gdy serwer i przeglądarka to obsługują.
SSN obecnie nie odtwarza w miarę pobierania dla własnych/lokalnych punktów końcowych TTS. Czeka na blob odpowiedzi lub dane audio JSON, a potem odtwarza. Niektóre serwery udostępniają punkty końcowe strumieniowania, ale obecna ścieżka SSN zgodna z OpenAI buforuje przed odtworzeniem.
Praktyczny wniosek: używaj krótkich fragmentów TTS czatu. Obsługa strumieniowania wymagałaby osobnej ścieżki odtwarzania z fragmentami WAV/MP3, MediaSource, WebCodecs lub mikserem po stronie serwera.
Te silniki są dołączone do Social Stream Ninja i nie wymagają instalacji. Działają w przeglądarce przy użyciu WebAssembly (WASM) lub ONNX Runtime.
| Dostawca | Jakość | Użycie CPU | GPU/WebGPU | Parametr URL |
|---|---|---|---|---|
| Kokoro TTS | ⭐⭐⭐⭐⭐ Doskonałe | Średnie | Szybsze z GPU | ?ttsprovider=kokoro |
| Piper TTS | ⭐⭐⭐⭐ Bardzo dobre | Niskie | Tylko CPU | ?ttsprovider=piper |
| Kitten TTS | ⭐⭐⭐ Dobre | Bardzo niskie | Tylko CPU | ?ttsprovider=kitten |
| eSpeak-NG | ⭐⭐ Robotyczne | Minimalne | Tylko CPU | ?ttsprovider=espeak |
Dodaj &ttsprovider= i &speech= do swojego Social Stream dock.html URL:
SSN oferuje obecnie 28 angielskich, trzy hiszpańskie i trzy brazylijskie portugalskie głosy Kokoro. Wskaż głos parametrem &voicekokoro=:
Przykład hiszpański:
Przykład portugalski:
Wskaż model głosu przez &pipervoice=:
Dostępne są portugalskie i hiszpańskie głosy Piper:
Rozszerzenie Chrome, źródło przeglądarkowe OBS i samodzielna aplikacja komputerowa Social Stream Ninja używają tych samych dock.html parametrów URL dla TTS. Ważna różnica polega na tym, gdzie powstaje dźwięk.
| Interfejs | Działanie lokalnego TTS | Przechwytywanie dźwięku |
|---|---|---|
| Rozszerzenie Chrome / źródło przeglądarkowe OBS | Pobieranie w przeglądarce wymaga CORS z lokalnego serwera, chyba że używasz mostu SSN. | Użyj źródła przeglądarkowego OBS z „Control audio via OBS”. |
| Samodzielna aplikacja komputerowa | Używa tych samych ustawień dostawcy. Lokalne okna plików aplikacji mają mniej ograniczeń CORS, ale most pozostaje najbezpieczniejszą ścieżką dla serwerów odrzucających żądania przeglądarkowe. | Przechwytuj dźwięk pulpitu/aplikacji lub skieruj aplikację do wirtualnego kabla audio. |
| Wbudowane Kokoro w aplikacji komputerowej | Aplikacja może używać swojej lokalnej ścieżki ninjafy.tts dla Kokoro zamiast polegać wyłącznie na ładowaniu modelu w przeglądarce. |
Dźwięk pochodzi z aplikacji, więc użyj przechwytywania dźwięku pulpitu/aplikacji. |
dock.html URL do OBS, to OBS musi dotrzeć do serwera TTS i odtworzyć dźwięk.
Jeśli chcesz więcej głosów, klonowania głosu lub dedykowanego serwera używanego przez różne narzędzia, możesz uruchomić lokalny serwer TTS. Social Stream Ninja łączy się z nim dzięki wbudowanej obsłudze: Punkt końcowy TTS zgodny z OpenAI — klucz API nie jest potrzebny dla lokalnych serwerów.
Trzy zalecane opcje:
| Serwer | Model | GPU | Dysk | Domyślny port |
|---|---|---|---|---|
| Kokoro-FastAPI Zalecane | Kokoro 82M | Opcjonalne | ~2 GB | 8880 |
| openedai-speech (Piper) Lekki | Piper TTS | Tylko CPU | <1 GB | 8000 |
| kokoro-web | Kokoro 82M | Opcjonalne | ~2 GB | 3000 |
| Pakiet | Główna zaleta | Kompromis |
|---|---|---|
| Wbudowane Kokoro | Najlepszy pierwszy wybór: bez serwera, wysoka jakość, prywatność, działa w przeglądarce i aplikacji komputerowej. | Bez klonowania głosu. |
| Kokoro-FastAPI | Serwer zgodny z OpenAI, łatwa konfiguracja Docker, CPU lub GPU, wiele głosów Kokoro. | Bez rzeczywistego klonowania głosu; mieszanie głosów i funkcje własnego głosu zależą od wersji serwera. |
| openedai-speech | Lekki punkt końcowy zgodny z OpenAI; Piper dobrze działa na CPU, a XTTS dodaje klonowanie z docelowym zapotrzebowaniem około 4 GB VRAM. | Repozytorium podaje, że projekt jest w większości przestarzały, więc traktuj go jako przydatny, ale nie przyszłościowy. |
| Serwery Chatterbox | Klonowanie głosu, opcje interfejsu internetowego, API zgodne z OpenAI, narzędzia do długiego tekstu. | Obsługa CUDA/GPU działa sprawniej niż CPU w niektórych wersjach; konfiguracja zależy od forka serwera. |
| GPT-SoVITS | Dobre klonowanie/sterowanie z krótkimi próbkami i obsługą transkrypcji. | Domyślnie niezgodne z OpenAI; użyj trybu mostu SSN. |
| F5-TTS | Naturalne klonowanie zero-shot z przykładowym WAV i transkrypcją. | Oficjalny projekt nie jest prostym punktem końcowym OpenAI; użyj warstwy pośredniej lub trybu mostu. |
| Qwen3-TTS | Nowoczesne funkcje klonowania i projektowania głosu, w tym mniejsze modele 0.6B/1.7B. | Przede wszystkim biblioteka/demo; potrzebuje warstwy pośredniej dla SSN. |
| MisoTTS | Zaawansowane generowanie mowy na podstawie promptów. | Nie nadaje się do lokalnego użycia z 6 GB VRAM; w razie potrzeby użyj zdalnego/własnego hostingu. |
Klonowanie głosu nie jest osobnym trybem SSN. To funkcja wewnątrz niektórych lokalnych serwerów TTS. SSN wysyła tekst czatu do lokalnego punktu końcowego; serwer wybiera sklonowany głos z zapisanego referencyjnego pliku audio, profilu głosu lub konfiguracji mostu.
ttsprovider=customtts.Przy 6 GB VRAM lub mniej najpierw wybieraj małe modele klonowania zero-shot i serwery zgodne z OpenAI. Większe modele nadal mogą działać przez ten sam punkt końcowy SSN, jeśli użytkownik hostuje je gdzie indziej.
| Opcja | Klonowanie głosu | Mieści się w 6 GB VRAM | Ścieżka API dla SSN |
|---|---|---|---|
| Qwen3-TTS 0.6B Base | 3-sekundowy dźwięk referencyjny | Prawdopodobnie | Użyj warstwy zgodnej z OpenAI, a następnie ttsprovider=customtts |
| XTTS-v2 / openedai-speech | Krótkie głosy referencyjne WAV | Tak, około 4 GB według openedai-speech | /v1/audio/speech |
| Chatterbox Turbo / Server | Klonowanie z dźwięku referencyjnego | Prawdopodobnie przy Turbo / małych fragmentach | Wersje serwera zgodne z OpenAI lub most |
| GPT-SoVITS | 5 sekund zero-shot, 1 minuta few-shot | Prawdopodobnie przy fp16 / lekkiej instalacji | Użyj scripts/local-tts-bridge.cjs --mode gptsovits |
| F5-TTS | Przykładowy WAV + transkrypcja | Być może; zależy od wersji i wokodera | Użyj warstwy zgodnej z OpenAI lub --mode f5 dla warstw serwerów F5-TTS |
| MisoTTS 8B | Kontekst audio podany w prompcie | Nie; projekt zaleca 24 GB VRAM | Tylko zdalny/własny punkt końcowy |
POST /v1/audio/speech z { model, input, voice, response_format, speed } i zwracają plik audio do odtworzenia. Obejmuje to OpenAI, Coqui/XTTS, warstwy Kokoro, warstwy Qwen i większość usług proxy.
To praktyczne punkty wyjścia, a nie twarde gwarancje. Wersja modelu, kwantyzacja, długość tekstu, obraz Docker i aplikacje w tle mogą zmieniać użycie pamięci.
| Opcja | Minimalny praktyczny komputer | Dobry wybór docelowy | Uwagi |
|---|---|---|---|
| Systemowy TTS / eSpeak | Dowolny nowoczesny komputer | Dowolny komputer | Szybkie, niska jakość, bez klonowania. |
| Wbudowane Kitten | Słabszy CPU, 4 GB RAM | Nowoczesny procesor laptopa, 8 GB RAM | Mały model ONNX, szybkie uruchamianie. |
| Wbudowane Piper | Nowoczesny CPU, 4–8 GB RAM | Nowoczesny CPU, 8 GB RAM | Dobra opcja głosu neuronowego zużywająca mało zasobów. |
| Wbudowane Kokoro | Nowoczesny CPU, 8 GB RAM | GPU obsługujące WebGPU lub szybki CPU, 8–16 GB RAM | Najlepsza jakość bez konfiguracji. Pierwsze ładowanie pobiera zasoby modelu. |
| Kokoro-FastAPI | Host Docker z CPU, 8 GB RAM | Opcjonalne GPU NVIDIA, 8–16 GB RAM | Dobry lokalny serwer, gdy ładowanie modelu w przeglądarce nie jest idealne. |
| openedai-speech Piper | CPU, 4–8 GB RAM | CPU, 8 GB RAM | Lekki serwer zgodny z OpenAI. |
| openedai-speech XTTS | GPU NVIDIA około 4 GB VRAM, 8–16 GB RAM | GPU NVIDIA 6 GB+, 16 GB RAM | Ścieżka klonowania głosu; CPU jest możliwe, ale wolne. |
| Serwery Chatterbox | CPU może działać w niektórych wersjach, ale jest wolne | GPU NVIDIA 6 GB+, 16 GB RAM | Używaj GPU do klonowania lub przetwarzania długiego tekstu. |
| GPT-SoVITS / F5-TTS / Qwen3-TTS | CPU tylko do testowania, wolne | GPU NVIDIA 6 GB+ dla mniejszych/zoptymalizowanych modeli, 16 GB RAM | Wybór warstwy pośredniej i rozmiar modelu mają znaczenie. Oczekuj więcej konfiguracji. |
| MisoTTS 8B | Niezalecane lokalnie przy 6 GB VRAM | 24 GB VRAM lub zdalny host | Repozytorium zaleca GPU z dużą ilością VRAM do interaktywnego użycia. |
To samodzielnie hostowane rozwiązania klonowania głosu sprawdzone pod kątem zgodności z SSN. Ścieżkę lokalnego punktu końcowego przetestowano zarówno z dock.html i featured.html.
SSN przyjmuje bezpośrednie binarne odpowiedzi audio, odpowiedzi JSON z dźwiękiem base64 i odpowiedzi JSON z adresem URL audio. Obecne odtwarzanie własnego/lokalnego TTS buforuje zwrócony dźwięk przed odtworzeniem; odtwarzanie strumieniowe w miarę pobierania nie jest jeszcze obsługiwane.
| Serwer | Ścieżka SSN | Uwagi |
|---|---|---|
| openedai-speech | Bezpośrednio lub przez most | Zgodne z OpenAI /v1/audio/speech. Tryb Piper przetestowano z rzeczywistą syntezą CPU z dock.html i featured.html, bezpośrednio i przez most. Przy uruchamianiu ze źródeł w Windows upewnij się, że folder Scripts środowiska venv znajduje się w PATH , aby piper.exe i ffmpeg.exe można było znaleźć. |
| chatterbox-tts-api | Bezpośrednio lub przez most | Zgodne z OpenAI /v1/audio/speech. Używa skonfigurowanego dźwięku referencyjnego do klonowania. Strukturę API przetestowano bezpośrednio i przez most. |
| Chatterbox-TTS-Server | Bezpośrednio lub przez most | Punkt końcowy zgodny z OpenAI i interfejs internetowy. Przetestowano z rzeczywistą syntezą CPU przy użyciu Emily.wav z dock.html i featured.html, bezpośrednio i przez most. |
| GPT-SoVITS | Tryb mostu | Uruchom most SSN z --mode gptsovits; serwer docelowy to /tts, nie zgodne z OpenAI. |
| F5-TTS_server | Tryb mostu | Uruchom most SSN z --mode f5; serwer docelowy używa GET /synthesize_speech/. |
| Oficjalne F5-TTS | Potrzebna warstwa pośrednia | Przede wszystkim CLI, Gradio i serwer gniazd. Użyj warstwy zgodnej z OpenAI lub trybu mostu F5 z taką warstwą. |
| Qwen3-TTS | Potrzebna warstwa pośrednia | Przede wszystkim biblioteka i demo Gradio. Dobry kandydat na małą warstwę zgodną z OpenAI wokół generate_voice_clone. |
| MisoTTS | Tylko zdalnie/własne | Klonowanie głosu jest obsługiwane, ale model 8B nie jest przeznaczony dla 6 GB VRAM i nie ma lokalnego punktu końcowego REST w repozytorium. |
Kokoro-FastAPI uruchamia model Kokoro 82M jako lokalny serwer z API zgodnym z OpenAI. Działa na CPU (GPU nie jest wymagane) i zapewnia doskonałą jakość głosu.
Otwórz terminal (Wiersz polecenia, PowerShell lub Terminal) i uruchom jedno z poniższych:
Otwórz przeglądarkę i przejdź do http://localhost:8880/web/— powinien pojawić się interfejs internetowy, w którym można testować głosy.
Ponad 67 dostępnych głosów. Kilka przykładów:
Przeglądaj i testuj wszystkie głosy na http://localhost:8880/web/ gdy serwer działa.
Jeśli Kokoro-FastAPI jest na tym samym komputerze co OBS:
Jeśli Kokoro-FastAPI jest na innym komputerze, zastąp 192.168.x.x adresem IP LAN tego komputera:
af_bella, af_sarah, am_adam lub bf_emma. Nazwy takie jak echo, nova i alloy są nazwami w stylu OpenAI/openedai-speech i mogą nie działać z Kokoro.
Aby Kokoro-FastAPI działał automatycznie w tle, użyj flagi restartu Dockera:
Teraz będzie uruchamiać się automatycznie z Docker Desktop przy każdym restarcie.
openedai-speech udostępnia zgodny z OpenAI punkt końcowy /v1/audio/speech potrzebny Social Stream. Jego mały obraz uruchamia Piper na CPU; pełny obraz może uruchamiać klonowanie głosu XTTS-v2 na obsługiwanym GPU.
Użyj tej opcji do serwera TTS tylko na CPU o rozmiarze poniżej 1 GB. Nie zawiera XTTS-v2 ani klonowania głosu.
docker-compose.min.yml. Alternatywnie uruchom poniższe polecenia bezpośrednio.
Jeśli uruchamiasz openedai-speech z lokalnego kodu zamiast Dockera, dodaj folder skryptów jego środowiska wirtualnego do PATH przed uruchomieniem serwera. Bez tego żądania mogą zwracać HTTP 500, ponieważ serwer nie znajduje piper.exe lub ffmpeg.exe.
openedai-speech używa nazw głosów w stylu OpenAI mapowanych na głosy Piper:
XTTS-v2 samo w sobie jest modelem, a nie internetowym API. Użyj pełnego serwera openedai-speech, aby załadować model, wybrać zapisany głos referencyjny, przyjąć tekst czatu z SSN i zwrócić dźwięk do odtworzenia. Serwer podaje praktyczne zapotrzebowanie około 4 GB VRAM GPU; inferencja CPU jest możliwa, ale wolna.
openedai-speech-min dla XTTS-v2. Minimalny obraz zawiera tylko Piper. XTTS-v2 wymaga pełnej instalacji i model=tts-1-hd w każdym żądaniu mowy.
W macOS lub Linuksie użyj cp sample.env speech.env zamiast Copy-Item. Docker musi mieć dostęp do obsługiwanego GPU. Model pobiera się przy pierwszym użyciu.
tts-1-hd w config/voice_to_speaker.yaml:Zachowaj istniejące głosy wymienione już w tts-1-hd. Zmień me na nazwę głosu, którą SSN ma wysyłać, i w razie potrzeby użyj właściwego kodu języka XTTS.
openaimodel=tts-1-hd jest wymagane dla XTTS-v2. Jeśli zostanie pominięte, Social Stream wysyła domyślne tts-1, a openedai-speech wybiera zamiast tego Piper. Wartość voiceopenai musi odpowiadać nazwie sklonowanego głosu w voice_to_speaker.yaml.
Jeśli przeglądarka lub OBS blokuje bezpośrednie żądanie, uruchom Lokalny most TTS na komputerze OBS i zachowaj te same parametry modelu i głosu, zmieniając openaiendpoint na http://127.0.0.1:8124/v1/audio/speech.
Most to mały lokalny pomocnik. Przyjmuje żądanie przeglądarki z SSN, komunikuje się z serwerem TTS i zwraca dźwięk do SSN z nagłówkami odpowiednimi dla przeglądarki.
http://127.0.0.1:8124/v1/audio/speech, nawet jeśli właściwy serwer TTS znajduje się na innym komputerze.
Samodzielny folder startowy to local-tts-bridge/; zobacz README mostu aby poznać wszystkie opcje uruchamiania.
Windows PowerShell, gdy serwer TTS jest na tym samym komputerze:
Windows PowerShell, gdy serwer TTS jest na innym komputerze:
Terminal macOS/Linux:
Następnie skieruj należący do OBS dock.html URL na most:
GPT-SoVITS używa własnej /tts struktury JSON, więc most może przetłumaczyć żądanie SSN zgodne z OpenAI na treść żądania GPT-SoVITS.
Niektóre warstwy serwera F5-TTS udostępniają /synthesize_speech/?text=...&voice=... zamiast punktu końcowego zgodnego z OpenAI. Most może przetłumaczyć żądanie SSN na ten format zapytania.
http://127.0.0.1:8124/v1/audio/speech. Zmień port przez SSN_TTS_BRIDGE_PORT=8125 w razie potrzeby.
Wszystkie powyższe samodzielnie hostowane serwery używają tej samej metody połączenia — wbudowanej w Social Stream obsługi: Punkt końcowy OpenAI TTS z własnym lokalnym URL.
| Parametr | Wartość | Opis |
|---|---|---|
ttsprovider |
customtts lub openai |
Użyj ścieżki TTS zgodnej z OpenAI. Użyj customtts dla lokalnych/samodzielnie hostowanych punktów końcowych. |
openaiendpoint |
http://localhost:8880/v1/audio/speech |
URL lokalnego serwera (zmień port w razie potrzeby) |
speech |
en-US |
Włącza TTS dla angielskiego |
voiceopenai |
af_bella |
Nazwa głosu (zależy od serwera) |
openaiformat |
mp3 |
Format audio: mp3, wav, opus, flac |
openaispeed |
1.0 |
Szybkość mówienia (0.5–2.0) |
customttsendpoint i localttsendpoint również działają. customttsvoice, localttsvoice, customttsmodel, localttsmodel, customttsformat i localttsformat są akceptowanymi aliasami pól w stylu OpenAI.
openaiendpoint musi być osiągalne ze strony odtwarzającej TTS oraz voiceopenai musi być głosem obsługiwanym przez Twój serwer. Kokoro-FastAPI używa nazw takich jak af_bella; openedai-speech często używa nazw takich jak nova lub echo.
Działają z każdym dostawcą TTS, w tym lokalnymi serwerami:
| Parametr | Przykład | Opis |
|---|---|---|
simpletts |
&simpletts |
Pomiń „mówi” — odczytuj tylko wiadomość |
simpletts2 |
&simpletts2 |
Całkowicie pomijaj nazwy użytkowników |
volume |
&volume=0.8 |
Poziom głośności (0.0–1.0) |
skipmessages |
&skipmessages=3 |
Odczytuj tylko co trzecią wiadomość |
ttscommand |
&ttscommand=!say |
Odczytuj tylko wiadomości zaczynające się od !say |
readevents |
&readevents |
Odczytuj także subskrypcje, wpłaty itd. |
ttsquick |
&ttsquick=100 |
Celowo skraca mowę po tylu znakach. Usuń, jeśli wiadomości są obcinane. |
SSN już obsługuje systemowe/przeglądarkowe speechSynthesis, wbudowane Kokoro, Piper, Kitten i eSpeak. Najbardziej przydatnymi przyszłymi dodatkami po stronie przeglądarki byłyby wybór urządzenia wyjściowego audio tam, gdzie setSinkId jest dostępne, więcej głosów Piper i dedykowana ścieżka odtwarzania w miarę pobierania dla serwerów mogących strumieniować fragmenty audio.
Sposób przechwytywania dźwięku TTS w OBS zależy od tego, jak uruchamiasz Social Stream Ninja.
To najprostsza metoda i działa dla wszystkich dostawców TTS (wbudowane i samodzielnie hostowany serwer).
dock.html URL z parametrami TTSJeśli używasz samodzielnej aplikacji komputerowej Social Stream Ninja (nie źródła przeglądarkowego OBS):
Audio Router może skierować jedną aplikację do wirtualnego kabla, ale jest starszym oprogramowaniem. Preferuj routing dla aplikacji w Windows, gdy działa.
Voicemeeter jest najlepsze, gdy musisz słyszeć TTS lokalnie, skierować je do OBS i oddzielić od muzyki/dźwięku gry.
?speech=en-US bez dostawcy) zależy od głosów udostępnianych przez przeglądarkę. OBS może nie udostępniać głosów lub wyświetlać je bez generowania dźwięku możliwego do przechwycenia. Testuj mowę i nagranie OBS osobno. Użyj jednego z powyższych dostawców (kokoro, piper, itd.) zamiast tego.
| Opcja | Konfiguracja | Jakość | Prywatny | OBS (źródło przeglądarkowe) | Wymagane GPU | Koszt |
|---|---|---|---|---|---|---|
| Wbudowane Kokoro | Brak | ⭐⭐⭐⭐⭐ | Tak | Tak | Nie (szybsze z) | Bezpłatne |
| Wbudowane Piper | Brak | ⭐⭐⭐⭐ | Tak | Tak | Nie | Bezpłatne |
| Wbudowane Kitten | Brak | ⭐⭐⭐ | Tak | Tak | Nie | Bezpłatne |
| Wbudowane eSpeak | Brak | ⭐⭐ | Tak | Tak | Nie | Bezpłatne |
| Kokoro-FastAPI | Docker | ⭐⭐⭐⭐⭐ | Tak | Tak | Nie (opcjonalne) | Bezpłatne |
| openedai-speech | Docker | ⭐⭐⭐⭐ | Tak | Tak | Nie | Bezpłatne |
| ElevenLabs | Klucz API | ⭐⭐⭐⭐⭐ | Nie | Tak | Nie | Płatne plany |
| Systemowy TTS | Brak | ⭐⭐ | Tak | Nie* | Nie | Bezpłatne |
* Systemowy TTS wymaga routingu przez wirtualny kabel audio do przechwytywania w OBS.
Test aplikacji dowodzi tylko, że aplikacja może dotrzeć do serwera. Źródło przeglądarkowe OBS nadal musi dotrzeć do punktu końcowego i odtworzyć dźwięk.
127.0.0.1 adresem IP LAN komputera serwera TTS.ttsquick. Ta opcja celowo skraca odczytywany tekst.&ttsquick=14 lub inną małą liczbę, usuń ją i odśwież źródło przeglądarkowe OBS.typewriter=, tymczasowo usuń podczas testowania. TTS zwykle używa oryginalnej wiadomości, ale usunięcie efektów wizualnych to szybki sposób wykluczenia problemów z czasem.http://127.0.0.1:8880/web/ dla Kokoro-FastAPI lub pasującego portu Twojego serwera.http://SERVER_LAN_IP:8880/web/. Jeśli się nie ładuje, OBS również nie będzie mógł używać tego serwera.Jeśli przeglądarka zgłasza blokadę żądania przez CORS, dostęp do sieci lokalnej, dostęp do sieci prywatnej lub failed fetch, serwer TTS może w ogóle nie otrzymać żądania.
npm run local-tts-bridge na komputerze OBS i skieruj SSN na http://127.0.0.1:8124/v1/audio/speech.af_bella, af_sarah, am_adam, lub inny głos z interfejsu internetowego Kokoro.nova, echo i alloy mogą być prawidłowe.?speech=en-US bez &ttsprovider=). Systemowy TTS może wymagać przechwytywania dźwięku pulpitu lub wirtualnego kabla.Tagi obrazów Docker mogą się zmieniać. Jeśli polecenie z tego przewodnika przestanie działać, sprawdź aktualny tag na stronie projektu: