Quran Lab

SAWT V6 Pro and SAWT V6 Flash

Quran-Lab · speech restoration for recitation archives

Archive recitation, restored to clean 48 kHz audio with silent pauses.

SAWT V6 Pro takes a damaged recording (hiss, hum, a small room, a narrow-band transfer of a tape) and generates the same recitation as a clean 48 kHz recording. A multilingual speech recogniser reads the damaged audio and guides the generator, so the content comes from the recording and not from a guess. In the pauses between phrases a gate hides the damaged recording from the generator, so room noise does not come back. SAWT V6 Flash is the same restoration distilled to four steps. SAWT V6 Pro never heard Quran recitation in training.

Predicted quality
3.89DistillMOS
input 2.74, SAWT V5 Pro 3.48
Pause floor
-74dBFS
input -36, SAWT V5 Pro -56
Speed, one RTX 4090
16xreal time
a 3.5-minute file in 13 s

SAWT V6 Pro on 500 real archive clips. Pause floor: the 10th-percentile level of the restored audio in the input's pauses, median over clips. Speaker consistency 0.947 (SAWT V5 Pro 0.957).

Listen

Ten 10-second excerpts of real archive recordings from a 120-clip validation set that was not used in training. Every version of a clip is matched in loudness to the SAWT V6 Pro take. Start another version while one is playing and it picks up at the same moment, for a direct A/B. Headphones recommended.

Clip 1

Surah 59 (Al-Hashr), low-quality archive input

low10.0 s

DistillMOS 3.75 to 3.87 (SAWT V5 Pro 3.70) · pauses -28 to -40 dBFS.

Damaged input
DistillMOS 3.75pauses -28 dBFS
SAWT V6 Pro
DistillMOS 3.87pauses -40 dBFS
SAWT V6 Flash
DistillMOS 3.58pauses -38 dBFS
SAWT V5 Pro
DistillMOS 3.70pauses -40 dBFS
Sidon (open restorer)
DistillMOS 3.60pauses -42 dBFS
Clip 2

Surah 88 (Al-Ghashiyah), low-quality archive input

low10.0 s

DistillMOS 2.55 to 3.79 (SAWT V5 Pro 3.33) · pauses -28 to -39 dBFS.

Damaged input
DistillMOS 2.55pauses -28 dBFS
SAWT V6 Pro
DistillMOS 3.79pauses -39 dBFS
SAWT V6 Flash
DistillMOS 3.69pauses -46 dBFS
SAWT V5 Pro
DistillMOS 3.33pauses -34 dBFS
Sidon (open restorer)
DistillMOS 3.53pauses -54 dBFS
Clip 3

Surah 82 (Al-Infitar), mid-quality archive input

mid10.0 s

DistillMOS 2.52 to 3.94 (SAWT V5 Pro 3.03) · pauses -29 to -59 dBFS.

Damaged input
DistillMOS 2.52pauses -29 dBFS
SAWT V6 Pro
DistillMOS 3.94pauses -59 dBFS
SAWT V6 Flash
DistillMOS 3.70pauses -65 dBFS
SAWT V5 Pro
DistillMOS 3.03pauses -48 dBFS
Sidon (open restorer)
DistillMOS 3.86pauses -53 dBFS
Clip 4

