13 个版本

使用旧的 Rust 2015

0.6.1 2019年5月21日
0.6.0 2018年8月18日
0.5.3 2018年5月5日
0.5.1 2017年5月23日
0.1.0 2016年11月3日

#7 in #al

Download history 107/week @ 2024-02-26 101/week @ 2024-03-04 109/week @ 2024-03-11 115/week @ 2024-03-18 135/week @ 2024-03-25 160/week @ 2024-04-01 94/week @ 2024-04-08 121/week @ 2024-04-15 120/week @ 2024-04-22 104/week @ 2024-04-29 119/week @ 2024-05-06 99/week @ 2024-05-13 97/week @ 2024-05-20 107/week @ 2024-05-27 101/week @ 2024-06-03 117/week @ 2024-06-10

433 每月下载量
6 个 crate 中使用 (via alto)

MIT/Apache

60KB
1K SLoC

alto

altoOpenAL 1.1 及扩展 (包括 EFX) 提供惯用的 Rust 绑定。

警告

由于 Alto 通过动态链接与全局 C 状态交互,一个项目中存在多个 Alto 版本可能会导致不安全性。请确保在任何时候您的依赖树中只有一个 Alto 版本。

API 使用

let alto = Alto::load_default()?;

for s in alto.enumerate_outputs() {
    println!("Found device: {}", s.to_str()?);
}

let device = alto.open(None)?; // Opens the default audio device
let context = device.new_context(None)?; // Creates a default context

// Configure listener
context.set_position([1.0, 4.0, 5.0]);
context.set_velocity([2.5, 0.0, 0.0]);
context.set_orientation(([0.0, 0.0, 1.0], [0.0, 1.0, 0.0]));

let source = context.new_static_source()?;

// Now you can load your samples and store them in a buffer with
// `context.new_buffer(samples, frequency)`;

依赖项

~0–630KB