<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.