Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
PyTorch Implementation of PortaSpeech: Portable and High-Quality Generative Text-to-Speech
| Date | Stars |
|---|---|
| 2026-07-24 | 342 |
| 2026-07-25 | 342 |
| 2026-07-28 | 342 |
| 2026-07-30 | 342 |
| 2026-07-31 | 342 |
| 2026-08-06 | 342 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# PortaSpeech - PyTorch Implementation
PyTorch Implementation of [PortaSpeech: Portable and High-Quality Generative Text-to-Speech](https://arxiv.org/abs/2109.15166).
<p align="center">
<img src="img/model.png" width="80%">
</p>
## Audio Samples
Audio samples are available at [/demo](https://github.com/keonlee9420/PortaSpeech/tree/main/demo).
## Model Size
| Module | Normal | Small | Normal (paper) | Small (paper) |
| :----- | :-----: | :-----: | :-----: | :-----: |
| *Total* | 24M | 7.6M | 21.8M | 6.7M
| *LinguisticEncoder* | 3.7M | 1.4M | - | -
| *VariationalGenerator* | 11M | 2.8M | - | -
| *FlowPostNet* | 9.3M | 3.4M | - | -
# Quickstart
***DATASET*** refers to the names of datasets such as `LJSpeech` in the following documents.
<!-- and `VCTK` in the following documents. -->
## Dependencies
You can install the Python dependencies with
```
pip3 install -r requirements.txt
```
Also, `Dockerfile` is provided for `Docker` users.
## Inference
You have to download the [pretrained models](https://drive.google.com/drive/folders/1lJwW4KbGJ5DnK788ZhCTDNeY9nqZyZMw?usp=sharing) and put them in `output/ckpt/DATASET/`.
For a **single-speaker TTS**, run
```
python3 synthesize.py --text "YOUR_DESIRED_TEXT" --restore_step RESTORE_STEP --mode single --dataset DATASET
```
<!--
For a **multi-speaker TTS**, run
```
python3 synthesize.py --text "YOUR_DESIRED_TEXT" --speaker_id SPEAKER_ID --restore_step RESTORE_STEP --mode single --dataset DATASET
``` -->
<!-- The dictionary of learned speakers can be found at `preprocessed_data/DATASET/speakers.json`, and -->
The generated utterances will be put in `output/result/`.
## Batch Inference
Batch inference is also supported, try
```
python3 synthesize.py --source preprocessed_data/DATASET/val.txt --restore_step RESTORE_STEP --mode batch --dataset DATASET
```
to synthesize all utterances in `preprocessed_data/DATASET/val.txt`.
## Controllability
The speaking rate of the synthesized utterances can be controlled by specifying the desired duration ratios.
For example, one can increase the speaking rate by 20 by
```
python3 synthesize.py --text "YOUR_DESIRED_TEXT" --restore_step RESTORE_STEP --mode single --dataset DATASET --duration_control 0.8
```
<!-- Add ***--speaker_id SPEAKER_ID*** for a multi-speaker TTS. -->
Please note that the controllability is originated from [FastSpeech2](https://arxiv.org/abs/2006.04558) and not a vital interest of PortaSpeech.
# Training
## Datasets
The supported datasets are
- [LJSpeech](https://keithito.com/LJ-Speech-Dataset/): a **single-speaker** English dataset consists of 13100 short audio clips of a female speaker reading passages from 7 non-fiction books, approximately 24 hours in total.
<!-- - [VCTK](https://datashare.ed.ac.uk/handle/10283/3443): The CSTR VCTK Corpus includes speech data uttered by 110 English speakers (**multi-speaker TTS**) with various accents. Each speaker reads out about 400 sentences, which were selected from a newspaper, the rainbow passage and an elicitation paragraph used for the speech accent archive.
Any of both **single-speaker TTS** dataset (e.g., [Blizzard Challenge 2013](https://www.synsig.org/index.php/Blizzard_Challenge_2013)) and **multi-speaker TTS** dataset (e.g., [LibriTTS](https://openslr.org/60/)) can be added following LJSpeech and VCTK, respectively. Moreover, **your own language and dataset** can be adapted following [here](https://github.com/keonlee9420/Expressive-FastSpeech2). -->
## Preprocessing
<!-- - For a **multi-speaker TTS** with external speaker embedder, download [ResCNN Softmax+Triplet pretrained model](https://drive.google.com/file/d/1F9NvdrarWZNktdX9KlRYWWHDwRkip_aP) of [philipperemy's DeepSpeaker](https://github.com/philipperemy/deep-speaker) for the speaker embedding and locate it in `./deepspeaker/pretrained_models/`. -->
Run
```
python3 prepare_align.py --dataset DATASET
```
for some preparations.
For the forced alignment, [Montreal Forced Aligner](https://montreal-forceExcerpt of 8,040 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:da7da9f1f3aec0cc, topic:text-to-speech, topic:tts, topic:speech-synthesis