openal-soft-sys

Crates.ioopenal-soft-sys
lib.rsopenal-soft-sys
version0.1.0
created_at2025-08-24 18:39:43.345984+00
updated_at2025-08-24 18:39:43.345984+00
descriptionLow-level Rust FFI bindings to the OpenAL Soft library.
homepage
repositoryhttps://github.com/wcaleniekubaa/openal-soft-sys
max_upload_size
id1808667
size242,554
(wcaleniekubaa)

documentation

README

openal-soft-sys

Low-level Rust FFI bindings to the OpenAL Soft library.

Installation

Add this line to your Cargo.toml:

[dependencies]
openal-soft-sys = "0.1.0"

Usage

And then:

use openal_soft_sys::alc;
use std::ptr;

fn main() {
    // Open device
    let device = unsafe { alc::alcOpenDevice(ptr::null()) };
    assert!(!device.is_null(), "Failed to open device");

    // Create context
    let context = unsafe { alc::alcCreateContext(device, ptr::null()) };
    assert!(!context.is_null(), "Failed to create context");

    // ...

    // Destroy context and close device
    unsafe {
        alc::alcDestroyContext(context);
        alc::alcCloseDevice(device);
    }
}

Feature flags

Build options

  • ✅ - build - Builds OpenAL Soft from source

CPU features

  • ✅ - sse - Enables SSE support
  • ✅ - sse2 - Enables SSE2 support
  • ✅ - sse3 - Enables SSE3 support
  • ✅ - sse4_1 - Enables SSE4.1 support
  • ✅ - sse_all - Enables all SSE feature flags
  • ✅ - arm_neon - Enables Neon support
  • ✅ - all_cpu_features - Enables all CPU feature flags

Audio backends

  • ✅ - pipewire - Enables Pipewire backend
  • ✅ - pulseaudio - Enables PulseAudio backend
  • ✅ - alsa - Enables ALSA backend
  • ✅ - oss - Enables OSS backend
  • ✅ - solaris - Enables Solaris backend
  • ✅ - sndio - Enables Sndio backend
  • ✅ - winmm - Enables Windows Multimedia backend
  • ✅ - directsound - Enables DirectSound backend
  • ✅ - jack - Enables JACK backend
  • ✅ - coreaudio - Enables Core Audio backend
  • ✅ - oboe - Enables Oboe backend
  • ✅ - opensl - Enables OpenSL backend
  • ✅ - portaudio - Enables PortAudio backend
  • ✅ - sdl3 - Enables SDL3 audio backend
  • ✅ - sdl2 - Enables SDL2 audio backend
  • ✅ - wave - Enables Wave Writer backend
  • ✅ - all_backends - Enables all backends
Commit count: 5

cargo fmt