Introduction

tts helper logo

TTS Helper is a free desktop tool designed to help streamers integrate TTS into their streams effortlessly. It leverages the power of third party TTS tools such as StreamElements, TikTok, ElevenLabs and Amazon Polly.

Currently I’m the sole developer! Hi! Here’s my Twitter.

TTS Helper utilities

TTS Helper has a few things built in to make life easier.

  • History - This will show the currently playing and all completed or skipped redeems.
  • Queue - This will show the currently playing and all soon to play redeems.
  • Chat Settings - Twitch Affiliates/Partners get redeems. If you’re just starting out on Twitch, you don’t have access to redeems. This area allows you to setup chat commands for your viewers so they can use it to invoke TTS.
  • Captions - If you want captions shown in your OBS (or preferred streaming software), you can create a limited but customizable captions box to display played TTS redeems.
  • Moderation - You can filter out redeems by banning words with this simplistic tool. It handles words and phrases separated by a comma. You can also add an allow or block user filter.
  • StreamDeck Plugin - Use the official StreamDeck TTS Helper plugin for some basic buttons.

Free third party services inside TTS Helper

TTS Helper has a few free to use third party services to help kickstart your TTS adventure.

  • StreamElements - StreamElements offers a decent variety of TTS options. It has a high rate limit, you realistically won’t exceed it unless you spam every second.
  • TikTok - Offers all the silly TikTok voices. Gracefully hosted by WeilByte.
  • VTubeStudio - You can hookup a rigged model with VTubeStudio and TTS Helper will make the mouth move when you use the TTSHelperParameters.

TTS Helper supports a number of third party services to make the TTS Helper experience better.

These are all optional to use.

  • Amazon Polly - A pay as you use TTS service. Fairly cheap and has great response times.
  • ElevenLabs - Natural sounding voices to give the returned responses a lot more personality. Can be expensive!
  • OpenAI - Personalize a ChatGPT model to act as a fictional character for your stream!
  • Azure Speech to Text - A way for the streamer to communicate with their personalized OpenAI model with their voice!

If you want to make improvements to TTS Helper or fork your own, here’s the recommended setup:

VS Code + Tauri + rust-analyzer + Angular Language Service.

Installation

You can get the latest version of TTS Helper here.

Download the relevant file for your operating system!

Some notes

  • I try to build for Windows / Linux / MacOS
    • I only test on Windows. I’m sorry if the other platform experiences suck.
    • Sometimes Linux doesn’t build for arbitrary libraries missing.
  • Downloading the .exe for Windows will almost always be blocked from downloading.
    • This is because I don’t pay Windows for a signing key.
    • Make sure to download the .msi file instead! It works but may require a “I promise you Windows this isn’t a virus”.

Once you’ve installed…

Once you’ve installed TTS Helper, there are a few things you should check out.

Initial setup and nice to knows.

There are a couple things we need to handle before we start playing some TTS!

  • We need to authenticate with Twitch.
  • We need to ensure our TTS services are working as expected
    • We’ll be using the free ones starting out to learn.

And there are some nice-to-haves before you setup for stream!

  • Learn how chat settings work.
  • Learn how to configure moderation.
  • How to use History / Queue

Disclaimers

The information you store in TTS Helper may be used by third party applications to function properly. This includes, but is not limited to:

  • Text content from streaming platforms sent to your selected TTS Service to generate audio.
  • API keys to communicate with third party applications.
  • Audio for Speech to Text services.

Everything you enter into TTS Helper is saved locally on your computer.

TTS Helper will not save what you enter to any server. However, when it uses the information you entered to work with third party applications, we (TTS Helper) cannot promise those services won’t save the information sent to them.

Example:

Communicating with OpenAI requires you to provide us with an API token. We use this API token to then communicate with OpenAI to generate text responses.

We (TTS Helper) only send the required information to function properly with the supported third party applications.

Twitch auth

Once you’ve installed TTS Helper, you should login into your Twitch account.
(Because I only support Twitch right now… sorry)

tts helper unauthed

When you login and authorize with TTS Helper on Twitch, you should be met with this: successfully authed tts helper

And you should see Twitch say it’s Connected successfully connected in tts helper

And that’s all I wrote.

That should be all there is for authenticating with Twitch. If you encounter issues, please join the Discord server.

TTS Services

TTS Helper supports four TTS services currently.

  • StreamElements - A free service powered by… StreamElements.
  • TikTok - A free service powered by WeilByte.
  • Amazon Polly - A paid (but affordable) service that has all the same options as StreamElements, but better latency.
  • ElevenLabs - A paid (quite expensive) service that has very realistic sounding voices. You can train voices too!

