Global Command: getSoundProperty

From The Official Visionaire Studio: Adventure Game Engine Wiki
Revision as of 19:51, 4 May 2023 by EK (talk | contribs) (Created page with "Retrieve various properties of a sound, such as: current playtime, balance, volume, loop. Only applicable for active sounds. {| class="ts" |- | style="width:15%" | Related fu...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Retrieve various properties of a sound, such as: current playtime, balance, volume, loop. Only applicable for active sounds.

Related functions getSoundId | setSoundProperty | startSound | stopSound | toggleSoundPause


Syntax

getSoundProperty(soundId, property)


Parameters

Parameter Type Supported values Description
soundId integer Id of the sound to get property from.
property string "balance" Get the balance of audio channels.
"duration" Get the total length of the sound.
"loop" Check if the sound is looping.
"offset" Get the current playtime (position from the beginning of the sound).
"paused" Check if the sound is currently paused.
"playing" Check if the sound is currently playing.
"volume" Get the volume of the sound.


Return values

The return value depends on the passed "property" parameter:

Passed parameter Return type Description
"balance" integer Balance value in the range of -100 (100% left channel) to 100 (100% right channel). A value of 0 means 50% balance or balance could not be retrieved.
"duration" integer Total length of sound in milliseconds, or -1 if the duration could not be retrieved.
"loop" boolean True if the sound is looped, false if it is only played once or if the property could not be retrieved.
"offset" integer Current playtime of the sound in milliseconds, or -1 if the offset could not be retrieved.
"paused" boolean True if the sound is currently paused, false if it is playing or not active at all.
"playing" boolean True if the sound is currently playing, false otherwise.
"volume" integer Level of volume in the range of 0 (mute) to 100 (full volume). A value of -1 is returned, if the volume could not be retrieved.


Examples

Example 1: Store the current playtime of a sound in a variable.

local mySoundId = getSoundId("vispath:sounds/example.ogg")
local soundOffset = getSoundProperty(mySoundId, "offset")