Enums

Details

class GES.AssetLoadingReturn(value)

Bases: GLib.Enum

ERROR = 0

Indicates that an error occurred

ASYNC = 1

Indicates that the loading is being performed asynchronously

OK = 2

Indicates that the loading is complete, without error

class GES.ChildrenControlMode(value)

Bases: GLib.Enum

To be used by subclasses only. This indicate how to handle a change in a child.

UPDATE = 0
IGNORE_NOTIFIES = 1
UPDATE_OFFSETS = 2
UPDATE_ALL_VALUES = 3
LAST = 4
class GES.Edge(value)

Bases: GObject.GEnum

The edges of an object contain in a GES.Timeline or GES.Track

classmethod name(edge)[source]
Parameters:

edge (GES.Edge) – The GES.Edge to get the name of

Returns:

A human friendly name for edge

Return type:

str

New in version 1.16.

EDGE_START = 0

Represents the start of an object.

START = 0

Represents the start of an object.

EDGE_END = 1

Represents the end of an object.

END = 1

Represents the end of an object.

EDGE_NONE = 2

Represent the fact we are not working with any edge of an object.

NONE = 2

Represent the fact we are not working with any edge of an object.

class GES.EditMode(value)

Bases: GObject.GEnum

When a single timeline element is edited within its timeline at some position, using GES.TimelineElement.edit(), depending on the edit mode, its GES.TimelineElement :start, GES.TimelineElement :duration or GES.TimelineElement :in-point will be adjusted accordingly. In addition, any clips may change GES.Clip :layer.

Each edit can be broken down into a combination of three basic edits:

  • MOVE: This moves the start of the element to the edit position.

  • START-TRIM: This cuts or grows the start of the element, whilst maintaining the time at which its internal content appears in the timeline data output. If the element is made shorter, the data that appeared at the edit position will still appear in the timeline at the same time. If the element is made longer, the data that appeared at the previous start of the element will still appear in the timeline at the same time.

  • END-TRIM: Similar to START-TRIM, but the end of the element is cut or grown.

In particular, when editing a GES.Clip:

  • MOVE: This will set the GES.TimelineElement :start of the clip to the edit position.

  • START-TRIM: This will set the GES.TimelineElement :start of the clip to the edit position. To keep the end time the same, the GES.TimelineElement :duration of the clip will be adjusted in the opposite direction. In addition, the GES.TimelineElement :in-point of the clip will be shifted such that the content that appeared at the new or previous start time, whichever is latest, still appears at the same timeline time. For example, if a frame appeared at the start of the clip, and the start of the clip is reduced, the in-point of the clip will also reduce such that the frame will appear later within the clip, but at the same timeline position.

  • END-TRIM: This will set the GES.TimelineElement :duration of the clip such that its end time will match the edit position.

When editing a GES.Group:

  • MOVE: This will set the GES.Group :start of the clip to the edit position by shifting all of its children by the same amount. So each child will maintain their relative positions.

  • START-TRIM: If the group is made shorter, this will START-TRIM any clips under the group that start after the edit position to the same edit position. If the group is made longer, this will START-TRIM any clip under the group whose start matches the start of the group to the same edit position.

  • END-TRIM: If the group is made shorter, this will END-TRIM any clips under the group that end after the edit position to the same edit position. If the group is made longer, this will END-TRIM any clip under the group whose end matches the end of the group to the same edit position.

When editing a GES.TrackElement, if it has a GES.Clip parent, this will be edited instead. Otherwise it is edited in the same way as a GES.Clip.

The layer priority of a GES.Group is the lowest layer priority of any GES.Clip underneath it. When a group is edited to a new layer priority, it will shift all clips underneath it by the same amount, such that their relative layers stay the same.

If the GES.Timeline has a GES.Timeline :snapping-distance, then snapping may occur for some of the edges of the **main** edited element:

  • MOVE: The start or end edge of *any* GES.Source under the element may be snapped.

  • START-TRIM: The start edge of a GES.Source whose start edge touches the start edge of the element may snap.

  • END-TRIM: The end edge of a GES.Source whose end edge touches the end edge of the element may snap.