Making some sound (with TTS)

In the side nav look for Text to Speech and select Settings. (So Text to Speech > Settings)
Scroll to the bottom of the page, you should see some buttons and StreamElements should be selected by default.

tts helper tts settings page service buttons

You can select your desired Language and TTS Voice. TTS Helper filters each service’s voices by language. It makes it easier for both you and me.

Now that we made sure you have your desired TTS voice selected, scroll back to the top of the page. Type anything into this and press play. You should hear something! tts helper play tts input

If you don’t hear anything…

There could be a couple things at fault:

  • If you see a red popup at the bottom of the screen that says something like Oops! Couldn't play that TTS!
    • Make sure there’s no firewalls blocking TTS Helper from making outward request.
    • TTS Helper only makes outward request to get TTS audio! It can’t work if it’s being blocked.
  • Your default audio device might not be what you expect…
    • On the same page (Text to Speech > Settings), you can select the audio device from the dropdown. Try changing this and playing again.

Chat Settings

If you’re a Twitch streamer, but you’re not at least an affiliate, then you can’t use redeems.

In comes Chat Settings.

There are two chat settings on this page.

  • General Chat Settings
  • ChatGPT Chat Settings

We can ignore ChatGPT Chat Settings for now, but if you’re curious go here to learn more.

By default, you as the streamer can always run commands.
This should go without saying…

Here’s all our settings!

  • Enabled - Obviously, if this is ticked on, then it can be used!
  • Command - You can make the command be anything you want. This is what users will type to run the command.
  • Cooldown - If you want to limit how often the command be spammed, set this number.
  • Character limit - This limits how much text will be read from the users message.
  • Permissions - Configure who can use these commands.
    • All Users - If this is set, you don’t need to set the others, anyone can use the command.
    • Mods - If you only want your mods to be able to use the commands.
    • Paying Users - If you want users with active subscriptions to be able to use the commands.

tts helper general chat settings

Moderation

TTS Helper offers some “basic” moderation tools to make sure your TTS experience goes smoothly.

The moderation page has a banned words input and a allow / block input.

Banned words

This does not support regex, at least not right now.

Anything you type into this box will be checked against all TTS request. Any request that contain a banned word will be ignored entirely, and the username of the user and their message will be added to the log page.

So if our banned words included Dog, Cat, Cow and we had an incoming TTS request:

Hello! How’s your cat?

It would ignore this request!

But we can also ignore phrases. Everything is broken up by commas.
So if we had Hello world! in our banned words list and got a request…

hello world! how’re you doing?

It would also ignore this one!

We automatically blur the banned words list every time you visit the page, just incase you accidentally opened this up on stream.

Allow / Block list

Clicking the toggle changes the list from block to allow and vice versa.

Add usernames to this list separated by commas, simple as. Any request coming in from these users will either be ignored (if blocked) or allowed (if allowed).

tts helper moderation page

History / Queue

If you want to monitor or review the TTS history while you’re streaming, or after, you can go to the history page Text to Speech > History.

The history page shows what’s currently playing (if anything is) and what has already played.

You can see which user made the request, the platform it came from, the time, the content and if it finished.

If you ever miss a redeem and want to replay it, just hit the Requeue button!

tts helper history page

That’s really it for the history page.

If you want, you can pause the queue here. If you have the StreamDeck plugin installed, you can pause and resume the queue with the buttons there too.

If you do pause your queue, this global header will appear! It makes it easy to unpause (and remember to) when on other pages. tts helper global paused queue header

Finishing Up

And those are the basics!

This short “setup” should have helped you get some TTS playing.

If you have any questions, or if these docs didn’t help, please join the Discord server and ask for help!

ElevenLabs TTS

Hi! I haven’t done this page yet!

Their website https://elevenlabs.io/

The process is sorta similar to OpenAI’s flow. Getting an API key and all saving it in the ElevenLabs tab on the Text to Speech > Settings page.

ElevenLabs DOES give you free monthly credits. They do run out pretty fast though! Be careful.

Besides that, ElevenLabs is a pretty expensive service. I recommend messing with the free credits for a bit and figuring out if it’s the right tool for you.

Actual write up soon to come. 🍙

TTS API

If you’re using a tool like MixItUp

This is the perfect thing to use! Because currently TTS Helper doesn’t support YouTube, you can use MixItUp to send TTS request here.

