---
title: AVAudioUnit
framework: avfaudio
role: symbol
role_heading: Class
path: avfaudio/avaudiounit
---

# AVAudioUnit

A subclass of the audio node class that, processes audio either in real time or nonreal time, depending on the type of the audio unit.

## Declaration

```swift
class AVAudioUnit
```

## Topics

### Loading an audio preset file

- [loadPreset(at:)](avfaudio/avaudiounit/loadpreset(at:).md)

### Creating an audio unit component

- [instantiate(with:options:completionHandler:)](avfaudio/avaudiounit/instantiate(with:options:completionhandler:).md)

### Getting audio unit values

- [audioComponentDescription](avfaudio/avaudiounit/audiocomponentdescription.md)
- [manufacturerName](avfaudio/avaudiounit/manufacturername.md)
- [name](avfaudio/avaudiounit/name.md)
- [version](avfaudio/avaudiounit/version.md)

### Instance Properties

- [audioUnit](avfaudio/avaudiounit/audiounit-5vuo0.md)
- [audioUnit](avfaudio/avaudiounit/audiounit-7dsac.md)

### Instance Methods

- [withAudioUnit(_:)](avfaudio/avaudiounit/withaudiounit(_:)-66uo7.md)
- [withAudioUnit(_:)](avfaudio/avaudiounit/withaudiounit(_:)-6c2ze.md)

## Relationships

### Inherits From

- [AVAudioNode](avfaudio/avaudionode.md)

### Inherited By

- [AVAudioUnitEffect](avfaudio/avaudiouniteffect.md)
- [AVAudioUnitGenerator](avfaudio/avaudiounitgenerator.md)
- [AVAudioUnitMIDIInstrument](avfaudio/avaudiounitmidiinstrument.md)
- [AVAudioUnitTimeEffect](avfaudio/avaudiounittimeeffect.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Essentials

- [Creating an audio unit extension](avfaudio/creating-an-audio-unit-extension.md)
- [Using voice processing](avfaudio/using-voice-processing.md)
