|Type||Topic||Plugin||Version||macOS||Windows||Linux||Console & Web||iOS|
|class||AVFoundationNode||MBS AVFoundation Plugin||15.3||Yes||No||No||Yes, macOS only||No|
AVAudioEngine objects contain instances of various AVAudioNode subclasses. This base class provides certain common functionality.
Nodes have input and output busses, which can be thought of as connection points. For example, an effect typically has one input bus and one output bus. A mixer typically has multiple input busses and one output bus.
Busses have formats, expressed in terms of sample rate and channel count. When making connections between nodes, often the format must match exactly. However, there are exceptions such as the AVAudioMixerNode and AVAudioOutputNode classes.
Nodes do not currently provide useful functionality until attached to an engine.
This is an abstract class. You can't create an instance, but you can get one from various plugin functions.
- event Tap(bus as Integer, bufferSize as UInt32, format as AVAudioFormatMBS, buffer as AVAudioPCMBufferMBS, time as AVAudioTimeMBS, tag as Variant)
- 8 properties
- 8 methods
- method Constructor
- method inputFormatForBus(busIndex as Integer) as AVAudioFormatMBS
- method installTapOnBus(busIndex as Integer, bufferSize as UInt32 = 0, format as AVAudioFormatMBS = nil, tag as Variant = nil)
- method nameForInputBus(busIndex as Integer) as string
- method nameForOutputBus(busIndex as Integer) as string
- method outputFormatForBus(busIndex as Integer) as AVAudioFormatMBS
- method removeTapOnBus(busIndex as Integer)
- method reset
- shared method available as boolean
- class AVAudioEnvironmentNodeMBS
- class AVAudioIONodeMBS
- class AVAudioMixerNodeMBS
- class AVAudioPlayerNodeMBS
- class AVAudioUnitMBS
- class AVAudioUnitEffectMBS
- class AVAudioUnitGeneratorMBS
- class AVAudioUnitMIDIInstrumentMBS
- class AVAudioUnitTimeEffectMBS
Some methods using this class:
- AVAudioEngineMBS.attachNode(node as AVAudioNodeMBS)
- AVAudioEngineMBS.connect(node1 as AVAudioNodeMBS, node2 as AVAudioNodeMBS, bus1 as Integer, bus2 as Integer, format as AVAudioFormatMBS)
- AVAudioEngineMBS.connect(node1 as AVAudioNodeMBS, node2 as AVAudioNodeMBS, format as AVAudioFormatMBS)
- AVAudioEngineMBS.detachNode(node as AVAudioNodeMBS)
- AVAudioEngineMBS.disconnectNodeInput(node as AVAudioNodeMBS)
- AVAudioEngineMBS.disconnectNodeInput(node as AVAudioNodeMBS, bus as Integer)
- AVAudioEngineMBS.disconnectNodeOutput(node as AVAudioNodeMBS)
- AVAudioEngineMBS.disconnectNodeOutput(node as AVAudioNodeMBS, bus as Integer)
Some examples which use this class:
- /AVFoundation/AVAudioEngine/Player with AudioUnit for Level Meter
The items on this page are in the following plugins: MBS AVFoundation Plugin.
MBS Xojo blog