You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I will keep on accidentally referring to it as CLI TTS - so I just named the repo that to get it out of the way
3
-
4
-
This is a basic Command Line based Text-To-Speech application.
5
-
This application interfaces with Amazon Polly, and requires the use of standard voices.
6
-
It has the ability to use [SSML](https://docs.aws.amazon.com/polly/latest/dg/supportedtags.html) (Speech Synthesis
7
-
Markup Language), and the configuration has the ability to set up text to replace.
8
-
9
-
## Replace Text
10
-
11
-
The replace text section of the configuration allows you to set specific strings that will be replaced by other strings.
12
-
This can be very useful for when you want to use SSML and set a shorthand for the beginning tag and ending tag.
13
-
This can also be useful for having 'macros'/'commands' with different responses
14
-
15
-
> **Note**:
16
-
> <br>It is advised to only replace specific combinations of characters, and not common combinations/single characters
17
-
> <br>For example don't replace `"e"` with `"𝔼"` otherwise the tag `"__"` will break because it will now
18
-
> be `<𝔼mphasis l𝔼v𝔼l=\"strong\">` instead of `<emphasis level=\"strong\">`
19
-
> <br>You can mitigate this issue by surrounding the letter with a space like this: `" e "`
20
-
21
-
## Voice Prefixes
22
-
23
-
The voice prefixes section allows you to set a prefix that will switch the voice to a specific Polly voice.
24
-
Then, if you use that prefix at the beginning of a message, the application will switch to that voice until another
25
-
prefix is used.
1
+
# Console Text To Speech
2
+
This program is meant to be an intuitive text-to-speech program that runs on command line.
3
+
This was made with streamers who struggle speaking in mind - but is open to use for many other things.
4
+
This uses SSML - and uses markdown-esque formatting for the effects.
26
5
27
6
### AWS
28
7
Using this requires an AWS account - https://aws.amazon.com/
@@ -34,47 +13,80 @@ References:
34
13
-[Amazon Polly Description of Limits/Price](https://aws.amazon.com/polly/pricing/)
35
14
-[Setting up a user and how to use IAM](https://docs.aws.amazon.com/signer/latest/developerguide/iam-setup.html)
36
15
16
+
## Voice Prefixes
17
+
18
+
The voice prefixes section allows you to set a prefix that will switch the voice to a specific Polly voice.
19
+
Then, if you use that prefix at the beginning of a message, the application will switch to that voice until another prefix is used.
20
+
Prefixes will be matched ignoring case and even if there's a `:` or `-` after it.
21
+
22
+
## Speech Effect Markdown
23
+
24
+
This is where the marks for the effects are declared. [SSML Tags Can Be Found Here](https://docs.aws.amazon.com/polly/latest/dg/supportedtags.html) - Currently self-closing tags such as 'break' are not supported
25
+
Effect declaration in the config looks like this:
26
+
27
+
```yml
28
+
speech-effect-markdown:
29
+
"!": //The character(s) that will be on either side of the text you want the effect to be used on
30
+
type: tag-name //This is the tag name, might have 'amazon:' before it
31
+
attribute: value // Any customization settings go after that, like "volume" and "loud"
32
+
```
33
+
34
+
By default, the markdown will be matched if surrounded by spaces or newlines/end of lines, but not if surrounded by other characters.
35
+
So you can have '.' and '..' as effect markdowns if you want
36
+
37
+
38
+
## Text Replacements
39
+
40
+
This is generic text replacement - it is run through a regex so that things aren't caught in the middle of a sentence.
41
+
42
+
## Other Settings
43
+
44
+
**Server Port:**
45
+
Used for the HTTP server the amazon requests are being made from. You shouldn't need to change this unless you already know what you're doing
0 commit comments