#macos #bindings #midi #framework #level #low #core-midi

sys coremidi-sys

Low-level FFI bindings for the CoreMIDI framework

6 stable releases

Uses old Rust 2015

3.1.0 Mar 11, 2022
3.0.1 Jun 14, 2021
2.0.2 Jul 20, 2017
1.0.0 Dec 13, 2016

#299 in Audio

Download history 673/week @ 2024-01-03 852/week @ 2024-01-10 1905/week @ 2024-01-17 938/week @ 2024-01-24 809/week @ 2024-01-31 1302/week @ 2024-02-07 1532/week @ 2024-02-14 1374/week @ 2024-02-21 1109/week @ 2024-02-28 1122/week @ 2024-03-06 783/week @ 2024-03-13 1379/week @ 2024-03-20 1164/week @ 2024-03-27 1230/week @ 2024-04-03 1092/week @ 2024-04-10 955/week @ 2024-04-17

4,649 downloads per month
Used in 50 crates (via coremidi)

MIT license

40KB
1K SLoC

coremidi-sys

Low level Rust bindings for CoreMIDI

generated.rs is generated with bindgen 0.59.2 using the following commands:

export FRAMEWORKS_DIR=$(xcrun --sdk macosx --show-sdk-path)/System/Library/Frameworks

bindgen ${FRAMEWORKS_DIR}/CoreMIDI.framework/Headers/MIDIServices.h \
    --whitelist-type "MIDI.*" --whitelist-function "MIDI.*"  --whitelist-var "kMIDI.*" \
    --blacklist-type "(__)?CF.*" \
    --constified-enum ".*" --no-prepend-enum-name \
    --no-debug "MIDI(Event)?Packet.*" \
    --no-copy "MIDI(Event)?Packet.*" \
    --no-doc-comments \
    -- -F ${FRAMEWORKS_DIR} > src/generated.rs

As of version 3 the minimum required Rust version is 1.51 due to the use of std::ptr::addr_of.

Dependencies

~46KB