wavy 0.7.0

Asynchronous cross-platform real-time audio recording & playback.
Documentation

Wavy

The sound waves are so wavy!

tests docs crates.io

About | Source | Changelog | Tutorial

About

Library for asynchronous cross-platform real-time audio recording & playback. This library is great for if you need low-latency sound effects in video games, if you're making a multi-media player, Digital Audio Workstation, or building a synthesizer; anything that needs access to speakers or microphones.

Check out the documentation for examples.

Supported Platforms

Wavy targets all platforms that can run Rust.

  • Linux/Android Untested (Using ALSA C Library)
  • Web (Using JavaScript's Web Audio API)
  • MacOS/iOS WIP (Using AudioQueue C Library)
  • Windows Planned Next, after MacOS

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Anyone is more than welcome to contribute! Don't be shy about getting involved, whether with a question, idea, bug report, bug fix, feature request, feature implementation, or other enhancement. Other projects have strict contributing guidelines, but this project accepts any and all formats for pull requests and issues. For ongoing code contributions, if you wish to ensure your code is used, open a draft PR so that I know not to write the same code. If a feature needs to be bumped in importance, I may merge an unfinished draft PR into it's own branch and finish it (after a week's deadline for the person who openned it). Contributors will always be notified in this situation, and given a choice to merge early.

All pull request contributors will have their username added in the contributors section of the release notes of the next version after the merge, with a message thanking them. I always make time to fix bugs, so usually a patched version of the library will be out a few days after a report. Features requests will not complete as fast. If you have any questions, design critques, or want me to find you something to work on based on your skill level, you can email me at jeronlau@plopgrizzly.com. Otherwise, here's a link to the issues on GitHub, and, as always, make sure to read and follow the Code of Conduct.