Skip to content

OxiSound 0.1.1 Release

Choose a tag to compare

@cool-japan cool-japan released this 04 Jun 13:38
· 2 commits to master since this release

[0.1.1] - 2026-06-04

Added

oxisound-session (new crate)

  • New oxisound-session crate providing platform audio session management for iOS and macOS
  • configure_session(category: SessionCategory) -> Result<(), OxiSoundError>: sets the AVAudioSession category via Objective-C when the avf-audio feature is enabled; returns Ok(()) on macOS CoreAudio desktop without the feature; returns OxiSoundError::UnsupportedConfig on all other platforms
  • request_microphone_permission() -> Result<bool, OxiSoundError>: queries or requests microphone recording permission using the modern AVAudioApplication API (iOS 17+ / macOS 14+)
  • avf-audio feature: opt-in Objective-C FFI via objc2, objc2-avf-audio, objc2-foundation, and block2; default features remain 100% Pure Rust (no FFI)
  • Full platform dispatch: iOS+macOS with avf-audio, macOS without avf-audio (CoreAudio desktop stub), all other platforms (returns errors)

oxisound (facade)

  • session feature: routes configure_session() and request_microphone_permission() through the new oxisound-session crate instead of the previous "pending" stubs
  • macos-session feature: convenience alias that enables session + oxisound-session/avf-audio in one flag
  • Criterion benchmark suite benches/facade.rs: benchmarks sine_test_tone throughput and default_output() enumeration latency

Changed

  • configure_session() in the facade now delegates to oxisound-session when the session feature is active
  • request_microphone_permission() in the facade now delegates to oxisound-session when the session feature is active

Full Changelog: v0.1.0...v0.1.1