Sequences definitions¶
SequenceDocument¶
SequenceDocument (XML complex type SequenceType) is a simple format for describing a sequence, with a model similar to sequences in the Final Cut Pro XML interchange format.
Structure¶
A sequence consists of a number of audio and/or video tracks where each track
may consist of one of more segments (to make clips appear edge-to-edge in the generated
timeline). Each segment has a position in the timeline (in and
out) and references a specific interval and track of an item (item,
sourceTrack (1-based), sourceIn and sourceOut.)
For video the sourceTrack element specifies the n th video track that
should be included. For audio it specifies a specific channel in an audio
track. For example, for media with two audio streams each with two audio
channels, sourceTrack=3 would specific the first channel in the second
audio stream.
The elements in / out and sourceIn / sourceOut corresponds to
the Final Cut Pro XML elements in / out and start / end
respectively. See Timing Values
for more information.
Example¶
A sequence with a single video track with one second of video from the item
with id VX-1.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SequenceDocument xmlns="http://xml.vidispine.com/schema/vidispine">
<track>
<audio>false</audio>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>25</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>25</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
</track>
</SequenceDocument>
If the item has 10 minutes of video and stereo audio, it could be included in a sequence like this:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SequenceDocument xmlns="http://xml.vidispine.com/schema/vidispine">
<track>
<audio>false</audio>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
</track>
<track>
<audio>true</audio>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
</track>
<track>
<audio>true</audio>
<segment>
<item>VX-1</item>
<sourceTrack>2</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
</track>
</SequenceDocument>
A two seconds long video track sequence made from the first second of video from items VX-1 and VX-2 using multiple segments on one track.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SequenceDocument xmlns="http://xml.vidispine.com/schema/vidispine">
<track>
<audio>false</audio>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>25</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>25</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
<segment>
<item>VX-2</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>25</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>50</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>25</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
</track>
</SequenceDocument>
Effects¶
The table below describes the effects that can be added to segments in a sequence.
| Effect | Parameter | Range | Description |
|---|---|---|---|
crop |
left |
0.0–1.0 | Percentage to crop from left side of the picture |
right |
0.0–1.0 | Percentage to crop from right side of the picture | |
top |
0.0–1.0 | Percentage to crop from the top | |
bottom |
0.0–1.0 | Percentage to crop from the bottom | |
position |
vert |
-1.0–1.0 | Vertical offset in output in percentage. |
horiz |
-1.0–1.0 | Horizontal offset in output in percentage. | |
scale |
scale |
0.0–Inf | Horizontal and vertical scale. |
rotation |
rotation |
Inf–Inf | Number of degrees to rotate picture, clockwise, around center. |
opacity |
opacity |
0.0–100.0 | The opacity, from fully transparent (0.0) to fully opaque (100.0). |
Effects are added in the follow way:
<segment>
...
<effect name="scale">
<parameter name="scale" value="50"/>
</effect>
</segment>
Effects can also be applied at specific key frames.
<segment>
...
<effect name="scale">
<parameter name="scale">
<point position="0" value="0"/>
<point position="125" value="100"/>
</parameter>
</effect>
</segment>
Rendering two different videos to one view by scaling and positioning them.
<track>
<audio>false</audio>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>250</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
...
<effect name="position">
<parameter name="horiz" value="-0.25"/>
<parameter name="vert" value="0.25"/>
</effect>
<effect name="scale">
<parameter name="scale" value="50"/>
</effect>
</segment>
</track>
<track>
<audio>false</audio>
<segment>
<item>VX-2</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>250</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
...
<effect name="position">
<parameter name="horiz" value="0.25"/>
<parameter name="vert" value="0.25"/>
</effect>
<effect name="scale">
<parameter name="scale" value="50"/>
</effect>
</segment>
</track>
Transitions¶
The table below describes the transitions that can be added between segments in video tracks in a sequence. If a transition has a corresponding SMPTE wipe code , then either the transition name or wipe code can be used to select that transition.
| Transition | SMPTE Wipe Code |
|---|---|
| Dissolves | |
| CrossDissolve | - |
| DitherDissolve | - |
| FadeInOutDissolve | - |
| Wipes | |
| BandWipe | - |
| CentreWipe | 21 or 22 |
| CheckerWipe | - |
| InsetWipe | 3, 4, 5 or 6 |
| Iris Wipes | |
| CrossIris | 7 |
| DiamondIris | 102 |
| OvalIris | 119 |
| RectangleIris | 101 |
| StarIris | 128 |
Example¶
A sequence with two clips that are transitioned using a star wipe:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SequenceDocument xmlns="http://xml.vidispine.com/schema/vidispine">
<track>
<audio>false</audio>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
<segment>
<item>VX-1</item>
<sourceTrack>1</sourceTrack>
<in>
<samples>0</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<sourceIn>
<samples>15000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceIn>
<sourceOut>
<samples>30000</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</sourceOut>
</segment>
<transition>
<in>
<samples>14975</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</in>
<out>
<samples>15025</samples>
<timeBase>
<numerator>1</numerator>
<denominator>25</denominator>
</timeBase>
</out>
<transition>StarIris</transition>
</transition>
</track>
</SequenceDocument>
Overriding shape tag transcode preset¶
New in version 5.6.
The SequenceDocument used for rendering a sequence can also override the output settings of the shape tag specified for the rendition,
see the override element in SequenceType in XML Schema for details.
Example¶
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SequenceDocument xmlns="http://xml.vidispine.com/schema/vidispine">
<track>
...
</track>
<override>
<audio>
<mix>
<input channel="0" gain="1.0"/>
<input channel="2" gain="1.0"/>
</mix>
<mix>
<input channel="1" gain="1.0"/>
<input channel="3" gain="1.0"/>
</mix>
</audio>
</override>
</SequenceDocument>