Skip to main content

Python script that lets you easily convert text to synthesized audio files, with help of Amazon's IVONA.

Project description

Build status Test coverage PyPI version Python versions License

Python script that lets you easily convert passed text to synthesized audio files, with help of Amazon’s IVONA. All you need is a pair of keys and this script. Yes, that’s literally everything you need to never speak again. If that’s your thing of course.

If you want to use IVONA Speech Cloud directly inside your Python project then you should have a look at python-ivona-api, which this script in the background.

Installation

>From PyPI (recommended):

$ pip install ivona_speak

With git clone:

$ git clone https://github.com/Pythonity/ivona-speak
$ pip install -r ivona-speak/requirements.txt
$ cd ivona-speak/bin

Usage

$ ivona-speak --help

  Easily convert passed text to synthesized audio files, with help of
  Amazon's IVONA. All you need is a pair of auth keys.

  See https://github.com/Pythonity/ivona-speak for more info.

Options:
  --help  Show this message and exit.

Commands:
  synthesize*  Synthesize passed text and save it as an...
  list-voices  List available Ivona voices

Examples

You can provide keys either explicitly:

$ ivona-speak --access-key 'YOUR_ACTUAL_ACCESS_KEY' --secret-key 'YOUR_ACTUAL_SECRET_KEY' list-voices

or export them as environment variables:

$ export IVONA_ACCESS_KEY="YOUR_ACTUAL_ACCESS_KEY"
$ export IVONA_SECRET_KEY="YOUR_ACTUAL_SECRET_KEY"
$ ivona-speak list-voices

The default subcommand is synthesize, so these do the same:

$ ivona-speak synthesize -o hello_world.mp3 'Hello world!'
$ ivona-speak -o hello_world.mp3 'Hello world!'

I want someone to say ‘Hello world!’, and say it quick:

$ ivona-speak synthesize -o hello_world.mp3 'Hello world!'

She sounds so nice. I want someone special to respond her:

$ ivona-speak synthesize -o response.mp3 -n Joey 'How you doin?'

Tests

Package was tested with the help of py.test and tox on Python 2.7, 3.4, 3.5 and 3.6 (see tox.ini).

Code coverage is available at Coveralls.

To run tests yourself you need to set environment variables with secret and access keys before running tox inside the repository:

$ pip install -r requirements/dev.txt
$ export IVONA_ACCESS_KEY="YOUR_ACTUAL_ACCESS_KEY"
$ export IVONA_SECRET_KEY="YOUR_ACTUAL_SECRET_KEY"
$ tox

Contributions

Package source code is available at GitHub.

Feel free to use, ask, fork, star, report bugs, fix them, suggest enhancements, add functionality and point out any mistakes. Thanks!

Authors

Developed and maintained by Pythonity.

Written by Paweł Adamczak.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ivona_speak-0.2.0.tar.gz (19.7 kB view details)

Uploaded Source

Built Distribution

ivona_speak-0.2.0-py2.py3-none-any.whl (20.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ivona_speak-0.2.0.tar.gz.

File metadata

  • Download URL: ivona_speak-0.2.0.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ivona_speak-0.2.0.tar.gz
Algorithm Hash digest
SHA256 e9219f8770a6a517d078b76fbf48c83d3285a956537cb4264df54478f5588cff
MD5 035032062ee63f0263f519915540fb56
BLAKE2b-256 36c002152d7dbf14e5b20b1f63f27d79e1c1d5cc195ccb3324a9d340b7ff86c7

See more details on using hashes here.

File details

Details for the file ivona_speak-0.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for ivona_speak-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 03b72eb9cc82f95ebd8457fbe10cbb2266a0fc80ce999318a25210ffabe3a9a2
MD5 a987ff304868d39216b62087441c0d0f
BLAKE2b-256 e7f01d6ad7c0481f0e6a6c34c8665b00f46ec0fa879604f528f93dc534291d82

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page