AudioAPI
此内容尚不支持你的语言。
Defined in: audio/Audio.ts:62
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new AudioAPI(
backend,mixer?):AudioAPI
Defined in: audio/Audio.ts:97
Parameters
Section titled “Parameters”backend
Section titled “backend”mixer?
Section titled “mixer?”AudioMixer | null
Returns
Section titled “Returns”AudioAPI
Properties
Section titled “Properties”baseUrl
Section titled “baseUrl”baseUrl:
string=''
Defined in: audio/Audio.ts:95
Accessors
Section titled “Accessors”bufferBudget
Section titled “bufferBudget”Get Signature
Section titled “Get Signature”get bufferBudget():
number
Defined in: audio/Audio.ts:110
The effective warm-cache byte budget: an explicit override, else the
live RuntimeConfig.audioCacheBudget (so build-config changes apply
without plumbing). 0 disables the warm cache — a buffer is freed the
moment its refCount reaches 0.
Returns
Section titled “Returns”number
Methods
Section titled “Methods”dispose()
Section titled “dispose()”dispose():
void
Defined in: audio/Audio.ts:600
Returns
Section titled “Returns”void
ensureBus()
Section titled “ensureBus()”ensureBus(
name,parent?):boolean
Defined in: audio/Audio.ts:542
Ensure a named bus exists (creating it under parent ?? master).
False on backends without a mixer graph.
Parameters
Section titled “Parameters”string
parent?
Section titled “parent?”string
Returns
Section titled “Returns”boolean
getBufferHandle()
Section titled “getBufferHandle()”getBufferHandle(
url):AudioBufferHandle|undefined
Defined in: audio/Audio.ts:589
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”AudioBufferHandle | undefined
getBufferStats()
Section titled “getBufferStats()”getBufferStats():
AudioBufferStats
Defined in: audio/Audio.ts:184
Buffer residency counters — the observability side of the budget.
Returns
Section titled “Returns”getBusDucking()
Section titled “getBusDucking()”getBusDucking(
target):BusDuckRule|null
Defined in: audio/Audio.ts:580
Parameters
Section titled “Parameters”target
Section titled “target”string
Returns
Section titled “Returns”BusDuckRule | null
getBusEffects()
Section titled “getBusEffects()”getBusEffects(
busName):BusEffectDef[]
Defined in: audio/Audio.ts:570
Parameters
Section titled “Parameters”busName
Section titled “busName”string
Returns
Section titled “Returns”getBusVolume()
Section titled “getBusVolume()”getBusVolume(
busName):number
Defined in: audio/Audio.ts:468
Unity (1) for an unknown bus.
Parameters
Section titled “Parameters”busName
Section titled “busName”string
Returns
Section titled “Returns”number
getMasterVolume()
Section titled “getMasterVolume()”getMasterVolume():
number
Defined in: audio/Audio.ts:451
Mixerless backends (WeChat/Null) report unity volume and unmuted — the read-side mirror of the volume setters’ silent no-op there.
Returns
Section titled “Returns”number
getMusicVolume()
Section titled “getMusicVolume()”getMusicVolume():
number
Defined in: audio/Audio.ts:455
Returns
Section titled “Returns”number
getSFXVolume()
Section titled “getSFXVolume()”getSFXVolume():
number
Defined in: audio/Audio.ts:459
Returns
Section titled “Returns”number
getSpectrum()
Section titled “getSpectrum()”getSpectrum(
out):boolean
Defined in: audio/Audio.ts:596
Fill out with the master output’s frequency spectrum (0-255 per bin,
low→high) for visualizers. Returns false on backends without analysis
(e.g. WeChat) — callers should treat that as silence.
Parameters
Section titled “Parameters”Uint8Array
Returns
Section titled “Returns”boolean
getUIVolume()
Section titled “getUIVolume()”getUIVolume():
number
Defined in: audio/Audio.ts:463
Returns
Section titled “Returns”number
invalidateBuffer()
Section titled “invalidateBuffer()”invalidateBuffer(
url):boolean
Defined in: audio/Audio.ts:159
Drop a buffer whose source bytes changed (hot reload) so no future play or load serves stale audio. Safe while sounds are playing — live sources keep their own reference to the decoded data; only the cache entry goes, and the next play/load re-fetches fresh bytes. Returns true if the url was cached.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”boolean
isBusMuted()
Section titled “isBusMuted()”isBusMuted(
busName):boolean
Defined in: audio/Audio.ts:473
Parameters
Section titled “Parameters”busName
Section titled “busName”string
Returns
Section titled “Returns”boolean
muteBus()
Section titled “muteBus()”muteBus(
busName,muted):void
Defined in: audio/Audio.ts:529
Parameters
Section titled “Parameters”busName
Section titled “busName”string
boolean
Returns
Section titled “Returns”void
playBGM()
Section titled “playBGM()”playBGM(
url,config?):void
Defined in: audio/Audio.ts:350
Parameters
Section titled “Parameters”string
config?
Section titled “config?”crossFade?
Section titled “crossFade?”number
fadeIn?
Section titled “fadeIn?”number
volume?
Section titled “volume?”number
Returns
Section titled “Returns”void
playSFX()
Section titled “playSFX()”playSFX(
url,config?):AudioHandle
Defined in: audio/Audio.ts:320
Parameters
Section titled “Parameters”string
config?
Section titled “config?”number
pitch?
Section titled “pitch?”number
priority?
Section titled “priority?”number
volume?
Section titled “volume?”number
Returns
Section titled “Returns”playTrack()
Section titled “playTrack()”playTrack(
url,config?):Promise<AudioHandle|null>
Defined in: audio/Audio.ts:306
Play a fully-RESOLVED clip URL on an explicit bus (created on demand under master). Unlike playSFX/playBGM this applies no ref resolution — the caller already holds the final URL (the video system’s audio track derives it from the resolved video source). Null when the clip can’t load; loaded buffers share the residency cache.
Parameters
Section titled “Parameters”string
config?
Section titled “config?”PlayConfig = {}
Returns
Section titled “Returns”Promise<AudioHandle | null>
preload()
Section titled “preload()”preload(
url):Promise<void>
Defined in: audio/Audio.ts:280
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”Promise<void>
preloadAll()
Section titled “preloadAll()”preloadAll(
urls):Promise<void>
Defined in: audio/Audio.ts:291
Parameters
Section titled “Parameters”string[]
Returns
Section titled “Returns”Promise<void>
preloadFromData()
Section titled “preloadFromData()”preloadFromData(
url,data):Promise<void>
Defined in: audio/Audio.ts:295
Parameters
Section titled “Parameters”string
ArrayBuffer
Returns
Section titled “Returns”Promise<void>
releaseBuffer()
Section titled “releaseBuffer()”releaseBuffer(
url):void
Defined in: audio/Audio.ts:139
Unpin a buffer. At refCount 0 it becomes an evictable warm-cache entry (bounded by bufferBudget) — still instantly playable and revivable by retainBuffer — or is freed outright when the budget is 0.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
retainBuffer()
Section titled “retainBuffer()”retainBuffer(
url):boolean
Defined in: audio/Audio.ts:125
Pin a cached buffer: refCount + 1 (reviving an evictable entry back to held). Returns false on a miss — the caller must load and re-acquire. Every retain needs a matching releaseBuffer.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”boolean
setAssetResolver()
Section titled “setAssetResolver()”setAssetResolver(
resolver):void
Defined in: audio/Audio.ts:236
Parameters
Section titled “Parameters”resolver
Section titled “resolver”(url) => ArrayBuffer | null
Returns
Section titled “Returns”void
setBufferBudget()
Section titled “setBufferBudget()”setBufferBudget(
bytes):void
Defined in: audio/Audio.ts:115
Override the warm-cache byte budget; null returns to RuntimeConfig.
Parameters
Section titled “Parameters”number | null
Returns
Section titled “Returns”void
setBusDucking()
Section titled “setBusDucking()”setBusDucking(
target,rule):boolean
Defined in: audio/Audio.ts:576
Install (or clear with null) sidechain ducking on target — e.g. duck
‘music’ to 30% while ‘voice’ carries signal.
Parameters
Section titled “Parameters”target
Section titled “target”string
BusDuckRule | null
Returns
Section titled “Returns”boolean
setBusEffects()
Section titled “setBusEffects()”setBusEffects(
busName,effects):boolean
Defined in: audio/Audio.ts:563
Replace a bus’s DSP insert chain. No-op (false) on backends without a WebAudio graph (WeChat/Null) — same degradation as the volume APIs.
Parameters
Section titled “Parameters”busName
Section titled “busName”string
effects
Section titled “effects”Returns
Section titled “Returns”boolean
setBusVolume()
Section titled “setBusVolume()”setBusVolume(
busName,volume):void
Defined in: audio/Audio.ts:550
Parameters
Section titled “Parameters”busName
Section titled “busName”string
volume
Section titled “volume”number
Returns
Section titled “Returns”void
setMasterVolume()
Section titled “setMasterVolume()”setMasterVolume(
volume):void
Defined in: audio/Audio.ts:417
Parameters
Section titled “Parameters”volume
Section titled “volume”number
Returns
Section titled “Returns”void
setMusicVolume()
Section titled “setMusicVolume()”setMusicVolume(
volume):void
Defined in: audio/Audio.ts:425
Parameters
Section titled “Parameters”volume
Section titled “volume”number
Returns
Section titled “Returns”void
setRefResolver()
Section titled “setRefResolver()”setRefResolver(
resolver):void
Defined in: audio/Audio.ts:247
Route play refs through the realm’s single asset resolver — the same
channel every other asset type resolves through (uuid manifest, cooked
logical→staged maps, project base). Takes precedence over the legacy
baseUrl prefix, so playSFX('assets/…') works in cooked builds whose
content-addressed staging renamed the physical files.
Parameters
Section titled “Parameters”resolver
Section titled “resolver”((ref) => string) | null
Returns
Section titled “Returns”void
setSFXVolume()
Section titled “setSFXVolume()”setSFXVolume(
volume):void
Defined in: audio/Audio.ts:433
Parameters
Section titled “Parameters”volume
Section titled “volume”number
Returns
Section titled “Returns”void
setUIVolume()
Section titled “setUIVolume()”setUIVolume(
volume):void
Defined in: audio/Audio.ts:441
Parameters
Section titled “Parameters”volume
Section titled “volume”number
Returns
Section titled “Returns”void
stopAll()
Section titled “stopAll()”stopAll():
void
Defined in: audio/Audio.ts:396
Returns
Section titled “Returns”void
stopBGM()
Section titled “stopBGM()”stopBGM(
fadeOut?):void
Defined in: audio/Audio.ts:404
Parameters
Section titled “Parameters”fadeOut?
Section titled “fadeOut?”number
Returns
Section titled “Returns”void
trimBufferCache()
Section titled “trimBufferCache()”trimBufferCache():
number
Defined in: audio/Audio.ts:171
Free every evictable warm-cache buffer now (memory pressure). Held buffers and the budget are untouched; the cache refills as buffers are released afterwards. Returns the number of buffers freed.
Returns
Section titled “Returns”number
updateDucking()
Section titled “updateDucking()”updateDucking():
void
Defined in: audio/Audio.ts:585
Advance duck envelopes (driven per-frame by AudioUpdateSystem).
Returns
Section titled “Returns”void
updateFades()
Section titled “updateFades()”updateFades(
dt):void
Defined in: audio/Audio.ts:621
Advance every fade by dt seconds — called once a frame by the audio
system, which is what makes a fade the game’s clock rather than the
browser’s: it pauses when the game does, and it exists on a device.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void