TTS Helper is lacking severely in it’s exposed APIs, not that it needs much to begin with!

There’s currently only one exposed API endpoint.

All this does is allows you to send TTS request to TTS Helper If the username is in a block list, or if the text content contains a banned word, your request will be ignored.

Here’s the info:

HTML Table
HTTP Type EndPoint Data Structure
POST http://localhost:12589/tts
        {
            "username": "Panku",
            "platform": "twitch",
            "text": "Hello world!",
            "char_limit": 300
        }
      

All of these can be changed, obviously, besides the platform field.
Currently platform supports twitch, youtube and vstream (rip)

Multi Voices

Have you heard about TTS Monster? Well, they wouldn’t give me a dev key, so here’s my attempt at trying to mimic them but with all the TTS Services that are available in TTS Helper.

Essentially, you, as the streamer, setup what voices your viewers can use when making a TTS request, be that through your chat command or through the TTS redeem you setup in Text to Speech > Settings.

Here’s how a user may use it (via chat commands)

!say Hello I’m the default voice (brian): Hello I’m Brian (scream): Hello, I’m scream from TikTok (default): and we’re back to default

(default) will always associate with the TTS you have selected in Text to Speech > Settings, anything else must be set or else it’ll assume to default.

The Name field is a field you must set. The TTS services we support may have conflicting names or even long or weird names.

It’s up to you as the streamer to name these voices and supply them to your viewers as to make it easy for them to use.

tts helper multi voices page showing the whole page to show different setup voices

User Voices

If you’re a user wanting to know what their options are go here

There’s a newTM feature in TTS Helper that allows users to select what TTS voice will be used when they redeem.
I envisioned this as a good channel point sink.

tts helper user voices page

Currently the only way for users to have a custom TTS voice set for them is either use a Twitch redeem you set or you manually setting it for them on the page.

If you want users to be able to set their own, they need to follow a specific pattern when using your redeem. Make sure your redeem allows text input.

The values need to be separated with commas

Here’s an example redeem being used (using /select-tts to mimic a redeem name):

/select-tts streamelements, english (uk), brian

This will assign (me) the TTS service, the language, and the TTS voice available in that language.
If the users wishes to update their

tts helper user voices page

Voice Options

Currently this feature only supports two TTS services in TTS Helper. These are the two free services.
There are plans in the future to add support for the paid services than can be locked behind bits.

Hello user! If you’re going to use these for the custom TTS command MAKE SURE…

That you follow the format EXACTLY like this with commas
These are all case insensitive

This examle shows us selecting a language and voice option that’s inside that language for StreamElements

/redeem streamelements, english (us), ivy

This examle shows us selecting a language and voice option that’s inside that language for TikTok

/redeem tiktok, english, female

Here’s the options to select from!

TikTok

LanguageVoice options
EnglishFemale
English CharactersGhostface (Scream), Chewbacca (Star Wars), C3PO (Star Wars), Stitch (Lilo & Stitch), Stormtrooper (Star Wars), Rocket (Guardians of the Galaxy)
English SingingAlto, Tenor, Sunshine Soon, Warmy Breeze, Glorious, It Goes Up, Chipmunk, Dramatic
English OtherTrickster, Magician, Opera, Madame Leota, Ghost Host, Pirate, Euphoric, Hypetrain, Empathetic, Serious, Melodrama, Quirky Time, Wacky, Peaceful, Toon Beat, Open Mic, Jingle, Cottagecore, Warm, Story Teller, Professor, Scientist, Confidence, Joey, Metro, Narrator, Jessie, Smooth
JapaneseFemale 1, Female 2, Female 3, Male
KoreanMale 1, Male 2, Female
FrenchMale 1, Male 2
GermanFemale, Male
SpanishMale
Spanish MXMale
Portuguese BrFemale 2, Female 3, Male
IndonesianFemale

StreamElements