These edges may snap with either the start or end edge of *any* other GES.Source in the timeline that is not also being moved by the element, including those in different layers, if they are within the GES.Timeline :snapping-distance. During an edit, only up to one snap can occur. This will shift the edit position such that the snapped edges will touch once the edit has completed.

Note that snapping can cause an edit to fail where it would have otherwise succeeded because it may push the edit position such that the edit would result in an unsupported timeline configuration. Similarly, snapping can cause an edit to succeed where it would have otherwise failed.

For example, in GES.EditMode.RIPPLE acting on GES.Edge.NONE, the main element is the MOVED toplevel of the edited element. Any source under the main MOVED toplevel may have its start or end edge snapped. Note, these sources cannot snap with each other. The edit may also push other elements, but any sources under these elements cannot snap, nor can they be snapped with. If a snap does occur, the MOVE of the toplevel *and* all other elements pushed by the ripple will be shifted by the same amount such that the snapped edges will touch.

You can also find more explanation about the behaviour of those modes at: trim, ripple and roll and clip management.

classmethod name(mode)[source]
Parameters:

mode (GES.EditMode) – a GES.EditMode

Returns:

a string representation of mode.

Return type:

str

Return a string representation of mode.

New in version 1.18.

EDIT_NORMAL = 0

The element is edited the normal way (default). If acting on the element as a whole (GES.Edge.NONE), this will MOVE the element by MOVING its toplevel. When acting on the start of the element (GES.Edge.START), this will only MOVE the element, but not its toplevel parent. This can allow you to move a GES.Clip or GES.Group to a new start time or layer within its container group, without effecting other members of the group. When acting on the end of the element (GES.Edge.EDGE_END), this will END-TRIM the element, leaving its toplevel unchanged.

NORMAL = 0

The element is edited the normal way (default). If acting on the element as a whole (GES.Edge.NONE), this will MOVE the element by MOVING its toplevel. When acting on the start of the element (GES.Edge.START), this will only MOVE the element, but not its toplevel parent. This can allow you to move a GES.Clip or GES.Group to a new start time or layer within its container group, without effecting other members of the group. When acting on the end of the element (GES.Edge.EDGE_END), this will END-TRIM the element, leaving its toplevel unchanged.

EDIT_RIPPLE = 1

The element is edited in ripple mode: moving itself as well as later elements, keeping their relative times. This edits the element the same as GES.EditMode.NORMAL. In addition, if acting on the element as a whole, or the start of the element, any toplevel element in the same timeline (including different layers) whose start time is later than the *current* start time of the MOVED element will also be MOVED by the same shift as the edited element. If acting on the end of the element, any toplevel element whose start time is later than the *current* end time of the edited element will also be MOVED by the same shift as the change in the end of the edited element. These additional elements will also be shifted by the same shift in layers as the edited element.

RIPPLE = 1

The element is edited in ripple mode: moving itself as well as later elements, keeping their relative times. This edits the element the same as GES.EditMode.NORMAL. In addition, if acting on the element as a whole, or the start of the element, any toplevel element in the same timeline (including different layers) whose start time is later than the *current* start time of the MOVED element will also be MOVED by the same shift as the edited element. If acting on the end of the element, any toplevel element whose start time is later than the *current* end time of the edited element will also be MOVED by the same shift as the change in the end of the edited element. These additional elements will also be shifted by the same shift in layers as the edited element.

EDIT_ROLL = 2

The element is edited in roll mode: swapping its content for its neighbour’s, or vis versa, in the timeline output. This edits the element the same as GES.EditMode.TRIM. In addition, any neighbours are also TRIMMED at their opposite edge to the same timeline position. When acting on the start of the element, a neighbour is any earlier element in the timeline whose end time matches the *current* start time of the edited element. When acting on the end of the element, a neighbour is any later element in the timeline whose start time matches the *current* start time of the edited element. In addition, a neighbour have a GES.Source at its end/start edge that shares a track with a GES.Source at the start/end edge of the edited element. Basically, a neighbour is an element that can be extended, or cut, to have its content replace, or be replaced by, the content of the edited element. Acting on the element as a whole (GES.Edge.NONE) is not defined. The element can not shift layers under this mode.

ROLL = 2

