#audio-playback #multimedia #back-end

nightly ez_audio

🔊 一个易于使用的音频播放库

7 个版本

0.1.6 2021年6月6日
0.1.5 2021年5月5日
0.1.4 2021年4月7日

#988 in 音频

32 每月下载量
harmony-rs 中使用

MIT 许可证

655KB
4.5K SLoC

C 4K SLoC // 0.2% comments Rust 416 SLoC C++ 174 SLoC // 0.1% comments

ez-audio

Crates.io Docs.rs License: MIT
ez-audio是一个易于使用的音频播放库,它使用C库miniaudio作为后端。
目前仅支持nightly版本编译,并且需要C++编译器,因为它依赖于cc crate

支持的编解码器

  • MP3
  • WAV
  • Vorbis
  • Flac

示例

最小化

    let context = Context::new().unwrap();
    let mut clip = AudioLoader::new("audio.mp3", context.clone())
        .load()
        .unwrap();

    clip.play();
    // loop forever to stop handle from being dropped
    loop {}

lib.rs:

ez-audio是一个易于使用的音频播放库,它使用C库miniaudio作为后端。

示例

最小化

let context = Context::new().unwrap();
let mut clip = AudioLoader::new("audio.mp3", context.clone())
    .load()
    .unwrap();

clip.play();
loop {}

带结束标记

let context = Context::new().unwrap();
let mut clip = AudioLoader::new("audio.mp3", context.clone())
    .user_data(10)
    .on_end(|data| {
        assert!(data == 10)
    })
    .load()
    .unwrap();

clip.play();
loop {}

无运行时依赖