43b78cd2ad
This PR adds 3 types of audio streams used for interactive music support. * AudioStreamInteractive: Allows setting several sub-streams and transition between them with many options. * AudioStreamPlaylist: Allows sequential or shuffled playback of a list of streams. * AudioStreamSynchronized: Allows synchronous playback of several streams, the volume of each can be controlled. Theese three stream types can be combined to create complex, layered interactive music and transitions between them, similar to software such as WWise.
53 lines
2 KiB
XML
53 lines
2 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="AudioStreamSynchronized" inherits="AudioStream" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
|
<brief_description>
|
|
Stream that can be fitted with sub-streams, which will be played in-sync.
|
|
</brief_description>
|
|
<description>
|
|
This is a stream that can be fitted with sub-streams, which will be played in-sync. The streams being at exactly the same time when play is pressed, and will end when the last of them ends. If one of the sub-streams loops, then playback will continue.
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="get_sync_stream" qualifiers="const">
|
|
<return type="AudioStream" />
|
|
<param index="0" name="stream_index" type="int" />
|
|
<description>
|
|
Get one of the synchronized streams, by index.
|
|
</description>
|
|
</method>
|
|
<method name="get_sync_stream_volume" qualifiers="const">
|
|
<return type="float" />
|
|
<param index="0" name="stream_index" type="int" />
|
|
<description>
|
|
Get the volume of one of the synchronized streams, by index.
|
|
</description>
|
|
</method>
|
|
<method name="set_sync_stream">
|
|
<return type="void" />
|
|
<param index="0" name="stream_index" type="int" />
|
|
<param index="1" name="audio_stream" type="AudioStream" />
|
|
<description>
|
|
Set one of the synchronized streams, by index.
|
|
</description>
|
|
</method>
|
|
<method name="set_sync_stream_volume">
|
|
<return type="void" />
|
|
<param index="0" name="stream_index" type="int" />
|
|
<param index="1" name="volume_db" type="float" />
|
|
<description>
|
|
Set the volume of one of the synchronized streams, by index.
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
<members>
|
|
<member name="stream_count" type="int" setter="set_stream_count" getter="get_stream_count" default="0">
|
|
Set the total amount of streams that will be played back synchronized.
|
|
</member>
|
|
</members>
|
|
<constants>
|
|
<constant name="MAX_STREAMS" value="32">
|
|
Maximum amount of streams that can be synchrohized.
|
|
</constant>
|
|
</constants>
|
|
</class>
|