The element is edited in roll mode: swapping its content for its neighbour’s, or vis versa, in the timeline output. This edits the element the same as GES.EditMode.TRIM. In addition, any neighbours are also TRIMMED at their opposite edge to the same timeline position. When acting on the start of the element, a neighbour is any earlier element in the timeline whose end time matches the *current* start time of the edited element. When acting on the end of the element, a neighbour is any later element in the timeline whose start time matches the *current* start time of the edited element. In addition, a neighbour have a GES.Source at its end/start edge that shares a track with a GES.Source at the start/end edge of the edited element. Basically, a neighbour is an element that can be extended, or cut, to have its content replace, or be replaced by, the content of the edited element. Acting on the element as a whole (GES.Edge.NONE) is not defined. The element can not shift layers under this mode.

EDIT_TRIM = 3

The element is edited in trim mode. When acting on the start of the element, this will START-TRIM it. When acting on the end of the element, this will END-TRIM it. Acting on the element as a whole (GES.Edge.NONE) is not defined.

TRIM = 3

The element is edited in trim mode. When acting on the start of the element, this will START-TRIM it. When acting on the end of the element, this will END-TRIM it. Acting on the element as a whole (GES.Edge.NONE) is not defined.

EDIT_SLIDE = 4

The element is edited in slide mode (not yet implemented): moving the element replacing or consuming content on each end. When acting on the element as a whole, this will MOVE the element, and TRIM any neighbours on either side. A neighbour is defined in the same way as in GES.EditMode.EDIT_ROLL, but they may be on either side of the edited elements. Elements at the end with be START-TRIMMED to the new end position of the edited element. Elements at the start will be END-TRIMMED to the new start position of the edited element. Acting on the start or end of the element (GES.Edge.START and GES.Edge.EDGE_END) is not defined. The element can not shift layers under this mode.

SLIDE = 4

The element is edited in slide mode (not yet implemented): moving the element replacing or consuming content on each end. When acting on the element as a whole, this will MOVE the element, and TRIM any neighbours on either side. A neighbour is defined in the same way as in GES.EditMode.EDIT_ROLL, but they may be on either side of the edited elements. Elements at the end with be START-TRIMMED to the new end position of the edited element. Elements at the start will be END-TRIMMED to the new start position of the edited element. Acting on the start or end of the element (GES.Edge.START and GES.Edge.EDGE_END) is not defined. The element can not shift layers under this mode.

class GES.Error(value)

Bases: GLib.Enum

ASSET_WRONG_ID = 0

The ID passed is malformed

ASSET_LOADING = 1

An error happened while loading the asset

FORMATTER_MALFORMED_INPUT_FILE = 2

The formatted files was malformed

INVALID_FRAME_NUMBER = 3

The frame number is invalid

NEGATIVE_LAYER = 4

The operation would lead to a negative #GES_TIMELINE_ELEMENT_LAYER_PRIORITY.

New in version 1.18.

NEGATIVE_TIME = 5

The operation would lead to a negative time. E.g. for the GES.TimelineElement :start GES.TimelineElement :duration or GES.TimelineElement :in-point.

New in version 1.18.

NOT_ENOUGH_INTERNAL_CONTENT = 6

Some GES.TimelineElement does not have a large enough GES.TimelineElement :max-duration to cover the desired operation.

New in version 1.18.

INVALID_OVERLAP_IN_TRACK = 7

The operation would break one of the overlap conditions for the GES.Timeline.

New in version 1.18.

INVALID_EFFECT_BIN_DESCRIPTION = 8
class GES.TextHAlign(value)

Bases: GObject.GEnum

Horizontal alignment of the text.

LEFT = 0

align text left

CENTER = 1

align text center

RIGHT = 2

align text right

POSITION = 4

align text on xpos position

ABSOLUTE = 5
class GES.TextVAlign(value)

Bases: GObject.GEnum

Vertical alignment of the text.

BASELINE = 0

draw text on the baseline

BOTTOM = 1

draw text on the bottom

TOP = 2

draw text on top

POSITION = 3

draw text on ypos position

CENTER = 4

draw text on the center

ABSOLUTE = 5
class GES.VideoStandardTransitionType(value)

Bases: GObject.GEnum

NONE = 0

