---
title: "setInputDataSource(_:)"
framework: avfaudio
role: symbol
role_heading: Instance Method
path: "avfaudio/avaudiosession/setinputdatasource(_:)"
---

# setInputDataSource(_:)

Selects a data source for the audio session’s current input port.

## Declaration

```swift
func setInputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
```

## Parameters

- `dataSource`: The data source for the audio session’s input.

## Discussion

Discussion You can set the input source to exactly one of the AVAudioSessionDataSourceDescription objects in the inputDataSources array. Only certain devices and peripherals, such as an iPhone equipped with both front- and rear-facing microphones, support switching among input sources.

## See Also

### Configuring inputs

- [isInputAvailable](avfaudio/avaudiosession/isinputavailable.md)
- [availableInputs](avfaudio/avaudiosession/availableinputs.md)
- [preferredInput](avfaudio/avaudiosession/preferredinput.md)
- [setPreferredInput(_:)](avfaudio/avaudiosession/setpreferredinput(_:).md)
- [inputDataSource](avfaudio/avaudiosession/inputdatasource.md)
- [inputDataSources](avfaudio/avaudiosession/inputdatasources.md)
- [availableInputsChangeNotification](avfaudio/avaudiosession/availableinputschangenotification.md)
