MLX port of
AudioSR
—
a
multi-step latent-diffusion audio super-resolution model
— quantized to
INT4
weight-only for on-device inference on Apple Silicon. Upsamples
any-rate input (mono) to
48 kHz
with a 200-step DDIM solver (v-prediction
classifier-free guidance) over an AudioLDM-style VAE latent, then decodes
via a HiFi-GAN vocoder. AudioSR is the
teacher
model that
FlashSR
was distilled
from — FlashSR runs the same architecture in 1 step instead of 200, at the
cost of some quality.
Model
Total parameters
672 M (VAE 223 M + UNet 258 M + Vocoder 190 M)
Diffusion
200-step DDIM, v-prediction, cosine schedule, η=0
Classifier-free guidance
scale 3.5 (cond + uncond passes per step)
Quantization
INT4 weight-only, group size 64, mode
mlx_affine_flat
The three sub-models share one safetensors file with
vae.*
,
ldm.*
,
voc.*
key prefixes.
config.quantized_shapes
records each tensor's pre-flatten
shape so
mx.dequantize
can rebuild conv weight tensors at load time.
Performance (Apple Silicon, M-series, 10.24 s @ 48 kHz)
Metric
Value
Real-time factor (wall / audio)
1.87
Load time
0.06 s
SNR vs FP16 reference
+29.2 dB
Peak amplitude
0.500 (renormalised per upstream)
AudioSR is markedly slower than FlashSR (RTF 1.87 vs FlashSR's 1.10 on the
same hardware) because the 200-step DDIM is the inherent bottleneck. Choose
AudioSR when the teacher's quality is preferred; choose FlashSR for
real-time on-device use.
Usage
from huggingface_hub import snapshot_download
import mlx.core as mx
import numpy as np
import scipy.io.wavfile as wf
from scipy.signal import resample_poly
bundle = snapshot_download("aufklarer/AudioSR-MLX-4bit")
# See https://github.com/soniqo/speech-swift for production usage.# Toy Python demo (requires the matching MLX AudioSR runtime):
sr, audio = wf.read("lr.wav")
audio = audio.astype(np.float32) / 32767.0
audio_48 = resample_poly(audio, 48000, sr).astype(np.float32)
from audiosr import AudioSR
model = AudioSR(bundle)
hr = model(mx.array(audio_48), steps=200, cfg_scale=3.5, seed=42)
mx.eval(hr)
wf.write("hr.wav", 48000, (np.clip(np.array(hr), -1, 1) * 32767).astype(np.int16))
AudioSR-MLX-4bit huggingface.co is an AI model on huggingface.co that provides AudioSR-MLX-4bit's model effect (), which can be used instantly with this aufklarer AudioSR-MLX-4bit model. huggingface.co supports a free trial of the AudioSR-MLX-4bit model, and also provides paid use of the AudioSR-MLX-4bit. Support call AudioSR-MLX-4bit model through api, including Node.js, Python, http.
AudioSR-MLX-4bit huggingface.co is an online trial and call api platform, which integrates AudioSR-MLX-4bit's modeling effects, including api services, and provides a free online trial of AudioSR-MLX-4bit, you can try AudioSR-MLX-4bit online for free by clicking the link below.
aufklarer AudioSR-MLX-4bit online free url in huggingface.co:
AudioSR-MLX-4bit is an open source model from GitHub that offers a free installation service, and any user can find AudioSR-MLX-4bit on GitHub to install. At the same time, huggingface.co provides the effect of AudioSR-MLX-4bit install, users can directly use AudioSR-MLX-4bit installed effect in huggingface.co for debugging and trial. It also supports api for free installation.