Surah 87 (Al-A'la), mid-quality archive input

mid10.0 s

DistillMOS 2.76 to 4.02 (SAWT V5 Pro 3.04) · pauses -29 to -42 dBFS.

Damaged input
DistillMOS 2.76pauses -29 dBFS
SAWT V6 Pro
DistillMOS 4.02pauses -42 dBFS
SAWT V6 Flash
DistillMOS 3.62pauses -43 dBFS
SAWT V5 Pro
DistillMOS 3.04pauses -29 dBFS
Sidon (open restorer)
DistillMOS 4.35pauses -45 dBFS
Clip 5

Surah 20 (Ta-Ha), high-quality archive input

high10.0 s

DistillMOS 2.71 to 3.76 (SAWT V5 Pro 3.49) · pauses -28 to -84 dBFS.

Damaged input
DistillMOS 2.71pauses -28 dBFS
SAWT V6 Pro
DistillMOS 3.76pauses -84 dBFS
SAWT V6 Flash
DistillMOS 3.61pauses -83 dBFS
SAWT V5 Pro
DistillMOS 3.49pauses -72 dBFS
Sidon (open restorer)
DistillMOS 3.81pauses -67 dBFS
Clip 6

Surah 82 (Al-Infitar), low-quality archive input

low10.0 s

DistillMOS 1.98 to 4.24 (SAWT V5 Pro 2.89) · pauses -34 to -56 dBFS.

Damaged input
DistillMOS 1.98pauses -34 dBFS
SAWT V6 Pro
DistillMOS 4.24pauses -56 dBFS
SAWT V6 Flash
DistillMOS 3.67pauses -75 dBFS
SAWT V5 Pro
DistillMOS 2.89pauses -36 dBFS
Sidon (open restorer)
DistillMOS 4.14pauses -62 dBFS
Clip 7

Surah 52 (At-Tur), mid-quality archive input

mid10.0 s

DistillMOS 2.57 to 4.16 (SAWT V5 Pro 2.92) · pauses -38 to -81 dBFS.

Damaged input
DistillMOS 2.57pauses -38 dBFS
SAWT V6 Pro
DistillMOS 4.16pauses -81 dBFS
SAWT V6 Flash
DistillMOS 3.83pauses -87 dBFS
SAWT V5 Pro
DistillMOS 2.92pauses -38 dBFS
Sidon (open restorer)
DistillMOS 2.94pauses -70 dBFS
Clip 8

Surah 62 (Al-Jumu'ah), mid-quality archive input

mid10.0 s

DistillMOS 2.00 to 3.98 (SAWT V5 Pro 3.64) · pauses -21 to -69 dBFS.

Damaged input
DistillMOS 2.00pauses -21 dBFS
SAWT V6 Pro
DistillMOS 3.98pauses -69 dBFS
SAWT V6 Flash
DistillMOS 3.40pauses -61 dBFS
SAWT V5 Pro
DistillMOS 3.64pauses -86 dBFS
Sidon (open restorer)
DistillMOS 3.78pauses -67 dBFS
Clip 9

Surah 96 (Al-Alaq), low-quality archive input

low10.0 s

DistillMOS 1.74 to 3.47 (SAWT V5 Pro 3.13) · pauses -25 to -64 dBFS.

Damaged input
DistillMOS 1.74pauses -25 dBFS
SAWT V6 Pro
DistillMOS 3.47pauses -64 dBFS
SAWT V6 Flash
DistillMOS 3.73pauses -86 dBFS
SAWT V5 Pro
DistillMOS 3.13pauses -37 dBFS
Sidon (open restorer)
DistillMOS 3.98pauses -67 dBFS
Clip 10

Surah 64 (At-Taghabun), low-quality archive input

low10.0 s

DistillMOS 2.76 to 4.31 (SAWT V5 Pro 3.43) · pauses -34 to -55 dBFS.

Damaged input
DistillMOS 2.76pauses -34 dBFS
SAWT V6 Pro
DistillMOS 4.31pauses -55 dBFS
SAWT V6 Flash
DistillMOS 4.08pauses -54 dBFS
SAWT V5 Pro
DistillMOS 3.43pauses -41 dBFS
Sidon (open restorer)
DistillMOS 4.36pauses -53 dBFS

Against open restorers

The same 120 validation clips through five open restoration models, scored the same way.

DistillMOS

predicted quality, 1 to 5; higher is better

Damaged input2.78
SAWT V6 Pro3.89
Sidon3.81
SGMSE+3.43
VoiceFixer3.25
LLaSE-G13.34
Resemble Enhance3.72

Pause floor, dBFS

level in the input's pauses; lower is quieter

Damaged input-36.0
SAWT V6 Pro-78.6
Sidon-66.4
SGMSE+-55.9
VoiceFixer-60.8
LLaSE-G1-62.1
Resemble Enhance-82.6

Pitch fidelity

share of voiced frames more than 50 cents off the input's pitch; lower is better

SAWT V6 Pro0.109
SGMSE+0.098
Sidon0.202

Reading the numbers

SAWT V6 Pro has the highest predicted quality of the six. Resemble Enhance has quieter pauses, but a lower quality score. Sidon, the strongest open model here, resynthesises the voice from speech-model features, and the melody is reinvented: about one voiced frame in five lands more than 50 cents off the input's pitch, against about one in nine for SAWT V6 Pro, and in recitation the melody is part of the reading. Not every number goes SAWT's way: SGMSE+ tracks the input's pitch a little more closely, though its pauses are far noisier and its quality score lower.

Pro and Flash

Two sizes of the same restoration. Flash is a student distilled from Pro: a third of the size, four sampling steps instead of sixteen, slightly less clean in the pauses.

SAWT V6 Pro banner.

SAWT V6 Pro

The flagship. Best quality and the cleanest pauses.

Generator
351M diffusion transformer, 24 layers, width 1024
Anchor
omniASR CTC 1B (wav2vec2, 1,600+ languages)
Sampling
16 Euler steps, anchor guidance 1.5
Speed
16x real time on long recordings; about 8x on 10 s clips
SAWT V6 Flash banner.

SAWT V6 Flash

Distilled from SAWT V6 Pro for large archives and smaller GPUs.

Generator
105M student, 12 layers, width 768
Anchor
omniASR CTC 300M
Sampling
4 Euler steps
Speed
74x real time on long recordings, 29x on 10 s clips
InputV5 ProV6 ProV6 Flash
DistillMOS 1 to 52.783.473.893.68
Pause floor, dBFS lower is quieter-36-53-79-70

SAWT models on the 120-clip validation set. Speeds are on one RTX 4090. Each file is processed in 56 s windows, so short clips run slower relative to their length than long recordings do.

Spectrograms

Spectrograms, 0 to 24 kHz, of clips 6, 7 and 5 from this page: the damaged input, SAWT V6 Pro and SAWT V5 Pro.
Clips 6, 7 and 5 from above, from a low-, a mid- and a high-quality input: the damaged input, SAWT V6 Pro and SAWT V5 Pro. Look at the pauses between phrases and at the band above the input's cut-off. Open the image for full size.

How it works

SAWT V6 Pro inference pipeline: the damaged audio is resampled to 16 kHz for the frozen omniASR CTC encoder, whose features a refiner turns into conditioning; the damaged audio also goes through the DAC-VAE encoder, and the pause gate hides that latent in the input's pauses; from noise, a diffusion transformer runs 16 Euler steps with anchor guidance, and the DAC-VAE decoder renders 48 kHz audio.
SAWT V6 Pro at inference. Open the image for full size.

An anchor that listens

Meta's omniASR CTC 1B, a wav2vec2 recogniser trained on more than 1,600 languages, reads the damaged audio at 16 kHz. Its layers 12, 24, 30 and 36 go through a small ConvNeXt refiner and condition the generator. Anchor guidance, at a scale of 1.5, strengthens the anchor's pull at every step.

A generator in a 48 kHz latent

A 351M flow-matching diffusion transformer (24 layers, width 1024) starts from noise and takes 16 sway-sampled Euler steps in the DAC-VAE latent, which the DAC-VAE decoder turns into 48 kHz audio. Long files run in 56.32 s windows with 1 s of overlap.

A pause gate

The generator also sees the damaged recording's DAC-VAE latent. In the input's pauses the pause gate hides it, so the hiss and room tone in those stretches never reach the generator, and the silence between phrases stays silent.

Never trained on recitation

SAWT V6 Pro was trained on about 4,000 hours of clean studio speech and singing, with no Quran recitation in it. Recitation is what it is evaluated on and what it is released for; SAWT V6 Flash learned from SAWT V6 Pro.

Which model to use

Recitation archives

SAWT V6 Pro

The best restoration of recitation we have measured: highest predicted quality and the cleanest pauses of the SAWT models.

Large batches, smaller GPUs

SAWT V6 Flash

Four steps instead of sixteen. Pauses are a little less clean (-70 against -79 dBFS on the validation set) and predicted quality slightly lower (3.68 against 3.89).

Earlier release

SAWT V5 Pro

The previous SAWT. SAWT V5 Pro stays available; SAWT V6 Pro is the recommended model for recitation and speech alike.