Reading Room

TTS · Phase 3: Vocoders

BigVGAN

BigVGAN: A Universal Neural Vocoder with Large-Scale Training

Skim10 minDay 6 of 10#52 of 86

In one sentence

BigVGAN is HiFi-GAN scaled up with periodic Snake activations and anti-aliased upsampling, trained on a large multi-speaker corpus, so one vocoder works on unseen speakers, languages, recording conditions, singing and even instruments.

Why this paper exists

HiFi-GAN (HiFi-GAN) is trained on one dataset and degrades on anything else: a new speaker, a noisy recording, a different language, a singer. In a real system you want one vocoder for every voice your acoustic model produces, including zero-shot cloned voices. Simply training HiFi-GAN bigger on more data did not fix it, because two things in the architecture work against generalization: ReLU-style activations do not extrapolate periodic signals, and transposed-conv upsampling creates aliasing (high-frequency artifacts folding into audible bands).

The core idea

Build periodicity and signal-processing hygiene into the generator itself:

  • Snake activation: f(x) = x + (1/α) · sin²(α·x), with a learned frequency α per channel. It is monotonic (so gradients flow like ReLU) but has a built-in periodic component, which helps model the harmonic structure of audio and extrapolate it to unseen pitches.
  • Anti-aliased multi-periodicity (AMP) block: apply the nonlinearity at 2x the sample rate, with low-pass filters before and after, so the high frequencies a nonlinearity creates do not alias back down.

How it works

  • Generator: HiFi-GAN's layout (transposed-conv upsampling stages followed by residual blocks with several dilations), but each residual block becomes an AMP block: upsample 2x → low-pass → Snake → low-pass → downsample 2x, around dilated convs.
  • Discriminators: HiFi-GAN's multi-period discriminator, plus a multi-resolution discriminator (operating on STFT magnitudes at several resolutions, from UnivNet) in place of the multi-scale one.
  • Losses: HiFi-GAN-style adversarial + feature matching + mel L1.
  • Data: LibriTTS (the full set, many speakers, varied conditions), 24 kHz, 100-band mel. Evaluated also on out-of-distribution data: other speech datasets, unseen languages, noisy speech, singing and music (MUSDB18).
  • Scale: the large model has ~112M parameters; a small ~14M version is close in size to HiFi-GAN V1.

Build the intuition

Analogy: ReLU networks are like drawing a sine wave with a ruler: you can approximate it piece by piece inside the range you practised on, but outside it you just draw a straight line. Snake gives the network a protractor: periodic shapes are native, so it keeps drawing waves beyond the training range.

Aliasing thought experiment: apply ReLU to a 10 kHz sine sampled at 24 kHz. The clipped output has harmonics at 20, 30, 40 kHz, above the 12 kHz Nyquist limit, which fold back into the audible band as false tones. Doing the nonlinearity at 48 kHz and low-pass filtering before downsampling removes those harmonics instead.

Numbers worth remembering

  • ~112M parameters (BigVGAN), ~14M (BigVGAN-base) (check Table 1 for exact values).
  • 24 kHz audio, 100 mel bins, trained on LibriTTS.
  • Snake: x + (1/α) sin²(αx), α learned per channel.
  • BigVGAN-v2 (2024, repo release) added 44 kHz models and a fused CUDA kernel for the anti-aliased activation (check the NVIDIA repo for details).

Where it shows up today

  • Used as the vocoder in several recent TTS systems that need to render many voices (check each model card; for example some flow-matching and codec-LM systems decode mels with BigVGAN).
  • Snake activations moved into codecs: DAC (DAC) uses them, and many later codecs followed.
  • A natural choice when an acoustic model clones arbitrary voices (VALL-E, Voicebox) and you cannot fine-tune a vocoder per speaker.

What it got wrong, and what came next

  • Big and slow compared with HiFi-GAN V2 or Vocos; the anti-aliasing filters add compute, and 112M is heavy for CPU or a 4 GB laptop GPU in a real-time agent. Vocos (iSTFTNet + Vocos) reports similar quality at far lower cost.
  • Still a time-domain upsampler. iSTFT-based vocoders (iSTFTNet + Vocos) skip most of the upsampling.

Check yourself

Q1What is the Snake activation and why does it help a vocoder?

f(x) = x + (1/α) sin²(αx) with a learned α. The x term keeps it monotonic for good gradients, and the sin² term adds a periodic inductive bias, which helps model harmonics and generalize to pitches and timbres outside the training data.

Q2Where does aliasing come from in a GAN vocoder, and how does BigVGAN reduce it?

Nonlinearities and upsampling create frequency components above the Nyquist limit, which fold back as spurious tones. BigVGAN applies the activation at 2x the sample rate with low-pass filters before and after, so those components are removed before returning to the original rate.

Q3Why does a universal vocoder matter for zero-shot TTS?

A zero-shot model produces voices the vocoder never saw. A per-dataset vocoder like HiFi-GAN may add artifacts on those voices, undoing the acoustic model's work; a universal vocoder renders any plausible mel well.

When you're back at a laptop

  • Install NVIDIA's BigVGAN repo, vocode the same mel with BigVGAN and HiFi-GAN, and compare on an unseen voice (yours, recorded on a phone).
  • Plot Snake for α = 0.5, 1, 4 next to ReLU to see the periodic ripple.