speechanalyzer-framework-expertlisted
Install: claude install-skill fal3/claude-skills-collection
# SpeechAnalyzer Framework
Use the API surface in the project’s installed SDK. This guide is compatibility-first for the stable Xcode 26.6 / iOS 26.5 SDK and does not substitute later beta conveniences into a 26-target implementation.
## Compatibility baseline
- `SpeechAnalyzer`, `SpeechTranscriber`, `AssetInventory`, and `AnalyzerInput` require iOS 26, macOS 26, visionOS 26, or tvOS 26. They are unavailable on watchOS.
- `DictationTranscriber` is available on iOS 26, macOS 26, and visionOS 26, but not tvOS/watchOS.
- Build these APIs with Xcode 26 or newer. A lower deployment target requires an availability gate and a legacy or disabled-feature path.
- `SpeechTranscriber.isAvailable` is hardware-sensitive. An OS version check alone is insufficient.
- The live microphone example is iOS-only because it configures `AVAudioSession` and requests record permission.
- If an SDK 27 beta offers helpers such as capture/input providers or converter types, keep those declarations in a beta-SDK-only source path, add the relevant `#available(iOS 27, macOS 27, ...)` runtime gate, and retain the 26 implementation. A stable 26 compiler cannot resolve an unknown symbol merely because it appears inside `#available`.
Do not hardcode a language count. Query locale support on the running device.
## Stable setup sequence
1. Check `SpeechTranscriber.isAvailable`.
2. Resolve user input with `SpeechTranscriber.supportedLocale(equivalentTo:)`; exact `Locale` equality can reject a usable regional