#sound #effect #rusty #sfx #2d-game

rusty_audio

适用于小型项目和教学目的的便捷音频库

12 个稳定版本

1.4.1 2023 年 4 月 10 日
1.4.0 2022 年 6 月 13 日
1.2.1 2021 年 3 月 15 日
1.1.5 2021 年 2 月 27 日
1.1.0 2019 年 10 月 10 日

#259 in 音频

Download history 502/week @ 2024-03-13 607/week @ 2024-03-20 621/week @ 2024-03-27 766/week @ 2024-04-03 560/week @ 2024-04-10 624/week @ 2024-04-17 661/week @ 2024-04-24 543/week @ 2024-05-01 543/week @ 2024-05-08 606/week @ 2024-05-15 591/week @ 2024-05-22 604/week @ 2024-05-29 457/week @ 2024-06-05 400/week @ 2024-06-12 508/week @ 2024-06-19 409/week @ 2024-06-26

1,868 每月下载量
3 包 中使用

MIT/Apache

43KB
92

Crates.io Version Crates.io Downloads Build Status

Rusty 音频播放库

rusty_audio 是一个有趣且易于使用的音频播放库,它提供了一个 4 轨音频系统来加载/解码音频文件并播放它们,非常适合小型项目。它也适合用于培训目的,并在 Udemy 上的 终极 Rust 快速入门课程 中有介绍。

  • 格式:MP3、WAV、Vorbis 和 Flac。
  • 平台:默认支持 macOS、Windows 和 iOS。Linux 需要安装额外的依赖项。

该库底层使用 rodio 音频播放库,如果您的需求更复杂,可以考虑直接使用。

示例

# Add this to your [dependencies] section in Cargo.toml
rusty_audio = "1.4.1"
// main.rs
use rusty_audio::Audio;

fn main() {
    let mut audio = Audio::new();
    audio.add("startup", "my_sound_file.mp3"); // Load the sound, give it a name
    audio.play("startup"); // Execution continues while playback occurs in another thread.
    audio.wait(); // Block until sounds finish playing
}

内置示例

您可以通过克隆此存储库并运行以下命令来运行内置示例:

$ cargo run --example play

Linux 上的依赖项

对于 Linux,底层使用的 CPAL 软件包需要安装 alsa 开发库。

CentOS

sudo yum install -y alsa-lib-devel

Debian/Ubuntu

sudo apt install libasound2-dev

贡献

所有贡献都假定在 MIT/Apache-2 下双许可。

许可

根据 MIT 许可证和 Apache 许可证(版本 2.0)的条款分发。

请参阅 license/APACHElicense/MIT

赞助

如果您喜欢 Rusty Audio,请考虑在 GitHub 上 赞助我。 💖

依赖项

~0.7–30MB
~442K SLoC