6个版本
0.3.0 | 2024年1月14日 |
---|---|
0.2.3 | 2023年12月21日 |
0.1.0 | 2023年12月6日 |
396在 音频
每月下载64次
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