# waveglow-cli
[![PyPI](https://img.shields.io/pypi/v/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)
[![PyPI](https://img.shields.io/pypi/pyversions/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)
[![MIT](https://img.shields.io/github/license/stefantaubert/waveglow.svg)](https://github.com/stefantaubert/waveglow/blob/main/LICENSE)
[![PyPI](https://img.shields.io/pypi/wheel/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)
[![PyPI](https://img.shields.io/pypi/implementation/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)
[![PyPI](https://img.shields.io/github/commits-since/stefantaubert/waveglow/latest/master.svg)](https://github.com/stefantaubert/waveglow/compare/v0.0.2...master)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.10569141.svg)](https://doi.org/10.5281/zenodo.10569141)
Command-line interface (CLI) to train WaveGlow using .wav files.
## Features
- train/synthesize on CPU or GPU
- download pre-trained models by Nvidia
## Installation
```sh
pip install waveglow-cli --user
```
## Usage
```txt
usage: waveglow-cli [-h] [-v] {download,train,continue-train,validate,synthesize,synthesize-wav} ...
This program trains WaveGlow.
positional arguments:
{download,train,continue-train,validate,synthesize,synthesize-wav}
description
download download pre-trained checkpoint from Nvidia
train start training
continue-train continue training
validate validate checkpoint(s)
synthesize synthesize mel-spectrograms into an audio signal
synthesize-wav synthesize audio file into an audio signal
options:
-h, --help show this help message and exit
-v, --version show program's version number and exit
```
## Pretrained Models
- [LJS-v3-580000](https://tuc.cloud/index.php/s/yBRaWz5oHrFwigf): Adapted model trained on LJ Speech dataset by [Nvidia](https://api.ngc.nvidia.com/v2/models/nvidia/waveglow_ljs_256channels/versions/3/files/waveglow_256channels_ljs_v3.pt).
## Audio Example
"The North Wind and the Sun were disputing which was the stronger, when a traveler came along wrapped in a warm cloak." [Listen here](https://tuc.cloud/index.php/s/gzaYDNKinHw6GCz) (headphones recommended)
## Roadmap
- Outsource method to convert audio files to mel-spectrograms before training
- Improve logging
- Add more audio examples
- Adding tests
## Development setup
```sh
# update
sudo apt update
# install Python 3.8-3.11 for ensuring that tests can be run
sudo apt install python3-pip \
python3.8 python3.8-dev python3.8-distutils python3.8-venv \
python3.9 python3.9-dev python3.9-distutils python3.9-venv \
python3.10 python3.10-dev python3.10-distutils python3.10-venv \
python3.11 python3.11-dev python3.11-distutils python3.11-venv
# install pipenv for creation of virtual environments
python3.8 -m pip install pipenv --user
# check out repo
git clone https://github.com/stefantaubert/waveglow.git
cd waveglow
# create virtual environment
python3.8 -m pipenv install --dev
```
## Running the tests
```sh
# first install the tool like in "Development setup"
# then, navigate into the directory of the repo (if not already done)
cd waveglow
# activate environment
python3.8 -m pipenv shell
# run tests
tox
```
Final lines of test result output:
```log
py38: commands succeeded
py39: commands succeeded
py310: commands succeeded
py311: commands succeeded
congratulations :)
```
## License
MIT License
## Acknowledgments
Model code adapted from [Nvidia](https://github.com/NVIDIA/waveglow).
Paper:
- [Waveglow: A Flow-based Generative Network for Speech Synthesis](https://ieeexplore.ieee.org/document/8683143)
Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) – Project-ID 416228727 – CRC 1410
## Citation
If you want to cite this repo, you can use the BibTeX-entry generated by GitHub (see *About => Cite this repository*).
```txt
Taubert, S. (2024). waveglow-cli (Version 0.0.2) [Computer software]. [https://doi.org/10.5281/zenodo.10569141](https://doi.org/10.5281/zenodo.10569141)
```
Raw data
{
"_id": null,
"home_page": "",
"name": "waveglow-cli",
"maintainer": "",
"docs_url": null,
"requires_python": "<3.12,>=3.8",
"maintainer_email": "Stefan Taubert <pypi@stefantaubert.com>",
"keywords": "Text-to-speech,Speech synthesis,Mel-spectrogram,Corpus,Utils,Language,Linguistics",
"author": "",
"author_email": "Stefan Taubert <pypi@stefantaubert.com>",
"download_url": "https://files.pythonhosted.org/packages/0c/60/679d27aca5083d9bbfad9dc9d44faf907f4225787e90cefc2bc4da023405/waveglow-cli-0.0.2.tar.gz",
"platform": null,
"description": "# waveglow-cli\n\n[![PyPI](https://img.shields.io/pypi/v/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)\n[![PyPI](https://img.shields.io/pypi/pyversions/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)\n[![MIT](https://img.shields.io/github/license/stefantaubert/waveglow.svg)](https://github.com/stefantaubert/waveglow/blob/main/LICENSE)\n[![PyPI](https://img.shields.io/pypi/wheel/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)\n[![PyPI](https://img.shields.io/pypi/implementation/waveglow-cli.svg)](https://pypi.python.org/pypi/waveglow-cli)\n[![PyPI](https://img.shields.io/github/commits-since/stefantaubert/waveglow/latest/master.svg)](https://github.com/stefantaubert/waveglow/compare/v0.0.2...master)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.10569141.svg)](https://doi.org/10.5281/zenodo.10569141)\n\nCommand-line interface (CLI) to train WaveGlow using .wav files.\n\n## Features\n\n- train/synthesize on CPU or GPU\n- download pre-trained models by Nvidia\n\n## Installation\n\n```sh\npip install waveglow-cli --user\n```\n\n## Usage\n\n```txt\nusage: waveglow-cli [-h] [-v] {download,train,continue-train,validate,synthesize,synthesize-wav} ...\n\nThis program trains WaveGlow.\n\npositional arguments:\n {download,train,continue-train,validate,synthesize,synthesize-wav}\n description\n download download pre-trained checkpoint from Nvidia\n train start training\n continue-train continue training\n validate validate checkpoint(s)\n synthesize synthesize mel-spectrograms into an audio signal\n synthesize-wav synthesize audio file into an audio signal\n\noptions:\n -h, --help show this help message and exit\n -v, --version show program's version number and exit\n```\n\n## Pretrained Models\n\n- [LJS-v3-580000](https://tuc.cloud/index.php/s/yBRaWz5oHrFwigf): Adapted model trained on LJ Speech dataset by [Nvidia](https://api.ngc.nvidia.com/v2/models/nvidia/waveglow_ljs_256channels/versions/3/files/waveglow_256channels_ljs_v3.pt).\n\n## Audio Example\n\n\"The North Wind and the Sun were disputing which was the stronger, when a traveler came along wrapped in a warm cloak.\" [Listen here](https://tuc.cloud/index.php/s/gzaYDNKinHw6GCz) (headphones recommended)\n\n## Roadmap\n\n- Outsource method to convert audio files to mel-spectrograms before training\n- Improve logging\n- Add more audio examples\n- Adding tests\n\n## Development setup\n\n```sh\n# update\nsudo apt update\n# install Python 3.8-3.11 for ensuring that tests can be run\nsudo apt install python3-pip \\\n python3.8 python3.8-dev python3.8-distutils python3.8-venv \\\n python3.9 python3.9-dev python3.9-distutils python3.9-venv \\\n python3.10 python3.10-dev python3.10-distutils python3.10-venv \\\n python3.11 python3.11-dev python3.11-distutils python3.11-venv\n# install pipenv for creation of virtual environments\npython3.8 -m pip install pipenv --user\n\n# check out repo\ngit clone https://github.com/stefantaubert/waveglow.git\ncd waveglow\n# create virtual environment\npython3.8 -m pipenv install --dev\n```\n\n## Running the tests\n\n```sh\n# first install the tool like in \"Development setup\"\n# then, navigate into the directory of the repo (if not already done)\ncd waveglow\n# activate environment\npython3.8 -m pipenv shell\n# run tests\ntox\n```\n\nFinal lines of test result output:\n\n```log\npy38: commands succeeded\npy39: commands succeeded\npy310: commands succeeded\npy311: commands succeeded\ncongratulations :)\n```\n\n## License\n\nMIT License\n\n## Acknowledgments\n\nModel code adapted from [Nvidia](https://github.com/NVIDIA/waveglow).\n\nPaper:\n\n- [Waveglow: A Flow-based Generative Network for Speech Synthesis](https://ieeexplore.ieee.org/document/8683143)\n\nFunded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) \u2013 Project-ID 416228727 \u2013 CRC 1410\n\n## Citation\n\nIf you want to cite this repo, you can use the BibTeX-entry generated by GitHub (see *About => Cite this repository*).\n\n```txt\nTaubert, S. (2024). waveglow-cli (Version 0.0.2) [Computer software]. [https://doi.org/10.5281/zenodo.10569141](https://doi.org/10.5281/zenodo.10569141)\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Command-line interface (CLI) to train WaveGlow using .wav files.",
"version": "0.0.2",
"project_urls": {
"Homepage": "https://github.com/stefantaubert/waveglow",
"Issues": "https://github.com/stefantaubert/waveglow/issues"
},
"split_keywords": [
"text-to-speech",
"speech synthesis",
"mel-spectrogram",
"corpus",
"utils",
"language",
"linguistics"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8d36a251676f73d6c695f385b3870b96e80d243fbe0db17cd6fc7715b9656cb3",
"md5": "78c151a666d378ba3e0f12dcdd6b1a27",
"sha256": "5d50a68bcef9d5923d6a5d67ad17a2e37d11b0b38276d838de763c6543d97279"
},
"downloads": -1,
"filename": "waveglow_cli-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "78c151a666d378ba3e0f12dcdd6b1a27",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.12,>=3.8",
"size": 60841,
"upload_time": "2024-01-25T16:50:15",
"upload_time_iso_8601": "2024-01-25T16:50:15.861935Z",
"url": "https://files.pythonhosted.org/packages/8d/36/a251676f73d6c695f385b3870b96e80d243fbe0db17cd6fc7715b9656cb3/waveglow_cli-0.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0c60679d27aca5083d9bbfad9dc9d44faf907f4225787e90cefc2bc4da023405",
"md5": "e0982eed14573ef23903989e04628786",
"sha256": "09f770d9dbf6ea0970fdc9abec332662c3650e6712f57e1103bc52ff8a34c3f3"
},
"downloads": -1,
"filename": "waveglow-cli-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "e0982eed14573ef23903989e04628786",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.12,>=3.8",
"size": 428089,
"upload_time": "2024-01-25T16:50:18",
"upload_time_iso_8601": "2024-01-25T16:50:18.423145Z",
"url": "https://files.pythonhosted.org/packages/0c/60/679d27aca5083d9bbfad9dc9d44faf907f4225787e90cefc2bc4da023405/waveglow-cli-0.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-25 16:50:18",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "stefantaubert",
"github_project": "waveglow",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "waveglow-cli"
}