<seq>
and <par>
#
Both audio clips and <transform>
elements
are objects that have a certain duration.
They can be placed in the timeline
one after another by putting them into a <seq>
(which means sequential) element.
To delay an object or to create a pause between two objects,
a <wait> element can be inserted into the sequence.
To reproduce two or more clips and/or <transform>
elements at the same time,
you can put them into a <par>
(which means parallel) element.
<seq>
and <par>
elements can be arbitrarily nested.
For a simple example, see seq-par.asd
:
<asdf version="0.4">
<par>
<clip file="audio/ukewave.ogg" pos="0 2" />
<seq>
<clip file="audio/marimba.ogg">
<channel pos="-1 2" />
<channel pos="1 2" />
</clip>
<clip file="audio/xmas.wav" pos="-1.5 0" />
</seq>
</par>
</asdf>
If there is no <body>
element,
the main <asdf> element implicitly behaves like a <seq>
element,
i.e. all contained elements are played in sequence,
like in the example file implicit-seq.asd
:
<asdf version="0.4">
<clip file="audio/xmas.wav" pos="-2.5 0" />
<clip file="audio/ukewave.ogg" pos="2.5 0" />
</asdf>
Within a <par>
element,
the first sub-element determines the duration of the whole <par>
element.
Any following sub-elements must not be longer than the first.
A useful pattern is to use a <clip>
as first sub-element
(which defines the length of the <par>
)
and one or more <transform>
elements afterwards,
which will by default “inherit” the duration of the <clip>
.
repeat
#
<seq>
and <par>
elements can be repeated, see Repetition.