1 /* GStreamer Editing Services 2 * Copyright (C) 2010 Brandon Lewis <brandon.lewis@collabora.co.uk> 3 * 2010 Nokia Corporation 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Library General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Library General Public License for more details. 14 * 15 * You should have received a copy of the GNU Library General Public 16 * License along with this library; if not, write to the 17 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 18 * Boston, MA 02110-1301, USA. 19 */ 20 21 #ifndef __GES_ENUMS_H__ 22 #define __GES_ENUMS_H__ 23 24 #include <gst/gst.h> 25 #include <ges/ges-prelude.h> 26 27 G_BEGIN_DECLS 28 29 #define GES_TYPE_TRACK_TYPE (ges_track_type_get_type ()) 30 GES_API 31 GType ges_track_type_get_type (void); 32 33 /** 34 * GESTrackType: 35 * @GES_TRACK_TYPE_UNKNOWN: A track of unknown type (i.e. invalid) 36 * @GES_TRACK_TYPE_AUDIO: An audio track 37 * @GES_TRACK_TYPE_VIDEO: A video track 38 * @GES_TRACK_TYPE_TEXT: A text (subtitle) track 39 * @GES_TRACK_TYPE_CUSTOM: A custom-content track 40 * 41 * Types of content handled by a track. If the content is not one of 42 * @GES_TRACK_TYPE_AUDIO, @GES_TRACK_TYPE_VIDEO or @GES_TRACK_TYPE_TEXT, 43 * the user of the #GESTrack must set the type to @GES_TRACK_TYPE_CUSTOM. 44 * 45 * @GES_TRACK_TYPE_UNKNOWN is for internal purposes and should not be used 46 * by users 47 */ 48 49 typedef enum { 50 GES_TRACK_TYPE_UNKNOWN = 1 << 0, 51 GES_TRACK_TYPE_AUDIO = 1 << 1, 52 GES_TRACK_TYPE_VIDEO = 1 << 2, 53 GES_TRACK_TYPE_TEXT = 1 << 3, 54 GES_TRACK_TYPE_CUSTOM = 1 << 4, 55 } GESTrackType; 56 57 #define GES_META_FLAG_TYPE (ges_meta_flag_get_type ()) 58 GES_API 59 GType ges_meta_flag_get_type (void); 60 61 /** 62 * GESMetaFlag: 63 * @GES_META_READABLE: The metadata is readable 64 * @GES_META_WRITABLE: The metadata is writable 65 * @GES_META_READ_WRITE: The metadata is readable and writable 66 */ 67 typedef enum { 68 GES_META_READABLE = 1 << 0, 69 GES_META_WRITABLE = 1 << 1, 70 GES_META_READ_WRITE = GES_META_READABLE | GES_META_WRITABLE 71 } GESMetaFlag; 72 73 /** 74 * GESVideoStandardTransitionType: 75 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_NONE: Transition type has not been set, 76 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BAR_WIPE_LR: A bar moves from left to right, 77 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BAR_WIPE_TB: A bar moves from top to bottom, 78 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TL: A box expands from the upper-left corner to the lower-right corner, 79 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TR: A box expands from the upper-right corner to the lower-left corner, 80 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BR: A box expands from the lower-right corner to the upper-left corner, 81 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BL: A box expands from the lower-left corner to the upper-right corner, 82 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FOUR_BOX_WIPE_CI: A box shape expands from each of the four corners toward the center, 83 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FOUR_BOX_WIPE_CO: A box shape expands from the center of each quadrant toward the corners of each quadrant, 84 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_V: A central, vertical line splits and expands toward the left and right edges, 85 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_H: A central, horizontal line splits and expands toward the top and bottom edges, 86 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TC: A box expands from the top edge's midpoint to the bottom corners, 87 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_RC: A box expands from the right edge's midpoint to the left corners, 88 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BC: A box expands from the bottom edge's midpoint to the top corners, 89 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_LC: A box expands from the left edge's midpoint to the right corners, 90 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DIAGONAL_TL: A diagonal line moves from the upper-left corner to the lower-right corner, 91 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DIAGONAL_TR: A diagonal line moves from the upper right corner to the lower-left corner, 92 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOWTIE_V: Two wedge shapes slide in from the top and bottom edges toward the center, 93 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BOWTIE_H: Two wedge shapes slide in from the left and right edges toward the center, 94 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_DBL: A diagonal line from the lower-left to upper-right corners splits and expands toward the opposite corners, 95 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_DTL: A diagonal line from upper-left to lower-right corners splits and expands toward the opposite corners, 96 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_MISC_DIAGONAL_DBD: Four wedge shapes split from the center and retract toward the four edges, 97 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_MISC_DIAGONAL_DD: A diamond connecting the four edge midpoints simultaneously contracts toward the center and expands toward the edges, 98 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_D: A wedge shape moves from top to bottom, 99 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_L: A wedge shape moves from right to left, 100 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_U: A wedge shape moves from bottom to top, 101 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_R: A wedge shape moves from left to right, 102 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_D: A 'V' shape extending from the bottom edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, 103 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_L: A 'V' shape extending from the left edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, 104 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_U: A 'V' shape extending from the top edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, 105 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_R: A 'V' shape extending from the right edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, 106 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_IRIS_RECT: A rectangle expands from the center., 107 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW12: A radial hand sweeps clockwise from the twelve o'clock position, 108 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW3: A radial hand sweeps clockwise from the three o'clock position, 109 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW6: A radial hand sweeps clockwise from the six o'clock position, 110 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW9: A radial hand sweeps clockwise from the nine o'clock position, 111 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_TBV: Two radial hands sweep clockwise from the twelve and six o'clock positions, 112 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_TBH: Two radial hands sweep clockwise from the nine and three o'clock positions, 113 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_FB: Four radial hands sweep clockwise, 114 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_CT: A fan unfolds from the top edge, the fan axis at the center, 115 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_CR: A fan unfolds from the right edge, the fan axis at the center, 116 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FOV: Two fans, their axes at the center, unfold from the top and bottom, 117 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FOH: Two fans, their axes at the center, unfold from the left and right, 118 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWT: A radial hand sweeps clockwise from the top edge's midpoint, 119 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWR: A radial hand sweeps clockwise from the right edge's midpoint, 120 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWB: A radial hand sweeps clockwise from the bottom edge's midpoint, 121 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWL: A radial hand sweeps clockwise from the left edge's midpoint, 122 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PV: Two radial hands sweep clockwise and counter-clockwise from the top and bottom edges' midpoints, 123 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PD: Two radial hands sweep clockwise and counter-clockwise from the left and right edges' midpoints, 124 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_OV: Two radial hands attached at the top and bottom edges' midpoints sweep from right to left, 125 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_OH: Two radial hands attached at the left and right edges' midpoints sweep from top to bottom, 126 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_T: A fan unfolds from the bottom, the fan axis at the top edge's midpoint, 127 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_R: A fan unfolds from the left, the fan axis at the right edge's midpoint, 128 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_B: A fan unfolds from the top, the fan axis at the bottom edge's midpoint, 129 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_L: A fan unfolds from the right, the fan axis at the left edge's midpoint, 130 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FIV: Two fans, their axes at the top and bottom, unfold from the center, 131 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FIH: Two fans, their axes at the left and right, unfold from the center, 132 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWTL: A radial hand sweeps clockwise from the upper-left corner, 133 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWBL: A radial hand sweeps counter-clockwise from the lower-left corner., 134 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWBR: A radial hand sweeps clockwise from the lower-right corner, 135 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWTR: A radial hand sweeps counter-clockwise from the upper-right corner, 136 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PDTL: Two radial hands attached at the upper-left and lower-right corners sweep down and up, 137 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PDBL: Two radial hands attached at the lower-left and upper-right corners sweep down and up, 138 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_T: Two radial hands attached at the upper-left and upper-right corners sweep down, 139 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_L: Two radial hands attached at the upper-left and lower-left corners sweep to the right, 140 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_B: Two radial hands attached at the lower-left and lower-right corners sweep up, 141 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_R: Two radial hands attached at the upper-right and lower-right corners sweep to the left, 142 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_R: Two radial hands attached at the midpoints of the top and bottom halves sweep from right to left, 143 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_U: Two radial hands attached at the midpoints of the left and right halves sweep from top to bottom, 144 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_V: Two sets of radial hands attached at the midpoints of the top and bottom halves sweep from top to bottom and bottom to top, 145 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_H: Two sets of radial hands attached at the midpoints of the left and right halves sweep from left to right and right to left, 146 * @GES_VIDEO_STANDARD_TRANSITION_TYPE_CROSSFADE: Crossfade 147 * 148 */ 149 150 typedef enum { 151 GES_VIDEO_STANDARD_TRANSITION_TYPE_NONE = 0, 152 GES_VIDEO_STANDARD_TRANSITION_TYPE_BAR_WIPE_LR = 1, 153 GES_VIDEO_STANDARD_TRANSITION_TYPE_BAR_WIPE_TB = 2, 154 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TL = 3, 155 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TR = 4, 156 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BR = 5, 157 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BL = 6, 158 GES_VIDEO_STANDARD_TRANSITION_TYPE_FOUR_BOX_WIPE_CI = 7, 159 GES_VIDEO_STANDARD_TRANSITION_TYPE_FOUR_BOX_WIPE_CO = 8, 160 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_V = 21, 161 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_H = 22, 162 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TC = 23, 163 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_RC = 24, 164 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BC = 25, 165 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_LC = 26, 166 GES_VIDEO_STANDARD_TRANSITION_TYPE_DIAGONAL_TL = 41, 167 GES_VIDEO_STANDARD_TRANSITION_TYPE_DIAGONAL_TR = 42, 168 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOWTIE_V = 43, 169 GES_VIDEO_STANDARD_TRANSITION_TYPE_BOWTIE_H = 44, 170 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_DBL = 45, 171 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_DTL = 46, 172 GES_VIDEO_STANDARD_TRANSITION_TYPE_MISC_DIAGONAL_DBD = 47, 173 GES_VIDEO_STANDARD_TRANSITION_TYPE_MISC_DIAGONAL_DD = 48, 174 GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_D = 61, 175 GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_L = 62, 176 GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_U = 63, 177 GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_R = 64, 178 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_D = 65, 179 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_L = 66, 180 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_U = 67, 181 GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_R = 68, 182 GES_VIDEO_STANDARD_TRANSITION_TYPE_IRIS_RECT = 101, 183 GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW12 = 201, 184 GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW3 = 202, 185 GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW6 = 203, 186 GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW9 = 204, 187 GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_TBV = 205, 188 GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_TBH = 206, 189 GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_FB = 207, 190 GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_CT = 211, 191 GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_CR = 212, 192 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FOV = 213, 193 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FOH = 214, 194 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWT = 221, 195 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWR = 222, 196 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWB = 223, 197 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWL = 224, 198 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PV = 225, 199 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PD = 226, 200 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_OV = 227, 201 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_OH = 228, 202 GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_T = 231, 203 GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_R = 232, 204 GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_B = 233, 205 GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_L = 234, 206 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FIV = 235, 207 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FIH = 236, 208 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWTL = 241, 209 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWBL = 242, 210 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWBR = 243, 211 GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWTR = 244, 212 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PDTL = 245, 213 GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PDBL = 246, 214 GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_T = 251, 215 GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_L = 252, 216 GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_B = 253, 217 GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_R = 254, 218 GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_R = 261, 219 GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_U = 262, 220 GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_V = 263, 221 GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_H = 264, 222 GES_VIDEO_STANDARD_TRANSITION_TYPE_CROSSFADE = 512 223 } GESVideoStandardTransitionType; 224 225 #define GES_VIDEO_STANDARD_TRANSITION_TYPE_TYPE \ 226 (ges_video_standard_transition_type_get_type()) 227 228 GES_API 229 GType ges_video_standard_transition_type_get_type (void); 230 231 /** 232 * GESTextVAlign: 233 * @GES_TEXT_VALIGN_BASELINE: draw text on the baseline 234 * @GES_TEXT_VALIGN_BOTTOM: draw text on the bottom 235 * @GES_TEXT_VALIGN_TOP: draw text on top 236 * @GES_TEXT_VALIGN_POSITION: draw text on ypos position 237 * @GES_TEXT_VALIGN_CENTER: draw text on the center 238 * 239 * Vertical alignment of the text. 240 */ 241 typedef enum { 242 GES_TEXT_VALIGN_BASELINE, 243 GES_TEXT_VALIGN_BOTTOM, 244 GES_TEXT_VALIGN_TOP, 245 GES_TEXT_VALIGN_POSITION, 246 GES_TEXT_VALIGN_CENTER, 247 GES_TEXT_VALIGN_ABSOLUTE 248 } GESTextVAlign; 249 250 #define DEFAULT_VALIGNMENT GES_TEXT_VALIGN_BASELINE 251 252 #define GES_TEXT_VALIGN_TYPE\ 253 (ges_text_valign_get_type ()) 254 255 GES_API 256 GType ges_text_valign_get_type (void); 257 258 /** 259 * GESTextHAlign: 260 * @GES_TEXT_HALIGN_LEFT: align text left 261 * @GES_TEXT_HALIGN_CENTER: align text center 262 * @GES_TEXT_HALIGN_RIGHT: align text right 263 * @GES_TEXT_HALIGN_POSITION: align text on xpos position 264 * 265 * Horizontal alignment of the text. 266 */ 267 typedef enum { 268 GES_TEXT_HALIGN_LEFT = 0, 269 GES_TEXT_HALIGN_CENTER = 1, 270 GES_TEXT_HALIGN_RIGHT = 2, 271 GES_TEXT_HALIGN_POSITION = 4, 272 GES_TEXT_HALIGN_ABSOLUTE = 5 273 } GESTextHAlign; 274 275 #define DEFAULT_HALIGNMENT GES_TEXT_HALIGN_CENTER 276 277 #define GES_TEXT_HALIGN_TYPE\ 278 (ges_text_halign_get_type ()) 279 280 GES_API 281 GType ges_text_halign_get_type (void); 282 283 /** 284 * GESVideoTestPattern: 285 * @GES_VIDEO_TEST_PATTERN_SMPTE: A standard SMPTE test pattern 286 * @GES_VIDEO_TEST_PATTERN_SNOW: Random noise 287 * @GES_VIDEO_TEST_PATTERN_BLACK: A black image 288 * @GES_VIDEO_TEST_PATTERN_WHITE: A white image 289 * @GES_VIDEO_TEST_PATTERN_RED: A red image 290 * @GES_VIDEO_TEST_PATTERN_GREEN: A green image 291 * @GES_VIDEO_TEST_PATTERN_BLUE: A blue image 292 * @GES_VIDEO_TEST_PATTERN_CHECKERS1: Checkers pattern (1px) 293 * @GES_VIDEO_TEST_PATTERN_CHECKERS2: Checkers pattern (2px) 294 * @GES_VIDEO_TEST_PATTERN_CHECKERS4: Checkers pattern (4px) 295 * @GES_VIDEO_TEST_PATTERN_CHECKERS8: Checkers pattern (8px) 296 * @GES_VIDEO_TEST_PATTERN_CIRCULAR: Circular pattern 297 * @GES_VIDEO_TEST_PATTERN_SOLID: Solid color 298 * @GES_VIDEO_TEST_PATTERN_BLINK: Alternate between black and white 299 * @GES_VIDEO_TEST_ZONE_PLATE: Zone plate 300 * @GES_VIDEO_TEST_GAMUT: Gamut checkers 301 * @GES_VIDEO_TEST_CHROMA_ZONE_PLATE: Chroma zone plate 302 * @GES_VIDEO_TEST_PATTERN_SMPTE75: SMPTE test pattern (75% color bars) 303 * 304 * The test pattern to produce 305 */ 306 307 typedef enum { 308 GES_VIDEO_TEST_PATTERN_SMPTE, 309 GES_VIDEO_TEST_PATTERN_SNOW, 310 GES_VIDEO_TEST_PATTERN_BLACK, 311 GES_VIDEO_TEST_PATTERN_WHITE, 312 GES_VIDEO_TEST_PATTERN_RED, 313 GES_VIDEO_TEST_PATTERN_GREEN, 314 GES_VIDEO_TEST_PATTERN_BLUE, 315 GES_VIDEO_TEST_PATTERN_CHECKERS1, 316 GES_VIDEO_TEST_PATTERN_CHECKERS2, 317 GES_VIDEO_TEST_PATTERN_CHECKERS4, 318 GES_VIDEO_TEST_PATTERN_CHECKERS8, 319 GES_VIDEO_TEST_PATTERN_CIRCULAR, 320 GES_VIDEO_TEST_PATTERN_BLINK, 321 GES_VIDEO_TEST_PATTERN_SMPTE75, 322 GES_VIDEO_TEST_ZONE_PLATE, 323 GES_VIDEO_TEST_GAMUT, 324 GES_VIDEO_TEST_CHROMA_ZONE_PLATE, 325 GES_VIDEO_TEST_PATTERN_SOLID, 326 } GESVideoTestPattern; 327 328 329 #define GES_VIDEO_TEST_PATTERN_TYPE\ 330 ges_video_test_pattern_get_type() 331 332 GES_API 333 GType ges_video_test_pattern_get_type (void); 334 335 /** 336 * GESPipelineFlags: 337 * @GES_PIPELINE_MODE_PREVIEW_AUDIO: output audio to the soundcard 338 * @GES_PIPELINE_MODE_PREVIEW_VIDEO: output video to the screen 339 * @GES_PIPELINE_MODE_PREVIEW: output audio/video to soundcard/screen (default) 340 * @GES_PIPELINE_MODE_RENDER: render timeline (forces decoding) 341 * @GES_PIPELINE_MODE_SMART_RENDER: render timeline (tries to avoid decoding/reencoding) 342 * 343 * The various modes the #GESPipeline can be configured to. 344 */ 345 typedef enum { 346 GES_PIPELINE_MODE_PREVIEW_AUDIO = 1 << 0, 347 GES_PIPELINE_MODE_PREVIEW_VIDEO = 1 << 1, 348 GES_PIPELINE_MODE_PREVIEW = GES_PIPELINE_MODE_PREVIEW_AUDIO | GES_PIPELINE_MODE_PREVIEW_VIDEO, 349 GES_PIPELINE_MODE_RENDER = 1 << 2, 350 GES_PIPELINE_MODE_SMART_RENDER = 1 << 3 351 } GESPipelineFlags; 352 353 #define GES_TYPE_PIPELINE_FLAGS\ 354 ges_pipeline_flags_get_type() 355 356 GES_API 357 GType ges_pipeline_flags_get_type (void); 358 359 /** 360 * GESEditMode: 361 * @GES_EDIT_MODE_NORMAL: The object is edited the normal way (default). 362 * @GES_EDIT_MODE_RIPPLE: The objects are edited in ripple mode. 363 * The Ripple mode allows you to modify the beginning/end of a clip 364 * and move the neighbours accordingly. This will change the overall 365 * timeline duration. In the case of ripple end, the duration of the 366 * clip being rippled can't be superior to its max_duration - inpoint 367 * otherwise the action won't be executed. 368 * @GES_EDIT_MODE_ROLL: The object is edited in roll mode. 369 * The Roll mode allows you to modify the position of an editing point 370 * between two clips without modifying the inpoint of the first clip 371 * nor the out-point of the second clip. This will not change the 372 * overall timeline duration. 373 * @GES_EDIT_MODE_TRIM: The object is edited in trim mode. 374 * The Trim mode allows you to modify the in-point/duration of a clip 375 * without modifying its position in the timeline. 376 * @GES_EDIT_MODE_SLIDE: The object is edited in slide mode. 377 * The Slide mode allows you to modify the position of a clip in a 378 * timeline without modifying its duration or its in-point, but will 379 * modify the duration of the previous clip and in-point of the 380 * following clip so does not modify the overall timeline duration. 381 * (not implemented yet) 382 * 383 * You can also find more explanation about the behaviour of those modes at: 384 * <ulink url="http://pitivi.org/manual/trimming.html"> trim, ripple and roll</ulink> 385 * and <ulink url="http://pitivi.org/manual/usingclips.html">clip management</ulink>. 386 */ 387 typedef enum { 388 GES_EDIT_MODE_NORMAL, 389 GES_EDIT_MODE_RIPPLE, 390 GES_EDIT_MODE_ROLL, 391 GES_EDIT_MODE_TRIM, 392 GES_EDIT_MODE_SLIDE 393 } GESEditMode; 394 395 #define GES_TYPE_EDIT_MODE ges_edit_mode_get_type() 396 397 GES_API 398 GType ges_edit_mode_get_type (void); 399 400 /** 401 * GESEdge: 402 * @GES_EDGE_START: Represents the start of an object. 403 * @GES_EDGE_END: Represents the end of an object. 404 * @GES_EDGE_NONE: Represent the fact we are not workin with any edge of an 405 * object. 406 * 407 * The edges of an object contain in a #GESTimeline or #GESTrack 408 */ 409 typedef enum { 410 GES_EDGE_START, 411 GES_EDGE_END, 412 GES_EDGE_NONE 413 } GESEdge; 414 415 GES_API 416 const gchar * ges_edge_name (GESEdge edge); 417 418 #define GES_TYPE_EDGE ges_edge_get_type() 419 420 GES_API 421 GType ges_edge_get_type (void); 422 423 424 GES_API 425 const gchar * ges_track_type_name (GESTrackType type); 426 G_END_DECLS 427 428 #endif /* __GES_ENUMS_H__ */ 429