Instance Method

setInputDataSource:error:

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

Declaration

- (BOOL)setInputDataSource:(AVAudioSessionDataSourceDescription *)dataSource error:(NSError * _Nullable *)outError;

Parameters

dataSource

The data source for the audio session’s input.

outError

On input, a pointer to an error object. If an error occurs, the pointer is set to an NSError object that describes the error. If you do not want error information, pass in nil.

Return Value

YES if the input data source for the audio session was successfully assigned; otherwise, NO.

Discussion

You can set the input source to exactly one of the AVAudioSessionDataSourceDescription objects in the inputDataSources array. Switching among input sources is supported only on certain devices and peripherals; for example, this method can be used to choose between front- and rear-facing microphones on an iPhone equipped with them.

See Also

Working with Audio Routes

currentRoute

An object describing the current audio input and output route.

inputAvailable

A Boolean value indicating whether an audio input path is available.

availableInputs

An array of input ports available for routing.

preferredInput

The preferred input port for audio routing.

- setPreferredInput:error:

Sets the preferred input port for audio routing.

inputDataSources

An array of available data sources for the audio session’s current input port.

inputDataSource

The currently selected input data source.

outputDataSources

An array of available output data sources for the current audio route.

outputDataSource

The currently selected output data source.

- setOutputDataSource:error:

Sets the output data source for an audio session.

- overrideOutputAudioPort:error:

Temporarily changes the current audio route.

routeSharingPolicy

The current routing policy.

- setCategory:mode:routeSharingPolicy:options:error:

Sets the session category, mode, route sharing policy, and options.