#core #audio #unit #osx #ios

sys coreaudio-sys

Bindings for Apple's CoreAudio frameworks generated via rust-bindgen

18 releases

Uses old Rust 2015

new 0.2.12 Mar 25, 2023
0.2.11 Nov 12, 2022
0.2.10 Apr 19, 2022
0.2.9 Jan 27, 2022
0.0.1 Feb 28, 2015

#12 in macOS and iOS APIs

Download history 11082/week @ 2022-12-07 7351/week @ 2022-12-14 8706/week @ 2022-12-21 7729/week @ 2022-12-28 6858/week @ 2023-01-04 9363/week @ 2023-01-11 10026/week @ 2023-01-18 11391/week @ 2023-01-25 12687/week @ 2023-02-01 9360/week @ 2023-02-08 14209/week @ 2023-02-15 11269/week @ 2023-02-22 11667/week @ 2023-03-01 13167/week @ 2023-03-08 11177/week @ 2023-03-15 12048/week @ 2023-03-22

50,528 downloads per month
Used in 471 crates (6 directly)

MIT license

10KB
113 lines

coreaudio-sys Actions Status Crates.io Crates.io docs.rs

Raw bindings to Apple's Core Audio API for macos and iOS generated using rust-bindgen. coreaudio-rs is an attempt at offering a higher level API around this crate.

Cross Compiling

Rust Cross has a good explanation of how cross-compiling Rust works in general. While the author of Rust Cross advises against it, it is perfectly possible to cross-compile Rust for MacOS on Linux. OSXCross can be used to create a compiler toolchain that can compile for MacOS on Linux.

Environment Variables

When cross-compiling for MacOS on Linux there are two environment variables that are used to configure how coreaudio-sys finds the required headers and libraries. The following examples assume that you have OSXCross installed at /build/osxcross.

COREAUDIO_SDK_PATH

This tell coreaudio-sys where to find the MacOS SDK:

export COREAUDIO_SDK_PATH=/build/osxcross/target/SDK/MacOSX10.11.sdk

No runtime deps

~0–1.5MB
~32K SLoC