Class: AudioDirector
Defined in: packages/webxr-environment/src/audio-director.ts:68
Constructors
Constructor
new AudioDirector(port: AudioPort, options?: AudioDirectorOptions): AudioDirector;
Defined in: packages/webxr-environment/src/audio-director.ts:82
Parameters
| Parameter | Type |
|---|---|
port | AudioPort |
options | AudioDirectorOptions |
Returns
AudioDirector
Accessors
activeVoices
Get Signature
get activeVoices(): readonly AudioVoice[];
Defined in: packages/webxr-environment/src/audio-director.ts:271
The voices the director believes are sounding.
Returns
readonly AudioVoice[]
masterGain
Get Signature
get masterGain(): number;
Defined in: packages/webxr-environment/src/audio-director.ts:119
Returns
number
Methods
cue()
cue(cueId: string): AudioCue | undefined;
Defined in: packages/webxr-environment/src/audio-director.ts:109
Parameters
| Parameter | Type |
|---|---|
cueId | string |
Returns
AudioCue | undefined
cueIds()
cueIds(): readonly string[];
Defined in: packages/webxr-environment/src/audio-director.ts:113
Returns
readonly string[]
dispose()
dispose(): void;
Defined in: packages/webxr-environment/src/audio-director.ts:295
Returns
void
getBusGain()
getBusGain(bus: string): number;
Defined in: packages/webxr-environment/src/audio-director.ts:132
A bus that has never been set reads 1.
Parameters
| Parameter | Type |
|---|---|
bus | string |
Returns
number
has()
has(cueId: string): boolean;
Defined in: packages/webxr-environment/src/audio-director.ts:105
Parameters
| Parameter | Type |
|---|---|
cueId | string |
Returns
boolean
isMuted()
isMuted(bus?: string): boolean;
Defined in: packages/webxr-environment/src/audio-director.ts:165
Parameters
| Parameter | Type |
|---|---|
bus? | string |
Returns
boolean
play()
play(cueId: string, options?: PlayOptions): AudioVoice | null;
Defined in: packages/webxr-environment/src/audio-director.ts:187
Play a cue. Returns the voice, or null when the request was dropped -
an unknown cue, a throttle window, an ignore policy with the cue already
sounding, or a one-shot that would have been silent anyway.
Dropping rather than throwing is deliberate: a missing sound must never take gameplay down with it, and by the time a cue id reaches here it has usually come from a feedback intent several layers away.
Parameters
| Parameter | Type |
|---|---|
cueId | string |
options | PlayOptions |
Returns
AudioVoice | null
register()
register(cue: AudioCue): void;
Defined in: packages/webxr-environment/src/audio-director.ts:95
Register a cue, replacing any cue already using that id.
Parameters
| Parameter | Type |
|---|---|
cue | AudioCue |
Returns
void
registerAll()
registerAll(cues: Iterable<AudioCue>): void;
Defined in: packages/webxr-environment/src/audio-director.ts:101
Parameters
| Parameter | Type |
|---|---|
cues | Iterable<AudioCue> |
Returns
void
resolveGain()
resolveGain(cueId: string, extra?: number): number;
Defined in: packages/webxr-environment/src/audio-director.ts:170
The absolute gain a play of cueId would resolve to right now.
Parameters
| Parameter | Type | Default value |
|---|---|---|
cueId | string | undefined |
extra | number | 1 |
Returns
number
setBusGain()
setBusGain(bus: string, gain: number): void;
Defined in: packages/webxr-environment/src/audio-director.ts:136
Parameters
| Parameter | Type |
|---|---|
bus | string |
gain | number |
Returns
void
setMasterGain()
setMasterGain(gain: number): void;
Defined in: packages/webxr-environment/src/audio-director.ts:123
Parameters
| Parameter | Type |
|---|---|
gain | number |
Returns
void
setMuted()
setMuted(muted: boolean, bus?: string): void;
Defined in: packages/webxr-environment/src/audio-director.ts:150
Mute a bus, or everything when no bus is named. Muting is separate from gain so that unmuting restores the level the player set rather than a remembered one, which is the bug every "set it to zero" mute eventually grows.
Parameters
| Parameter | Type |
|---|---|
muted | boolean |
bus? | string |
Returns
void
stop()
stop(voice: number | AudioVoice): void;
Defined in: packages/webxr-environment/src/audio-director.ts:251
Stop one voice. Safe to call on a voice that already finished.
Parameters
| Parameter | Type |
|---|---|
voice | number | AudioVoice |
Returns
void
stopAll()
stopAll(bus?: string): void;
Defined in: packages/webxr-environment/src/audio-director.ts:263
Stop everything, or everything on one bus.
Parameters
| Parameter | Type |
|---|---|
bus? | string |
Returns
void
stopCue()
stopCue(cueId: string): void;
Defined in: packages/webxr-environment/src/audio-director.ts:257
Stop every sounding voice of a cue.
Parameters
| Parameter | Type |
|---|---|
cueId | string |
Returns
void
update()
update(deltaMs: number): void;
Defined in: packages/webxr-environment/src/audio-director.ts:283
Retire one-shot voices whose declared durationMs has elapsed.
Only needed for a port that cannot report the end of playback. A port that
calls ended retires its voices earlier and this finds nothing to do, so
a host may call it unconditionally alongside the environment director's
update and not care which kind of port it has.
Parameters
| Parameter | Type |
|---|---|
deltaMs | number |
Returns
void