Namespace ValveResourceFormat.Renderer.Audio ​
Namespaces ​
ValveResourceFormat.Renderer.Audio.SampleProviders
Classes ​
Tracks active sound events and mixes their sample providers into a single continuous stereo stream.
A decoded sound: interleaved 16-bit PCM at the mixer's sample rate and channel count, stored as a region of a shared slab rather than its own array. Returned as a placeholder while a background thread decodes it.
Loads compiled sound resources (vsnd) and caches them decoded in the mixer's output format.
returns a placeholder immediately; decoding happens on worker threads.A playing (or pending) instance of a sound event definition.
Stores sound event definitions loaded from soundevent (vsndevts) files.
A piecewise mapping curve from sound event data (e.g. "distance_volume_mapping_curve"). Each point is [x, y, tangent_in, tangent_out, curve_type_left, curve_type_right]; evaluation is linear between points.
A sound event definition with its properties parsed out of the key-values once. Also carries mutable per-event playback state (last picked track, last play time).
Plays sound events through an injected . Owns a mixing thread that continuously mixes active sounds and submits the samples to the device.
A soundscape region (env_soundscape): while the listener is within of
and can see it, plays as the ambient bed - a singlesound event, or every event a soundscape resolves to when
. A class so the registering entity can toggle live.Stores "scripted" soundscape definitions loaded from classic KeyValues1 soundscape script files (e.g. "scripts/soundscapes_citadel.txt", or HLVR's "scripts/soundscapes_*.txt"), which name a set of operators to start together for an env_soundscape region - the predecessor to the modern single-sound-event soundscapes (env_soundscape with "enablesoundevent" set), which
Structs ​
The listener's state for one , threaded down the sound event tree to the spatializers. Everything time-based in there (occlusion smoothing, doppler) has to run off the real elapsed time rather than per-update steps, or it changes character with the frame rate.
A reference to one play of a sound event. instances are pooled across plays, so the handle checks and goes inert once the instance is reused.
SoundscapeBank.SoundscapeEvent
One sound event a scripted soundscape starts, with the volume it plays at relative to its own authored volume - the product of the "volume" on every "playsoundscape" that pulled it in.
Interfaces ​
An audio output device that accepts interleaved 32-bit float samples.

