<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Speech",
  "identifier" : "/documentation/Speech/SpeechTranscriber",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Speech"
    ],
    "preciseIdentifier" : "s:6Speech0A11TranscriberC"
  },
  "title" : "SpeechTranscriber"
}
-->

# SpeechTranscriber

A speech-to-text transcription module that’s appropriate for normal conversation and general purposes.

```
final class SpeechTranscriber
```

## Overview

Several transcriber instances can share the same backing engine instances and models, so long as the transcribers are configured similarly in certain respects.

### Check device support

Use the [`isAvailable`](/documentation/Speech/SpeechTranscriber/isAvailable) or [`supportedLocales`](/documentation/Speech/SpeechTranscriber/supportedLocales) properties to see if the current device supports the speech-to-text models used by `SpeechTranscriber`. If it does not, consider disabling the feature or using [`DictationTranscriber`](/documentation/Speech/DictationTranscriber) instead.

## Topics

### Creating a transcriber

[`init(locale:preset:)`](/documentation/Speech/SpeechTranscriber/init(locale:preset:))

Creates a general-purpose transcriber according to a preset.

[`init(locale:transcriptionOptions:reportingOptions:attributeOptions:)`](/documentation/Speech/SpeechTranscriber/init(locale:transcriptionOptions:reportingOptions:attributeOptions:))

Creates a general-purpose transcriber.

[`Preset`](/documentation/Speech/SpeechTranscriber/Preset)

Predefined transcriber configurations.

### Configuring transcription

[`ReportingOption`](/documentation/Speech/SpeechTranscriber/ReportingOption)

Options relating to the transcriber’s result delivery.

[`ResultAttributeOption`](/documentation/Speech/SpeechTranscriber/ResultAttributeOption)

Options relating to the attributes of the transcription.

[`TranscriptionOption`](/documentation/Speech/SpeechTranscriber/TranscriptionOption)

Options relating to the text of the transcription.

### Checking device support

[`isAvailable`](/documentation/Speech/SpeechTranscriber/isAvailable)

A Boolean value that indicates whether this module is available given the device’s hardware and capabilities.

### Checking locale support

[`installedLocales`](/documentation/Speech/SpeechTranscriber/installedLocales)

The locales that the transcriber can transcribe into, considering only locales that are installed on the device.

[`supportedLocales`](/documentation/Speech/SpeechTranscriber/supportedLocales)

The locales that the transcriber can transcribe into, including locales that may not be installed but are downloadable.

[`supportedLocale(equivalentTo:)`](/documentation/Speech/SpeechTranscriber/supportedLocale(equivalentTo:))

A locale from the module’s supported locales equivalent to the given locale.

### Checking audio format support

### Getting results

[`results`](/documentation/Speech/SpeechTranscriber/results)

The asynchronous sequence of transcription results.

[`Result`](/documentation/Speech/SpeechTranscriber/Result)

A phrase or passage of transcribed speech. The phrases are sent in order.

### Inspecting the transcriber

## Relationships

### Conforms To

[`LocaleDependentSpeechModule`](/documentation/Speech/LocaleDependentSpeechModule)

[`SpeechModule`](/documentation/Speech/SpeechModule)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Sendable`](/documentation/Swift/Sendable)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)