Transition type has not been set,

BAR_WIPE_LR = 1

A bar moves from left to right,

IRIS_RECT = 101

A rectangle expands from the center.,

BAR_WIPE_TB = 2

A bar moves from top to bottom,

CLOCK_CW12 = 201

A radial hand sweeps clockwise from the twelve o’clock position,

CLOCK_CW3 = 202

A radial hand sweeps clockwise from the three o’clock position,

CLOCK_CW6 = 203

A radial hand sweeps clockwise from the six o’clock position,

CLOCK_CW9 = 204

A radial hand sweeps clockwise from the nine o’clock position,

PINWHEEL_TBV = 205

Two radial hands sweep clockwise from the twelve and six o’clock positions,

PINWHEEL_TBH = 206

Two radial hands sweep clockwise from the nine and three o’clock positions,

PINWHEEL_FB = 207

Four radial hands sweep clockwise,

BARNDOOR_V = 21

A central, vertical line splits and expands toward the left and right edges,

FAN_CT = 211

A fan unfolds from the top edge, the fan axis at the center,

FAN_CR = 212

A fan unfolds from the right edge, the fan axis at the center,

DOUBLEFAN_FOV = 213

Two fans, their axes at the center, unfold from the top and bottom,

DOUBLEFAN_FOH = 214

Two fans, their axes at the center, unfold from the left and right,

BARNDOOR_H = 22

A central, horizontal line splits and expands toward the top and bottom edges,

SINGLESWEEP_CWT = 221

A radial hand sweeps clockwise from the top edge’s midpoint,

SINGLESWEEP_CWR = 222

A radial hand sweeps clockwise from the right edge’s midpoint,

SINGLESWEEP_CWB = 223

A radial hand sweeps clockwise from the bottom edge’s midpoint,

SINGLESWEEP_CWL = 224

A radial hand sweeps clockwise from the left edge’s midpoint,

DOUBLESWEEP_PV = 225

Two radial hands sweep clockwise and counter-clockwise from the top and bottom edges’ midpoints,

DOUBLESWEEP_PD = 226

Two radial hands sweep clockwise and counter-clockwise from the left and right edges’ midpoints,

DOUBLESWEEP_OV = 227

Two radial hands attached at the top and bottom edges’ midpoints sweep from right to left,

DOUBLESWEEP_OH = 228

Two radial hands attached at the left and right edges’ midpoints sweep from top to bottom,

BOX_WIPE_TC = 23

A box expands from the top edge’s midpoint to the bottom corners,

FAN_T = 231

A fan unfolds from the bottom, the fan axis at the top edge’s midpoint,

FAN_R = 232

A fan unfolds from the left, the fan axis at the right edge’s midpoint,

FAN_B = 233

A fan unfolds from the top, the fan axis at the bottom edge’s midpoint,

FAN_L = 234

A fan unfolds from the right, the fan axis at the left edge’s midpoint,

DOUBLEFAN_FIV = 235

Two fans, their axes at the top and bottom, unfold from the center,

DOUBLEFAN_FIH = 236

Two fans, their axes at the left and right, unfold from the center,

BOX_WIPE_RC = 24

A box expands from the right edge’s midpoint to the left corners,

SINGLESWEEP_CWTL = 241

A radial hand sweeps clockwise from the upper-left corner,

SINGLESWEEP_CWBL = 242

A radial hand sweeps counter-clockwise from the lower-left corner.,

SINGLESWEEP_CWBR = 243

A radial hand sweeps clockwise from the lower-right corner,

SINGLESWEEP_CWTR = 244

A radial hand sweeps counter-clockwise from the upper-right corner,

DOUBLESWEEP_PDTL = 245

Two radial hands attached at the upper-left and lower-right corners sweep down and up,

DOUBLESWEEP_PDBL = 246

Two radial hands attached at the lower-left and upper-right corners sweep down and up,

BOX_WIPE_BC = 25

A box expands from the bottom edge’s midpoint to the top corners,

SALOONDOOR_T = 251

Two radial hands attached at the upper-left and upper-right corners sweep down,

SALOONDOOR_L = 252

Two radial hands attached at the upper-left and lower-left corners sweep to the right,

