Releases: rryam/AuralKit
Releases · rryam/AuralKit
Release list
2.1.0
What changed
- Added ScreenCaptureKit transcription for audio selected through the system content-sharing picker.
- Added analyzer-compatible audio conversion and stream lifecycle handling for screen capture input.
- Added clear localized errors for unavailable capture, cancelled selection, and capture failures.
- Added ScreenCaptureKit usage documentation and corrected README API references.
Validation
swift test(21 tests)swiftlint lint --strictxcodebuild -scheme Aural -project Aural.xcodeproj -destination "platform=macOS" buildxcodebuild -scheme Aural -project Aural.xcodeproj -destination "platform=iOS Simulator,name=iPhone 17 Pro" build
2.0.0
What changed
- Added Xcode 27-ready native file transcription using SpeechAnalyzer's guarded file input path when built with Swift 6.4+ on iOS/macOS 27.
- Added Xcode 27-ready live microphone capture using CaptureInputSequenceProvider, reducing reliance on the AVAudioEngine tap path when the new Speech APIs are available.
- Added analyzer configuration for task priority, model retention, and preheating with prepareToAnalyze(in:), with Xcode 26-compatible fallbacks.
- Added an input provider preference so callers can force AuralKit's legacy audio pipeline when needed.
- Preserved voice activation, progress reporting, pause/resume, and reset behavior across the new native input paths.
Validation
- swift build
- swift test
- swiftlint lint --strict
- xcodebuild -scheme Aural -project Aural.xcodeproj -destination 'platform=macOS' build
- xcodebuild -scheme Aural -project Aural.xcodeproj -destination 'platform=iOS Simulator,name=iPhone 17 Pro' build
1.5.2
What changed
- Fixed Swift 6.3 test iterator concurrency so
swift testcompiles and passes. - Finalized file transcription input after feeding audio to avoid hanging result streams.
- Gated the
SpeechDetectorcompatibility shim to avoid duplicate-conformance warnings on newer toolchains. - Aligned the custom vocabulary demo session locale with its
en_USvocabulary descriptor. - Removed the stale
NoiseShader.metalpackage exclude warning.
Validation
swift testswiftlint lint --strict
1.5.1
What's Changed
- Add backwards compatibility comment for SpeechDetector conformances (Xcode 26.0/26.1 support)
- Expand test coverage for error localization, file transcription, and session lifecycle by @rudrankriyam in #24
- Refactor tests to use modern Swift Testing patterns
Full Changelog: 1.5.0...1.5.1
1.5.0
What's Changed
- Update SpeechFramework.md by @rudrankriyam in #17
- Improve SpeechSession lifecycle and observability by @rudrankriyam in #19
Full Changelog: 1.4.0...1.5.0
1.4.0
Highlights
- Added audio file transcription APIs (
streamTranscription/transcribe) with validation and progress hooks. - Integrated optional voice activation powered by
SpeechDetector, including detector result streaming and state tracking. - Exposed session lifecycle observability: async status stream, pause/resume controls, and demo preset picker.
- Introduced configurable logging levels with privacy-aware OSLog output.
- Added device capability helper covering speech/dictation locale availability.
Improvements
- Hardened permission checks, streaming cleanup, and analyzer teardown using explicit streaming modes.
- Expanded documentation for observability, voice activation, and file transcription workflows.
Fixes & Tooling
- Fixed premature completion when swapping pipelines or cancelling ingestion.
- Stabilised file transcription state across preset changes.
- Migrated the test suite to Swift Testing with new coverage for logging, voice activation, and file flows.
1.3.0
What's Changed
- Add audio input monitoring with route change handling by @IfritLabs in #5
- Add macOS audio input monitoring by @rudrankriyam in #6
- Document AI assistant guidelines by @rudrankriyam in #7
- Main-actor SpeechSession refactor by @rudrankriyam in #8
New Contributors
- @IfritLabs made their first contribution in #5
Full Changelog: 1.2.0...1.3.0
1.2.0
Highlights
- Added contextual strings support to
SpeechSession.startTranscribing(...), including a convenience overload and a newcontextSetupFailederror so you can bias recognition with domain vocabulary and surface actionable failures. - Introduced configurable audio session settings on iOS plus sensible default reporting/attribute options, improving how partial results, alternatives, and metadata are surfaced from
SpeechTranscriber. - Hardened the transcription pipeline with better async cleanup, safeguarded stream lifecycle management, and added regression tests around model download progress and stop semantics.
Demo & Tooling
- Refreshed the Aural demo with a reusable
Result.apply(...)helper, styled volatile output, share support, and time-range display for each utterance. - Checked in the Xcode project (shared
Auralscheme) and removed the XcodeGen dependency, while packaging the demo app as an executable target in SwiftPM and excluding non-source assets from builds.
Contributors
- Engin Kurutepe (@ekurutepe)
v1.1.2
What's New
- Fix compilation errors for iOS 26.0 compatibility
- Improve audio session configuration with proper AVAudioSession options
- Ensure Swift 6 concurrency safety compliance
Technical Changes
- Replace deprecated .notifyOthersOnDeactivation with .duckOthers in AudioSessionConfiguration
- Add Sendable conformance to AudioSessionConfiguration for thread safety
- Resolve build failures on iOS 26.0 simulator and device targets
- Maintain backward compatibility with existing API
v1.1.1
What's New
- Add AudioSessionConfiguration for iOS with customizable audio session settings
- Consolidate SpeechSession architecture by integrating transcriber management directly
- Add iOS-specific initializer for advanced audio session configuration
Technical Changes
- Merged SpeechTranscriberManager functionality into SpeechSession class
- Removed separate StreamState actor and integrated state management
- Added AudioSessionConfiguration struct with category, mode, and options support
- Improved code organization and reduced complexity
- Enhanced iOS-specific audio session customization capabilities