bevy_midi 0.11.0

Send and receive MIDI data to and from bevy and other programs or controllers.
Documentation
<div align="left">
<a href="https://github.com/BlackPhlox/bevy_midi"><img src="https://raw.githubusercontent.com/BlackPhlox/BlackPhlox/master/bevy_midi.svg" alt="bevy_midi"></a>
</div>


<div align="left">
<a href="https://crates.io/crates/bevy_midi"><img src="https://img.shields.io/crates/v/bevy_midi" alt="link to crates.io"></a>
<a href="https://docs.rs/bevy_midi"><img src="https://docs.rs/bevy_midi/badge.svg" alt="link to docs.rs"></a>
<a href="https://github.com/BlackPhlox/bevy_midi/blob/master/LICENSE-MIT"><img src="https://img.shields.io/crates/l/bevy_midi" alt="link to license"></a>
<a href="https://crates.io/crates/bevy_midi"><img src="https://img.shields.io/crates/d/bevy_midi" alt="downloads/link to crates.io"></a>   
<a href="https://github.com/BlackPhlox/bevy_midi"><img src="https://img.shields.io/github/stars/BlackPhlox/bevy_midi" alt="stars/github repo"></a>
<a href="https://github.com/BlackPhlox/bevy_midi/actions/workflows/master.yml"><img src="https://github.com/BlackPhlox/bevy_midi/actions/workflows/master.yml/badge.svg" alt="github actions"></a>
<a href="https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md#main-branch-tracking"><img src="https://img.shields.io/badge/Bevy%20tracking-released%20version-lightblue" alt="tracking bevy release branch"></a>
</div>
</br>

A bevy plugin using [midir](https://github.com/Boddlnagg/midir) and [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam). 
This plugin allows you to read or write midi data for a selected midi input.</br>

## Showcase


Run the examples using:</br>

Basic midi output: `cargo run --release --example output`</br>
Basic midi input: `cargo run --release --example input`</br>
UI Virtual Piano: `cargo run --release --example egui`</br>
3D Virtual Piano: `cargo run --release --example piano`</br>

Running the UI Virtual Piano example:</br>

![piano](https://user-images.githubusercontent.com/25123512/229900178-debdf202-5161-443f-8c1f-5978b02b7fec.PNG)

Running the 3D Virtual Piano example:</br>

https://user-images.githubusercontent.com/25123512/122971334-3bae6100-d38f-11eb-9605-4c314b088ff2.mp4

Notice: Sustain is not handled by the example

Browser support: Still work in progress.

# Setup


See examples

# Support

[![Bevy tracking](https://img.shields.io/badge/Bevy%20tracking-released%20version-lightblue)](https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md#main-branch-tracking)

|bevy|bevy_midi|
|---|---|
|0.5|0.1.X|
|0.5|0.2.X|
|0.6|0.3.X|
|0.7|0.4.X|
|0.8|0.5.X|
|0.10|0.6.X|
|0.12|0.7.X|
|0.13|0.8.X|
|0.14|0.9.X|
|0.15|0.10.X|
|0.16|0.11.X|

# Licensing

The project is under dual license MIT and Apache 2.0, so joink to your hearts content, just remember the license agreements.

# Contributing

Yes this project is still very much WIP, so PRs are very welcome