SALOONDOOR_B = 253

Two radial hands attached at the lower-left and lower-right corners sweep up,

SALOONDOOR_R = 254

Two radial hands attached at the upper-right and lower-right corners sweep to the left,

BOX_WIPE_LC = 26

A box expands from the left edge’s midpoint to the right corners,

WINDSHIELD_R = 261

Two radial hands attached at the midpoints of the top and bottom halves sweep from right to left,

WINDSHIELD_U = 262

Two radial hands attached at the midpoints of the left and right halves sweep from top to bottom,

WINDSHIELD_V = 263

Two sets of radial hands attached at the midpoints of the top and bottom halves sweep from top to bottom and bottom to top,

WINDSHIELD_H = 264

Two sets of radial hands attached at the midpoints of the left and right halves sweep from left to right and right to left,

BOX_WIPE_TL = 3

A box expands from the upper-left corner to the lower-right corner,

BOX_WIPE_TR = 4

A box expands from the upper-right corner to the lower-left corner,

DIAGONAL_TL = 41

A diagonal line moves from the upper-left corner to the lower-right corner,

DIAGONAL_TR = 42

A diagonal line moves from the upper right corner to the lower-left corner,

BOWTIE_V = 43

Two wedge shapes slide in from the top and bottom edges toward the center,

BOWTIE_H = 44

Two wedge shapes slide in from the left and right edges toward the center,

BARNDOOR_DBL = 45

A diagonal line from the lower-left to upper-right corners splits and expands toward the opposite corners,

BARNDOOR_DTL = 46

A diagonal line from upper-left to lower-right corners splits and expands toward the opposite corners,

MISC_DIAGONAL_DBD = 47

Four wedge shapes split from the center and retract toward the four edges,

MISC_DIAGONAL_DD = 48

A diamond connecting the four edge midpoints simultaneously contracts toward the center and expands toward the edges,

BOX_WIPE_BR = 5

A box expands from the lower-right corner to the upper-left corner,

CROSSFADE = 512

Crossfade

FADE_IN = 513

Similar to crossfade, but fade in the front video without fading out the background one

New in version 1.22.

BOX_WIPE_BL = 6

A box expands from the lower-left corner to the upper-right corner,

VEE_D = 61

A wedge shape moves from top to bottom,

VEE_L = 62

A wedge shape moves from right to left,

VEE_U = 63

A wedge shape moves from bottom to top,

VEE_R = 64

A wedge shape moves from left to right,

BARNVEE_D = 65

A ‘V’ shape extending from the bottom edge’s midpoint to the opposite corners contracts toward the center and expands toward the edges,

BARNVEE_L = 66

A ‘V’ shape extending from the left edge’s midpoint to the opposite corners contracts toward the center and expands toward the edges,

BARNVEE_U = 67

A ‘V’ shape extending from the top edge’s midpoint to the opposite corners contracts toward the center and expands toward the edges,

BARNVEE_R = 68

A ‘V’ shape extending from the right edge’s midpoint to the opposite corners contracts toward the center and expands toward the edges,

FOUR_BOX_WIPE_CI = 7

A box shape expands from each of the four corners toward the center,

FOUR_BOX_WIPE_CO = 8

A box shape expands from the center of each quadrant toward the corners of each quadrant,

class GES.VideoTestPattern(value)

Bases: GObject.GEnum

The test pattern to produce

SMPTE = 0

A standard SMPTE test pattern

SNOW = 1

Random noise

CHECKERS_8 = 10

Checkers pattern (8px)

CIRCULAR = 11

Circular pattern

Alternate between black and white

SMPTE75 = 13

SMPTE test pattern (75% color bars)

ZONE_PLATE = 14

Zone plate

GAMUT = 15

Gamut checkers

CHROMA_ZONE_PLATE = 16

Chroma zone plate

SOLID_COLOR = 17

Solid color

BLACK = 2

A black image

WHITE = 3

A white image

RED = 4

A red image

GREEN = 5

A green image

BLUE = 6

A blue image

CHECKERS_1 = 7

Checkers pattern (1px)

CHECKERS_2 = 8

Checkers pattern (2px)

CHECKERS_4 = 9

Checkers pattern (4px)