#audio-playback #playback #synthesizer

sys soloud-sys

Rust 对 soloud 音频引擎的绑定

23 个版本 (6 个稳定版)

1.0.5 2023 年 8 月 7 日
1.0.3 2023 年 7 月 30 日
1.0.2 2022 年 2 月 17 日
1.0.0 2021 年 10 月 17 日
0.2.2 2020 年 11 月 22 日

#1049音频

Download history 410/week @ 2024-03-17 229/week @ 2024-03-24 435/week @ 2024-03-31 340/week @ 2024-04-07 257/week @ 2024-04-14 209/week @ 2024-04-21 186/week @ 2024-04-28 248/week @ 2024-05-05 283/week @ 2024-05-12 267/week @ 2024-05-19 382/week @ 2024-05-26 205/week @ 2024-06-02 132/week @ 2024-06-09 215/week @ 2024-06-16 176/week @ 2024-06-23 31/week @ 2024-06-30

每月下载量 582
11 个 Crates 中使用 (通过 soloud)

MIT 许可证

7MB
73K SLoC

C++ 45K SLoC // 0.1% comments C 22K SLoC // 0.0% comments Rust 3K SLoC // 0.0% comments Python 2K SLoC // 0.5% comments Lua 871 SLoC // 0.0% comments Ruby 102 SLoC // 0.1% comments C# 20 SLoC // 0.2% comments Batch 12 SLoC Shell 1 SLoC JavaScript 1 SLoC

soloud-sys

soloud 的原生绑定。这些绑定使用 bindgen 在 soloud C 头文件上生成。

使用方法

[dependencies]
soloud-sys = { version = "1", features = ["miniaudio"] }

示例代码

use soloud_sys::soloud::*;

fn main() {
    unsafe {
        let sl = Soloud_create();
        Soloud_init(sl);
        std::thread::sleep(std::time::Duration::from_millis(100));
        Soloud_setGlobalVolume(sl, 3.0);
    
        let speech = Speech_create();
    
        let ret = Speech_setText(speech, "Hello World\0".as_ptr() as _);
    
        dbg!(ret);

        Soloud_play(sl, speech);
        while Soloud_getVoiceCount(sl) > 0 {
            // calls to play are non-blocking, so we put the thread to sleep
            std::thread::sleep(std::time::Duration::from_millis(100));
        }
    }
}

依赖项