Protocol

AVAudioMixing

Properties that are applicable to the input bus of a mixer node.

Declaration

protocol AVAudioMixing

Overview

Nodes that conform to the AVAudioMixing protocol can talk to a mixer node downstream, specifically of the classes AVAudioMixerNode and AVAudioEnvironmentNode. The properties defined by this protocol apply to the respective input bus of the mixer node that the source node is connected to. Note that effect nodes can't talk to their downstream mixer.

The states of properties that are set through this protocol before the source node is connected to the mixer node are cached and then applied on the mixer once the physical connection is made. Similarly, after disconnection, the states of the properties are once again cached.

Source nodes can be disconnected from one mixer and connected to another with their mixing settings intact. For example, an AVAudioPlayerNode instance that's being used in a gaming scenario can set up its 3D mixing settings and then move from one environment to another.

Topics

Defining Mixing Properties

protocol AVAudio3DMixing

A protocol defining 3D mixing properties.

protocol AVAudioStereoMixing

A protocol that defines stereo mixing properties used by mixers.

Getting and Setting the Destination

class AVAudioMixingDestination

An object representing a connection to a mixer node from a node that conforms to the AVAudioMixing protocol.

func destination(forMixer: AVAudioNode, bus: AVAudioNodeBus) -> AVAudioMixingDestination?

Returns the AVAudioMixingDestination object corresponding to the specified mixer node and its input bus.

Required.

Getting and Setting the Buss Volume

var volume: Float

The bus's input volume.

Required.

See Also

Audio Mixing

class AVAudioMixerNode

A node that mixes its inputs to a single output.