Speech synthesis that ditches autoregression for normalizing flows
It generates high-fidelity speech from mel-spectrograms by replacing slow autoregression with a single flow-based network trained on one simple loss.

What it does
WaveGlow is a PyTorch implementation of a flow-based generative network that turns mel-spectrograms into raw audio. Instead of predicting each audio sample conditioned on all previous samples—the way WaveNet does—it uses a reversible flow model to generate the waveform in parallel. The authors claim it matches the best publicly available WaveNet implementation in mean opinion score while synthesizing audio at 1200 kHz on an NVIDIA V100.
The interesting bit
The project marries OpenAI’s Glow with DeepMind’s WaveNet: it keeps the high-quality inductive biases of WaveNet’s architecture but drops the autoregressive training and inference bottleneck. By using only a single network and a single cost function—maximizing training data likelihood—the authors argue the training pipeline stays simple and stable, which is rarer in generative audio than one might hope.
Key highlights
- Synthesizes speech from mel-spectrograms without autoregression
- Claims 1200 kHz sample generation on an NVIDIA V100 GPU
- Mean Opinion Scores reportedly on par with the best public WaveNet implementation
- Supports mixed-precision (
fp16_run) and multi-GPU training via NCCL - Published pre-trained model and mel-spectrogram datasets available
Caveats
- Multi-GPU training is only tested on single-node NCCL setups
- Older checkpoints require conversion via
convert_model.pyto work with the current fused residual and skip connections - Depends on NVIDIA Apex, so portability is tied to the CUDA/PyTorch ecosystem
Verdict
Researchers and TTS builders who need WaveNet-level quality without the serial inference penalty should look here; if you are not on NVIDIA hardware or need proven multi-node scaling, this is less compelling.
Frequently asked
- What is NVIDIA/waveglow?
- It generates high-fidelity speech from mel-spectrograms by replacing slow autoregression with a single flow-based network trained on one simple loss.
- Is waveglow open source?
- Yes — NVIDIA/waveglow is open source, released under the BSD-3-Clause license.
- What language is waveglow written in?
- NVIDIA/waveglow is primarily written in Python.
- How popular is waveglow?
- NVIDIA/waveglow has 2.3k stars on GitHub.
- Where can I find waveglow?
- NVIDIA/waveglow is on GitHub at https://github.com/NVIDIA/waveglow.