LanguageVoice options
Afrikaans (South Africa)Sonya NEW!
ArabicAhmad, Ahmad, Aisha
Arabic (Egypt)Hoda
Arabic (Saudi Arabia)Naayf
Brazilian PortugueseAlice, Ricardo, Vitória
BulgarianIvan, Nikolina NEW!
Canadian FrenchCamille, Chantal, Felix, Jacques, Juliette
Castilian SpanishConchita, Enrique, Rosalinda
Catalan (Spain)Herena
Chinese (simplified characters)Huihui, Kangkang, Yaoyao
Chinese, MandarinZhiyu
CroatianMatej
CzechJakub, Silvia
DanishMads, Marie, Naja
DutchAnnemieke, Eva, Lars, Lotte, Lotte, Marc, Ruben, Verona
English (Australian)Ashleigh, Courtney, Daniel, Jayden, Luke, Nicole, Russell, Samantha, Steve, Zoe
English (Canada)Heather, Linda
English (India)Anushri, Satya, Sundar
English (Indian)Aditi, Raveena
English (Ireland)Sean
English (UK)Ali, Amy, Bella, Brian, Emma, John, Layla, Oliver, Ron, Scarlett, Victoria
English (US)Audrey, Carter, Evelyn, Ivy, Jasmine, Joanna, Joey, Justin, Kendra, Kimberly, Liam, Madison, Mark, Matthew, Paul, Salli, Vanessa, Zachary
English (Welsh)Geraint
FilipinoTala
FinnishHeidi, Marianne
FrenchCéline, Mathieu
French (français)Brigitte, Emilie, Gaspard, Marcel, Simon, Yvonne
French (Switzerland)Guillaume
GermanAlbert, Angelika, Hans, Karolina, Marlene, Nina, Oskar, Sebastian, Vicki
German (Austria)Michael
German (Switzerland)Karsten
GreekStefanos, Thalia
HebrewDoron
HindiAadhav, Arnav, Sneha
Hindi (India)Hemant, Kalpana
Hong Kong (traditional characters)Danny, Tracy
HungarianIshtevan, Szabolcs
IcelandicDóra, Helga NEW!, Karl
IndonesianAndika, Anisa, Bayu, Budi
ItalianAlessandro, Bianca, Carla, Giorgio, Luca, Stella, Valentina
Italian (italiano)Gianna
JapaneseEichi, Eiko, Haruto, Koharu, Miho, Mizuki, Takumi
KoreanGrace, Heosu, Seoyeon
LatvianJuris NEW!
MalayRizwan
Mandarin ChineseBai, Li Na, Mingli, Wang
Mexican, SpanishMia
NorwegianAksel, Jacob, Liv, Malena, Nora, Thea
PolishEwa, Jacek, Jan, Maja
Polish (Poland)Amelia, Klaudia, Stanislaw, Tomasz
PortugueseCristiano, Inês
Portuguese (Portugal)Beatriz, Carolina, Francisco, Lucas
RomanianCarmen
RussianMaxim, Tatyana
Russian (Russia)Алёна (Alena), Илья (Ilya), Маша (Masha), Пётр (Petr)
SerbianAleksandra NEW!
SlovakFilip
Slovak (Slovakia)Eliska
SlovenianLado
SwedishAstrid, Elsa
Taiwanese (traditional characters)HanHan, Zhiwei
Tamil (India)Valluvar
ThaiPattara
TurkishFiliz, Zehra
Turkish (Turvalue)Elif, Enes, Mehmet, Miray, Yagmur
Ukrainian (Ukraine)Vladislav
US SpanishMiguel, Penélope
VietnameseAn, Linh, Nguyen, phuong, Viet
WelshGwyneth

TTS in Depth

TTS Helper can feel a bit overwhelming with all the settings it has and how they’re spread out in the application.

Here’s an overview of areas that can trigger TTS:

Twitch connection

  • Random Message Chance: You can change this input from 0 to 100, and every time a message from chat is sent, it’ll “roll a chance” if that message counts as a TTS request.
  • Redeem: Setup some Twitch redeems (that take text) to trigger TTS.
    • Redeem: This (poorly) named input will read whatever the user passes in as TTS.
    • ChatGPT Redeem: This redeem, when used, will forward user messages to your configured ChatGPT model.
      • This input doesn’t show up if the ChatGPT page is disabled.
  • Bits: If enabled, any messages with “cheers” will be read.
  • Followers: If enabled, your custom response will be read.
  • Subscriptions: Normal and gift subs.
    • Both support different custom responses that will be read.
    • If enabled, you can read the users message, if one is included, before the custom response.

Chat Settings

There are two chat commands that can be configured. General and ChatGPT.
They’re exactly the same when configuring.

  • If enabled, users that use the specified Command can trigger TTS.
    • User Permissions is there to help you limit who can use these commands.
  • ChatGPT: If enabled, users that use the Command will have their message forwarded to your customized ChatGPT model.
    • This will cause TTS to play as OpenAI generates a response for the above message.

TTS Helper API

