Skip to main content

NBSapi

what is NBSapi

the NBSapi is a python library that can help you to convert your text to speech, where you can hear it directly or save it to an audio file.
it currently working only on windows with sapi5

requirements

to use the NBSapi you just need to install the comtypes library by using
pip install comtypes

install NBSapi

to install NBSapi you can use PIP
pip install NBSapi

usage

to use the library you need to import it
from NBSapi import NBSapi
import time
#load the class
TTS = NBSapi()
#speak a text and wait
TTS.Speak("hello")
#speak without wait, (note: this step is required if you want to control the speech)
TTS.Speak("hello", 1)
#wait 0.1 sec before stop the speech
time.sleep(0.1)
TTS.Stop()

whats new

  • solved a lot of problems
  • added function to check if sapi is avalable and working without any problems

class functions

this library has a lot of functions that make the sapi 5 tts easy

is_sapi

is_sapi()
this function will return true or false\

Speak

Speak(text (string), flag (int))
this is the function that will speek text
you can use the flags that exists on the lib file\

SpeakToFile

SpeakToFile(text (string), file (string), flags (int))
create an audio file with the giving text and path

Pause

Pause()
pause the speech

Resume

Resume()
resume the speech

Stop

Stop()
Stop the Speech

GetVoice

GetVoice()
get the current voice information as a dict

SetVoice

SetVoice(voice (index, description, attribute, or object), key ("by_index", "by_description", "by_attribute", or "" for voice object))
Set the current voice, even by description, by attribute, by index starting from 0, or by object

GetVolume

GetVolume()
Get the Current volume

SetVolume

SetVolume(vol (int))
set the Current volume

GetRate

GetRate()
Get the Current Rate

SetRate

SetRate(Rate (int))
Set the Rate of the voice Between -10 and 10

GetVoices

GetVoices(attrs = "")
Get a list of dicts, each item has a voice information
so, you can use this list indexes to set the voice, it has the same order.
here also you can use attributes to get just the voices you need (take a look to tests folder)

GetAttribute

GetAttribute(attr (string))
get an attribute of the selected voice such as Name, Age, Language, and Gender.

GetStatus(

GetStatus(Property (string))
Get a state of any thing you want, you can use the declared variable that start with STS_

GetObject

get the current SPVoice object

notes:

this library is new, so i will add a features to it as i can.
if you have any idea about this library please help with it.

Metadata

Release files for NBSapi 0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for NBSapi 0.6
File Size Uploaded
NBSapi-0.6.tar.gz 17.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for NBSapi 0.6
File Interpreter ABI Platform
NBSapi-0.6-py3-none-any.whl Python 3 none any Details

Total release size: 37.1 kB

Release files / NBSapi-0.6.tar.gz

Download URL NBSapi-0.6.tar.gz
Size 17.9 kB
Tags Source
SHA-256 checksum
How to use checksums
cb566b70eb918d0fb4e7d5f2e25c9d289cc3d3e3a9f5a9d270916253b7fdfe8f
BLAKE2b-256 checksum
How to use checksums
9132811c64e83e0bec21df9913a801b4c378ed2513cd22f23f177411328f6c50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / NBSapi-0.6-py3-none-any.whl

Download URL NBSapi-0.6-py3-none-any.whl
Size 19.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
59c5f6fc62ae8b8acae6d0e88c8af0420f8a1213ded410d0985f667bde51d5a9
BLAKE2b-256 checksum
How to use checksums
d0602c7f02a86665f0163430e3bba6e72da2f6b5baa34a560cce6797f5871865
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release history Release notifications | RSS feed

This release

0.6 This release

2 release files

0.5

2 release files

0.4

2 release files

0.3

2 release files

0.2

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page