Introduction
New: Interactive demo using Google Colaboratory can be found here
TTS-Cube is an end-2-end speech synthesis system that provides a full processing pipeline to train and deploy TTS models.
It is entirely based on neural networks, requires no pre-aligned data and can be trained to produce audio just by using character or phoneme sequences.
Markdown does not allow embedding of audio files. For a better experience check-out the project's website.
For installation please follow these instructions. Training and usage examples can be found here. A notebook demo can be found here.
Output examples
Encoder outputs:
"Arată că interesul utilizatorilor de internet față de acțiuni ecologiste de genul Earth Hour este unul extrem de ridicat."
"Pentru a contracara proiectul, Rusia a demarat un proiect concurent, South Stream, în care a încercat să atragă inclusiv o parte dintre partenerii Nabucco."
Vocoder output (conditioned on gold-standard data)
Note: The mel-spectrum is computed with a frame-shift of 12.5ms. This means that Griffin-Lim reconstruction produces sloppy results at most (regardless on the number of iterations)
End to end decoding
The encoder model is still converging, so right now the examples are still of low quality. We will update the files as soon as we have a stable Encoder model.
Technical details
TTS-Cube is based on concepts described in Tacotron (1 and 2), Char2Wav and WaveRNN, but it's architecture does not stick to the exact recipes:
- It has a dual-architecture, composed of (a) a module (Encoder) that converts sequences of characters or phonemes into mel-log spectrogram and (b) a RNN-based Vocoder that is conditioned on the spectrogram to produce audio
- The Encoder is similar to those proposed in Tacotron (Wang et al., 2017) and Char2Wav (Sotelo et al., 2017), but
- has a lightweight architecture with just a two-layer BDLSTM encoder and a two-layer LSTM decoder
- uses the guided attention trick (Tachibana et al., 2017), which provides incredibly fast convergence of the attention module (in our experiments we were unable to reach an acceptable model without this trick)
- does not employ any CNN/pre-net or post-net
- uses a simple highway connection from the attention to the output of the decoder (which we observed that forces the encoder to actually learn how to produce the mean-values of the mel-log spectrum for particular phones/characters)
- The initail vocoder was similar to WaveRNN(Kalchbrenner et al., 2018), but instead of modifying the RNN cells (as proposed in their paper), we used two coupled neural networks
- We are now using Clarinet (Ping et al., 2018)
References
The ParallelWavenet/ClariNet code is adapted from this ClariNet repo.
Metadata
Release files for ttscube 0.1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| ttscube-0.1.0.0.tar.gz | 53.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ttscube-0.1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 118.0 kB
Release files / ttscube-0.1.0.0.tar.gz
| Download URL | ttscube-0.1.0.0.tar.gz |
|---|---|
| Size | 53.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
22947dcd3991b0d57b4283130ee1b0491f6d3fe62def0cd46a933443f1ae10f8
|
|
BLAKE2b-256 checksum How to use checksums |
4b2c06179bab794fe591d5a1fa31e3e0f20e659d43e455b497af223be93e97b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Release files / ttscube-0.1.0.0-py3-none-any.whl
| Download URL | ttscube-0.1.0.0-py3-none-any.whl |
|---|---|
| Size | 64.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8d2b6edce224bb42f3415b0a64742d76cd4a5ac615dfd5467bad97f897e48f20
|
|
BLAKE2b-256 checksum How to use checksums |
95bda7d1797c103452f82a02c44ae834197c531f64dff42443fe252839c5ff91
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Security for ttscube 0.1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.