TTS Helper has an API third party apps can send request to, see more here.
If a request is made to TTS Helper via the API, it will trigger TTS.

OpenAI (ChatGPT)

This area is inspired (heavily) by VTS P.O.G. If you want a tool that has support for a lot of third party applications and makes models on those third party applications move, look into VTS P.O.G.

⚠️⚠️⚠️ BEFORE YOU CONTINUE ⚠️⚠️⚠️

TTS Helper does not run an AI model on your machine.

When you use OpenAI’s “ChatGPT” model, you are creating an account with OpenAI and using the API token generated by them.

TTS Helper uses this token to communicate with OpenAI to generate responses.

Using any OpenAI model cost money, each model charges differently.

HOWEVER, these models are extremely affordable and you should not expect to spend more than $5 (USD) per month, unless you are making frequent, consistent requests for TTS (ex: you are a popular streamer).

There are discussions about the morality and ethics of using AI models like ChatGPT related to the environment, stealing work from artists, and spreading misinformation.

IT IS UP TO YOU TO DECIDE HOW TO USE AI AND IT IS UP TO YOUR AUDIENCE TO DECIDE HOW THEY REACT TO AI.

With that out of the way…

Before we configure settings in TTS Helper

You need to make an account with OpenAI.
You can login / signup here: https://platform.openai.com/apps

If you have a Google account, it’s pretty simple.

Once you’ve made an account, let’s go to the API keys page. https://platform.openai.com/api-keys

Or click API keys in the left side nav.
openai sidenav highlighting api keys

Once you’re on this page, click + Create new secret key.

I won’t tell you which setting to use. But if you want to be super safe, create a Restricted secret and only give these permissions:

  • Models (Read) - This let’s TTS Helper see which models your account has essentially paid for.
    • This let’s you select which model to use when generating. Some are cheaper than other.
  • Model capabilities (Write) - TTS Helper needs /v1/chat/completions to be able to generate responses.
    • LaterTM, I plan on a feature that does image recognition, so that could be cool.

Otherwise you can just leave it on All.

open ai create secret key dialog

Once we’ve created our secret, we need to copy it and paste it into out API key input. ChatGPT > API Key page.

Note: When ChatGPT is Enabled and you have Twitch’s Random Message Chance greater than 1. Any message that passes that will actually be forwarded to ChatGPT to be responded to instead of being read out as a normal TTS message.

tts helper chatgpt page api key input

Now that we have our token created for TTS Helper

Let’s do a small test! If you haven’t already, follow our Twitch Auth page and come back.

Ensure that you have the ChatGPT Command Settings Enabled ticked on on the Text to Speech > Chat Settings page.

tts helper chat settings page chatgpt enabled

Now go to your Twitch chat, replace [] with your username for easy access https://www.twitch.tv/popout/[your twitch username here]/chat

Now try out !ask how're you? (or whatever your command is followed by text)

You should hear TTS playing!

If you don’t hear audio, you may need to setup a payment method before you can use OpenAI’s API!

Go to the History page and you should see something with the name ChatGPT and the icon!

tts helper history page showing a chatgpt tts request

If you see that then grats! You’ve successfully connected TTS Helper with OpenAI’s ChatGPT model!

Next thing to do is to refine your model settings!

ChatGPT Chat Settings

If you came here from Initial Setup > Chat Settings hi.

This page is going to tell you to go back there! These chat settings are identical with one difference.

When you configure the command for ChatGPT Chat Settings, anyone that uses it will be sending their message to be REPLIED to by your configured OpenAI model.

Besides that difference, you can refer to the other page for the purpose of each input.

ChatGPT

The way TTS Helper utilizes OpenAI’s ChatGPT is that it allows you to “personalize” the model when generating responses from it.

You get to fine tune how ChatGPT generates responses and the length / randomness of said responses.

You also have your basic option of setting a Character Limit, just incase you don’t want it to ramble on for too long.

It may be wise to set a lower Character Limit for ChatGPT if you are using paid services like ElevenLabs, as to avoid eating up your precious credits.

The Message History input has an arbitrary max limit of 20 for now. OpenAI doesn’t like it when it’s given a lot of text.

And if you have a lengthy personality or if a lot of user messages are long then OpenAI may fail to generate a response.

The higher the limit the “more” it cost to generate responses.
Tweak to your liking.

Read more about the advanced settings or about configuring a personality.

ChatGPT Advanced Properties

The “Advanced Settings” for ChatGPT are just numbers we can tweak to try and get preferred responses back from OpenAI.

