sound_rs v0.2.2

01 · Start

Installation

One command. Wheels carry the decoders, so no ffmpeg or development headers are needed.

pip install sound_rs

Requirements

PlatformWheel tagPython
Linux x86_64cp310-abi3-manylinux_2_17_x86_643.10+
Linux aarch64cp310-abi3-manylinux_2_17_aarch643.10+
Windows amd64cp310-abi3-win_amd643.10+
macOS arm64cp310-abi3-macosx_11_0_arm643.10+
macOS Intelcp310-abi3-macosx_10_12_x86_643.10+

The wheels use the stable ABI, so one file covers every Python from 3.10 up — the same wheel installs on 3.10 through 3.14. Anything else (musl, PyPy, other architectures) falls back to the source distribution, which needs a Rust toolchain.

From source

git clone https://github.com/Neksand/sound_rs
cd sound_rs
pip install maturin
maturin develop --release

Linux audio

Playback uses ALSA through cpal. Most desktops already have the runtime library; a minimal container or server needs it explicitly:

sudo apt install libasound2          # Debian / Ubuntu (libasound2t64 on 24.04+)
sudo dnf install alsa-lib            # Fedora
Decoding does not need ALSAIf the library is missing, import sound_rs fails at load time, not on the first play. Install the package above, or use a build with playback disabled.

Check it works

import sound_rs

print(sound_rs.__version__)
print(sound_rs.list_devices())        # [(0, 'MacBook Pro Speakers', True), ...]
print(sound_rs.get_audio_info("song.mp3"))

From a terminal, soundrs --help prints the same check as a command, with the documentation link. See Command line.

No sound, or an empty device list? See Troubleshooting.