![]() These are the libraries that existed when I decided to work on my own: Unfortunately no one provided the perfect solution for my project, but at least I had something to start building on. Then I went to see what Rust could provide me in this field, and it was quite surprising to find some work around CoreMIDI. Given that I work now with a Mac OSX laptop, I initially tried to use Swift and its official CoreMIDI binding, but soon I discovered that Swift is still in its very early days regarding package management, building tooling, and open source community. My main motivation to get involved on this project, was the fact that I am building my own MIDI controllers with micro-controllers, and needed to interface them to my computer. Being able to receive MIDI data either from input ports connected to sources or through virtual destinations.īut the CoreMIDI framework includes more things:. ![]() Being able to send MIDI data either to output ports or through virtual sources.Enumerate system source and destination endpoints.The initial goal for this library was to cover the basic functionality from the CoreMIDI framework and let the door open for contributions to fulfill the rest of them. This blog post is to announce my first contribution to the open source Rust community with a library to interface CoreMIDI with Rust. On the other side there is Rust, a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. ![]() ![]() It has a C interface so it can be used by almost any programming language. CoreMIDI is a Mac OSX framework that provides APIs for communicating with MIDI (Musical Instrument Digital Interface) devices, including hardware keyboards and synthesizers. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |