v1.0 · GPL v2 · free ASIO4ALL equivalent

ASNUX, low-latency
audio engine for Linux.

A virtual ALSA kernel driver, a real-time systemd daemon and an eframe/egui GUI written in Rust. Works with any DAW that supports ALSA (REAPER, Ardour, Bitwig, LMMS...) and integrates with PulseAudio/PipeWire.

$ curl -sSL https://devfrp.github.io/asnux/install.sh | sudo bash

Automatic distribution detection — Debian, Ubuntu, Fedora, Arch, openSUSE, Slackware and many more. You can also download the script and inspect it before running.

00

ASIO4ALL, the free Linux edition

ASNUX is a low-latency audio engine designed to replace ASIO4ALL on Linux. It provides deep system integration through a virtual kernel module, a configurable buffer from 16 to 8192 samples with real-time priority, and installs from 20 package formats. It coexists with PulseAudio/PipeWire for transparent everyday use.

01

Features

Latency

Low latency

Configurable buffer from 16 to 8192 samples. Real-time priority for audio streams.

Kernel

ALSA kernel driver

Virtual kernel module for deep system integration. Multi-channel up to 8 (7.1).

GUI

Graphical interface

Modern GUI to set buffer, sample rate, channels and make ASNUX the default engine.

Packaging

Multi-format

20 package formats: DEB, RPM, Arch, Gentoo, Alpine, Nix, Slackware, Void, Solus, AppImage, Flatpak, Snap, Docker, Homebrew...

System

Default engine

Enable ASNUX as the main system audio device. Compatible with PulseAudio and PipeWire.

Studio

Pro rates

From 8 kHz to 192 kHz. 16/24/32-bit and float formats. DAW and audio workstation ready.

02

Sample rates and formats

Supported sample rates

8 kHz11.025 kHz16 kHz22.05 kHz 32 kHz44.1 kHz48 kHz64 kHz 88.2 kHz96 kHz176.4 kHz192 kHz

Supported audio formats

S16_LES24_LES32_LEFloat
03

Graphical interface

The asnux-gui control panel — buffer, estimated latency, sample rate, channels and default-engine switch, on a single screen.

Audio engine configuration
  Buffer size (samples)            [========----] 256
  Estimated latency: 5.3 ms
  Sample rate                      48000 Hz (Studio) ▼
  Channels                         2 (Stereo) ▼
  Periods                          4 periods ▼

  Default audio engine             ON

  [Load module] [Apply config] [Unload]
04

Technical specifications

OS

Operating system

Linux kernel 5.10+. All distributions: Debian, Ubuntu, Fedora, Arch, openSUSE, Gentoo, Alpine, NixOS, Void, Slackware, Solus.

Arch

Architecture

x86_64 (AMD64). ARM64 support (Raspberry Pi 5) in beta. Kernel module in C, daemon in Rust, GUI in Rust/eframe.

RAM

Memory

~8 MB RAM for the daemon. ~30 MB for the GUI. Minimal footprint, suitable for embedded systems and audio workstations.

Latency

Latency

Configurable buffer from 16 to 8192 samples. Theoretical minimum latency: 0.33 ms at 48 kHz/16 samples. Recommended: 128-256 samples (2.7-5.3 ms).

Channels

Audio channels

Up to 8 channels (7.1 surround). User-configurable. Automatic stereo downmix for multichannel sources.

Formats

Supported formats

S16_LE, S24_LE, S32_LE, 32-bit Float. Sample rates: 8 kHz to 192 kHz. Works with any ALSA-recognized audio hardware.

05

Download and install

Download the latest ASNUX release for your distribution, or use the one-line installer at the top of the page.

Debian / Ubuntu

sudo dpkg -i asnux-1.0.1-amd64.deb
sudo systemctl start asnux-daemon
sudo systemctl enable asnux-daemon
asnux-gui

Fedora / RHEL

sudo rpm -ivh asnux-1.0.1-1.x86_64.rpm
sudo systemctl start asnux-daemon
sudo systemctl enable asnux-daemon
asnux-gui

Arch

sudo pacman -U asnux-1.0.1-1-x86_64.pkg.tar.zst
sudo systemctl start asnux-daemon
sudo systemctl enable asnux-daemon
asnux-gui

Universal

# Runfile
chmod +x install_asnux.sh
sudo ./install_asnux.sh

# AppImage
chmod +x ASNUX-*.AppImage
./ASNUX-*.AppImage

# Portable
tar xzf asnux-*-linux-x86_64.tar.gz
sudo ./asnux-*/install.sh

Configuration

The ASNUX kernel module loads with these defaults:

# Tunable parameters (via /sys/module/asnux/parameters/)
buffer_size=256     # Buffer size (16-8192)
sample_rate=48000   # Sample rate (8000-192000)
channels=2          # Channel count (1-8)
periods=4           # Period count (2-1024)
06

FAQ

Does ASNUX completely replace PulseAudio?

No. ASNUX is a low-latency audio engine designed for DAWs and audio workstations. It coexists with PulseAudio/PipeWire. You can switch between them from the control panel.

What is the difference with JACK?

JACK is an audio routing server. ASNUX is a virtual kernel driver. The two are complementary: ASNUX improves the ALSA layer, JACK handles routing between applications. Use both together for a professional setup.

Do my Windows VST plugins work?

Yes, through Wine. ASNUX provides latencies low enough for real-time monitoring with emulated Windows VST plugins. Use yabridge for automatic bridging.

How do I cleanly uninstall ASNUX?

Depending on how you installed it: sudo dpkg -r asnux (DEB), sudo rpm -e asnux (RPM), sudo pacman -R asnux (Arch). The kernel module is removed automatically.

Is ASNUX compatible with Secure Boot?

The kernel module needs to be signed for Secure Boot. A signing guide is included in the documentation. Alternative: temporarily disable Secure Boot in the BIOS.

Can I use ASNUX with a USB DAC?

Yes. ASNUX works with any audio device recognized by ALSA, including USB DACs, FireWire audio interfaces, and PCI/PCIe sound cards.

How do I check that ASNUX is active?

Check with a few commands:

# Get the ASNUX card number
CARD=$(cat /proc/asound/cards | grep -i asnux | head -1 | awk '{print $1}')

lsmod | grep asnux                       # Module loaded?
cat /proc/asound/cards | grep -i asnux   # ALSA card present?
aplay -l | grep -i asnux                 # Playback device visible?
cat /sys/module/asnux/parameters/buffer_size  # Parameters accessible?
amixer -c $CARD scontrols | grep ASNUX   # Mixer controls present?
sudo dmesg | grep -i asnux               # Loaded without errors?
ls /dev/snd/controlC$CARD                # Device node exists?

If all these commands return a result, ASNUX is operational. You can also test playback with speaker-test -D hw:0,0 -c 2 -t sine -f 440.

"Invalid module format" error when loading the module?

This error occurs when the asnux.ko kernel module was built for a different kernel version. Check with modinfo asnux.ko | grep vermagic: the vermagic must exactly match uname -r. If it does not, rebuild from source:

git clone https://github.com/devfrp/asnux.git
cd asnux/kernel
make clean
make
sudo cp asnux.ko /lib/modules/$(uname -r)/kernel/drivers/sound/
sudo depmod -a
sudo modprobe asnux

Typical cause: kernel update without rebuilding the module, or a module pre-built for a different kernel (e.g. Azure vs local kernel).

07

Documentation

Technical documentation and guides for ASNUX.

Guides

README

Full overview, installation, diagnostics and troubleshooting.

Project

Releases

Binaries for 20 package formats, generated for every release.