---
title: PHASESource
framework: phase
role: symbol
role_heading: Class
path: phase/phasesource
---

# PHASESource

An object that plays audio from a 3D location and orientation in a scene.

## Declaration

```swift
class PHASESource
```

## Mentioned in

Playing sound from a location in a 3D scene

## Overview

Overview This class represents a sound-emitting point or area in a virtual environment, positioned and oriented by a 3D transform. A spatial mixer, PHASESpatialMixerDefinition, adds environmental effects to sound sources. To tie a mixer to a sound source, create a PHASEMixerParameters object and pass it into the mixerParameters argument of a sound event’s init(engine:assetIdentifier:mixerParameters:) initializer. For an example that demonstrates sound sources, see Playing sound from a location in a 3D scene.

## Topics

### Creating a Source

- [init(engine:)](phase/phasesource/init(engine:).md)
- [init(engine:shapes:)](phase/phasesource/init(engine:shapes:).md)

### Controlling Sound Volume

- [gain](phase/phasesource/gain.md)

### Inspecting the Shape

- [shapes](phase/phasesource/shapes.md)

## Relationships

### Inherits From

- [PHASEObject](phase/phaseobject.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Soundscape Creation

- [PHASEListener](phase/phaselistener.md)
- [PHASEOccluder](phase/phaseoccluder.md)
- [PHASEObject](phase/phaseobject.md)
- [PHASEShape](phase/phaseshape.md)
- [PHASEShape.Element](phase/phaseshape/element.md)
- [PHASEMaterial](phase/phasematerial.md)
- [PHASEMaterialPreset](phase/phasematerialpreset.md)
- [PHASEMixerParameters](phase/phasemixerparameters.md)
