Difference between revisions of "LlPlaySoundSlave"

From Second Life Wiki
Jump to navigation Jump to search
(Hmm. Need to work on what I put there. It won't play from being set in state entry but detection may be the wrong choice of words. It has to be triggered.)
(Added note about the effect of sound queueing on this function.)
 
(4 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Issues/VWR-1574}}{{LSL_Function/inventory|sound|uuid=true|type=sound|volume=volume}}
{{LSL_Function
{{LSL_Function
|inject-2={{Issues/VWR-1574}}{{LSL_Function/inventory|sound|uuid=true|type=sound|volume=volume}}
|func_id=90|func_sleep=0.0|func_energy=10.0
|func_id=90|func_sleep=0.0|func_energy=10.0
|func=llPlaySoundSlave
|func=llPlaySoundSlave
Line 6: Line 6:
|p2_type=float|p2_name=volume
|p2_type=float|p2_name=volume
|func_footnote
|func_footnote
|func_desc=Plays attached '''sound''' once at '''volume''', synced to next loop of most audible sync master declared by [[llLoopSoundMaster]].
|func_desc=Plays attached {{LSLP|sound}} once at {{LSLP|volume}}, synced to next loop of most audible sync master declared by [[llLoopSoundMaster]].
|return_text
|return_text
|spec
|spec
|caveats
|caveats=
* As an object can only have a single active sound, this function should be called from a different prim than the one that defined a sync master, otherwise it will remove the master sound, and no sound will be available to sync-to.
* This function is affected by the [[llSetSoundQueueing|Sound Queueing]] property of the parent prim - this means it's possible to queue a slave sound prior to starting a master, without having to use more than one prim as an emitter. (See example on [[llLoopSoundMaster]]).
|constants
|constants
|examples
|examples
Line 20: Line 22:
{{LSL DefineRow||[[llTriggerSound]]|3=Plays a sound {{HoverText|unattached|The sound does not move with the prim}}.}}
{{LSL DefineRow||[[llTriggerSound]]|3=Plays a sound {{HoverText|unattached|The sound does not move with the prim}}.}}
{{LSL DefineRow||[[llTriggerSoundLimited]]}}
{{LSL DefineRow||[[llTriggerSoundLimited]]}}
{{LSL DefineRow||[[llSetSoundQueueing]]}}
|also_events
|also_events
|also_tests
|also_tests

Latest revision as of 14:03, 22 April 2022

Summary

Function: llPlaySoundSlave( string sound, float volume );
0.0 Forced Delay
10.0 Energy

Plays attached sound once at volume, synced to next loop of most audible sync master declared by llLoopSoundMaster.

• string sound a sound in the inventory of the prim this script is in or a UUID of a sound
• float volume between 0.0 (silent) and 1.0 (loud) (0.0 <= volume <= 1.0)

Caveats

  • If sound is missing from the prim's inventory and it is not a UUID or it is not a sound then an error is shouted on DEBUG_CHANNEL.
  • If sound is a UUID then there are no new asset permissions consequences for the object.
    • The resulting object develops no new usage restrictions that might have occurred if the asset had been placed in the prims inventory.
  • As an object can only have a single active sound, this function should be called from a different prim than the one that defined a sync master, otherwise it will remove the master sound, and no sound will be available to sync-to.
  • This function is affected by the Sound Queueing property of the parent prim - this means it's possible to queue a slave sound prior to starting a master, without having to use more than one prim as an emitter. (See example on llLoopSoundMaster).

Examples

See Also

Functions

•  llPlaySound Plays a sound attached once.
•  llLoopSound Plays a sound attached indefinitely.
•  llLoopSoundMaster
•  llLoopSoundSlave
•  llTriggerSound Plays a sound unattached.
•  llTriggerSoundLimited
•  llSetSoundQueueing

Deep Notes

Signature

function void llPlaySoundSlave( string sound, float volume );