The base class for nodes that connect to the system's audio input or output.


class AVAudioIONode : AVAudioNode


When the engine is configured to render to and from an audio device, on macOS, AVAudioInputNode and AVAudioOutputNode communicate with the system's default input and output devices.

On iOS, they communicate with the devices appropriate to the app's AVAudioSession category, configurations, and user actions, such as connecting or disconnecting external devices.

In the manual rendering mode, AVAudioInputNode and AVAudioOutputNode perform the input and output in the engine, in response to the client's request.


Getting the Audio Unit

var audioUnit: AudioUnit?

The node's underlying audio unit, if any.

Getting the IO Latency

var presentationLatency: TimeInterval

The presentation, or hardware, latency.


Inherits From

Conforms To

See Also

Source Node Types

class AVAudioInputNode

A node that connects to the system's audio input.

typealias AVAudioIONodeInputBlock

A block to get input data when called by a render operation in the manual rendering mode.

typealias AVAudioNodeCompletionHandler

A general callback handler.

typealias AVAudioPlayerNodeCompletionHandler

The callback handler for buffer or file completion.

class AVAudioPlayerNode

A class that plays buffers or segments of audio files.

class AVAudioUnitGenerator

An audio unit subclass that generates audio output.

class AVAudioUnitMIDIInstrument

An abstract class representing music devices or remote instruments.

class AVAudioUnitSampler

A class that encapsulates Apple's Sampler Audio Unit.

class AVAudioSequencer

A collection of MIDI events organized into multiple music tracks, plus a player to play back the events.