Skip to main content

Class: IWSDKAudioPort

Defined in: packages/iwsdk-environment/src/audio-port.ts:54

Plays sounds.

The core owns voice ids, gain resolution and policy; a port owns decoding, routing and the actual noise.

Implements

Constructors

Constructor

new IWSDKAudioPort(world: World, options?: IWSDKAudioPortOptions): IWSDKAudioPort;

Defined in: packages/iwsdk-environment/src/audio-port.ts:62

Parameters

ParameterType
worldWorld
optionsIWSDKAudioPortOptions

Returns

IWSDKAudioPort

Methods

dispose()

dispose(): void;

Defined in: packages/iwsdk-environment/src/audio-port.ts:168

Release anything the port created. Optional.

Returns

void

Implementation of

AudioPort.dispose


setGain()

setGain(voiceId: number, gain: number): void;

Defined in: packages/iwsdk-environment/src/audio-port.ts:139

Change the gain of a sounding voice, because a bus or the master moved under it. Optional: a port without it simply does not follow live mix changes on voices that are already playing.

Parameters

ParameterType
voiceIdnumber
gainnumber

Returns

void

Implementation of

AudioPort.setGain


start()

start(request: AudioVoiceRequest): void;

Defined in: packages/iwsdk-environment/src/audio-port.ts:68

Begin a voice. See AudioVoiceRequest.ended for the retirement contract.

Parameters

ParameterType
requestAudioVoiceRequest

Returns

void

Implementation of

AudioPort.start


stop()

stop(voiceId: number): void;

Defined in: packages/iwsdk-environment/src/audio-port.ts:132

Stop a voice early. Called at most once per voice, never after ended.

Parameters

ParameterType
voiceIdnumber

Returns

void

Implementation of

AudioPort.stop


update()

update(deltaMs: number): void;

Defined in: packages/iwsdk-environment/src/audio-port.ts:145

Called from AudioDirector.update, before the director's own sweep.

This exists for a port whose engine reports playback state but not playback END - IWSDK is one - so that it can poll and call ended. Without it those ports would have to degrade to fire-and-forget and restart / ignore would behave differently per engine, which is precisely the kind of divergence this stack exists to remove.

Parameters

ParameterType
deltaMsnumber

Returns

void

Implementation of

AudioPort.update