These inputs come with subtext to describe them already, so I’ll just regurgitate them here.

  • Frequency Penalty: This controls the likelihood that the model repeats a previously generated line.
    • Positive values decrease the likelihood of lines being repeated. The higher the more random sentences become.
    • [-2.0, 2.0] is the range, however, it is recommended to be between [0.1, 1]
  • Presence Penalty: This controls the likelihood to talk about new topics.
    • Positive values increase the likelihood of the topic changing. The higher the more sporadic topic changing becomes.
    • [-2.0, 2.0] is the range, no recommended values as far as I know. I use 1.
  • Temperature: This controls of “focused” the model becomes when generating responses.
    • Higher values like 0.8 will make the output more random.
    • Lower values like 0.2 will make the output more focused and deterministic.
  • Max Tokens: This is sorta like a “character limit” and controls how large the generated response is.
    • “On average” 1 token = 4 characters. This isn’t set in stone anywhere.
    • If the max is too low, it can sometimes generate a response that gets cut off.
    • I don’t recommend going over 100 personally

tts helper chatgpt advanced settings

ChatGPT Personality

As previously mentioned this section is heavily inspired by VTS P.O.G.
If you want a tool that combines this functionality with many more services other than VTubeStudio I highly recommend using VTS P.O.G.

Eruben worked hard on supporting a lot of platforms!

Anyways! Back to the boring docs.

This whole area is up to YOU to fill out. These fields can be anything you desire.

These fields are used to try and convince the model that they’re a “real thing” that somehow relates to the streamer.

Here’s the stupidly complicated paragraph I mashed together:

You will adopt the personality and attitudes of ${personality.modelsIdentity} as described in ${personality.modelsBackground}, ensuring your responses reflect their unique perspective and experiences.
You embody ${personality.streamersThoughtsOnModel}. You can seamlessly simulate the emotional and cognitive aspects of a real ${personality.modelsCoreIdentity}.
    * You must consistently respond in the persona of ${personality.modelsIdentity} without narration.
    * In ${personality.modelsIdentity}'s perspective, ${personality.streamersIdentity} is their ${personality.streamerModelRelation}.
    * Messages directed to you will be identified as coming from ${personality.streamersIdentity}, while messages not from ${personality.streamersIdentity} will be identified as coming from chat.
    * Always prioritize concise and succinct responses, avoiding unnecessary filler words. Avoid using extraneous words or filler language in your responses.
    * Maintain a neutral tone unless your background suggests otherwise.
    * Do not use emojis or special characters.

You can ignore this. I only included it incase you’re familiar with “AI writing” and somehow want to get around restrictions I set in place.

Let’s cover the purpose of every input.

  • Your name - This should be obvious, it you, the streamers, name.
  • ChatGPT’s name - This is what you want the model think its name is.
  • What should it act like? - A short high level description about how you want it to act.
  • What do you think of your pet? - I shouldn’t have used Pet here.
    • Basically, how do you, as the streamer, think of the persona you’re trying to describe.
    • Imagine if you were trying to describe a friend of yours.
  • How does ChatGPT see you - Now do the above, but from the models persona point of view.
  • Give ChatGPT a background - Here you can get as detailed as you want.
    • REMEMBER that there is a limit, so don’t try to exceed 1,000 characters.

chatgpt personality tts helper page

ChatGPT Vision

The images generated here are sent to OpenAI to get a response generated that is then sent to the TTS service you’ve selected.

TTS Helper doesn’t store these images anywhere, and they’re forgotten once given to OpenAI.

GPT Vision allows you to select which monitor, or application, that you want screenshotted and sent to OpenAI for responses.

When you’ve selected a “viewer”, you can click Check screenshot to confirm the viewer you selected is the one you want to use later on.

tts helper checking screenshot

When you hit the hotkey, it may take up to 10seconds, depending on how OpenAI and your selected TTS service feel, to generate a response. tts helper gpt vision talking about my runescape windwo

If you’ve opened up the application you wanted to capture AFTER you opened TTS Helper then you can click the button Refresh list so update the list of viewers.

Here’s what the following inputs are for:

  • Select Viewer: This is where you decide what gets captured. Select either the application or the display you want captured.
  • Global hotkey: Currently, the only way to trigger this functionality is using a global hotkey.
    • These hotkeys WILL block input, make it something you wouldn’t use normally.
  • Prompts for image generation: A comma delimitated list of phrases that will be picked at random when “asking” OpenAI about the image.

tts helpers gpt vision feature showing all of its inputs