Difference between revisions of "Global Command: getSoundProperty"
From The Official Visionaire Studio: Adventure Game Engine Wiki
(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...") |
|||
(One intermediate revision by the same user not shown) | |||
Line 31: | Line 31: | ||
| rowspan="7" | string | | rowspan="7" | string | ||
| "balance" | | "balance" | ||
− | | Get the balance | + | | Get the left/right audio balance. |
|- | |- | ||
| "duration" | | "duration" | ||
Line 95: | Line 95: | ||
== Examples == | == Examples == | ||
− | '''Example 1:''' Store the current playtime of | + | '''Example 1:''' Store the current playtime of an active sound in a variable. |
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
+ | -- Sound id can only be retrieved if the sound is active | ||
local mySoundId = getSoundId("vispath:sounds/example.ogg") | local mySoundId = getSoundId("vispath:sounds/example.ogg") | ||
+ | |||
local soundOffset = getSoundProperty(mySoundId, "offset") | local soundOffset = getSoundProperty(mySoundId, "offset") | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{toc}} | {{toc}} |
Latest revision as of 20:17, 4 May 2023
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 left/right audio balance. |
"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 an active sound in a variable.
-- Sound id can only be retrieved if the sound is active
local mySoundId = getSoundId("vispath:sounds/example.ogg")
local soundOffset = getSoundProperty(mySoundId, "offset")