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

# CaptureInputSequenceProvider

Reads from an AV capture device such as a microphone, providing the captured audio in a format suitable for analysis by a speech analyzer.

```
final class CaptureInputSequenceProvider
```

## Topics

### Creating a provider

[`static func providerWithSession(from: AVCaptureDevice, compatibleWith: [any SpeechModule], priority: TaskPriority?) async throws -> CaptureInputSequenceProvider`](/documentation/Speech/CaptureInputSequenceProvider/providerWithSession(from:compatibleWith:priority:))

Returns an input sequence provider that reads from an audio capture device, and configures a new audio capture session with that device.

[`static func provider(from: AVCaptureDevice, in: AVCaptureSession, compatibleWith: [any SpeechModule], priority: TaskPriority?) async throws -> CaptureInputSequenceProvider`](/documentation/Speech/CaptureInputSequenceProvider/provider(from:in:compatibleWith:priority:))

Returns an input sequence provider that reads from an audio capture device.

[`init(session: AVCaptureSession, analyzerFormat: AVAudioFormat, priority: TaskPriority?) throws`](/documentation/Speech/CaptureInputSequenceProvider/init(session:analyzerFormat:priority:))

Creates an input sequence provider.

### Obtaining an input sequence

[`var analyzerInputs: some Sendable & AsyncSequence<AnalyzerInput, any Error>`](/documentation/Speech/CaptureInputSequenceProvider/analyzerInputs)

A new sequence of speech analyzer input objects containing captured audio.

### Working with a capture session

[`var captureSession: AVCaptureSession`](/documentation/Speech/CaptureInputSequenceProvider/captureSession)

The underlying capture session.

[`var captureAudioDataOutput: AVCaptureAudioDataOutput`](/documentation/Speech/CaptureInputSequenceProvider/captureAudioDataOutput)

An audio data output that routes and converts captured audio buffers to async sequences.



---

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)