Leverage the macOS `say` command into you scripts
Project description
macos_speech
Ever wanted to leverage the macOS builtin speech synthesis directly into python ? Or just make your code to talk...
With the Python macos_speech package you can do it in a pythonic way. Easy and zen.
Getting Started:
Installation
pip install macos_speech
or
git clone https://github.com/tibOin/macos_speech.git
cd macos_speech
pip install .
Requirements
macOS 10.x or for oldest OS X
For now, this package only works on Python >= 2.6 and Python >= 3.6.x
Only tested on Python 2.7.10 and >= 3.7.2.
Basic usage
from macos_speech import Synthesizer
speaker = Synthesizer(voice='Alex', device='Built-in')
speaker.text = """How my God! I can make my python code to talk!
And I can even send multiple lines! Awesome.
"""
speaker.talk()
# or
speaker.say("Hello!")
Get informations
from macos_speech import Synthesizer
speaker = Synthesizer()
print('''Voices:
NAME LANGUAGE DESCRIPTION
''')
for voice in speaker.voices:
print('{} {} {}'.format(voice.name, voice.lang, voice.desc))
print('')
print('Audio devices:')
for device in speaker.devices:
print('ID: {}, NAME: {}'.format(device.id, device.name))
print('')
print('''Output file possible formats:
ID NAME FILE_EXT DATA_FORMATS BIT_RATES
''')
for format in speaker.formats:
print('{} {} ({}) [{}] [{}]'.format(format.id, format.name,
','.join(format.exts),
','.join(format.formats),
','.join(format.bitrates)))
Synthesizer Properties
from macos_speech import Synthesizer
synthe = Synthesizer()
# Helper properties
synthe.devices
synthe.voices
synthe.formats
# Configuration properties
# File IO (takes absolute pathes strings)
synthe.infile # A file containing text to say (mutually exclusive with self.text - high priority)
synthe.outfile # The output audio file (default should be 'output.aiff'
# but you can specify file and data formats)
# Simple configs (takes strings)
synthe.rate # The speech rate
synthe.quality # The audio quality (between 0 and 127 both included)
synthe.text # The text to say (mutually exclusive with self.infile - low priority)
# Pythonified configs (takes macos_speech.CustomClasses)
synthe.format # The audio output file/data format : macos_speech.AudioFormat
# (Works only with self.outfile populated)
synthe.device # The audio output device : macos_speech.AudioDevice
# (or 'name' or 'id' on Python 3)
# (Only used if no self.outfile)
synthe.voice # The voice to use : macos_speech.Voice
# (or 'name' on Python 3)
Go Further
from macos_speech import Synthesiser, AudioFormat
# Speech manipulation:
# To create more realistic speech you can play on time and rate.
# You can add delays between words by following a simple syntax.
# Just set the delay by writing time in milliseconds between brackets.
mytext = 'I want to say... [100] something.'
# And/Or specify a rate in words per minutes to your Synthesiser
synthe = Synthesiser(voice='Alex', rate=50, text=mytext)
# Record to file:
# Basically, setting an outfile with supported extension would be enough to correctly encode the file.
speaker = Synthesiser(voice='Alex', text='Some text to record', outfile='rec.mp4')
# But you can customize a lot more your output file:
format = AudioFormat('3gp2', dataformat='Qclp', bitrate=13000)
speaker = Synthesiser(voice='Alex', text= "Some text", format=format, outfile='out.3g2')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file macos_speech-1.1.0.tar.gz.
File metadata
- Download URL: macos_speech-1.1.0.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65344b3acc2e310725fb4de5c3e2526edb7cc270929c780566d9123ab2407120
|
|
| MD5 |
6e2e3edbd9a9025ae6d3ec1de41460c1
|
|
| BLAKE2b-256 |
f27a80e11e649bf1b5b0365978952229f46f9ce5b9e7c080c8fda1cb12291a12
|
File details
Details for the file macos_speech-1.1.0-py3-none-any.whl.
File metadata
- Download URL: macos_speech-1.1.0-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e17742edeae687a9de849f101813d04597333bd4604d0044447ed698fc45b3b
|
|
| MD5 |
2db3b471dd16447d5e96fa2b94806b01
|
|
| BLAKE2b-256 |
59409969e683bef606c522c11ef19a24d54e12ebf77798b4c2f804bae7871348
|