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

sys coremidi-sys

Low-level FFI bindings for the CoreMIDI framework

7 stable releases

Uses old Rust 2015

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

#135 in Audio

Download history 1294/week @ 2024-02-26 1132/week @ 2024-03-04 876/week @ 2024-03-11 1132/week @ 2024-03-18 1242/week @ 2024-03-25 1413/week @ 2024-04-01 922/week @ 2024-04-08 1148/week @ 2024-04-15 1329/week @ 2024-04-22 1616/week @ 2024-04-29 1313/week @ 2024-05-06 1393/week @ 2024-05-13 1417/week @ 2024-05-20 1156/week @ 2024-05-27 1030/week @ 2024-06-03 1025/week @ 2024-06-10

4,707 downloads per month
Used in 52 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