The Unlicense

项目介绍

zeozeozeo/kittyaudio 是一个托管在 GitHub 上的开源项目,主要使用 Rust 编写,采用 The Unlicense 许可证,目前获得 26 个 Star、3 次 Fork。

仓库全名
zeozeozeo/kittyaudio
开源许可证
The Unlicense
Star 数
26
Fork 数
3
未关闭 Issue
2

README 摘要

🐱 kittyaudio crates.io | docs.rs | examples | changelogs kittyaudio is a Rust audio playback library focusing on simplicity, speed and low-latency audio playback. Installation with cargo: Example Features Low-latency audio playback Cross-platform audio playback (including wasm) Handle device changes or disconnects in real time Low CPU usage Minimal dependencies Minimal memory allocations No panic!() or .unwrap(),…

完整内容见 GitHub 原始 README 或本页 。

常见问题

kittyaudio 用什么语言开发?

主要使用 Rust 编写,采用 The Unlicense 许可证,目前有 26 个 Star。

kittyaudio 可以免费商用吗?

仓库采用 The Unlicense 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 kittyaudio 的源码?

可以直接克隆仓库:git clone https://github.com/zeozeozeo/kittyaudio.git;安装与运行步骤见仓库 README。

kittyaudio 最近还在维护吗?

仓库最近一次更新为 2月20日,当前有 2 个未关闭 Issue;Star 数为 26,可作为社区活跃度的参考。

关于

A Rust audio playback library focusing on simplicity.

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
58
价值分
19
活跃状态
活跃

README

🐱 kittyaudio

docs.rs Downloads on Crates.io

crates.io | docs.rs | examples | changelogs

kittyaudio is a Rust audio playback library focusing on simplicity, speed and low-latency audio playback.

Installation with cargo:

cargo add kittyaudio

Example

use kittyaudio::{include_sound, Mixer};

fn main() {
    // include a sound into the executable.
    // this type can be cheaply cloned.
    let sound = include_sound!("jump.ogg").unwrap();

    // create sound mixer
    let mut mixer = Mixer::new();
    mixer.init(); // use init_ex to specify settings

    let playing_sound = mixer.play(sound);
    playing_sound.set_volume(0.5); // decrease volume

    mixer.wait(); // wait for all sounds to finish
}

Features

  • Low-latency audio playback
  • Cross-platform audio playback (including wasm)
  • Handle device changes or disconnects in real time
  • Low CPU usage
  • Minimal dependencies
  • Minimal memory allocations
  • No panic!() or .unwrap(), always propogate errors
  • No unsafe code
  • Simple API, while being customizable
  • Optionally use Symphonia to support most audio formats
  • Feature to disable audio playback support, if you want to use kittyaudio purely as an audio library
  • Commands to change volume, playback rate, position and panning in the sound with easings
  • Loops, and commands to change them with easings

Roadmap

Those features are not implemented yet.

  • Effects (reverb, delay, eq, etc.)
  • C API
  • Audio streaming from disk

评论

暂无评论