6个版本

0.3.0 2024年1月14日
0.2.3 2023年12月21日
0.1.0 2023年12月6日

396音频

Download history 1/week @ 2024-03-16 18/week @ 2024-03-30 6/week @ 2024-04-06

每月下载64

MIT/Apache

68KB
1.5K SLoC

Ez-Audi

基于cpal的轻量级Linux/WASM兼容音频库

功能(截至目前)

  • 读取并播放LPcm WAVE (.wav)文件
  • 对样本应用修饰符以实现音量、循环等
  • 对原始音频样本的控制
  • 获取音频文件元数据

支持(截至目前)

  • Linux
  • LPcm WAVE文件
  • WASM(见 Usage in WASM environment(Windows尚未测试)

开始使用

use ez_audi::audio_files::WavAudio;
use ez_audi::public_traits::*;

let wav_audio = WavAudio::build_from_path("test_assets/u8-stereo-lpcm.wav").unwrap();

// Creates an audio player, keep it in scope to keep the audio playing
let player = wav_audio.play_on_default_output(false).unwrap();

std::thread::sleep(std::time::Duration::from_secs(2));

在WASM环境中的使用

虽然ez-audi在WASM中相对容易使用,但也有一些惊喜

  • 播放需要在用户手势(按钮点击等)内部启动/恢复。 播放不会自动启动
  • 您很可能希望通过GET请求从您的网站获取文件(或至少是其数据)。我建议使用std中的Cursor结构将字节数组转换为读者。虽然仍然存在从文件/路径构建结构的函数,但在WASM中它们是无用的。
  • 请注意,与其他所有环境一样,您需要将您的SamplesPlayer保留在内存中进行播放。

剩下要做什么

  • 几乎一切,除非您喜欢依赖不稳定、有错误的代码,否则不要在任何严肃的项目中使用它
  • 文档也非常缺乏

依赖项

~0.4–30MB
~436K SLoC