1#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8 clippy::approx_constant,
9 clippy::type_complexity,
10 clippy::unreadable_literal,
11 clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use gio_sys as gio;
16use glib_sys as glib;
17use gobject_sys as gobject;
18use gstreamer_pbutils_sys as gst_pbutils;
19use gstreamer_sys as gst;
20
21#[cfg(unix)]
22#[allow(unused_imports)]
23use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
24#[allow(unused_imports)]
25use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
26#[allow(unused_imports)]
27use std::ffi::{
28 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
29};
30
31#[allow(unused_imports)]
32use glib::{gboolean, gconstpointer, gpointer, GType};
33
34pub type GESFrameNumber = i64;
36
37pub type GESAssetLoadingReturn = c_int;
39pub const GES_ASSET_LOADING_ERROR: GESAssetLoadingReturn = 0;
40pub const GES_ASSET_LOADING_ASYNC: GESAssetLoadingReturn = 1;
41pub const GES_ASSET_LOADING_OK: GESAssetLoadingReturn = 2;
42
43pub type GESChildrenControlMode = c_int;
44pub const GES_CHILDREN_UPDATE: GESChildrenControlMode = 0;
45pub const GES_CHILDREN_IGNORE_NOTIFIES: GESChildrenControlMode = 1;
46pub const GES_CHILDREN_UPDATE_OFFSETS: GESChildrenControlMode = 2;
47pub const GES_CHILDREN_UPDATE_ALL_VALUES: GESChildrenControlMode = 3;
48pub const GES_CHILDREN_LAST: GESChildrenControlMode = 4;
49
50pub type GESEdge = c_int;
51pub const GES_EDGE_START: GESEdge = 0;
52pub const GES_EDGE_END: GESEdge = 1;
53pub const GES_EDGE_NONE: GESEdge = 2;
54
55pub type GESEditMode = c_int;
56pub const GES_EDIT_MODE_NORMAL: GESEditMode = 0;
57pub const GES_EDIT_MODE_RIPPLE: GESEditMode = 1;
58pub const GES_EDIT_MODE_ROLL: GESEditMode = 2;
59pub const GES_EDIT_MODE_TRIM: GESEditMode = 3;
60pub const GES_EDIT_MODE_SLIDE: GESEditMode = 4;
61
62pub type GESError = c_int;
63pub const GES_ERROR_ASSET_WRONG_ID: GESError = 0;
64pub const GES_ERROR_ASSET_LOADING: GESError = 1;
65pub const GES_ERROR_FORMATTER_MALFORMED_INPUT_FILE: GESError = 2;
66pub const GES_ERROR_INVALID_FRAME_NUMBER: GESError = 3;
67pub const GES_ERROR_NEGATIVE_LAYER: GESError = 4;
68pub const GES_ERROR_NEGATIVE_TIME: GESError = 5;
69pub const GES_ERROR_NOT_ENOUGH_INTERNAL_CONTENT: GESError = 6;
70pub const GES_ERROR_INVALID_OVERLAP_IN_TRACK: GESError = 7;
71pub const GES_ERROR_INVALID_EFFECT_BIN_DESCRIPTION: GESError = 8;
72
73pub type GESTextHAlign = c_int;
74pub const GES_TEXT_HALIGN_LEFT: GESTextHAlign = 0;
75pub const GES_TEXT_HALIGN_CENTER: GESTextHAlign = 1;
76pub const GES_TEXT_HALIGN_RIGHT: GESTextHAlign = 2;
77pub const GES_TEXT_HALIGN_POSITION: GESTextHAlign = 4;
78pub const GES_TEXT_HALIGN_ABSOLUTE: GESTextHAlign = 5;
79
80pub type GESTextVAlign = c_int;
81pub const GES_TEXT_VALIGN_BASELINE: GESTextVAlign = 0;
82pub const GES_TEXT_VALIGN_BOTTOM: GESTextVAlign = 1;
83pub const GES_TEXT_VALIGN_TOP: GESTextVAlign = 2;
84pub const GES_TEXT_VALIGN_POSITION: GESTextVAlign = 3;
85pub const GES_TEXT_VALIGN_CENTER: GESTextVAlign = 4;
86pub const GES_TEXT_VALIGN_ABSOLUTE: GESTextVAlign = 5;
87
88pub type GESVideoStandardTransitionType = c_int;
89pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_NONE: GESVideoStandardTransitionType = 0;
90pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BAR_WIPE_LR: GESVideoStandardTransitionType = 1;
91pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BAR_WIPE_TB: GESVideoStandardTransitionType = 2;
92pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TL: GESVideoStandardTransitionType = 3;
93pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TR: GESVideoStandardTransitionType = 4;
94pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BR: GESVideoStandardTransitionType = 5;
95pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BL: GESVideoStandardTransitionType = 6;
96pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FOUR_BOX_WIPE_CI: GESVideoStandardTransitionType = 7;
97pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FOUR_BOX_WIPE_CO: GESVideoStandardTransitionType = 8;
98pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_V: GESVideoStandardTransitionType = 21;
99pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_H: GESVideoStandardTransitionType = 22;
100pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_TC: GESVideoStandardTransitionType = 23;
101pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_RC: GESVideoStandardTransitionType = 24;
102pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_BC: GESVideoStandardTransitionType = 25;
103pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOX_WIPE_LC: GESVideoStandardTransitionType = 26;
104pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DIAGONAL_TL: GESVideoStandardTransitionType = 41;
105pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DIAGONAL_TR: GESVideoStandardTransitionType = 42;
106pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOWTIE_V: GESVideoStandardTransitionType = 43;
107pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BOWTIE_H: GESVideoStandardTransitionType = 44;
108pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_DBL: GESVideoStandardTransitionType = 45;
109pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNDOOR_DTL: GESVideoStandardTransitionType = 46;
110pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_MISC_DIAGONAL_DBD: GESVideoStandardTransitionType = 47;
111pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_MISC_DIAGONAL_DD: GESVideoStandardTransitionType = 48;
112pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_D: GESVideoStandardTransitionType = 61;
113pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_L: GESVideoStandardTransitionType = 62;
114pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_U: GESVideoStandardTransitionType = 63;
115pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_VEE_R: GESVideoStandardTransitionType = 64;
116pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_D: GESVideoStandardTransitionType = 65;
117pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_L: GESVideoStandardTransitionType = 66;
118pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_U: GESVideoStandardTransitionType = 67;
119pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_BARNVEE_R: GESVideoStandardTransitionType = 68;
120pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_IRIS_RECT: GESVideoStandardTransitionType = 101;
121pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW12: GESVideoStandardTransitionType = 201;
122pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW3: GESVideoStandardTransitionType = 202;
123pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW6: GESVideoStandardTransitionType = 203;
124pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_CLOCK_CW9: GESVideoStandardTransitionType = 204;
125pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_TBV: GESVideoStandardTransitionType = 205;
126pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_TBH: GESVideoStandardTransitionType = 206;
127pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_PINWHEEL_FB: GESVideoStandardTransitionType = 207;
128pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_CT: GESVideoStandardTransitionType = 211;
129pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_CR: GESVideoStandardTransitionType = 212;
130pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FOV: GESVideoStandardTransitionType = 213;
131pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FOH: GESVideoStandardTransitionType = 214;
132pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWT: GESVideoStandardTransitionType = 221;
133pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWR: GESVideoStandardTransitionType = 222;
134pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWB: GESVideoStandardTransitionType = 223;
135pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWL: GESVideoStandardTransitionType = 224;
136pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PV: GESVideoStandardTransitionType = 225;
137pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PD: GESVideoStandardTransitionType = 226;
138pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_OV: GESVideoStandardTransitionType = 227;
139pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_OH: GESVideoStandardTransitionType = 228;
140pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_T: GESVideoStandardTransitionType = 231;
141pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_R: GESVideoStandardTransitionType = 232;
142pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_B: GESVideoStandardTransitionType = 233;
143pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FAN_L: GESVideoStandardTransitionType = 234;
144pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FIV: GESVideoStandardTransitionType = 235;
145pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLEFAN_FIH: GESVideoStandardTransitionType = 236;
146pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWTL: GESVideoStandardTransitionType = 241;
147pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWBL: GESVideoStandardTransitionType = 242;
148pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWBR: GESVideoStandardTransitionType = 243;
149pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SINGLESWEEP_CWTR: GESVideoStandardTransitionType = 244;
150pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PDTL: GESVideoStandardTransitionType = 245;
151pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_DOUBLESWEEP_PDBL: GESVideoStandardTransitionType = 246;
152pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_T: GESVideoStandardTransitionType = 251;
153pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_L: GESVideoStandardTransitionType = 252;
154pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_B: GESVideoStandardTransitionType = 253;
155pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_SALOONDOOR_R: GESVideoStandardTransitionType = 254;
156pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_R: GESVideoStandardTransitionType = 261;
157pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_U: GESVideoStandardTransitionType = 262;
158pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_V: GESVideoStandardTransitionType = 263;
159pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_WINDSHIELD_H: GESVideoStandardTransitionType = 264;
160pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_CROSSFADE: GESVideoStandardTransitionType = 512;
161#[cfg(feature = "v1_22")]
162#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
163pub const GES_VIDEO_STANDARD_TRANSITION_TYPE_FADE_IN: GESVideoStandardTransitionType = 513;
164
165pub type GESVideoTestPattern = c_int;
166pub const GES_VIDEO_TEST_PATTERN_SMPTE: GESVideoTestPattern = 0;
167pub const GES_VIDEO_TEST_PATTERN_SNOW: GESVideoTestPattern = 1;
168pub const GES_VIDEO_TEST_PATTERN_BLACK: GESVideoTestPattern = 2;
169pub const GES_VIDEO_TEST_PATTERN_WHITE: GESVideoTestPattern = 3;
170pub const GES_VIDEO_TEST_PATTERN_RED: GESVideoTestPattern = 4;
171pub const GES_VIDEO_TEST_PATTERN_GREEN: GESVideoTestPattern = 5;
172pub const GES_VIDEO_TEST_PATTERN_BLUE: GESVideoTestPattern = 6;
173pub const GES_VIDEO_TEST_PATTERN_CHECKERS1: GESVideoTestPattern = 7;
174pub const GES_VIDEO_TEST_PATTERN_CHECKERS2: GESVideoTestPattern = 8;
175pub const GES_VIDEO_TEST_PATTERN_CHECKERS4: GESVideoTestPattern = 9;
176pub const GES_VIDEO_TEST_PATTERN_CHECKERS8: GESVideoTestPattern = 10;
177pub const GES_VIDEO_TEST_PATTERN_CIRCULAR: GESVideoTestPattern = 11;
178pub const GES_VIDEO_TEST_PATTERN_BLINK: GESVideoTestPattern = 12;
179pub const GES_VIDEO_TEST_PATTERN_SMPTE75: GESVideoTestPattern = 13;
180pub const GES_VIDEO_TEST_ZONE_PLATE: GESVideoTestPattern = 14;
181pub const GES_VIDEO_TEST_GAMUT: GESVideoTestPattern = 15;
182pub const GES_VIDEO_TEST_CHROMA_ZONE_PLATE: GESVideoTestPattern = 16;
183pub const GES_VIDEO_TEST_PATTERN_SOLID: GESVideoTestPattern = 17;
184
185pub const GES_FRAME_NUMBER_NONE: i64 = 9223372036854775807;
187pub const GES_META_DESCRIPTION: &[u8] = b"description\0";
188pub const GES_META_FORMATTER_EXTENSION: &[u8] = b"extension\0";
189pub const GES_META_FORMATTER_MIMETYPE: &[u8] = b"mimetype\0";
190pub const GES_META_FORMATTER_NAME: &[u8] = b"name\0";
191pub const GES_META_FORMATTER_RANK: &[u8] = b"rank\0";
192pub const GES_META_FORMATTER_VERSION: &[u8] = b"version\0";
193pub const GES_META_FORMAT_VERSION: &[u8] = b"format-version\0";
194pub const GES_META_MARKER_COLOR: &[u8] = b"marker-color\0";
195pub const GES_META_VOLUME: &[u8] = b"volume\0";
196pub const GES_META_VOLUME_DEFAULT: c_double = 1.000000;
197pub const GES_MULTI_FILE_URI_PREFIX: &[u8] = b"multifile://\0";
198pub const GES_PADDING: c_int = 4;
199pub const GES_PADDING_LARGE: c_int = 20;
200pub const GES_TIMELINE_ELEMENT_NO_LAYER_PRIORITY: u32 = 4294967295;
201
202pub type GESMarkerFlags = c_uint;
204pub const GES_MARKER_FLAG_NONE: GESMarkerFlags = 0;
205pub const GES_MARKER_FLAG_SNAPPABLE: GESMarkerFlags = 1;
206
207pub type GESMetaFlag = c_uint;
208pub const GES_META_READABLE: GESMetaFlag = 1;
209pub const GES_META_WRITABLE: GESMetaFlag = 2;
210pub const GES_META_READ_WRITE: GESMetaFlag = 3;
211
212pub type GESPipelineFlags = c_uint;
213pub const GES_PIPELINE_MODE_PREVIEW_AUDIO: GESPipelineFlags = 1;
214pub const GES_PIPELINE_MODE_PREVIEW_VIDEO: GESPipelineFlags = 2;
215pub const GES_PIPELINE_MODE_PREVIEW: GESPipelineFlags = 3;
216pub const GES_PIPELINE_MODE_RENDER: GESPipelineFlags = 4;
217pub const GES_PIPELINE_MODE_SMART_RENDER: GESPipelineFlags = 8;
218
219pub type GESTrackType = c_uint;
220pub const GES_TRACK_TYPE_UNKNOWN: GESTrackType = 1;
221pub const GES_TRACK_TYPE_AUDIO: GESTrackType = 2;
222pub const GES_TRACK_TYPE_VIDEO: GESTrackType = 4;
223pub const GES_TRACK_TYPE_TEXT: GESTrackType = 8;
224pub const GES_TRACK_TYPE_CUSTOM: GESTrackType = 16;
225
226#[derive(Copy, Clone)]
228#[repr(C)]
229pub union GESClipClass_ABI {
230 pub _ges_reserved: [gpointer; 20],
231 pub abi: GESClipClass_ABI_abi,
232}
233
234impl ::std::fmt::Debug for GESClipClass_ABI {
235 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
236 f.debug_struct(&format!("GESClipClass_ABI @ {self:p}"))
237 .field("_ges_reserved", unsafe { &self._ges_reserved })
238 .field("abi", unsafe { &self.abi })
239 .finish()
240 }
241}
242
243#[derive(Copy, Clone)]
244#[repr(C)]
245pub union GESTrackElementClass_ABI {
246 pub _ges_reserved: [gpointer; 20],
247 pub abi: GESTrackElementClass_ABI_abi,
248}
249
250impl ::std::fmt::Debug for GESTrackElementClass_ABI {
251 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
252 f.debug_struct(&format!("GESTrackElementClass_ABI @ {self:p}"))
253 .field("_ges_reserved", unsafe { &self._ges_reserved })
254 .field("abi", unsafe { &self.abi })
255 .finish()
256 }
257}
258
259#[derive(Copy, Clone)]
260#[repr(C)]
261pub union GESVideoSourceClass_ABI {
262 pub _ges_reserved: [gpointer; 4],
263 pub abi: GESVideoSourceClass_ABI_abi,
264}
265
266impl ::std::fmt::Debug for GESVideoSourceClass_ABI {
267 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
268 f.debug_struct(&format!("GESVideoSourceClass_ABI @ {self:p}"))
269 .field("_ges_reserved", unsafe { &self._ges_reserved })
270 .field("abi", unsafe { &self.abi })
271 .finish()
272 }
273}
274
275pub type GESBaseEffectTimeTranslationFunc = Option<
277 unsafe extern "C" fn(
278 *mut GESBaseEffect,
279 gst::GstClockTime,
280 *mut glib::GHashTable,
281 gpointer,
282 ) -> gst::GstClockTime,
283>;
284pub type GESCreateElementForGapFunc =
285 Option<unsafe extern "C" fn(*mut GESTrack) -> *mut gst::GstElement>;
286pub type GESCreateTrackElementFunc =
287 Option<unsafe extern "C" fn(*mut GESClip, GESTrackType) -> *mut GESTrackElement>;
288pub type GESCreateTrackElementsFunc =
289 Option<unsafe extern "C" fn(*mut GESClip, GESTrackType) -> *mut glib::GList>;
290pub type GESExtractableCheckId =
291 Option<unsafe extern "C" fn(GType, *const c_char, *mut *mut glib::GError) -> *mut c_char>;
292pub type GESFillTrackElementFunc = Option<
293 unsafe extern "C" fn(*mut GESClip, *mut GESTrackElement, *mut gst::GstElement) -> gboolean,
294>;
295pub type GESFormatterCanLoadURIMethod = Option<
296 unsafe extern "C" fn(*mut GESFormatter, *const c_char, *mut *mut glib::GError) -> gboolean,
297>;
298pub type GESFormatterLoadFromURIMethod = Option<
299 unsafe extern "C" fn(
300 *mut GESFormatter,
301 *mut GESTimeline,
302 *const c_char,
303 *mut *mut glib::GError,
304 ) -> gboolean,
305>;
306pub type GESFormatterSaveToURIMethod = Option<
307 unsafe extern "C" fn(
308 *mut GESFormatter,
309 *mut GESTimeline,
310 *const c_char,
311 gboolean,
312 *mut *mut glib::GError,
313 ) -> gboolean,
314>;
315pub type GESMetaForeachFunc = Option<
316 unsafe extern "C" fn(*const GESMetaContainer, *const c_char, *const gobject::GValue, gpointer),
317>;
318
319#[derive(Copy, Clone)]
321#[repr(C)]
322pub struct GESAssetClass {
323 pub parent: gobject::GObjectClass,
324 pub start_loading: Option<
325 unsafe extern "C" fn(*mut GESAsset, *mut *mut glib::GError) -> GESAssetLoadingReturn,
326 >,
327 pub extract:
328 Option<unsafe extern "C" fn(*mut GESAsset, *mut *mut glib::GError) -> *mut GESExtractable>,
329 pub inform_proxy: Option<unsafe extern "C" fn(*mut GESAsset, *const c_char)>,
330 pub proxied: Option<unsafe extern "C" fn(*mut GESAsset, *mut GESAsset)>,
331 pub request_id_update: Option<
332 unsafe extern "C" fn(*mut GESAsset, *mut *mut c_char, *mut glib::GError) -> gboolean,
333 >,
334 pub _ges_reserved: [gpointer; 4],
335}
336
337impl ::std::fmt::Debug for GESAssetClass {
338 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
339 f.debug_struct(&format!("GESAssetClass @ {self:p}"))
340 .field("parent", &self.parent)
341 .field("start_loading", &self.start_loading)
342 .field("extract", &self.extract)
343 .field("inform_proxy", &self.inform_proxy)
344 .field("proxied", &self.proxied)
345 .field("request_id_update", &self.request_id_update)
346 .field("_ges_reserved", &self._ges_reserved)
347 .finish()
348 }
349}
350
351#[repr(C)]
352#[allow(dead_code)]
353pub struct _GESAssetPrivate {
354 _data: [u8; 0],
355 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
356}
357
358pub type GESAssetPrivate = _GESAssetPrivate;
359
360#[derive(Copy, Clone)]
361#[repr(C)]
362pub struct GESAudioSourceClass {
363 pub parent_class: GESSourceClass,
364 pub create_source: Option<unsafe extern "C" fn(*mut GESTrackElement) -> *mut gst::GstElement>,
365 pub _ges_reserved: [gpointer; 4],
366}
367
368impl ::std::fmt::Debug for GESAudioSourceClass {
369 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
370 f.debug_struct(&format!("GESAudioSourceClass @ {self:p}"))
371 .field("create_source", &self.create_source)
372 .finish()
373 }
374}
375
376#[repr(C)]
377#[allow(dead_code)]
378pub struct _GESAudioSourcePrivate {
379 _data: [u8; 0],
380 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
381}
382
383pub type GESAudioSourcePrivate = _GESAudioSourcePrivate;
384
385#[derive(Copy, Clone)]
386#[repr(C)]
387pub struct GESAudioTestSourceClass {
388 pub parent_class: GESAudioSourceClass,
389 pub _ges_reserved: [gpointer; 4],
390}
391
392impl ::std::fmt::Debug for GESAudioTestSourceClass {
393 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
394 f.debug_struct(&format!("GESAudioTestSourceClass @ {self:p}"))
395 .finish()
396 }
397}
398
399#[repr(C)]
400#[allow(dead_code)]
401pub struct _GESAudioTestSourcePrivate {
402 _data: [u8; 0],
403 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
404}
405
406pub type GESAudioTestSourcePrivate = _GESAudioTestSourcePrivate;
407
408#[derive(Copy, Clone)]
409#[repr(C)]
410pub struct GESAudioTrackClass {
411 pub parent_class: GESTrackClass,
412 pub _ges_reserved: [gpointer; 4],
413}
414
415impl ::std::fmt::Debug for GESAudioTrackClass {
416 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
417 f.debug_struct(&format!("GESAudioTrackClass @ {self:p}"))
418 .field("parent_class", &self.parent_class)
419 .field("_ges_reserved", &self._ges_reserved)
420 .finish()
421 }
422}
423
424#[repr(C)]
425#[allow(dead_code)]
426pub struct _GESAudioTrackPrivate {
427 _data: [u8; 0],
428 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
429}
430
431pub type GESAudioTrackPrivate = _GESAudioTrackPrivate;
432
433#[derive(Copy, Clone)]
434#[repr(C)]
435pub struct GESAudioTransitionClass {
436 pub parent_class: GESTransitionClass,
437 pub _ges_reserved: [gpointer; 4],
438}
439
440impl ::std::fmt::Debug for GESAudioTransitionClass {
441 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
442 f.debug_struct(&format!("GESAudioTransitionClass @ {self:p}"))
443 .field("parent_class", &self.parent_class)
444 .field("_ges_reserved", &self._ges_reserved)
445 .finish()
446 }
447}
448
449#[repr(C)]
450#[allow(dead_code)]
451pub struct _GESAudioTransitionPrivate {
452 _data: [u8; 0],
453 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
454}
455
456pub type GESAudioTransitionPrivate = _GESAudioTransitionPrivate;
457
458#[derive(Copy, Clone)]
459#[repr(C)]
460pub struct GESAudioUriSourceClass {
461 pub parent_class: GESAudioSourceClass,
462 pub _ges_reserved: [gpointer; 4],
463}
464
465impl ::std::fmt::Debug for GESAudioUriSourceClass {
466 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
467 f.debug_struct(&format!("GESAudioUriSourceClass @ {self:p}"))
468 .finish()
469 }
470}
471
472#[repr(C)]
473#[allow(dead_code)]
474pub struct _GESAudioUriSourcePrivate {
475 _data: [u8; 0],
476 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
477}
478
479pub type GESAudioUriSourcePrivate = _GESAudioUriSourcePrivate;
480
481#[derive(Copy, Clone)]
482#[repr(C)]
483pub struct GESBaseEffectClass {
484 pub parent_class: GESOperationClass,
485 pub _ges_reserved: [gpointer; 4],
486}
487
488impl ::std::fmt::Debug for GESBaseEffectClass {
489 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
490 f.debug_struct(&format!("GESBaseEffectClass @ {self:p}"))
491 .finish()
492 }
493}
494
495#[derive(Copy, Clone)]
496#[repr(C)]
497pub struct GESBaseEffectClipClass {
498 pub parent_class: GESOperationClipClass,
499 pub _ges_reserved: [gpointer; 4],
500}
501
502impl ::std::fmt::Debug for GESBaseEffectClipClass {
503 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
504 f.debug_struct(&format!("GESBaseEffectClipClass @ {self:p}"))
505 .finish()
506 }
507}
508
509#[repr(C)]
510#[allow(dead_code)]
511pub struct _GESBaseEffectClipPrivate {
512 _data: [u8; 0],
513 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
514}
515
516pub type GESBaseEffectClipPrivate = _GESBaseEffectClipPrivate;
517
518#[repr(C)]
519#[allow(dead_code)]
520pub struct _GESBaseEffectPrivate {
521 _data: [u8; 0],
522 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
523}
524
525pub type GESBaseEffectPrivate = _GESBaseEffectPrivate;
526
527#[derive(Copy, Clone)]
528#[repr(C)]
529pub struct GESBaseTransitionClipClass {
530 pub parent_class: GESOperationClipClass,
531 pub _ges_reserved: [gpointer; 4],
532}
533
534impl ::std::fmt::Debug for GESBaseTransitionClipClass {
535 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
536 f.debug_struct(&format!("GESBaseTransitionClipClass @ {self:p}"))
537 .finish()
538 }
539}
540
541#[repr(C)]
542#[allow(dead_code)]
543pub struct _GESBaseTransitionClipPrivate {
544 _data: [u8; 0],
545 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
546}
547
548pub type GESBaseTransitionClipPrivate = _GESBaseTransitionClipPrivate;
549
550#[derive(Copy, Clone)]
551#[repr(C)]
552pub struct GESBaseXmlFormatterClass {
553 pub parent: GESFormatterClass,
554 pub content_parser: glib::GMarkupParser,
555 pub save: Option<
556 unsafe extern "C" fn(
557 *mut GESFormatter,
558 *mut GESTimeline,
559 *mut *mut glib::GError,
560 ) -> *mut glib::GString,
561 >,
562 pub _ges_reserved: [gpointer; 4],
563}
564
565impl ::std::fmt::Debug for GESBaseXmlFormatterClass {
566 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
567 f.debug_struct(&format!("GESBaseXmlFormatterClass @ {self:p}"))
568 .field("parent", &self.parent)
569 .field("content_parser", &self.content_parser)
570 .field("save", &self.save)
571 .field("_ges_reserved", &self._ges_reserved)
572 .finish()
573 }
574}
575
576#[repr(C)]
577#[allow(dead_code)]
578pub struct _GESBaseXmlFormatterPrivate {
579 _data: [u8; 0],
580 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
581}
582
583pub type GESBaseXmlFormatterPrivate = _GESBaseXmlFormatterPrivate;
584
585#[derive(Copy, Clone)]
586#[repr(C)]
587pub struct GESClipAssetClass {
588 pub parent: GESAssetClass,
589 pub get_natural_framerate:
590 Option<unsafe extern "C" fn(*mut GESClipAsset, *mut c_int, *mut c_int) -> gboolean>,
591 pub _ges_reserved: [gpointer; 3],
592}
593
594impl ::std::fmt::Debug for GESClipAssetClass {
595 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
596 f.debug_struct(&format!("GESClipAssetClass @ {self:p}"))
597 .field("parent", &self.parent)
598 .field("get_natural_framerate", &self.get_natural_framerate)
599 .field("_ges_reserved", &self._ges_reserved)
600 .finish()
601 }
602}
603
604#[repr(C)]
605#[allow(dead_code)]
606pub struct _GESClipAssetPrivate {
607 _data: [u8; 0],
608 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
609}
610
611pub type GESClipAssetPrivate = _GESClipAssetPrivate;
612
613#[derive(Copy, Clone)]
614#[repr(C)]
615pub struct GESClipClass {
616 pub parent_class: GESContainerClass,
617 pub create_track_element: GESCreateTrackElementFunc,
618 pub create_track_elements: GESCreateTrackElementsFunc,
619 pub ABI: GESClipClass_ABI,
620}
621
622impl ::std::fmt::Debug for GESClipClass {
623 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
624 f.debug_struct(&format!("GESClipClass @ {self:p}"))
625 .field("create_track_element", &self.create_track_element)
626 .field("create_track_elements", &self.create_track_elements)
627 .field("ABI", &self.ABI)
628 .finish()
629 }
630}
631
632#[derive(Copy, Clone)]
633#[repr(C)]
634pub struct GESClipClass_ABI_abi {
635 pub can_add_effects: gboolean,
636}
637
638impl ::std::fmt::Debug for GESClipClass_ABI_abi {
639 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
640 f.debug_struct(&format!("GESClipClass_ABI_abi @ {self:p}"))
641 .field("can_add_effects", &self.can_add_effects)
642 .finish()
643 }
644}
645
646#[repr(C)]
647#[allow(dead_code)]
648pub struct _GESClipPrivate {
649 _data: [u8; 0],
650 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
651}
652
653pub type GESClipPrivate = _GESClipPrivate;
654
655#[derive(Copy, Clone)]
656#[repr(C)]
657pub struct GESCommandLineFormatterClass {
658 pub parent_class: GESFormatterClass,
659}
660
661impl ::std::fmt::Debug for GESCommandLineFormatterClass {
662 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
663 f.debug_struct(&format!("GESCommandLineFormatterClass @ {self:p}"))
664 .field("parent_class", &self.parent_class)
665 .finish()
666 }
667}
668
669#[repr(C)]
670#[allow(dead_code)]
671pub struct _GESCommandLineFormatterPrivate {
672 _data: [u8; 0],
673 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
674}
675
676pub type GESCommandLineFormatterPrivate = _GESCommandLineFormatterPrivate;
677
678#[derive(Copy, Clone)]
679#[repr(C)]
680pub struct GESContainerClass {
681 pub parent_class: GESTimelineElementClass,
682 pub child_added: Option<unsafe extern "C" fn(*mut GESContainer, *mut GESTimelineElement)>,
683 pub child_removed: Option<unsafe extern "C" fn(*mut GESContainer, *mut GESTimelineElement)>,
684 pub add_child:
685 Option<unsafe extern "C" fn(*mut GESContainer, *mut GESTimelineElement) -> gboolean>,
686 pub remove_child:
687 Option<unsafe extern "C" fn(*mut GESContainer, *mut GESTimelineElement) -> gboolean>,
688 pub ungroup: Option<unsafe extern "C" fn(*mut GESContainer, gboolean) -> *mut glib::GList>,
689 pub group: Option<unsafe extern "C" fn(*mut glib::GList) -> *mut GESContainer>,
690 pub edit: Option<
691 unsafe extern "C" fn(
692 *mut GESContainer,
693 *mut glib::GList,
694 c_int,
695 GESEditMode,
696 GESEdge,
697 u64,
698 ) -> gboolean,
699 >,
700 pub grouping_priority: c_uint,
701 pub _ges_reserved: [gpointer; 20],
702}
703
704impl ::std::fmt::Debug for GESContainerClass {
705 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
706 f.debug_struct(&format!("GESContainerClass @ {self:p}"))
707 .field("child_added", &self.child_added)
708 .field("child_removed", &self.child_removed)
709 .field("add_child", &self.add_child)
710 .field("remove_child", &self.remove_child)
711 .field("ungroup", &self.ungroup)
712 .field("group", &self.group)
713 .field("edit", &self.edit)
714 .finish()
715 }
716}
717
718#[repr(C)]
719#[allow(dead_code)]
720pub struct _GESContainerPrivate {
721 _data: [u8; 0],
722 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
723}
724
725pub type GESContainerPrivate = _GESContainerPrivate;
726
727#[derive(Copy, Clone)]
728#[repr(C)]
729pub struct GESDiscovererManagerClass {
730 pub parent_class: gobject::GObjectClass,
731}
732
733impl ::std::fmt::Debug for GESDiscovererManagerClass {
734 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
735 f.debug_struct(&format!("GESDiscovererManagerClass @ {self:p}"))
736 .field("parent_class", &self.parent_class)
737 .finish()
738 }
739}
740
741#[repr(C)]
742#[allow(dead_code)]
743pub struct _GESDiscovererManagerPrivate {
744 _data: [u8; 0],
745 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
746}
747
748pub type GESDiscovererManagerPrivate = _GESDiscovererManagerPrivate;
749
750#[derive(Copy, Clone)]
751#[repr(C)]
752pub struct GESEffectAssetClass {
753 pub parent_class: GESTrackElementAssetClass,
754 pub _ges_reserved: [gpointer; 4],
755}
756
757impl ::std::fmt::Debug for GESEffectAssetClass {
758 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
759 f.debug_struct(&format!("GESEffectAssetClass @ {self:p}"))
760 .field("parent_class", &self.parent_class)
761 .field("_ges_reserved", &self._ges_reserved)
762 .finish()
763 }
764}
765
766#[repr(C)]
767#[allow(dead_code)]
768pub struct _GESEffectAssetPrivate {
769 _data: [u8; 0],
770 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
771}
772
773pub type GESEffectAssetPrivate = _GESEffectAssetPrivate;
774
775#[derive(Copy, Clone)]
776#[repr(C)]
777pub struct GESEffectClass {
778 pub parent_class: GESBaseEffectClass,
779 pub rate_properties: *mut glib::GList,
780 pub _ges_reserved: [gpointer; 4],
781}
782
783impl ::std::fmt::Debug for GESEffectClass {
784 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
785 f.debug_struct(&format!("GESEffectClass @ {self:p}"))
786 .finish()
787 }
788}
789
790#[derive(Copy, Clone)]
791#[repr(C)]
792pub struct GESEffectClipClass {
793 pub parent_class: GESBaseEffectClipClass,
794 pub _ges_reserved: [gpointer; 4],
795}
796
797impl ::std::fmt::Debug for GESEffectClipClass {
798 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
799 f.debug_struct(&format!("GESEffectClipClass @ {self:p}"))
800 .finish()
801 }
802}
803
804#[repr(C)]
805#[allow(dead_code)]
806pub struct _GESEffectClipPrivate {
807 _data: [u8; 0],
808 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
809}
810
811pub type GESEffectClipPrivate = _GESEffectClipPrivate;
812
813#[repr(C)]
814#[allow(dead_code)]
815pub struct _GESEffectPrivate {
816 _data: [u8; 0],
817 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
818}
819
820pub type GESEffectPrivate = _GESEffectPrivate;
821
822#[derive(Copy, Clone)]
823#[repr(C)]
824pub struct GESExtractableInterface {
825 pub parent: gobject::GTypeInterface,
826 pub asset_type: GType,
827 pub check_id: GESExtractableCheckId,
828 pub can_update_asset: gboolean,
829 pub set_asset: Option<unsafe extern "C" fn(*mut GESExtractable, *mut GESAsset)>,
830 pub set_asset_full:
831 Option<unsafe extern "C" fn(*mut GESExtractable, *mut GESAsset) -> gboolean>,
832 pub get_parameters_from_id:
833 Option<unsafe extern "C" fn(*const c_char, *mut c_uint) -> *mut gobject::GParameter>,
834 pub get_id: Option<unsafe extern "C" fn(*mut GESExtractable) -> *mut c_char>,
835 pub get_real_extractable_type: Option<unsafe extern "C" fn(GType, *const c_char) -> GType>,
836 pub register_metas: Option<
837 unsafe extern "C" fn(
838 *mut GESExtractableInterface,
839 *mut gobject::GObjectClass,
840 *mut GESAsset,
841 ) -> gboolean,
842 >,
843 pub _ges_reserved: [gpointer; 4],
844}
845
846impl ::std::fmt::Debug for GESExtractableInterface {
847 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
848 f.debug_struct(&format!("GESExtractableInterface @ {self:p}"))
849 .field("parent", &self.parent)
850 .field("asset_type", &self.asset_type)
851 .field("check_id", &self.check_id)
852 .field("can_update_asset", &self.can_update_asset)
853 .field("set_asset", &self.set_asset)
854 .field("set_asset_full", &self.set_asset_full)
855 .field("get_parameters_from_id", &self.get_parameters_from_id)
856 .field("get_id", &self.get_id)
857 .field("get_real_extractable_type", &self.get_real_extractable_type)
858 .field("register_metas", &self.register_metas)
859 .field("_ges_reserved", &self._ges_reserved)
860 .finish()
861 }
862}
863
864#[derive(Copy, Clone)]
865#[repr(C)]
866pub struct GESFormatterClass {
867 pub parent_class: gobject::GInitiallyUnownedClass,
868 pub can_load_uri: GESFormatterCanLoadURIMethod,
869 pub load_from_uri: GESFormatterLoadFromURIMethod,
870 pub save_to_uri: GESFormatterSaveToURIMethod,
871 pub name: *mut c_char,
872 pub description: *mut c_char,
873 pub extension: *mut c_char,
874 pub mimetype: *mut c_char,
875 pub version: c_double,
876 pub rank: gst::GstRank,
877 pub _ges_reserved: [gpointer; 4],
878}
879
880impl ::std::fmt::Debug for GESFormatterClass {
881 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
882 f.debug_struct(&format!("GESFormatterClass @ {self:p}"))
883 .field("parent_class", &self.parent_class)
884 .field("can_load_uri", &self.can_load_uri)
885 .field("load_from_uri", &self.load_from_uri)
886 .field("save_to_uri", &self.save_to_uri)
887 .finish()
888 }
889}
890
891#[repr(C)]
892#[allow(dead_code)]
893pub struct _GESFormatterPrivate {
894 _data: [u8; 0],
895 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
896}
897
898pub type GESFormatterPrivate = _GESFormatterPrivate;
899
900#[derive(Copy, Clone)]
901#[repr(C)]
902pub struct GESFrameCompositionMeta {
903 pub meta: gst::GstMeta,
904 pub alpha: c_double,
905 pub posx: c_double,
906 pub posy: c_double,
907 pub height: c_double,
908 pub width: c_double,
909 pub zorder: c_uint,
910 pub operator: c_int,
911}
912
913impl ::std::fmt::Debug for GESFrameCompositionMeta {
914 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
915 f.debug_struct(&format!("GESFrameCompositionMeta @ {self:p}"))
916 .field("meta", &self.meta)
917 .field("alpha", &self.alpha)
918 .field("posx", &self.posx)
919 .field("posy", &self.posy)
920 .field("height", &self.height)
921 .field("width", &self.width)
922 .field("zorder", &self.zorder)
923 .field("operator", &self.operator)
924 .finish()
925 }
926}
927
928#[derive(Copy, Clone)]
929#[repr(C)]
930pub struct GESGroupClass {
931 pub parent_class: GESContainerClass,
932 pub _ges_reserved: [gpointer; 4],
933}
934
935impl ::std::fmt::Debug for GESGroupClass {
936 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
937 f.debug_struct(&format!("GESGroupClass @ {self:p}"))
938 .field("parent_class", &self.parent_class)
939 .field("_ges_reserved", &self._ges_reserved)
940 .finish()
941 }
942}
943
944#[repr(C)]
945#[allow(dead_code)]
946pub struct _GESGroupPrivate {
947 _data: [u8; 0],
948 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
949}
950
951pub type GESGroupPrivate = _GESGroupPrivate;
952
953#[derive(Copy, Clone)]
954#[repr(C)]
955pub struct GESImageSourceClass {
956 pub parent_class: GESVideoSourceClass,
957 pub _ges_reserved: [gpointer; 4],
958}
959
960impl ::std::fmt::Debug for GESImageSourceClass {
961 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
962 f.debug_struct(&format!("GESImageSourceClass @ {self:p}"))
963 .field("parent_class", &self.parent_class)
964 .field("_ges_reserved", &self._ges_reserved)
965 .finish()
966 }
967}
968
969#[repr(C)]
970#[allow(dead_code)]
971pub struct _GESImageSourcePrivate {
972 _data: [u8; 0],
973 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
974}
975
976pub type GESImageSourcePrivate = _GESImageSourcePrivate;
977
978#[derive(Copy, Clone)]
979#[repr(C)]
980pub struct GESLayerClass {
981 pub parent_class: gobject::GInitiallyUnownedClass,
982 pub get_objects: Option<unsafe extern "C" fn(*mut GESLayer) -> *mut glib::GList>,
983 pub object_added: Option<unsafe extern "C" fn(*mut GESLayer, *mut GESClip)>,
984 pub object_removed: Option<unsafe extern "C" fn(*mut GESLayer, *mut GESClip)>,
985 pub _ges_reserved: [gpointer; 4],
986}
987
988impl ::std::fmt::Debug for GESLayerClass {
989 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
990 f.debug_struct(&format!("GESLayerClass @ {self:p}"))
991 .field("get_objects", &self.get_objects)
992 .field("object_added", &self.object_added)
993 .field("object_removed", &self.object_removed)
994 .finish()
995 }
996}
997
998#[repr(C)]
999#[allow(dead_code)]
1000pub struct _GESLayerPrivate {
1001 _data: [u8; 0],
1002 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1003}
1004
1005pub type GESLayerPrivate = _GESLayerPrivate;
1006
1007#[derive(Copy, Clone)]
1008#[repr(C)]
1009pub struct GESMarkerClass {
1010 pub parent_class: gobject::GObjectClass,
1011}
1012
1013impl ::std::fmt::Debug for GESMarkerClass {
1014 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1015 f.debug_struct(&format!("GESMarkerClass @ {self:p}"))
1016 .field("parent_class", &self.parent_class)
1017 .finish()
1018 }
1019}
1020
1021#[derive(Copy, Clone)]
1022#[repr(C)]
1023pub struct GESMarkerListClass {
1024 pub parent_class: gobject::GObjectClass,
1025}
1026
1027impl ::std::fmt::Debug for GESMarkerListClass {
1028 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1029 f.debug_struct(&format!("GESMarkerListClass @ {self:p}"))
1030 .field("parent_class", &self.parent_class)
1031 .finish()
1032 }
1033}
1034
1035#[derive(Copy, Clone)]
1036#[repr(C)]
1037pub struct GESMetaContainerInterface {
1038 pub parent_iface: gobject::GTypeInterface,
1039 pub _ges_reserved: [gpointer; 4],
1040}
1041
1042impl ::std::fmt::Debug for GESMetaContainerInterface {
1043 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1044 f.debug_struct(&format!("GESMetaContainerInterface @ {self:p}"))
1045 .field("parent_iface", &self.parent_iface)
1046 .field("_ges_reserved", &self._ges_reserved)
1047 .finish()
1048 }
1049}
1050
1051#[derive(Copy, Clone)]
1052#[repr(C)]
1053pub struct GESMultiFileSourceClass {
1054 pub parent_class: GESVideoSourceClass,
1055 pub _ges_reserved: [gpointer; 4],
1056}
1057
1058impl ::std::fmt::Debug for GESMultiFileSourceClass {
1059 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1060 f.debug_struct(&format!("GESMultiFileSourceClass @ {self:p}"))
1061 .field("parent_class", &self.parent_class)
1062 .field("_ges_reserved", &self._ges_reserved)
1063 .finish()
1064 }
1065}
1066
1067#[repr(C)]
1068#[allow(dead_code)]
1069pub struct _GESMultiFileSourcePrivate {
1070 _data: [u8; 0],
1071 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1072}
1073
1074pub type GESMultiFileSourcePrivate = _GESMultiFileSourcePrivate;
1075
1076#[derive(Copy, Clone)]
1077#[repr(C)]
1078pub struct GESOperationClass {
1079 pub parent_class: GESTrackElementClass,
1080 pub _ges_reserved: [gpointer; 4],
1081}
1082
1083impl ::std::fmt::Debug for GESOperationClass {
1084 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1085 f.debug_struct(&format!("GESOperationClass @ {self:p}"))
1086 .finish()
1087 }
1088}
1089
1090#[derive(Copy, Clone)]
1091#[repr(C)]
1092pub struct GESOperationClipClass {
1093 pub parent_class: GESClipClass,
1094 pub _ges_reserved: [gpointer; 4],
1095}
1096
1097impl ::std::fmt::Debug for GESOperationClipClass {
1098 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1099 f.debug_struct(&format!("GESOperationClipClass @ {self:p}"))
1100 .finish()
1101 }
1102}
1103
1104#[repr(C)]
1105#[allow(dead_code)]
1106pub struct _GESOperationClipPrivate {
1107 _data: [u8; 0],
1108 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1109}
1110
1111pub type GESOperationClipPrivate = _GESOperationClipPrivate;
1112
1113#[repr(C)]
1114#[allow(dead_code)]
1115pub struct _GESOperationPrivate {
1116 _data: [u8; 0],
1117 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1118}
1119
1120pub type GESOperationPrivate = _GESOperationPrivate;
1121
1122#[derive(Copy, Clone)]
1123#[repr(C)]
1124pub struct GESOverlayClipClass {
1125 pub parent_class: GESOperationClipClass,
1126 pub _ges_reserved: [gpointer; 4],
1127}
1128
1129impl ::std::fmt::Debug for GESOverlayClipClass {
1130 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1131 f.debug_struct(&format!("GESOverlayClipClass @ {self:p}"))
1132 .field("parent_class", &self.parent_class)
1133 .finish()
1134 }
1135}
1136
1137#[repr(C)]
1138#[allow(dead_code)]
1139pub struct _GESOverlayClipPrivate {
1140 _data: [u8; 0],
1141 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1142}
1143
1144pub type GESOverlayClipPrivate = _GESOverlayClipPrivate;
1145
1146#[derive(Copy, Clone)]
1147#[repr(C)]
1148pub struct GESPipelineClass {
1149 pub parent_class: gst::GstPipelineClass,
1150 pub _ges_reserved: [gpointer; 4],
1151}
1152
1153impl ::std::fmt::Debug for GESPipelineClass {
1154 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1155 f.debug_struct(&format!("GESPipelineClass @ {self:p}"))
1156 .finish()
1157 }
1158}
1159
1160#[repr(C)]
1161#[allow(dead_code)]
1162pub struct _GESPipelinePrivate {
1163 _data: [u8; 0],
1164 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1165}
1166
1167pub type GESPipelinePrivate = _GESPipelinePrivate;
1168
1169#[repr(C)]
1170#[allow(dead_code)]
1171pub struct _GESPitiviFormatterPrivate {
1172 _data: [u8; 0],
1173 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1174}
1175
1176pub type GESPitiviFormatterPrivate = _GESPitiviFormatterPrivate;
1177
1178#[derive(Copy, Clone)]
1179#[repr(C)]
1180pub struct GESProjectClass {
1181 pub parent_class: GESAssetClass,
1182 pub asset_added: Option<unsafe extern "C" fn(*mut GESProject, *mut GESAsset)>,
1183 pub asset_loading: Option<unsafe extern "C" fn(*mut GESProject, *mut GESAsset)>,
1184 pub asset_removed: Option<unsafe extern "C" fn(*mut GESProject, *mut GESAsset)>,
1185 pub missing_uri: Option<
1186 unsafe extern "C" fn(*mut GESProject, *mut glib::GError, *mut GESAsset) -> *mut c_char,
1187 >,
1188 pub loading_error: Option<
1189 unsafe extern "C" fn(*mut GESProject, *mut glib::GError, *mut c_char, GType) -> gboolean,
1190 >,
1191 pub loaded: Option<unsafe extern "C" fn(*mut GESProject, *mut GESTimeline) -> gboolean>,
1192 pub loading: Option<unsafe extern "C" fn(*mut GESProject, *mut GESTimeline)>,
1193 pub _ges_reserved: [gpointer; 3],
1194}
1195
1196impl ::std::fmt::Debug for GESProjectClass {
1197 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1198 f.debug_struct(&format!("GESProjectClass @ {self:p}"))
1199 .field("parent_class", &self.parent_class)
1200 .field("asset_added", &self.asset_added)
1201 .field("asset_loading", &self.asset_loading)
1202 .field("asset_removed", &self.asset_removed)
1203 .field("missing_uri", &self.missing_uri)
1204 .field("loading_error", &self.loading_error)
1205 .field("loaded", &self.loaded)
1206 .field("loading", &self.loading)
1207 .field("_ges_reserved", &self._ges_reserved)
1208 .finish()
1209 }
1210}
1211
1212#[repr(C)]
1213#[allow(dead_code)]
1214pub struct _GESProjectPrivate {
1215 _data: [u8; 0],
1216 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1217}
1218
1219pub type GESProjectPrivate = _GESProjectPrivate;
1220
1221#[derive(Copy, Clone)]
1222#[repr(C)]
1223pub struct GESSourceClass {
1224 pub parent_class: GESTrackElementClass,
1225 pub select_pad: Option<unsafe extern "C" fn(*mut GESSource, *mut gst::GstPad) -> gboolean>,
1226 pub create_source: Option<unsafe extern "C" fn(*mut GESSource) -> *mut gst::GstElement>,
1227 pub _ges_reserved: [gpointer; 2],
1228}
1229
1230impl ::std::fmt::Debug for GESSourceClass {
1231 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1232 f.debug_struct(&format!("GESSourceClass @ {self:p}"))
1233 .field("select_pad", &self.select_pad)
1234 .field("create_source", &self.create_source)
1235 .finish()
1236 }
1237}
1238
1239#[derive(Copy, Clone)]
1240#[repr(C)]
1241pub struct GESSourceClipAssetClass {
1242 pub parent_class: GESClipAssetClass,
1243}
1244
1245impl ::std::fmt::Debug for GESSourceClipAssetClass {
1246 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1247 f.debug_struct(&format!("GESSourceClipAssetClass @ {self:p}"))
1248 .field("parent_class", &self.parent_class)
1249 .finish()
1250 }
1251}
1252
1253#[derive(Copy, Clone)]
1254#[repr(C)]
1255pub struct GESSourceClipClass {
1256 pub parent_class: GESClipClass,
1257 pub _ges_reserved: [gpointer; 4],
1258}
1259
1260impl ::std::fmt::Debug for GESSourceClipClass {
1261 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1262 f.debug_struct(&format!("GESSourceClipClass @ {self:p}"))
1263 .finish()
1264 }
1265}
1266
1267#[repr(C)]
1268#[allow(dead_code)]
1269pub struct _GESSourceClipPrivate {
1270 _data: [u8; 0],
1271 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1272}
1273
1274pub type GESSourceClipPrivate = _GESSourceClipPrivate;
1275
1276#[repr(C)]
1277#[allow(dead_code)]
1278pub struct _GESSourcePrivate {
1279 _data: [u8; 0],
1280 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1281}
1282
1283pub type GESSourcePrivate = _GESSourcePrivate;
1284
1285#[derive(Copy, Clone)]
1286#[repr(C)]
1287pub struct GESTestClipClass {
1288 pub parent_class: GESSourceClipClass,
1289 pub _ges_reserved: [gpointer; 4],
1290}
1291
1292impl ::std::fmt::Debug for GESTestClipClass {
1293 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1294 f.debug_struct(&format!("GESTestClipClass @ {self:p}"))
1295 .finish()
1296 }
1297}
1298
1299#[repr(C)]
1300#[allow(dead_code)]
1301pub struct _GESTestClipPrivate {
1302 _data: [u8; 0],
1303 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1304}
1305
1306pub type GESTestClipPrivate = _GESTestClipPrivate;
1307
1308#[derive(Copy, Clone)]
1309#[repr(C)]
1310pub struct GESTextOverlayClass {
1311 pub parent_class: GESOperationClass,
1312 pub _ges_reserved: [gpointer; 4],
1313}
1314
1315impl ::std::fmt::Debug for GESTextOverlayClass {
1316 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1317 f.debug_struct(&format!("GESTextOverlayClass @ {self:p}"))
1318 .field("parent_class", &self.parent_class)
1319 .finish()
1320 }
1321}
1322
1323#[derive(Copy, Clone)]
1324#[repr(C)]
1325pub struct GESTextOverlayClipClass {
1326 pub parent_class: GESOverlayClipClass,
1327 pub _ges_reserved: [gpointer; 4],
1328}
1329
1330impl ::std::fmt::Debug for GESTextOverlayClipClass {
1331 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1332 f.debug_struct(&format!("GESTextOverlayClipClass @ {self:p}"))
1333 .finish()
1334 }
1335}
1336
1337#[repr(C)]
1338#[allow(dead_code)]
1339pub struct _GESTextOverlayClipPrivate {
1340 _data: [u8; 0],
1341 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1342}
1343
1344pub type GESTextOverlayClipPrivate = _GESTextOverlayClipPrivate;
1345
1346#[repr(C)]
1347#[allow(dead_code)]
1348pub struct _GESTextOverlayPrivate {
1349 _data: [u8; 0],
1350 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1351}
1352
1353pub type GESTextOverlayPrivate = _GESTextOverlayPrivate;
1354
1355#[derive(Copy, Clone)]
1356#[repr(C)]
1357pub struct GESTimelineClass {
1358 pub parent_class: gst::GstBinClass,
1359 pub track_added: Option<unsafe extern "C" fn(*mut GESTimeline, *mut GESTrack)>,
1360 pub track_removed: Option<unsafe extern "C" fn(*mut GESTimeline, *mut GESTrack)>,
1361 pub layer_added: Option<unsafe extern "C" fn(*mut GESTimeline, *mut GESLayer)>,
1362 pub layer_removed: Option<unsafe extern "C" fn(*mut GESTimeline, *mut GESLayer)>,
1363 pub group_added: Option<unsafe extern "C" fn(*mut GESTimeline, *mut GESGroup)>,
1364 pub group_removed:
1365 Option<unsafe extern "C" fn(*mut GESTimeline, *mut GESGroup, *mut glib::GPtrArray)>,
1366 pub _ges_reserved: [gpointer; 4],
1367}
1368
1369impl ::std::fmt::Debug for GESTimelineClass {
1370 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1371 f.debug_struct(&format!("GESTimelineClass @ {self:p}"))
1372 .field("parent_class", &self.parent_class)
1373 .field("track_added", &self.track_added)
1374 .field("track_removed", &self.track_removed)
1375 .field("layer_added", &self.layer_added)
1376 .field("layer_removed", &self.layer_removed)
1377 .field("group_added", &self.group_added)
1378 .field("group_removed", &self.group_removed)
1379 .finish()
1380 }
1381}
1382
1383#[derive(Copy, Clone)]
1384#[repr(C)]
1385pub struct GESTimelineElementClass {
1386 pub parent_class: gobject::GInitiallyUnownedClass,
1387 pub set_parent:
1388 Option<unsafe extern "C" fn(*mut GESTimelineElement, *mut GESTimelineElement) -> gboolean>,
1389 pub set_start:
1390 Option<unsafe extern "C" fn(*mut GESTimelineElement, gst::GstClockTime) -> gboolean>,
1391 pub set_inpoint:
1392 Option<unsafe extern "C" fn(*mut GESTimelineElement, gst::GstClockTime) -> gboolean>,
1393 pub set_duration:
1394 Option<unsafe extern "C" fn(*mut GESTimelineElement, gst::GstClockTime) -> gboolean>,
1395 pub set_max_duration:
1396 Option<unsafe extern "C" fn(*mut GESTimelineElement, gst::GstClockTime) -> gboolean>,
1397 pub set_priority: Option<unsafe extern "C" fn(*mut GESTimelineElement, u32) -> gboolean>,
1398 pub ripple: Option<unsafe extern "C" fn(*mut GESTimelineElement, u64) -> gboolean>,
1399 pub ripple_end: Option<unsafe extern "C" fn(*mut GESTimelineElement, u64) -> gboolean>,
1400 pub roll_start: Option<unsafe extern "C" fn(*mut GESTimelineElement, u64) -> gboolean>,
1401 pub roll_end: Option<unsafe extern "C" fn(*mut GESTimelineElement, u64) -> gboolean>,
1402 pub trim: Option<unsafe extern "C" fn(*mut GESTimelineElement, u64) -> gboolean>,
1403 pub deep_copy: Option<unsafe extern "C" fn(*mut GESTimelineElement, *mut GESTimelineElement)>,
1404 pub paste: Option<
1405 unsafe extern "C" fn(
1406 *mut GESTimelineElement,
1407 *mut GESTimelineElement,
1408 gst::GstClockTime,
1409 ) -> *mut GESTimelineElement,
1410 >,
1411 pub list_children_properties: Option<
1412 unsafe extern "C" fn(*mut GESTimelineElement, *mut c_uint) -> *mut *mut gobject::GParamSpec,
1413 >,
1414 pub lookup_child: Option<
1415 unsafe extern "C" fn(
1416 *mut GESTimelineElement,
1417 *const c_char,
1418 *mut *mut gobject::GObject,
1419 *mut *mut gobject::GParamSpec,
1420 ) -> gboolean,
1421 >,
1422 pub get_track_types: Option<unsafe extern "C" fn(*mut GESTimelineElement) -> GESTrackType>,
1423 pub set_child_property: Option<
1424 unsafe extern "C" fn(
1425 *mut GESTimelineElement,
1426 *mut gobject::GObject,
1427 *mut gobject::GParamSpec,
1428 *mut gobject::GValue,
1429 ),
1430 >,
1431 pub get_layer_priority: Option<unsafe extern "C" fn(*mut GESTimelineElement) -> u32>,
1432 pub get_natural_framerate:
1433 Option<unsafe extern "C" fn(*mut GESTimelineElement, *mut c_int, *mut c_int) -> gboolean>,
1434 pub set_child_property_full: Option<
1435 unsafe extern "C" fn(
1436 *mut GESTimelineElement,
1437 *mut gobject::GObject,
1438 *mut gobject::GParamSpec,
1439 *const gobject::GValue,
1440 *mut *mut glib::GError,
1441 ) -> gboolean,
1442 >,
1443 pub _ges_reserved: [gpointer; 14],
1444}
1445
1446impl ::std::fmt::Debug for GESTimelineElementClass {
1447 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1448 f.debug_struct(&format!("GESTimelineElementClass @ {self:p}"))
1449 .field("parent_class", &self.parent_class)
1450 .field("set_parent", &self.set_parent)
1451 .field("set_start", &self.set_start)
1452 .field("set_inpoint", &self.set_inpoint)
1453 .field("set_duration", &self.set_duration)
1454 .field("set_max_duration", &self.set_max_duration)
1455 .field("set_priority", &self.set_priority)
1456 .field("ripple", &self.ripple)
1457 .field("ripple_end", &self.ripple_end)
1458 .field("roll_start", &self.roll_start)
1459 .field("roll_end", &self.roll_end)
1460 .field("trim", &self.trim)
1461 .field("deep_copy", &self.deep_copy)
1462 .field("paste", &self.paste)
1463 .field("list_children_properties", &self.list_children_properties)
1464 .field("lookup_child", &self.lookup_child)
1465 .field("get_track_types", &self.get_track_types)
1466 .field("set_child_property", &self.set_child_property)
1467 .field("get_layer_priority", &self.get_layer_priority)
1468 .field("get_natural_framerate", &self.get_natural_framerate)
1469 .field("set_child_property_full", &self.set_child_property_full)
1470 .field("_ges_reserved", &self._ges_reserved)
1471 .finish()
1472 }
1473}
1474
1475#[repr(C)]
1476#[allow(dead_code)]
1477pub struct _GESTimelineElementPrivate {
1478 _data: [u8; 0],
1479 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1480}
1481
1482pub type GESTimelineElementPrivate = _GESTimelineElementPrivate;
1483
1484#[repr(C)]
1485#[allow(dead_code)]
1486pub struct _GESTimelinePrivate {
1487 _data: [u8; 0],
1488 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1489}
1490
1491pub type GESTimelinePrivate = _GESTimelinePrivate;
1492
1493#[derive(Copy, Clone)]
1494#[repr(C)]
1495pub struct GESTitleClipClass {
1496 pub parent_class: GESSourceClipClass,
1497 pub _ges_reserved: [gpointer; 4],
1498}
1499
1500impl ::std::fmt::Debug for GESTitleClipClass {
1501 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1502 f.debug_struct(&format!("GESTitleClipClass @ {self:p}"))
1503 .finish()
1504 }
1505}
1506
1507#[repr(C)]
1508#[allow(dead_code)]
1509pub struct _GESTitleClipPrivate {
1510 _data: [u8; 0],
1511 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1512}
1513
1514pub type GESTitleClipPrivate = _GESTitleClipPrivate;
1515
1516#[derive(Copy, Clone)]
1517#[repr(C)]
1518pub struct GESTitleSourceClass {
1519 pub parent_class: GESVideoSourceClass,
1520 pub _ges_reserved: [gpointer; 3],
1521}
1522
1523impl ::std::fmt::Debug for GESTitleSourceClass {
1524 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1525 f.debug_struct(&format!("GESTitleSourceClass @ {self:p}"))
1526 .field("parent_class", &self.parent_class)
1527 .finish()
1528 }
1529}
1530
1531#[repr(C)]
1532#[allow(dead_code)]
1533pub struct _GESTitleSourcePrivate {
1534 _data: [u8; 0],
1535 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1536}
1537
1538pub type GESTitleSourcePrivate = _GESTitleSourcePrivate;
1539
1540#[derive(Copy, Clone)]
1541#[repr(C)]
1542pub struct GESTrackClass {
1543 pub parent_class: gst::GstBinClass,
1544 pub get_mixing_element: Option<unsafe extern "C" fn(*mut GESTrack) -> *mut gst::GstElement>,
1545 pub _ges_reserved: [gpointer; 4],
1546}
1547
1548impl ::std::fmt::Debug for GESTrackClass {
1549 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1550 f.debug_struct(&format!("GESTrackClass @ {self:p}"))
1551 .field("get_mixing_element", &self.get_mixing_element)
1552 .finish()
1553 }
1554}
1555
1556#[derive(Copy, Clone)]
1557#[repr(C)]
1558pub struct GESTrackElementAssetClass {
1559 pub parent_class: GESAssetClass,
1560 pub get_natural_framerate:
1561 Option<unsafe extern "C" fn(*mut GESTrackElementAsset, *mut c_int, *mut c_int) -> gboolean>,
1562 pub _ges_reserved: [gpointer; 3],
1563}
1564
1565impl ::std::fmt::Debug for GESTrackElementAssetClass {
1566 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1567 f.debug_struct(&format!("GESTrackElementAssetClass @ {self:p}"))
1568 .field("parent_class", &self.parent_class)
1569 .field("get_natural_framerate", &self.get_natural_framerate)
1570 .field("_ges_reserved", &self._ges_reserved)
1571 .finish()
1572 }
1573}
1574
1575#[repr(C)]
1576#[allow(dead_code)]
1577pub struct _GESTrackElementAssetPrivate {
1578 _data: [u8; 0],
1579 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1580}
1581
1582pub type GESTrackElementAssetPrivate = _GESTrackElementAssetPrivate;
1583
1584#[derive(Copy, Clone)]
1585#[repr(C)]
1586pub struct GESTrackElementClass {
1587 pub parent_class: GESTimelineElementClass,
1588 pub nleobject_factorytype: *const c_char,
1589 pub create_gnl_object:
1590 Option<unsafe extern "C" fn(*mut GESTrackElement) -> *mut gst::GstElement>,
1591 pub create_element: Option<unsafe extern "C" fn(*mut GESTrackElement) -> *mut gst::GstElement>,
1592 pub active_changed: Option<unsafe extern "C" fn(*mut GESTrackElement, gboolean)>,
1593 pub changed: Option<unsafe extern "C" fn(*mut GESTrackElement)>,
1594 pub list_children_properties: Option<
1595 unsafe extern "C" fn(*mut GESTrackElement, *mut c_uint) -> *mut *mut gobject::GParamSpec,
1596 >,
1597 pub lookup_child: Option<
1598 unsafe extern "C" fn(
1599 *mut GESTrackElement,
1600 *const c_char,
1601 *mut *mut gst::GstElement,
1602 *mut *mut gobject::GParamSpec,
1603 ) -> gboolean,
1604 >,
1605 pub ABI: GESTrackElementClass_ABI,
1606}
1607
1608impl ::std::fmt::Debug for GESTrackElementClass {
1609 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1610 f.debug_struct(&format!("GESTrackElementClass @ {self:p}"))
1611 .field("nleobject_factorytype", &self.nleobject_factorytype)
1612 .field("create_gnl_object", &self.create_gnl_object)
1613 .field("create_element", &self.create_element)
1614 .field("active_changed", &self.active_changed)
1615 .field("changed", &self.changed)
1616 .field("list_children_properties", &self.list_children_properties)
1617 .field("lookup_child", &self.lookup_child)
1618 .field("ABI", &self.ABI)
1619 .finish()
1620 }
1621}
1622
1623#[derive(Copy, Clone)]
1624#[repr(C)]
1625pub struct GESTrackElementClass_ABI_abi {
1626 pub default_has_internal_source: gboolean,
1627 pub default_track_type: GESTrackType,
1628}
1629
1630impl ::std::fmt::Debug for GESTrackElementClass_ABI_abi {
1631 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1632 f.debug_struct(&format!("GESTrackElementClass_ABI_abi @ {self:p}"))
1633 .field(
1634 "default_has_internal_source",
1635 &self.default_has_internal_source,
1636 )
1637 .field("default_track_type", &self.default_track_type)
1638 .finish()
1639 }
1640}
1641
1642#[repr(C)]
1643#[allow(dead_code)]
1644pub struct _GESTrackElementPrivate {
1645 _data: [u8; 0],
1646 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1647}
1648
1649pub type GESTrackElementPrivate = _GESTrackElementPrivate;
1650
1651#[repr(C)]
1652#[allow(dead_code)]
1653pub struct _GESTrackPrivate {
1654 _data: [u8; 0],
1655 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1656}
1657
1658pub type GESTrackPrivate = _GESTrackPrivate;
1659
1660#[derive(Copy, Clone)]
1661#[repr(C)]
1662pub struct GESTransitionClass {
1663 pub parent_class: GESOperationClass,
1664 pub _ges_reserved: [gpointer; 4],
1665}
1666
1667impl ::std::fmt::Debug for GESTransitionClass {
1668 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1669 f.debug_struct(&format!("GESTransitionClass @ {self:p}"))
1670 .finish()
1671 }
1672}
1673
1674#[derive(Copy, Clone)]
1675#[repr(C)]
1676pub struct GESTransitionClipClass {
1677 pub parent_class: GESBaseTransitionClipClass,
1678 pub _ges_reserved: [gpointer; 4],
1679}
1680
1681impl ::std::fmt::Debug for GESTransitionClipClass {
1682 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1683 f.debug_struct(&format!("GESTransitionClipClass @ {self:p}"))
1684 .finish()
1685 }
1686}
1687
1688#[repr(C)]
1689#[allow(dead_code)]
1690pub struct _GESTransitionClipPrivate {
1691 _data: [u8; 0],
1692 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1693}
1694
1695pub type GESTransitionClipPrivate = _GESTransitionClipPrivate;
1696
1697#[repr(C)]
1698#[allow(dead_code)]
1699pub struct _GESTransitionPrivate {
1700 _data: [u8; 0],
1701 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1702}
1703
1704pub type GESTransitionPrivate = _GESTransitionPrivate;
1705
1706#[derive(Copy, Clone)]
1707#[repr(C)]
1708pub struct GESUriClipAssetClass {
1709 pub parent_class: GESSourceClipAssetClass,
1710 pub discoverer: *mut gst_pbutils::GstDiscoverer,
1711 pub sync_discoverer: *mut gst_pbutils::GstDiscoverer,
1712 pub discovered: Option<
1713 unsafe extern "C" fn(
1714 *mut gst_pbutils::GstDiscoverer,
1715 *mut gst_pbutils::GstDiscovererInfo,
1716 *mut glib::GError,
1717 gpointer,
1718 ),
1719 >,
1720 pub _ges_reserved: [gpointer; 3],
1721}
1722
1723impl ::std::fmt::Debug for GESUriClipAssetClass {
1724 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1725 f.debug_struct(&format!("GESUriClipAssetClass @ {self:p}"))
1726 .field("parent_class", &self.parent_class)
1727 .field("discovered", &self.discovered)
1728 .finish()
1729 }
1730}
1731
1732#[repr(C)]
1733#[allow(dead_code)]
1734pub struct _GESUriClipAssetPrivate {
1735 _data: [u8; 0],
1736 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1737}
1738
1739pub type GESUriClipAssetPrivate = _GESUriClipAssetPrivate;
1740
1741#[derive(Copy, Clone)]
1742#[repr(C)]
1743pub struct GESUriClipClass {
1744 pub parent_class: GESSourceClipClass,
1745 pub _ges_reserved: [gpointer; 4],
1746}
1747
1748impl ::std::fmt::Debug for GESUriClipClass {
1749 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1750 f.debug_struct(&format!("GESUriClipClass @ {self:p}"))
1751 .finish()
1752 }
1753}
1754
1755#[repr(C)]
1756#[allow(dead_code)]
1757pub struct _GESUriClipPrivate {
1758 _data: [u8; 0],
1759 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1760}
1761
1762pub type GESUriClipPrivate = _GESUriClipPrivate;
1763
1764#[repr(C)]
1765#[allow(dead_code)]
1766pub struct _GESUriSource {
1767 _data: [u8; 0],
1768 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1769}
1770
1771pub type GESUriSource = _GESUriSource;
1772
1773#[derive(Copy, Clone)]
1774#[repr(C)]
1775pub struct GESUriSourceAssetClass {
1776 pub parent_class: GESTrackElementAssetClass,
1777 pub _ges_reserved: [gpointer; 4],
1778}
1779
1780impl ::std::fmt::Debug for GESUriSourceAssetClass {
1781 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1782 f.debug_struct(&format!("GESUriSourceAssetClass @ {self:p}"))
1783 .field("parent_class", &self.parent_class)
1784 .field("_ges_reserved", &self._ges_reserved)
1785 .finish()
1786 }
1787}
1788
1789#[repr(C)]
1790#[allow(dead_code)]
1791pub struct _GESUriSourceAssetPrivate {
1792 _data: [u8; 0],
1793 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1794}
1795
1796pub type GESUriSourceAssetPrivate = _GESUriSourceAssetPrivate;
1797
1798#[derive(Copy, Clone)]
1799#[repr(C)]
1800pub struct GESVideoSourceClass {
1801 pub parent_class: GESSourceClass,
1802 pub create_source: Option<unsafe extern "C" fn(*mut GESTrackElement) -> *mut gst::GstElement>,
1803 pub ABI: GESVideoSourceClass_ABI,
1804}
1805
1806impl ::std::fmt::Debug for GESVideoSourceClass {
1807 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1808 f.debug_struct(&format!("GESVideoSourceClass @ {self:p}"))
1809 .field("create_source", &self.create_source)
1810 .field("ABI", &self.ABI)
1811 .finish()
1812 }
1813}
1814
1815#[derive(Copy, Clone)]
1816#[repr(C)]
1817pub struct GESVideoSourceClass_ABI_abi {
1818 pub disable_scale_in_compositor: gboolean,
1819 pub needs_converters: Option<unsafe extern "C" fn(*mut GESVideoSource) -> gboolean>,
1820 pub get_natural_size:
1821 Option<unsafe extern "C" fn(*mut GESVideoSource, *mut c_int, *mut c_int) -> gboolean>,
1822 pub create_filters: Option<
1823 unsafe extern "C" fn(*mut GESVideoSource, *mut glib::GPtrArray, gboolean) -> gboolean,
1824 >,
1825}
1826
1827impl ::std::fmt::Debug for GESVideoSourceClass_ABI_abi {
1828 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1829 f.debug_struct(&format!("GESVideoSourceClass_ABI_abi @ {self:p}"))
1830 .field(
1831 "disable_scale_in_compositor",
1832 &self.disable_scale_in_compositor,
1833 )
1834 .field("needs_converters", &self.needs_converters)
1835 .field("get_natural_size", &self.get_natural_size)
1836 .field("create_filters", &self.create_filters)
1837 .finish()
1838 }
1839}
1840
1841#[repr(C)]
1842#[allow(dead_code)]
1843pub struct _GESVideoSourcePrivate {
1844 _data: [u8; 0],
1845 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1846}
1847
1848pub type GESVideoSourcePrivate = _GESVideoSourcePrivate;
1849
1850#[derive(Copy, Clone)]
1851#[repr(C)]
1852pub struct GESVideoTestSourceClass {
1853 pub parent_class: GESVideoSourceClass,
1854 pub _ges_reserved: [gpointer; 4],
1855}
1856
1857impl ::std::fmt::Debug for GESVideoTestSourceClass {
1858 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1859 f.debug_struct(&format!("GESVideoTestSourceClass @ {self:p}"))
1860 .field("parent_class", &self.parent_class)
1861 .field("_ges_reserved", &self._ges_reserved)
1862 .finish()
1863 }
1864}
1865
1866#[repr(C)]
1867#[allow(dead_code)]
1868pub struct _GESVideoTestSourcePrivate {
1869 _data: [u8; 0],
1870 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1871}
1872
1873pub type GESVideoTestSourcePrivate = _GESVideoTestSourcePrivate;
1874
1875#[derive(Copy, Clone)]
1876#[repr(C)]
1877pub struct GESVideoTrackClass {
1878 pub parent_class: GESTrackClass,
1879 pub _ges_reserved: [gpointer; 4],
1880}
1881
1882impl ::std::fmt::Debug for GESVideoTrackClass {
1883 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1884 f.debug_struct(&format!("GESVideoTrackClass @ {self:p}"))
1885 .field("parent_class", &self.parent_class)
1886 .field("_ges_reserved", &self._ges_reserved)
1887 .finish()
1888 }
1889}
1890
1891#[repr(C)]
1892#[allow(dead_code)]
1893pub struct _GESVideoTrackPrivate {
1894 _data: [u8; 0],
1895 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1896}
1897
1898pub type GESVideoTrackPrivate = _GESVideoTrackPrivate;
1899
1900#[derive(Copy, Clone)]
1901#[repr(C)]
1902pub struct GESVideoTransitionClass {
1903 pub parent_class: GESTransitionClass,
1904 pub _ges_reserved: [gpointer; 4],
1905}
1906
1907impl ::std::fmt::Debug for GESVideoTransitionClass {
1908 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1909 f.debug_struct(&format!("GESVideoTransitionClass @ {self:p}"))
1910 .field("parent_class", &self.parent_class)
1911 .finish()
1912 }
1913}
1914
1915#[repr(C)]
1916#[allow(dead_code)]
1917pub struct _GESVideoTransitionPrivate {
1918 _data: [u8; 0],
1919 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1920}
1921
1922pub type GESVideoTransitionPrivate = _GESVideoTransitionPrivate;
1923
1924#[derive(Copy, Clone)]
1925#[repr(C)]
1926pub struct GESVideoUriSourceClass {
1927 pub parent_class: GESVideoSourceClass,
1928 pub _ges_reserved: [gpointer; 4],
1929}
1930
1931impl ::std::fmt::Debug for GESVideoUriSourceClass {
1932 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1933 f.debug_struct(&format!("GESVideoUriSourceClass @ {self:p}"))
1934 .finish()
1935 }
1936}
1937
1938#[repr(C)]
1939#[allow(dead_code)]
1940pub struct _GESVideoUriSourcePrivate {
1941 _data: [u8; 0],
1942 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1943}
1944
1945pub type GESVideoUriSourcePrivate = _GESVideoUriSourcePrivate;
1946
1947#[derive(Copy, Clone)]
1948#[repr(C)]
1949pub struct GESXmlFormatterClass {
1950 pub parent: GESBaseXmlFormatterClass,
1951 pub _ges_reserved: [gpointer; 4],
1952}
1953
1954impl ::std::fmt::Debug for GESXmlFormatterClass {
1955 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1956 f.debug_struct(&format!("GESXmlFormatterClass @ {self:p}"))
1957 .field("parent", &self.parent)
1958 .field("_ges_reserved", &self._ges_reserved)
1959 .finish()
1960 }
1961}
1962
1963#[repr(C)]
1964#[allow(dead_code)]
1965pub struct _GESXmlFormatterPrivate {
1966 _data: [u8; 0],
1967 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1968}
1969
1970pub type GESXmlFormatterPrivate = _GESXmlFormatterPrivate;
1971
1972#[derive(Copy, Clone)]
1974#[repr(C)]
1975pub struct GESAsset {
1976 pub parent: gobject::GObject,
1977 pub priv_: *mut GESAssetPrivate,
1978 pub _ges_reserved: [gpointer; 4],
1979}
1980
1981impl ::std::fmt::Debug for GESAsset {
1982 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1983 f.debug_struct(&format!("GESAsset @ {self:p}"))
1984 .field("parent", &self.parent)
1985 .finish()
1986 }
1987}
1988
1989#[derive(Copy, Clone)]
1990#[repr(C)]
1991pub struct GESAudioSource {
1992 pub parent: GESSource,
1993 pub priv_: *mut GESAudioSourcePrivate,
1994 pub _ges_reserved: [gpointer; 4],
1995}
1996
1997impl ::std::fmt::Debug for GESAudioSource {
1998 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1999 f.debug_struct(&format!("GESAudioSource @ {self:p}"))
2000 .finish()
2001 }
2002}
2003
2004#[derive(Copy, Clone)]
2005#[repr(C)]
2006pub struct GESAudioTestSource {
2007 pub parent: GESAudioSource,
2008 pub priv_: *mut GESAudioTestSourcePrivate,
2009 pub _ges_reserved: [gpointer; 4],
2010}
2011
2012impl ::std::fmt::Debug for GESAudioTestSource {
2013 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2014 f.debug_struct(&format!("GESAudioTestSource @ {self:p}"))
2015 .field("parent", &self.parent)
2016 .finish()
2017 }
2018}
2019
2020#[derive(Copy, Clone)]
2021#[repr(C)]
2022pub struct GESAudioTrack {
2023 pub parent_instance: GESTrack,
2024 pub priv_: *mut GESAudioTrackPrivate,
2025 pub _ges_reserved: [gpointer; 4],
2026}
2027
2028impl ::std::fmt::Debug for GESAudioTrack {
2029 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2030 f.debug_struct(&format!("GESAudioTrack @ {self:p}"))
2031 .field("parent_instance", &self.parent_instance)
2032 .finish()
2033 }
2034}
2035
2036#[derive(Copy, Clone)]
2037#[repr(C)]
2038pub struct GESAudioTransition {
2039 pub parent: GESTransition,
2040 pub priv_: *mut GESAudioTransitionPrivate,
2041 pub _ges_reserved: [gpointer; 4],
2042}
2043
2044impl ::std::fmt::Debug for GESAudioTransition {
2045 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2046 f.debug_struct(&format!("GESAudioTransition @ {self:p}"))
2047 .field("parent", &self.parent)
2048 .finish()
2049 }
2050}
2051
2052#[derive(Copy, Clone)]
2053#[repr(C)]
2054pub struct GESAudioUriSource {
2055 pub parent: GESAudioSource,
2056 pub uri: *mut c_char,
2057 pub priv_: *mut GESUriSource,
2058 pub _ges_reserved: [gpointer; 4],
2059}
2060
2061impl ::std::fmt::Debug for GESAudioUriSource {
2062 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2063 f.debug_struct(&format!("GESAudioUriSource @ {self:p}"))
2064 .finish()
2065 }
2066}
2067
2068#[derive(Copy, Clone)]
2069#[repr(C)]
2070pub struct GESBaseEffect {
2071 pub parent: GESOperation,
2072 pub priv_: *mut GESBaseEffectPrivate,
2073 pub _ges_reserved: [gpointer; 4],
2074}
2075
2076impl ::std::fmt::Debug for GESBaseEffect {
2077 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2078 f.debug_struct(&format!("GESBaseEffect @ {self:p}"))
2079 .finish()
2080 }
2081}
2082
2083#[derive(Copy, Clone)]
2084#[repr(C)]
2085pub struct GESBaseEffectClip {
2086 pub parent: GESOperationClip,
2087 pub priv_: *mut GESBaseEffectClipPrivate,
2088 pub _ges_reserved: [gpointer; 4],
2089}
2090
2091impl ::std::fmt::Debug for GESBaseEffectClip {
2092 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2093 f.debug_struct(&format!("GESBaseEffectClip @ {self:p}"))
2094 .finish()
2095 }
2096}
2097
2098#[derive(Copy, Clone)]
2099#[repr(C)]
2100pub struct GESBaseTransitionClip {
2101 pub parent: GESOperationClip,
2102 pub priv_: *mut GESBaseTransitionClipPrivate,
2103 pub _ges_reserved: [gpointer; 4],
2104}
2105
2106impl ::std::fmt::Debug for GESBaseTransitionClip {
2107 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2108 f.debug_struct(&format!("GESBaseTransitionClip @ {self:p}"))
2109 .finish()
2110 }
2111}
2112
2113#[derive(Copy, Clone)]
2114#[repr(C)]
2115pub struct GESBaseXmlFormatter {
2116 pub parent: GESFormatter,
2117 pub priv_: *mut GESBaseXmlFormatterPrivate,
2118 pub xmlcontent: *mut c_char,
2119 pub _ges_reserved: [gpointer; 3],
2120}
2121
2122impl ::std::fmt::Debug for GESBaseXmlFormatter {
2123 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2124 f.debug_struct(&format!("GESBaseXmlFormatter @ {self:p}"))
2125 .field("parent", &self.parent)
2126 .finish()
2127 }
2128}
2129
2130#[derive(Copy, Clone)]
2131#[repr(C)]
2132pub struct GESClip {
2133 pub parent: GESContainer,
2134 pub priv_: *mut GESClipPrivate,
2135 pub _ges_reserved: [gpointer; 20],
2136}
2137
2138impl ::std::fmt::Debug for GESClip {
2139 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2140 f.debug_struct(&format!("GESClip @ {self:p}"))
2141 .field("parent", &self.parent)
2142 .finish()
2143 }
2144}
2145
2146#[derive(Copy, Clone)]
2147#[repr(C)]
2148pub struct GESClipAsset {
2149 pub parent: GESAsset,
2150 pub priv_: *mut GESClipAssetPrivate,
2151 pub _ges_reserved: [gpointer; 4],
2152}
2153
2154impl ::std::fmt::Debug for GESClipAsset {
2155 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2156 f.debug_struct(&format!("GESClipAsset @ {self:p}"))
2157 .field("parent", &self.parent)
2158 .finish()
2159 }
2160}
2161
2162#[derive(Copy, Clone)]
2163#[repr(C)]
2164pub struct GESCommandLineFormatter {
2165 pub parent_instance: GESFormatter,
2166 pub priv_: *mut GESCommandLineFormatterPrivate,
2167}
2168
2169impl ::std::fmt::Debug for GESCommandLineFormatter {
2170 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2171 f.debug_struct(&format!("GESCommandLineFormatter @ {self:p}"))
2172 .field("parent_instance", &self.parent_instance)
2173 .field("priv_", &self.priv_)
2174 .finish()
2175 }
2176}
2177
2178#[derive(Copy, Clone)]
2179#[repr(C)]
2180pub struct GESContainer {
2181 pub parent: GESTimelineElement,
2182 pub children: *mut glib::GList,
2183 pub height: u32,
2184 pub children_control_mode: GESChildrenControlMode,
2185 pub initiated_move: *mut GESTimelineElement,
2186 pub priv_: *mut GESContainerPrivate,
2187 pub _ges_reserved: [gpointer; 20],
2188}
2189
2190impl ::std::fmt::Debug for GESContainer {
2191 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2192 f.debug_struct(&format!("GESContainer @ {self:p}"))
2193 .field("parent", &self.parent)
2194 .field("children", &self.children)
2195 .field("height", &self.height)
2196 .field("children_control_mode", &self.children_control_mode)
2197 .field("initiated_move", &self.initiated_move)
2198 .finish()
2199 }
2200}
2201
2202#[repr(C)]
2203#[allow(dead_code)]
2204pub struct GESDiscovererManager {
2205 _data: [u8; 0],
2206 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2207}
2208
2209impl ::std::fmt::Debug for GESDiscovererManager {
2210 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2211 f.debug_struct(&format!("GESDiscovererManager @ {self:p}"))
2212 .finish()
2213 }
2214}
2215
2216#[derive(Copy, Clone)]
2217#[repr(C)]
2218pub struct GESEffect {
2219 pub parent: GESBaseEffect,
2220 pub priv_: *mut GESEffectPrivate,
2221 pub _ges_reserved: [gpointer; 4],
2222}
2223
2224impl ::std::fmt::Debug for GESEffect {
2225 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2226 f.debug_struct(&format!("GESEffect @ {self:p}")).finish()
2227 }
2228}
2229
2230#[derive(Copy, Clone)]
2231#[repr(C)]
2232pub struct GESEffectAsset {
2233 pub parent_instance: GESTrackElementAsset,
2234 pub priv_: *mut GESEffectAssetPrivate,
2235 pub _ges_reserved: [gpointer; 4],
2236}
2237
2238impl ::std::fmt::Debug for GESEffectAsset {
2239 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2240 f.debug_struct(&format!("GESEffectAsset @ {self:p}"))
2241 .field("parent_instance", &self.parent_instance)
2242 .field("priv_", &self.priv_)
2243 .field("_ges_reserved", &self._ges_reserved)
2244 .finish()
2245 }
2246}
2247
2248#[derive(Copy, Clone)]
2249#[repr(C)]
2250pub struct GESEffectClip {
2251 pub parent: GESBaseEffectClip,
2252 pub priv_: *mut GESEffectClipPrivate,
2253 pub _ges_reserved: [gpointer; 4],
2254}
2255
2256impl ::std::fmt::Debug for GESEffectClip {
2257 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2258 f.debug_struct(&format!("GESEffectClip @ {self:p}"))
2259 .finish()
2260 }
2261}
2262
2263#[derive(Copy, Clone)]
2264#[repr(C)]
2265pub struct GESFormatter {
2266 pub parent: gobject::GInitiallyUnowned,
2267 pub priv_: *mut GESFormatterPrivate,
2268 pub project: *mut GESProject,
2269 pub timeline: *mut GESTimeline,
2270 pub _ges_reserved: [gpointer; 4],
2271}
2272
2273impl ::std::fmt::Debug for GESFormatter {
2274 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2275 f.debug_struct(&format!("GESFormatter @ {self:p}"))
2276 .field("parent", &self.parent)
2277 .finish()
2278 }
2279}
2280
2281#[derive(Copy, Clone)]
2282#[repr(C)]
2283pub struct GESGroup {
2284 pub parent: GESContainer,
2285 pub priv_: *mut GESGroupPrivate,
2286 pub _ges_reserved: [gpointer; 4],
2287}
2288
2289impl ::std::fmt::Debug for GESGroup {
2290 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2291 f.debug_struct(&format!("GESGroup @ {self:p}"))
2292 .field("parent", &self.parent)
2293 .finish()
2294 }
2295}
2296
2297#[derive(Copy, Clone)]
2298#[repr(C)]
2299pub struct GESImageSource {
2300 pub parent: GESVideoSource,
2301 pub uri: *mut c_char,
2302 pub priv_: *mut GESImageSourcePrivate,
2303 pub _ges_reserved: [gpointer; 4],
2304}
2305
2306impl ::std::fmt::Debug for GESImageSource {
2307 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2308 f.debug_struct(&format!("GESImageSource @ {self:p}"))
2309 .finish()
2310 }
2311}
2312
2313#[derive(Copy, Clone)]
2314#[repr(C)]
2315pub struct GESLayer {
2316 pub parent: gobject::GInitiallyUnowned,
2317 pub timeline: *mut GESTimeline,
2318 pub min_nle_priority: u32,
2319 pub max_nle_priority: u32,
2320 pub priv_: *mut GESLayerPrivate,
2321 pub _ges_reserved: [gpointer; 4],
2322}
2323
2324impl ::std::fmt::Debug for GESLayer {
2325 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2326 f.debug_struct(&format!("GESLayer @ {self:p}"))
2327 .field("parent", &self.parent)
2328 .field("timeline", &self.timeline)
2329 .field("min_nle_priority", &self.min_nle_priority)
2330 .field("max_nle_priority", &self.max_nle_priority)
2331 .field("priv_", &self.priv_)
2332 .field("_ges_reserved", &self._ges_reserved)
2333 .finish()
2334 }
2335}
2336
2337#[repr(C)]
2338#[allow(dead_code)]
2339pub struct GESMarker {
2340 _data: [u8; 0],
2341 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2342}
2343
2344impl ::std::fmt::Debug for GESMarker {
2345 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2346 f.debug_struct(&format!("GESMarker @ {self:p}")).finish()
2347 }
2348}
2349
2350#[repr(C)]
2351#[allow(dead_code)]
2352pub struct GESMarkerList {
2353 _data: [u8; 0],
2354 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2355}
2356
2357impl ::std::fmt::Debug for GESMarkerList {
2358 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2359 f.debug_struct(&format!("GESMarkerList @ {self:p}"))
2360 .finish()
2361 }
2362}
2363
2364#[derive(Copy, Clone)]
2365#[repr(C)]
2366pub struct GESMultiFileSource {
2367 pub parent: GESVideoSource,
2368 pub uri: *mut c_char,
2369 pub priv_: *mut GESMultiFileSourcePrivate,
2370 pub _ges_reserved: [gpointer; 4],
2371}
2372
2373impl ::std::fmt::Debug for GESMultiFileSource {
2374 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2375 f.debug_struct(&format!("GESMultiFileSource @ {self:p}"))
2376 .finish()
2377 }
2378}
2379
2380#[derive(Copy, Clone)]
2381#[repr(C)]
2382pub struct GESOperation {
2383 pub parent: GESTrackElement,
2384 pub priv_: *mut GESOperationPrivate,
2385 pub _ges_reserved: [gpointer; 4],
2386}
2387
2388impl ::std::fmt::Debug for GESOperation {
2389 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2390 f.debug_struct(&format!("GESOperation @ {self:p}")).finish()
2391 }
2392}
2393
2394#[derive(Copy, Clone)]
2395#[repr(C)]
2396pub struct GESOperationClip {
2397 pub parent: GESClip,
2398 pub priv_: *mut GESOperationClipPrivate,
2399 pub _ges_reserved: [gpointer; 4],
2400}
2401
2402impl ::std::fmt::Debug for GESOperationClip {
2403 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2404 f.debug_struct(&format!("GESOperationClip @ {self:p}"))
2405 .finish()
2406 }
2407}
2408
2409#[derive(Copy, Clone)]
2410#[repr(C)]
2411pub struct GESOverlayClip {
2412 pub parent: GESOperationClip,
2413 pub priv_: *mut GESOverlayClipPrivate,
2414 pub _ges_reserved: [gpointer; 4],
2415}
2416
2417impl ::std::fmt::Debug for GESOverlayClip {
2418 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2419 f.debug_struct(&format!("GESOverlayClip @ {self:p}"))
2420 .finish()
2421 }
2422}
2423
2424#[derive(Copy, Clone)]
2425#[repr(C)]
2426pub struct GESPipeline {
2427 pub parent: gst::GstPipeline,
2428 pub priv_: *mut GESPipelinePrivate,
2429 pub _ges_reserved: [gpointer; 4],
2430}
2431
2432impl ::std::fmt::Debug for GESPipeline {
2433 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2434 f.debug_struct(&format!("GESPipeline @ {self:p}")).finish()
2435 }
2436}
2437
2438#[derive(Copy, Clone)]
2439#[repr(C)]
2440pub struct GESProject {
2441 pub parent: GESAsset,
2442 pub priv_: *mut GESProjectPrivate,
2443 pub __ges_reserved: [gpointer; 20],
2444}
2445
2446impl ::std::fmt::Debug for GESProject {
2447 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2448 f.debug_struct(&format!("GESProject @ {self:p}"))
2449 .field("parent", &self.parent)
2450 .finish()
2451 }
2452}
2453
2454#[derive(Copy, Clone)]
2455#[repr(C)]
2456pub struct GESSource {
2457 pub parent: GESTrackElement,
2458 pub priv_: *mut GESSourcePrivate,
2459 pub _ges_reserved: [gpointer; 4],
2460}
2461
2462impl ::std::fmt::Debug for GESSource {
2463 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2464 f.debug_struct(&format!("GESSource @ {self:p}")).finish()
2465 }
2466}
2467
2468#[derive(Copy, Clone)]
2469#[repr(C)]
2470pub struct GESSourceClip {
2471 pub parent: GESClip,
2472 pub priv_: *mut GESSourceClipPrivate,
2473 pub _ges_reserved: [gpointer; 4],
2474}
2475
2476impl ::std::fmt::Debug for GESSourceClip {
2477 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2478 f.debug_struct(&format!("GESSourceClip @ {self:p}"))
2479 .field("parent", &self.parent)
2480 .finish()
2481 }
2482}
2483
2484#[derive(Copy, Clone)]
2485#[repr(C)]
2486pub struct GESSourceClipAsset {
2487 pub parent_instance: GESClipAsset,
2488}
2489
2490impl ::std::fmt::Debug for GESSourceClipAsset {
2491 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2492 f.debug_struct(&format!("GESSourceClipAsset @ {self:p}"))
2493 .field("parent_instance", &self.parent_instance)
2494 .finish()
2495 }
2496}
2497
2498#[derive(Copy, Clone)]
2499#[repr(C)]
2500pub struct GESTestClip {
2501 pub parent: GESSourceClip,
2502 pub priv_: *mut GESTestClipPrivate,
2503 pub _ges_reserved: [gpointer; 4],
2504}
2505
2506impl ::std::fmt::Debug for GESTestClip {
2507 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2508 f.debug_struct(&format!("GESTestClip @ {self:p}"))
2509 .field("parent", &self.parent)
2510 .finish()
2511 }
2512}
2513
2514#[derive(Copy, Clone)]
2515#[repr(C)]
2516pub struct GESTextOverlay {
2517 pub parent: GESOperation,
2518 pub priv_: *mut GESTextOverlayPrivate,
2519 pub _ges_reserved: [gpointer; 4],
2520}
2521
2522impl ::std::fmt::Debug for GESTextOverlay {
2523 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2524 f.debug_struct(&format!("GESTextOverlay @ {self:p}"))
2525 .field("parent", &self.parent)
2526 .finish()
2527 }
2528}
2529
2530#[derive(Copy, Clone)]
2531#[repr(C)]
2532pub struct GESTextOverlayClip {
2533 pub parent: GESOverlayClip,
2534 pub priv_: *mut GESTextOverlayClipPrivate,
2535 pub _ges_reserved: [gpointer; 4],
2536}
2537
2538impl ::std::fmt::Debug for GESTextOverlayClip {
2539 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2540 f.debug_struct(&format!("GESTextOverlayClip @ {self:p}"))
2541 .field("parent", &self.parent)
2542 .finish()
2543 }
2544}
2545
2546#[derive(Copy, Clone)]
2547#[repr(C)]
2548pub struct GESTimeline {
2549 pub parent: gst::GstBin,
2550 pub layers: *mut glib::GList,
2551 pub tracks: *mut glib::GList,
2552 pub priv_: *mut GESTimelinePrivate,
2553 pub _ges_reserved: [gpointer; 4],
2554}
2555
2556impl ::std::fmt::Debug for GESTimeline {
2557 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2558 f.debug_struct(&format!("GESTimeline @ {self:p}"))
2559 .field("parent", &self.parent)
2560 .field("layers", &self.layers)
2561 .field("tracks", &self.tracks)
2562 .finish()
2563 }
2564}
2565
2566#[derive(Copy, Clone)]
2567#[repr(C)]
2568pub struct GESTimelineElement {
2569 pub parent_instance: gobject::GInitiallyUnowned,
2570 pub parent: *mut GESTimelineElement,
2571 pub asset: *mut GESAsset,
2572 pub start: gst::GstClockTime,
2573 pub inpoint: gst::GstClockTime,
2574 pub duration: gst::GstClockTime,
2575 pub maxduration: gst::GstClockTime,
2576 pub priority: u32,
2577 pub timeline: *mut GESTimeline,
2578 pub name: *mut c_char,
2579 pub priv_: *mut GESTimelineElementPrivate,
2580 pub _ges_reserved: [gpointer; 20],
2581}
2582
2583impl ::std::fmt::Debug for GESTimelineElement {
2584 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2585 f.debug_struct(&format!("GESTimelineElement @ {self:p}"))
2586 .field("parent_instance", &self.parent_instance)
2587 .field("parent", &self.parent)
2588 .field("asset", &self.asset)
2589 .field("start", &self.start)
2590 .field("inpoint", &self.inpoint)
2591 .field("duration", &self.duration)
2592 .field("maxduration", &self.maxduration)
2593 .field("priority", &self.priority)
2594 .field("timeline", &self.timeline)
2595 .field("name", &self.name)
2596 .finish()
2597 }
2598}
2599
2600#[derive(Copy, Clone)]
2601#[repr(C)]
2602pub struct GESTitleClip {
2603 pub parent: GESSourceClip,
2604 pub priv_: *mut GESTitleClipPrivate,
2605 pub _ges_reserved: [gpointer; 4],
2606}
2607
2608impl ::std::fmt::Debug for GESTitleClip {
2609 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2610 f.debug_struct(&format!("GESTitleClip @ {self:p}"))
2611 .field("parent", &self.parent)
2612 .finish()
2613 }
2614}
2615
2616#[derive(Copy, Clone)]
2617#[repr(C)]
2618pub struct GESTitleSource {
2619 pub parent: GESVideoSource,
2620 pub priv_: *mut GESTitleSourcePrivate,
2621 pub _ges_reserved: [gpointer; 4],
2622}
2623
2624impl ::std::fmt::Debug for GESTitleSource {
2625 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2626 f.debug_struct(&format!("GESTitleSource @ {self:p}"))
2627 .field("parent", &self.parent)
2628 .finish()
2629 }
2630}
2631
2632#[derive(Copy, Clone)]
2633#[repr(C)]
2634pub struct GESTrack {
2635 pub parent: gst::GstBin,
2636 pub type_: GESTrackType,
2637 pub priv_: *mut GESTrackPrivate,
2638 pub _ges_reserved: [gpointer; 4],
2639}
2640
2641impl ::std::fmt::Debug for GESTrack {
2642 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2643 f.debug_struct(&format!("GESTrack @ {self:p}"))
2644 .field("parent", &self.parent)
2645 .field("type_", &self.type_)
2646 .finish()
2647 }
2648}
2649
2650#[derive(Copy, Clone)]
2651#[repr(C)]
2652pub struct GESTrackElement {
2653 pub parent: GESTimelineElement,
2654 pub active: gboolean,
2655 pub priv_: *mut GESTrackElementPrivate,
2656 pub asset: *mut GESAsset,
2657 pub _ges_reserved: [gpointer; 20],
2658}
2659
2660impl ::std::fmt::Debug for GESTrackElement {
2661 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2662 f.debug_struct(&format!("GESTrackElement @ {self:p}"))
2663 .field("parent", &self.parent)
2664 .finish()
2665 }
2666}
2667
2668#[derive(Copy, Clone)]
2669#[repr(C)]
2670pub struct GESTrackElementAsset {
2671 pub parent: GESAsset,
2672 pub priv_: *mut GESTrackElementAssetPrivate,
2673 pub __ges_reserved: [gpointer; 4],
2674}
2675
2676impl ::std::fmt::Debug for GESTrackElementAsset {
2677 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2678 f.debug_struct(&format!("GESTrackElementAsset @ {self:p}"))
2679 .field("parent", &self.parent)
2680 .finish()
2681 }
2682}
2683
2684#[derive(Copy, Clone)]
2685#[repr(C)]
2686pub struct GESTransition {
2687 pub parent: GESOperation,
2688 pub priv_: *mut GESTransitionPrivate,
2689 pub _ges_reserved: [gpointer; 4],
2690}
2691
2692impl ::std::fmt::Debug for GESTransition {
2693 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2694 f.debug_struct(&format!("GESTransition @ {self:p}"))
2695 .finish()
2696 }
2697}
2698
2699#[derive(Copy, Clone)]
2700#[repr(C)]
2701pub struct GESTransitionClip {
2702 pub parent: GESBaseTransitionClip,
2703 pub vtype: GESVideoStandardTransitionType,
2704 pub priv_: *mut GESTransitionClipPrivate,
2705 pub _ges_reserved: [gpointer; 4],
2706}
2707
2708impl ::std::fmt::Debug for GESTransitionClip {
2709 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2710 f.debug_struct(&format!("GESTransitionClip @ {self:p}"))
2711 .field("vtype", &self.vtype)
2712 .finish()
2713 }
2714}
2715
2716#[derive(Copy, Clone)]
2717#[repr(C)]
2718pub struct GESUriClip {
2719 pub parent: GESSourceClip,
2720 pub priv_: *mut GESUriClipPrivate,
2721 pub _ges_reserved: [gpointer; 4],
2722}
2723
2724impl ::std::fmt::Debug for GESUriClip {
2725 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2726 f.debug_struct(&format!("GESUriClip @ {self:p}"))
2727 .field("parent", &self.parent)
2728 .finish()
2729 }
2730}
2731
2732#[derive(Copy, Clone)]
2733#[repr(C)]
2734pub struct GESUriClipAsset {
2735 pub parent: GESSourceClipAsset,
2736 pub priv_: *mut GESUriClipAssetPrivate,
2737 pub __ges_reserved: [gpointer; 4],
2738}
2739
2740impl ::std::fmt::Debug for GESUriClipAsset {
2741 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2742 f.debug_struct(&format!("GESUriClipAsset @ {self:p}"))
2743 .field("parent", &self.parent)
2744 .finish()
2745 }
2746}
2747
2748#[derive(Copy, Clone)]
2749#[repr(C)]
2750pub struct GESUriSourceAsset {
2751 pub parent: GESTrackElementAsset,
2752 pub priv_: *mut GESUriSourceAssetPrivate,
2753 pub __ges_reserved: [gpointer; 4],
2754}
2755
2756impl ::std::fmt::Debug for GESUriSourceAsset {
2757 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2758 f.debug_struct(&format!("GESUriSourceAsset @ {self:p}"))
2759 .field("parent", &self.parent)
2760 .finish()
2761 }
2762}
2763
2764#[derive(Copy, Clone)]
2765#[repr(C)]
2766pub struct GESVideoSource {
2767 pub parent: GESSource,
2768 pub priv_: *mut GESVideoSourcePrivate,
2769 pub _ges_reserved: [gpointer; 4],
2770}
2771
2772impl ::std::fmt::Debug for GESVideoSource {
2773 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2774 f.debug_struct(&format!("GESVideoSource @ {self:p}"))
2775 .finish()
2776 }
2777}
2778
2779#[derive(Copy, Clone)]
2780#[repr(C)]
2781pub struct GESVideoTestSource {
2782 pub parent: GESVideoSource,
2783 pub priv_: *mut GESVideoTestSourcePrivate,
2784 pub _ges_reserved: [gpointer; 4],
2785}
2786
2787impl ::std::fmt::Debug for GESVideoTestSource {
2788 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2789 f.debug_struct(&format!("GESVideoTestSource @ {self:p}"))
2790 .finish()
2791 }
2792}
2793
2794#[derive(Copy, Clone)]
2795#[repr(C)]
2796pub struct GESVideoTrack {
2797 pub parent_instance: GESTrack,
2798 pub priv_: *mut GESVideoTrackPrivate,
2799 pub _ges_reserved: [gpointer; 4],
2800}
2801
2802impl ::std::fmt::Debug for GESVideoTrack {
2803 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2804 f.debug_struct(&format!("GESVideoTrack @ {self:p}"))
2805 .field("parent_instance", &self.parent_instance)
2806 .finish()
2807 }
2808}
2809
2810#[derive(Copy, Clone)]
2811#[repr(C)]
2812pub struct GESVideoTransition {
2813 pub parent: GESTransition,
2814 pub priv_: *mut GESVideoTransitionPrivate,
2815 pub _ges_reserved: [gpointer; 4],
2816}
2817
2818impl ::std::fmt::Debug for GESVideoTransition {
2819 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2820 f.debug_struct(&format!("GESVideoTransition @ {self:p}"))
2821 .field("parent", &self.parent)
2822 .finish()
2823 }
2824}
2825
2826#[derive(Copy, Clone)]
2827#[repr(C)]
2828pub struct GESVideoUriSource {
2829 pub parent: GESVideoSource,
2830 pub uri: *mut c_char,
2831 pub priv_: *mut GESUriSource,
2832 pub _ges_reserved: [gpointer; 4],
2833}
2834
2835impl ::std::fmt::Debug for GESVideoUriSource {
2836 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2837 f.debug_struct(&format!("GESVideoUriSource @ {self:p}"))
2838 .finish()
2839 }
2840}
2841
2842#[derive(Copy, Clone)]
2843#[repr(C)]
2844pub struct GESXmlFormatter {
2845 pub parent: GESBaseXmlFormatter,
2846 pub priv_: *mut GESXmlFormatterPrivate,
2847 pub _ges_reserved: [gpointer; 4],
2848}
2849
2850impl ::std::fmt::Debug for GESXmlFormatter {
2851 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2852 f.debug_struct(&format!("GESXmlFormatter @ {self:p}"))
2853 .field("parent", &self.parent)
2854 .field("priv_", &self.priv_)
2855 .field("_ges_reserved", &self._ges_reserved)
2856 .finish()
2857 }
2858}
2859
2860#[repr(C)]
2862#[allow(dead_code)]
2863pub struct GESExtractable {
2864 _data: [u8; 0],
2865 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2866}
2867
2868impl ::std::fmt::Debug for GESExtractable {
2869 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2870 write!(f, "GESExtractable @ {self:p}")
2871 }
2872}
2873
2874#[repr(C)]
2875#[allow(dead_code)]
2876pub struct GESMetaContainer {
2877 _data: [u8; 0],
2878 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2879}
2880
2881impl ::std::fmt::Debug for GESMetaContainer {
2882 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2883 write!(f, "GESMetaContainer @ {self:p}")
2884 }
2885}
2886
2887extern "C" {
2888
2889 pub fn ges_edge_get_type() -> GType;
2893 #[cfg(feature = "v1_16")]
2894 #[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
2895 pub fn ges_edge_name(edge: GESEdge) -> *const c_char;
2896
2897 pub fn ges_edit_mode_get_type() -> GType;
2901 #[cfg(feature = "v1_18")]
2902 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
2903 pub fn ges_edit_mode_name(mode: GESEditMode) -> *const c_char;
2904
2905 pub fn ges_text_halign_get_type() -> GType;
2909
2910 pub fn ges_text_valign_get_type() -> GType;
2914
2915 pub fn ges_video_standard_transition_type_get_type() -> GType;
2919
2920 pub fn ges_video_test_pattern_get_type() -> GType;
2924
2925 #[cfg(feature = "v1_20")]
2929 #[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
2930 pub fn ges_marker_flags_get_type() -> GType;
2931
2932 pub fn ges_meta_flag_get_type() -> GType;
2936
2937 pub fn ges_pipeline_flags_get_type() -> GType;
2941
2942 pub fn ges_track_type_get_type() -> GType;
2946 pub fn ges_track_type_name(type_: GESTrackType) -> *const c_char;
2947
2948 pub fn ges_effect_class_register_rate_property(
2952 klass: *mut GESEffectClass,
2953 element_name: *const c_char,
2954 property_name: *const c_char,
2955 ) -> gboolean;
2956
2957 pub fn ges_formatter_class_register_metas(
2961 klass: *mut GESFormatterClass,
2962 name: *const c_char,
2963 description: *const c_char,
2964 extensions: *const c_char,
2965 caps: *const c_char,
2966 version: c_double,
2967 rank: gst::GstRank,
2968 );
2969
2970 pub fn ges_uri_clip_asset_class_set_timeout(
2974 klass: *mut GESUriClipAssetClass,
2975 timeout: gst::GstClockTime,
2976 );
2977
2978 pub fn ges_asset_get_type() -> GType;
2982 pub fn ges_asset_needs_reload(extractable_type: GType, id: *const c_char) -> gboolean;
2983 pub fn ges_asset_request(
2984 extractable_type: GType,
2985 id: *const c_char,
2986 error: *mut *mut glib::GError,
2987 ) -> *mut GESAsset;
2988 pub fn ges_asset_request_async(
2989 extractable_type: GType,
2990 id: *const c_char,
2991 cancellable: *mut gio::GCancellable,
2992 callback: gio::GAsyncReadyCallback,
2993 user_data: gpointer,
2994 );
2995 pub fn ges_asset_request_finish(
2996 res: *mut gio::GAsyncResult,
2997 error: *mut *mut glib::GError,
2998 ) -> *mut GESAsset;
2999 pub fn ges_asset_extract(
3000 self_: *mut GESAsset,
3001 error: *mut *mut glib::GError,
3002 ) -> *mut GESExtractable;
3003 pub fn ges_asset_get_error(self_: *mut GESAsset) -> *mut glib::GError;
3004 pub fn ges_asset_get_extractable_type(self_: *mut GESAsset) -> GType;
3005 pub fn ges_asset_get_id(self_: *mut GESAsset) -> *const c_char;
3006 pub fn ges_asset_get_proxy(asset: *mut GESAsset) -> *mut GESAsset;
3007 pub fn ges_asset_get_proxy_target(proxy: *mut GESAsset) -> *mut GESAsset;
3008 pub fn ges_asset_list_proxies(asset: *mut GESAsset) -> *mut glib::GList;
3009 pub fn ges_asset_set_proxy(asset: *mut GESAsset, proxy: *mut GESAsset) -> gboolean;
3010 pub fn ges_asset_unproxy(asset: *mut GESAsset, proxy: *mut GESAsset) -> gboolean;
3011
3012 pub fn ges_audio_source_get_type() -> GType;
3016
3017 pub fn ges_audio_test_source_get_type() -> GType;
3021 pub fn ges_audio_test_source_get_freq(self_: *mut GESAudioTestSource) -> c_double;
3022 pub fn ges_audio_test_source_get_volume(self_: *mut GESAudioTestSource) -> c_double;
3023 pub fn ges_audio_test_source_set_freq(self_: *mut GESAudioTestSource, freq: c_double);
3024 pub fn ges_audio_test_source_set_volume(self_: *mut GESAudioTestSource, volume: c_double);
3025
3026 pub fn ges_audio_track_get_type() -> GType;
3030 pub fn ges_audio_track_new() -> *mut GESAudioTrack;
3031
3032 pub fn ges_audio_transition_get_type() -> GType;
3036 pub fn ges_audio_transition_new() -> *mut GESAudioTransition;
3037
3038 pub fn ges_audio_uri_source_get_type() -> GType;
3042
3043 pub fn ges_base_effect_get_type() -> GType;
3047 #[cfg(feature = "v1_18")]
3048 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3049 pub fn ges_base_effect_is_time_effect(effect: *mut GESBaseEffect) -> gboolean;
3050 #[cfg(feature = "v1_18")]
3051 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3052 pub fn ges_base_effect_register_time_property(
3053 effect: *mut GESBaseEffect,
3054 child_property_name: *const c_char,
3055 ) -> gboolean;
3056 #[cfg(feature = "v1_18")]
3057 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3058 pub fn ges_base_effect_set_time_translation_funcs(
3059 effect: *mut GESBaseEffect,
3060 source_to_sink_func: GESBaseEffectTimeTranslationFunc,
3061 sink_to_source_func: GESBaseEffectTimeTranslationFunc,
3062 user_data: gpointer,
3063 destroy: glib::GDestroyNotify,
3064 ) -> gboolean;
3065
3066 pub fn ges_base_effect_clip_get_type() -> GType;
3070
3071 pub fn ges_base_transition_clip_get_type() -> GType;
3075
3076 pub fn ges_base_xml_formatter_get_type() -> GType;
3080
3081 pub fn ges_clip_get_type() -> GType;
3085 pub fn ges_clip_add_asset(clip: *mut GESClip, asset: *mut GESAsset) -> *mut GESTrackElement;
3086 #[cfg(feature = "v1_18")]
3087 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3088 pub fn ges_clip_add_child_to_track(
3089 clip: *mut GESClip,
3090 child: *mut GESTrackElement,
3091 track: *mut GESTrack,
3092 error: *mut *mut glib::GError,
3093 ) -> *mut GESTrackElement;
3094 #[cfg(feature = "v1_18")]
3095 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3096 pub fn ges_clip_add_top_effect(
3097 clip: *mut GESClip,
3098 effect: *mut GESBaseEffect,
3099 index: c_int,
3100 error: *mut *mut glib::GError,
3101 ) -> gboolean;
3102 pub fn ges_clip_find_track_element(
3103 clip: *mut GESClip,
3104 track: *mut GESTrack,
3105 type_: GType,
3106 ) -> *mut GESTrackElement;
3107 pub fn ges_clip_find_track_elements(
3108 clip: *mut GESClip,
3109 track: *mut GESTrack,
3110 track_type: GESTrackType,
3111 type_: GType,
3112 ) -> *mut glib::GList;
3113 #[cfg(feature = "v1_18")]
3114 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3115 pub fn ges_clip_get_duration_limit(clip: *mut GESClip) -> gst::GstClockTime;
3116 #[cfg(feature = "v1_18")]
3117 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3118 pub fn ges_clip_get_internal_time_from_timeline_time(
3119 clip: *mut GESClip,
3120 child: *mut GESTrackElement,
3121 timeline_time: gst::GstClockTime,
3122 error: *mut *mut glib::GError,
3123 ) -> gst::GstClockTime;
3124 pub fn ges_clip_get_layer(clip: *mut GESClip) -> *mut GESLayer;
3125 pub fn ges_clip_get_supported_formats(clip: *mut GESClip) -> GESTrackType;
3126 #[cfg(feature = "v1_18")]
3127 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3128 pub fn ges_clip_get_timeline_time_from_internal_time(
3129 clip: *mut GESClip,
3130 child: *mut GESTrackElement,
3131 internal_time: gst::GstClockTime,
3132 error: *mut *mut glib::GError,
3133 ) -> gst::GstClockTime;
3134 #[cfg(feature = "v1_18")]
3135 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3136 pub fn ges_clip_get_timeline_time_from_source_frame(
3137 clip: *mut GESClip,
3138 frame_number: GESFrameNumber,
3139 error: *mut *mut glib::GError,
3140 ) -> gst::GstClockTime;
3141 pub fn ges_clip_get_top_effect_index(clip: *mut GESClip, effect: *mut GESBaseEffect) -> c_int;
3142 pub fn ges_clip_get_top_effect_position(
3143 clip: *mut GESClip,
3144 effect: *mut GESBaseEffect,
3145 ) -> c_int;
3146 pub fn ges_clip_get_top_effects(clip: *mut GESClip) -> *mut glib::GList;
3147 pub fn ges_clip_move_to_layer(clip: *mut GESClip, layer: *mut GESLayer) -> gboolean;
3148 #[cfg(feature = "v1_18")]
3149 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3150 pub fn ges_clip_move_to_layer_full(
3151 clip: *mut GESClip,
3152 layer: *mut GESLayer,
3153 error: *mut *mut glib::GError,
3154 ) -> gboolean;
3155 #[cfg(feature = "v1_18")]
3156 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3157 pub fn ges_clip_remove_top_effect(
3158 clip: *mut GESClip,
3159 effect: *mut GESBaseEffect,
3160 error: *mut *mut glib::GError,
3161 ) -> gboolean;
3162 pub fn ges_clip_set_supported_formats(clip: *mut GESClip, supportedformats: GESTrackType);
3163 pub fn ges_clip_set_top_effect_index(
3164 clip: *mut GESClip,
3165 effect: *mut GESBaseEffect,
3166 newindex: c_uint,
3167 ) -> gboolean;
3168 #[cfg(feature = "v1_18")]
3169 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3170 pub fn ges_clip_set_top_effect_index_full(
3171 clip: *mut GESClip,
3172 effect: *mut GESBaseEffect,
3173 newindex: c_uint,
3174 error: *mut *mut glib::GError,
3175 ) -> gboolean;
3176 pub fn ges_clip_set_top_effect_priority(
3177 clip: *mut GESClip,
3178 effect: *mut GESBaseEffect,
3179 newpriority: c_uint,
3180 ) -> gboolean;
3181 pub fn ges_clip_split(clip: *mut GESClip, position: u64) -> *mut GESClip;
3182 #[cfg(feature = "v1_18")]
3183 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3184 pub fn ges_clip_split_full(
3185 clip: *mut GESClip,
3186 position: u64,
3187 error: *mut *mut glib::GError,
3188 ) -> *mut GESClip;
3189
3190 pub fn ges_clip_asset_get_type() -> GType;
3194 #[cfg(feature = "v1_18")]
3195 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3196 pub fn ges_clip_asset_get_frame_time(
3197 self_: *mut GESClipAsset,
3198 frame_number: GESFrameNumber,
3199 ) -> gst::GstClockTime;
3200 #[cfg(feature = "v1_18")]
3201 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3202 pub fn ges_clip_asset_get_natural_framerate(
3203 self_: *mut GESClipAsset,
3204 framerate_n: *mut c_int,
3205 framerate_d: *mut c_int,
3206 ) -> gboolean;
3207 pub fn ges_clip_asset_get_supported_formats(self_: *mut GESClipAsset) -> GESTrackType;
3208 pub fn ges_clip_asset_set_supported_formats(
3209 self_: *mut GESClipAsset,
3210 supportedformats: GESTrackType,
3211 );
3212
3213 pub fn ges_command_line_formatter_get_type() -> GType;
3217 pub fn ges_command_line_formatter_get_help(
3218 nargs: c_int,
3219 commands: *mut *mut c_char,
3220 ) -> *mut c_char;
3221 pub fn ges_command_line_formatter_get_timeline_uri(timeline: *mut GESTimeline) -> *mut c_char;
3222
3223 pub fn ges_container_get_type() -> GType;
3227 pub fn ges_container_group(containers: *mut glib::GList) -> *mut GESContainer;
3228 pub fn ges_container_add(
3229 container: *mut GESContainer,
3230 child: *mut GESTimelineElement,
3231 ) -> gboolean;
3232 pub fn ges_container_edit(
3233 container: *mut GESContainer,
3234 layers: *mut glib::GList,
3235 new_layer_priority: c_int,
3236 mode: GESEditMode,
3237 edge: GESEdge,
3238 position: u64,
3239 ) -> gboolean;
3240 pub fn ges_container_get_children(
3241 container: *mut GESContainer,
3242 recursive: gboolean,
3243 ) -> *mut glib::GList;
3244 pub fn ges_container_remove(
3245 container: *mut GESContainer,
3246 child: *mut GESTimelineElement,
3247 ) -> gboolean;
3248 pub fn ges_container_ungroup(
3249 container: *mut GESContainer,
3250 recursive: gboolean,
3251 ) -> *mut glib::GList;
3252
3253 #[cfg(feature = "v1_24")]
3257 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
3258 pub fn ges_discoverer_manager_get_type() -> GType;
3259 #[cfg(feature = "v1_24")]
3260 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
3261 pub fn ges_discoverer_manager_get_default() -> *mut GESDiscovererManager;
3262 #[cfg(feature = "v1_24")]
3263 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
3264 pub fn ges_discoverer_manager_get_timeout(
3265 self_: *mut GESDiscovererManager,
3266 ) -> gst::GstClockTime;
3267 #[cfg(feature = "v1_24")]
3268 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
3269 pub fn ges_discoverer_manager_get_use_cache(self_: *mut GESDiscovererManager) -> gboolean;
3270 #[cfg(feature = "v1_24")]
3271 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
3272 pub fn ges_discoverer_manager_set_timeout(
3273 self_: *mut GESDiscovererManager,
3274 timeout: gst::GstClockTime,
3275 );
3276 #[cfg(feature = "v1_24")]
3277 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
3278 pub fn ges_discoverer_manager_set_use_cache(
3279 self_: *mut GESDiscovererManager,
3280 use_cache: gboolean,
3281 );
3282
3283 pub fn ges_effect_get_type() -> GType;
3287 pub fn ges_effect_new(bin_description: *const c_char) -> *mut GESEffect;
3288
3289 pub fn ges_effect_asset_get_type() -> GType;
3293
3294 pub fn ges_effect_clip_get_type() -> GType;
3298 pub fn ges_effect_clip_new(
3299 video_bin_description: *const c_char,
3300 audio_bin_description: *const c_char,
3301 ) -> *mut GESEffectClip;
3302
3303 pub fn ges_formatter_get_type() -> GType;
3307 pub fn ges_formatter_can_load_uri(
3308 uri: *const c_char,
3309 error: *mut *mut glib::GError,
3310 ) -> gboolean;
3311 pub fn ges_formatter_can_save_uri(
3312 uri: *const c_char,
3313 error: *mut *mut glib::GError,
3314 ) -> gboolean;
3315 pub fn ges_formatter_get_default() -> *mut GESAsset;
3316 pub fn ges_formatter_load_from_uri(
3317 formatter: *mut GESFormatter,
3318 timeline: *mut GESTimeline,
3319 uri: *const c_char,
3320 error: *mut *mut glib::GError,
3321 ) -> gboolean;
3322 pub fn ges_formatter_save_to_uri(
3323 formatter: *mut GESFormatter,
3324 timeline: *mut GESTimeline,
3325 uri: *const c_char,
3326 overwrite: gboolean,
3327 error: *mut *mut glib::GError,
3328 ) -> gboolean;
3329
3330 pub fn ges_group_get_type() -> GType;
3334 pub fn ges_group_new() -> *mut GESGroup;
3335
3336 pub fn ges_image_source_get_type() -> GType;
3340
3341 pub fn ges_layer_get_type() -> GType;
3345 pub fn ges_layer_new() -> *mut GESLayer;
3346 pub fn ges_layer_add_asset(
3347 layer: *mut GESLayer,
3348 asset: *mut GESAsset,
3349 start: gst::GstClockTime,
3350 inpoint: gst::GstClockTime,
3351 duration: gst::GstClockTime,
3352 track_types: GESTrackType,
3353 ) -> *mut GESClip;
3354 #[cfg(feature = "v1_18")]
3355 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3356 pub fn ges_layer_add_asset_full(
3357 layer: *mut GESLayer,
3358 asset: *mut GESAsset,
3359 start: gst::GstClockTime,
3360 inpoint: gst::GstClockTime,
3361 duration: gst::GstClockTime,
3362 track_types: GESTrackType,
3363 error: *mut *mut glib::GError,
3364 ) -> *mut GESClip;
3365 pub fn ges_layer_add_clip(layer: *mut GESLayer, clip: *mut GESClip) -> gboolean;
3366 #[cfg(feature = "v1_18")]
3367 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3368 pub fn ges_layer_add_clip_full(
3369 layer: *mut GESLayer,
3370 clip: *mut GESClip,
3371 error: *mut *mut glib::GError,
3372 ) -> gboolean;
3373 #[cfg(feature = "v1_18")]
3374 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3375 pub fn ges_layer_get_active_for_track(layer: *mut GESLayer, track: *mut GESTrack) -> gboolean;
3376 pub fn ges_layer_get_auto_transition(layer: *mut GESLayer) -> gboolean;
3377 pub fn ges_layer_get_clips(layer: *mut GESLayer) -> *mut glib::GList;
3378 pub fn ges_layer_get_clips_in_interval(
3379 layer: *mut GESLayer,
3380 start: gst::GstClockTime,
3381 end: gst::GstClockTime,
3382 ) -> *mut glib::GList;
3383 pub fn ges_layer_get_duration(layer: *mut GESLayer) -> gst::GstClockTime;
3384 pub fn ges_layer_get_priority(layer: *mut GESLayer) -> c_uint;
3385 pub fn ges_layer_get_timeline(layer: *mut GESLayer) -> *mut GESTimeline;
3386 pub fn ges_layer_is_empty(layer: *mut GESLayer) -> gboolean;
3387 pub fn ges_layer_remove_clip(layer: *mut GESLayer, clip: *mut GESClip) -> gboolean;
3388 #[cfg(feature = "v1_18")]
3389 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3390 pub fn ges_layer_set_active_for_tracks(
3391 layer: *mut GESLayer,
3392 active: gboolean,
3393 tracks: *mut glib::GList,
3394 ) -> gboolean;
3395 pub fn ges_layer_set_auto_transition(layer: *mut GESLayer, auto_transition: gboolean);
3396 pub fn ges_layer_set_priority(layer: *mut GESLayer, priority: c_uint);
3397 pub fn ges_layer_set_timeline(layer: *mut GESLayer, timeline: *mut GESTimeline);
3398
3399 #[cfg(feature = "v1_18")]
3403 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3404 pub fn ges_marker_get_type() -> GType;
3405
3406 #[cfg(feature = "v1_18")]
3410 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3411 pub fn ges_marker_list_get_type() -> GType;
3412 #[cfg(feature = "v1_18")]
3413 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3414 pub fn ges_marker_list_new() -> *mut GESMarkerList;
3415 #[cfg(feature = "v1_18")]
3416 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3417 pub fn ges_marker_list_add(
3418 list: *mut GESMarkerList,
3419 position: gst::GstClockTime,
3420 ) -> *mut GESMarker;
3421 #[cfg(feature = "v1_18")]
3422 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3423 pub fn ges_marker_list_get_markers(list: *mut GESMarkerList) -> *mut glib::GList;
3424 #[cfg(feature = "v1_18")]
3425 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3426 pub fn ges_marker_list_move(
3427 list: *mut GESMarkerList,
3428 marker: *mut GESMarker,
3429 position: gst::GstClockTime,
3430 ) -> gboolean;
3431 #[cfg(feature = "v1_18")]
3432 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3433 pub fn ges_marker_list_remove(list: *mut GESMarkerList, marker: *mut GESMarker) -> gboolean;
3434 #[cfg(feature = "v1_18")]
3435 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3436 pub fn ges_marker_list_size(list: *mut GESMarkerList) -> c_uint;
3437
3438 pub fn ges_multi_file_source_get_type() -> GType;
3442 pub fn ges_multi_file_source_new(uri: *mut c_char) -> *mut GESMultiFileSource;
3443
3444 pub fn ges_operation_get_type() -> GType;
3448
3449 pub fn ges_operation_clip_get_type() -> GType;
3453
3454 pub fn ges_overlay_clip_get_type() -> GType;
3458
3459 pub fn ges_pipeline_get_type() -> GType;
3463 pub fn ges_pipeline_new() -> *mut GESPipeline;
3464 pub fn ges_pipeline_get_mode(pipeline: *mut GESPipeline) -> GESPipelineFlags;
3465 pub fn ges_pipeline_get_thumbnail(
3466 self_: *mut GESPipeline,
3467 caps: *mut gst::GstCaps,
3468 ) -> *mut gst::GstSample;
3469 pub fn ges_pipeline_get_thumbnail_rgb24(
3470 self_: *mut GESPipeline,
3471 width: c_int,
3472 height: c_int,
3473 ) -> *mut gst::GstSample;
3474 pub fn ges_pipeline_preview_get_audio_sink(self_: *mut GESPipeline) -> *mut gst::GstElement;
3475 pub fn ges_pipeline_preview_get_video_sink(self_: *mut GESPipeline) -> *mut gst::GstElement;
3476 pub fn ges_pipeline_preview_set_audio_sink(self_: *mut GESPipeline, sink: *mut gst::GstElement);
3477 pub fn ges_pipeline_preview_set_video_sink(self_: *mut GESPipeline, sink: *mut gst::GstElement);
3478 pub fn ges_pipeline_save_thumbnail(
3479 self_: *mut GESPipeline,
3480 width: c_int,
3481 height: c_int,
3482 format: *const c_char,
3483 location: *const c_char,
3484 error: *mut *mut glib::GError,
3485 ) -> gboolean;
3486 pub fn ges_pipeline_set_mode(pipeline: *mut GESPipeline, mode: GESPipelineFlags) -> gboolean;
3487 pub fn ges_pipeline_set_render_settings(
3488 pipeline: *mut GESPipeline,
3489 output_uri: *const c_char,
3490 profile: *mut gst_pbutils::GstEncodingProfile,
3491 ) -> gboolean;
3492 pub fn ges_pipeline_set_timeline(
3493 pipeline: *mut GESPipeline,
3494 timeline: *mut GESTimeline,
3495 ) -> gboolean;
3496
3497 pub fn ges_project_get_type() -> GType;
3505 pub fn ges_project_new(uri: *const c_char) -> *mut GESProject;
3506 pub fn ges_project_add_asset(project: *mut GESProject, asset: *mut GESAsset) -> gboolean;
3507 pub fn ges_project_add_encoding_profile(
3508 project: *mut GESProject,
3509 profile: *mut gst_pbutils::GstEncodingProfile,
3510 ) -> gboolean;
3511 #[cfg(feature = "v1_18")]
3512 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3513 pub fn ges_project_add_formatter(project: *mut GESProject, formatter: *mut GESFormatter);
3514 pub fn ges_project_create_asset(
3515 project: *mut GESProject,
3516 id: *const c_char,
3517 extractable_type: GType,
3518 ) -> gboolean;
3519 pub fn ges_project_create_asset_sync(
3520 project: *mut GESProject,
3521 id: *const c_char,
3522 extractable_type: GType,
3523 error: *mut *mut glib::GError,
3524 ) -> *mut GESAsset;
3525 pub fn ges_project_get_asset(
3526 project: *mut GESProject,
3527 id: *const c_char,
3528 extractable_type: GType,
3529 ) -> *mut GESAsset;
3530 pub fn ges_project_get_loading_assets(project: *mut GESProject) -> *mut glib::GList;
3531 pub fn ges_project_get_uri(project: *mut GESProject) -> *mut c_char;
3532 pub fn ges_project_list_assets(project: *mut GESProject, filter: GType) -> *mut glib::GList;
3533 pub fn ges_project_list_encoding_profiles(project: *mut GESProject) -> *const glib::GList;
3534 pub fn ges_project_load(
3535 project: *mut GESProject,
3536 timeline: *mut GESTimeline,
3537 error: *mut *mut glib::GError,
3538 ) -> gboolean;
3539 pub fn ges_project_remove_asset(project: *mut GESProject, asset: *mut GESAsset) -> gboolean;
3540 pub fn ges_project_save(
3541 project: *mut GESProject,
3542 timeline: *mut GESTimeline,
3543 uri: *const c_char,
3544 formatter_asset: *mut GESAsset,
3545 overwrite: gboolean,
3546 error: *mut *mut glib::GError,
3547 ) -> gboolean;
3548
3549 pub fn ges_source_get_type() -> GType;
3553
3554 pub fn ges_source_clip_get_type() -> GType;
3558 #[cfg(feature = "v1_18")]
3559 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3560 pub fn ges_source_clip_new_time_overlay() -> *mut GESSourceClip;
3561
3562 #[cfg(feature = "v1_18")]
3566 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3567 pub fn ges_source_clip_asset_get_type() -> GType;
3568
3569 pub fn ges_test_clip_get_type() -> GType;
3573 pub fn ges_test_clip_new() -> *mut GESTestClip;
3574 pub fn ges_test_clip_new_for_nick(nick: *mut c_char) -> *mut GESTestClip;
3575 pub fn ges_test_clip_get_frequency(self_: *mut GESTestClip) -> c_double;
3576 pub fn ges_test_clip_get_volume(self_: *mut GESTestClip) -> c_double;
3577 pub fn ges_test_clip_get_vpattern(self_: *mut GESTestClip) -> GESVideoTestPattern;
3578 pub fn ges_test_clip_is_muted(self_: *mut GESTestClip) -> gboolean;
3579 pub fn ges_test_clip_set_frequency(self_: *mut GESTestClip, freq: c_double);
3580 pub fn ges_test_clip_set_mute(self_: *mut GESTestClip, mute: gboolean);
3581 pub fn ges_test_clip_set_volume(self_: *mut GESTestClip, volume: c_double);
3582 pub fn ges_test_clip_set_vpattern(self_: *mut GESTestClip, vpattern: GESVideoTestPattern);
3583
3584 pub fn ges_text_overlay_get_type() -> GType;
3588 pub fn ges_text_overlay_new() -> *mut GESTextOverlay;
3589 pub fn ges_text_overlay_get_color(self_: *mut GESTextOverlay) -> u32;
3590 pub fn ges_text_overlay_get_font_desc(self_: *mut GESTextOverlay) -> *const c_char;
3591 pub fn ges_text_overlay_get_halignment(self_: *mut GESTextOverlay) -> GESTextHAlign;
3592 pub fn ges_text_overlay_get_text(self_: *mut GESTextOverlay) -> *const c_char;
3593 pub fn ges_text_overlay_get_valignment(self_: *mut GESTextOverlay) -> GESTextVAlign;
3594 pub fn ges_text_overlay_get_xpos(self_: *mut GESTextOverlay) -> c_double;
3595 pub fn ges_text_overlay_get_ypos(self_: *mut GESTextOverlay) -> c_double;
3596 pub fn ges_text_overlay_set_color(self_: *mut GESTextOverlay, color: u32);
3597 pub fn ges_text_overlay_set_font_desc(self_: *mut GESTextOverlay, font_desc: *const c_char);
3598 pub fn ges_text_overlay_set_halignment(self_: *mut GESTextOverlay, halign: GESTextHAlign);
3599 pub fn ges_text_overlay_set_text(self_: *mut GESTextOverlay, text: *const c_char);
3600 pub fn ges_text_overlay_set_valignment(self_: *mut GESTextOverlay, valign: GESTextVAlign);
3601 pub fn ges_text_overlay_set_xpos(self_: *mut GESTextOverlay, position: c_double);
3602 pub fn ges_text_overlay_set_ypos(self_: *mut GESTextOverlay, position: c_double);
3603
3604 pub fn ges_text_overlay_clip_get_type() -> GType;
3608 pub fn ges_text_overlay_clip_new() -> *mut GESTextOverlayClip;
3609 pub fn ges_text_overlay_clip_get_color(self_: *mut GESTextOverlayClip) -> u32;
3610 pub fn ges_text_overlay_clip_get_font_desc(self_: *mut GESTextOverlayClip) -> *const c_char;
3611 pub fn ges_text_overlay_clip_get_halignment(self_: *mut GESTextOverlayClip) -> GESTextHAlign;
3612 pub fn ges_text_overlay_clip_get_text(self_: *mut GESTextOverlayClip) -> *const c_char;
3613 pub fn ges_text_overlay_clip_get_valignment(self_: *mut GESTextOverlayClip) -> GESTextVAlign;
3614 pub fn ges_text_overlay_clip_get_xpos(self_: *mut GESTextOverlayClip) -> c_double;
3615 pub fn ges_text_overlay_clip_get_ypos(self_: *mut GESTextOverlayClip) -> c_double;
3616 pub fn ges_text_overlay_clip_set_color(self_: *mut GESTextOverlayClip, color: u32);
3617 pub fn ges_text_overlay_clip_set_font_desc(
3618 self_: *mut GESTextOverlayClip,
3619 font_desc: *const c_char,
3620 );
3621 pub fn ges_text_overlay_clip_set_halign(self_: *mut GESTextOverlayClip, halign: GESTextHAlign);
3622 pub fn ges_text_overlay_clip_set_text(self_: *mut GESTextOverlayClip, text: *const c_char);
3623 pub fn ges_text_overlay_clip_set_valign(self_: *mut GESTextOverlayClip, valign: GESTextVAlign);
3624 pub fn ges_text_overlay_clip_set_xpos(self_: *mut GESTextOverlayClip, position: c_double);
3625 pub fn ges_text_overlay_clip_set_ypos(self_: *mut GESTextOverlayClip, position: c_double);
3626
3627 pub fn ges_timeline_get_type() -> GType;
3631 pub fn ges_timeline_new() -> *mut GESTimeline;
3632 pub fn ges_timeline_new_audio_video() -> *mut GESTimeline;
3633 pub fn ges_timeline_new_from_uri(
3634 uri: *const c_char,
3635 error: *mut *mut glib::GError,
3636 ) -> *mut GESTimeline;
3637 pub fn ges_timeline_add_layer(timeline: *mut GESTimeline, layer: *mut GESLayer) -> gboolean;
3638 pub fn ges_timeline_add_track(timeline: *mut GESTimeline, track: *mut GESTrack) -> gboolean;
3639 pub fn ges_timeline_append_layer(timeline: *mut GESTimeline) -> *mut GESLayer;
3640 pub fn ges_timeline_commit(timeline: *mut GESTimeline) -> gboolean;
3641 pub fn ges_timeline_commit_sync(timeline: *mut GESTimeline) -> gboolean;
3642 #[cfg(feature = "v1_22")]
3643 #[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
3644 pub fn ges_timeline_disable_edit_apis(self_: *mut GESTimeline, disable_edit_apis: gboolean);
3645 #[cfg(feature = "v1_20")]
3646 #[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
3647 pub fn ges_timeline_freeze_commit(timeline: *mut GESTimeline);
3648 pub fn ges_timeline_get_auto_transition(timeline: *mut GESTimeline) -> gboolean;
3649 pub fn ges_timeline_get_duration(timeline: *mut GESTimeline) -> gst::GstClockTime;
3650 #[cfg(feature = "v1_22")]
3651 #[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
3652 pub fn ges_timeline_get_edit_apis_disabled(self_: *mut GESTimeline) -> gboolean;
3653 pub fn ges_timeline_get_element(
3654 timeline: *mut GESTimeline,
3655 name: *const c_char,
3656 ) -> *mut GESTimelineElement;
3657 #[cfg(feature = "v1_18")]
3658 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3659 pub fn ges_timeline_get_frame_at(
3660 self_: *mut GESTimeline,
3661 timestamp: gst::GstClockTime,
3662 ) -> GESFrameNumber;
3663 #[cfg(feature = "v1_18")]
3664 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3665 pub fn ges_timeline_get_frame_time(
3666 self_: *mut GESTimeline,
3667 frame_number: GESFrameNumber,
3668 ) -> gst::GstClockTime;
3669 pub fn ges_timeline_get_groups(timeline: *mut GESTimeline) -> *mut glib::GList;
3670 pub fn ges_timeline_get_layer(timeline: *mut GESTimeline, priority: c_uint) -> *mut GESLayer;
3671 pub fn ges_timeline_get_layers(timeline: *mut GESTimeline) -> *mut glib::GList;
3672 pub fn ges_timeline_get_pad_for_track(
3673 timeline: *mut GESTimeline,
3674 track: *mut GESTrack,
3675 ) -> *mut gst::GstPad;
3676 pub fn ges_timeline_get_snapping_distance(timeline: *mut GESTimeline) -> gst::GstClockTime;
3677 pub fn ges_timeline_get_track_for_pad(
3678 timeline: *mut GESTimeline,
3679 pad: *mut gst::GstPad,
3680 ) -> *mut GESTrack;
3681 pub fn ges_timeline_get_tracks(timeline: *mut GESTimeline) -> *mut glib::GList;
3682 pub fn ges_timeline_is_empty(timeline: *mut GESTimeline) -> gboolean;
3683 pub fn ges_timeline_load_from_uri(
3684 timeline: *mut GESTimeline,
3685 uri: *const c_char,
3686 error: *mut *mut glib::GError,
3687 ) -> gboolean;
3688 #[cfg(feature = "v1_16")]
3689 #[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
3690 pub fn ges_timeline_move_layer(
3691 timeline: *mut GESTimeline,
3692 layer: *mut GESLayer,
3693 new_layer_priority: c_uint,
3694 ) -> gboolean;
3695 pub fn ges_timeline_paste_element(
3696 timeline: *mut GESTimeline,
3697 element: *mut GESTimelineElement,
3698 position: gst::GstClockTime,
3699 layer_priority: c_int,
3700 ) -> *mut GESTimelineElement;
3701 pub fn ges_timeline_remove_layer(timeline: *mut GESTimeline, layer: *mut GESLayer) -> gboolean;
3702 pub fn ges_timeline_remove_track(timeline: *mut GESTimeline, track: *mut GESTrack) -> gboolean;
3703 pub fn ges_timeline_save_to_uri(
3704 timeline: *mut GESTimeline,
3705 uri: *const c_char,
3706 formatter_asset: *mut GESAsset,
3707 overwrite: gboolean,
3708 error: *mut *mut glib::GError,
3709 ) -> gboolean;
3710 pub fn ges_timeline_set_auto_transition(timeline: *mut GESTimeline, auto_transition: gboolean);
3711 pub fn ges_timeline_set_snapping_distance(
3712 timeline: *mut GESTimeline,
3713 snapping_distance: gst::GstClockTime,
3714 );
3715 #[cfg(feature = "v1_20")]
3716 #[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
3717 pub fn ges_timeline_thaw_commit(timeline: *mut GESTimeline);
3718
3719 pub fn ges_timeline_element_get_type() -> GType;
3723 pub fn ges_timeline_element_add_child_property(
3724 self_: *mut GESTimelineElement,
3725 pspec: *mut gobject::GParamSpec,
3726 child: *mut gobject::GObject,
3727 ) -> gboolean;
3728 pub fn ges_timeline_element_copy(
3729 self_: *mut GESTimelineElement,
3730 deep: gboolean,
3731 ) -> *mut GESTimelineElement;
3732 #[cfg(feature = "v1_18")]
3733 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3734 pub fn ges_timeline_element_edit(
3735 self_: *mut GESTimelineElement,
3736 layers: *mut glib::GList,
3737 new_layer_priority: i64,
3738 mode: GESEditMode,
3739 edge: GESEdge,
3740 position: u64,
3741 ) -> gboolean;
3742 #[cfg(feature = "v1_18")]
3743 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3744 pub fn ges_timeline_element_edit_full(
3745 self_: *mut GESTimelineElement,
3746 new_layer_priority: i64,
3747 mode: GESEditMode,
3748 edge: GESEdge,
3749 position: u64,
3750 error: *mut *mut glib::GError,
3751 ) -> gboolean;
3752 pub fn ges_timeline_element_get_child_properties(
3753 self_: *mut GESTimelineElement,
3754 first_property_name: *const c_char,
3755 ...
3756 );
3757 pub fn ges_timeline_element_get_child_property(
3758 self_: *mut GESTimelineElement,
3759 property_name: *const c_char,
3760 value: *mut gobject::GValue,
3761 ) -> gboolean;
3762 pub fn ges_timeline_element_get_child_property_by_pspec(
3763 self_: *mut GESTimelineElement,
3764 pspec: *mut gobject::GParamSpec,
3765 value: *mut gobject::GValue,
3766 );
3767 pub fn ges_timeline_element_get_duration(self_: *mut GESTimelineElement) -> gst::GstClockTime;
3769 pub fn ges_timeline_element_get_inpoint(self_: *mut GESTimelineElement) -> gst::GstClockTime;
3770 #[cfg(feature = "v1_16")]
3771 #[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
3772 pub fn ges_timeline_element_get_layer_priority(self_: *mut GESTimelineElement) -> u32;
3773 pub fn ges_timeline_element_get_max_duration(
3774 self_: *mut GESTimelineElement,
3775 ) -> gst::GstClockTime;
3776 pub fn ges_timeline_element_get_name(self_: *mut GESTimelineElement) -> *mut c_char;
3777 #[cfg(feature = "v1_18")]
3778 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3779 pub fn ges_timeline_element_get_natural_framerate(
3780 self_: *mut GESTimelineElement,
3781 framerate_n: *mut c_int,
3782 framerate_d: *mut c_int,
3783 ) -> gboolean;
3784 pub fn ges_timeline_element_get_parent(
3785 self_: *mut GESTimelineElement,
3786 ) -> *mut GESTimelineElement;
3787 pub fn ges_timeline_element_get_priority(self_: *mut GESTimelineElement) -> u32;
3788 pub fn ges_timeline_element_get_start(self_: *mut GESTimelineElement) -> gst::GstClockTime;
3789 pub fn ges_timeline_element_get_timeline(self_: *mut GESTimelineElement) -> *mut GESTimeline;
3790 pub fn ges_timeline_element_get_toplevel_parent(
3791 self_: *mut GESTimelineElement,
3792 ) -> *mut GESTimelineElement;
3793 pub fn ges_timeline_element_get_track_types(self_: *mut GESTimelineElement) -> GESTrackType;
3794 pub fn ges_timeline_element_list_children_properties(
3795 self_: *mut GESTimelineElement,
3796 n_properties: *mut c_uint,
3797 ) -> *mut *mut gobject::GParamSpec;
3798 pub fn ges_timeline_element_lookup_child(
3799 self_: *mut GESTimelineElement,
3800 prop_name: *const c_char,
3801 child: *mut *mut gobject::GObject,
3802 pspec: *mut *mut gobject::GParamSpec,
3803 ) -> gboolean;
3804 pub fn ges_timeline_element_paste(
3805 self_: *mut GESTimelineElement,
3806 paste_position: gst::GstClockTime,
3807 ) -> *mut GESTimelineElement;
3808 pub fn ges_timeline_element_remove_child_property(
3809 self_: *mut GESTimelineElement,
3810 pspec: *mut gobject::GParamSpec,
3811 ) -> gboolean;
3812 pub fn ges_timeline_element_ripple(
3813 self_: *mut GESTimelineElement,
3814 start: gst::GstClockTime,
3815 ) -> gboolean;
3816 pub fn ges_timeline_element_ripple_end(
3817 self_: *mut GESTimelineElement,
3818 end: gst::GstClockTime,
3819 ) -> gboolean;
3820 pub fn ges_timeline_element_roll_end(
3821 self_: *mut GESTimelineElement,
3822 end: gst::GstClockTime,
3823 ) -> gboolean;
3824 pub fn ges_timeline_element_roll_start(
3825 self_: *mut GESTimelineElement,
3826 start: gst::GstClockTime,
3827 ) -> gboolean;
3828 pub fn ges_timeline_element_set_child_properties(
3829 self_: *mut GESTimelineElement,
3830 first_property_name: *const c_char,
3831 ...
3832 );
3833 pub fn ges_timeline_element_set_child_property(
3834 self_: *mut GESTimelineElement,
3835 property_name: *const c_char,
3836 value: *const gobject::GValue,
3837 ) -> gboolean;
3838 pub fn ges_timeline_element_set_child_property_by_pspec(
3839 self_: *mut GESTimelineElement,
3840 pspec: *mut gobject::GParamSpec,
3841 value: *const gobject::GValue,
3842 );
3843 #[cfg(feature = "v1_18")]
3844 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3845 pub fn ges_timeline_element_set_child_property_full(
3846 self_: *mut GESTimelineElement,
3847 property_name: *const c_char,
3848 value: *const gobject::GValue,
3849 error: *mut *mut glib::GError,
3850 ) -> gboolean;
3851 pub fn ges_timeline_element_set_duration(
3853 self_: *mut GESTimelineElement,
3854 duration: gst::GstClockTime,
3855 ) -> gboolean;
3856 pub fn ges_timeline_element_set_inpoint(
3857 self_: *mut GESTimelineElement,
3858 inpoint: gst::GstClockTime,
3859 ) -> gboolean;
3860 pub fn ges_timeline_element_set_max_duration(
3861 self_: *mut GESTimelineElement,
3862 maxduration: gst::GstClockTime,
3863 ) -> gboolean;
3864 pub fn ges_timeline_element_set_name(
3865 self_: *mut GESTimelineElement,
3866 name: *const c_char,
3867 ) -> gboolean;
3868 pub fn ges_timeline_element_set_parent(
3869 self_: *mut GESTimelineElement,
3870 parent: *mut GESTimelineElement,
3871 ) -> gboolean;
3872 pub fn ges_timeline_element_set_priority(
3873 self_: *mut GESTimelineElement,
3874 priority: u32,
3875 ) -> gboolean;
3876 pub fn ges_timeline_element_set_start(
3877 self_: *mut GESTimelineElement,
3878 start: gst::GstClockTime,
3879 ) -> gboolean;
3880 pub fn ges_timeline_element_set_timeline(
3881 self_: *mut GESTimelineElement,
3882 timeline: *mut GESTimeline,
3883 ) -> gboolean;
3884 pub fn ges_timeline_element_trim(
3885 self_: *mut GESTimelineElement,
3886 start: gst::GstClockTime,
3887 ) -> gboolean;
3888
3889 pub fn ges_title_clip_get_type() -> GType;
3893 pub fn ges_title_clip_new() -> *mut GESTitleClip;
3894 pub fn ges_title_clip_get_background_color(self_: *mut GESTitleClip) -> u32;
3895 pub fn ges_title_clip_get_font_desc(self_: *mut GESTitleClip) -> *const c_char;
3896 pub fn ges_title_clip_get_halignment(self_: *mut GESTitleClip) -> GESTextHAlign;
3897 pub fn ges_title_clip_get_text(self_: *mut GESTitleClip) -> *const c_char;
3898 pub fn ges_title_clip_get_text_color(self_: *mut GESTitleClip) -> u32;
3899 pub fn ges_title_clip_get_valignment(self_: *mut GESTitleClip) -> GESTextVAlign;
3900 pub fn ges_title_clip_get_xpos(self_: *mut GESTitleClip) -> c_double;
3901 pub fn ges_title_clip_get_ypos(self_: *mut GESTitleClip) -> c_double;
3902 pub fn ges_title_clip_set_background(self_: *mut GESTitleClip, background: u32);
3903 pub fn ges_title_clip_set_color(self_: *mut GESTitleClip, color: u32);
3904 pub fn ges_title_clip_set_font_desc(self_: *mut GESTitleClip, font_desc: *const c_char);
3905 pub fn ges_title_clip_set_halignment(self_: *mut GESTitleClip, halign: GESTextHAlign);
3906 pub fn ges_title_clip_set_text(self_: *mut GESTitleClip, text: *const c_char);
3907 pub fn ges_title_clip_set_valignment(self_: *mut GESTitleClip, valign: GESTextVAlign);
3908 pub fn ges_title_clip_set_xpos(self_: *mut GESTitleClip, position: c_double);
3909 pub fn ges_title_clip_set_ypos(self_: *mut GESTitleClip, position: c_double);
3910
3911 pub fn ges_title_source_get_type() -> GType;
3915 pub fn ges_title_source_get_background_color(source: *mut GESTitleSource) -> u32;
3916 pub fn ges_title_source_get_font_desc(source: *mut GESTitleSource) -> *const c_char;
3917 pub fn ges_title_source_get_halignment(source: *mut GESTitleSource) -> GESTextHAlign;
3918 pub fn ges_title_source_get_text(source: *mut GESTitleSource) -> *const c_char;
3919 pub fn ges_title_source_get_text_color(source: *mut GESTitleSource) -> u32;
3920 pub fn ges_title_source_get_valignment(source: *mut GESTitleSource) -> GESTextVAlign;
3921 pub fn ges_title_source_get_xpos(source: *mut GESTitleSource) -> c_double;
3922 pub fn ges_title_source_get_ypos(source: *mut GESTitleSource) -> c_double;
3923 pub fn ges_title_source_set_background_color(self_: *mut GESTitleSource, color: u32);
3924 pub fn ges_title_source_set_font_desc(self_: *mut GESTitleSource, font_desc: *const c_char);
3925 pub fn ges_title_source_set_halignment(self_: *mut GESTitleSource, halign: GESTextHAlign);
3926 pub fn ges_title_source_set_text(self_: *mut GESTitleSource, text: *const c_char);
3927 pub fn ges_title_source_set_text_color(self_: *mut GESTitleSource, color: u32);
3928 pub fn ges_title_source_set_valignment(self_: *mut GESTitleSource, valign: GESTextVAlign);
3929 pub fn ges_title_source_set_xpos(self_: *mut GESTitleSource, position: c_double);
3930 pub fn ges_title_source_set_ypos(self_: *mut GESTitleSource, position: c_double);
3931
3932 pub fn ges_track_get_type() -> GType;
3936 pub fn ges_track_new(type_: GESTrackType, caps: *mut gst::GstCaps) -> *mut GESTrack;
3937 pub fn ges_track_add_element(track: *mut GESTrack, object: *mut GESTrackElement) -> gboolean;
3938 #[cfg(feature = "v1_18")]
3939 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3940 pub fn ges_track_add_element_full(
3941 track: *mut GESTrack,
3942 object: *mut GESTrackElement,
3943 error: *mut *mut glib::GError,
3944 ) -> gboolean;
3945 pub fn ges_track_commit(track: *mut GESTrack) -> gboolean;
3946 pub fn ges_track_get_caps(track: *mut GESTrack) -> *const gst::GstCaps;
3947 pub fn ges_track_get_elements(track: *mut GESTrack) -> *mut glib::GList;
3948 pub fn ges_track_get_mixing(track: *mut GESTrack) -> gboolean;
3949 #[cfg(feature = "v1_18")]
3950 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3951 pub fn ges_track_get_restriction_caps(track: *mut GESTrack) -> *mut gst::GstCaps;
3952 pub fn ges_track_get_timeline(track: *mut GESTrack) -> *const GESTimeline;
3953 pub fn ges_track_remove_element(track: *mut GESTrack, object: *mut GESTrackElement)
3954 -> gboolean;
3955 #[cfg(feature = "v1_18")]
3956 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3957 pub fn ges_track_remove_element_full(
3958 track: *mut GESTrack,
3959 object: *mut GESTrackElement,
3960 error: *mut *mut glib::GError,
3961 ) -> gboolean;
3962 pub fn ges_track_set_create_element_for_gap_func(
3963 track: *mut GESTrack,
3964 func: GESCreateElementForGapFunc,
3965 );
3966 pub fn ges_track_set_mixing(track: *mut GESTrack, mixing: gboolean);
3967 pub fn ges_track_set_restriction_caps(track: *mut GESTrack, caps: *const gst::GstCaps);
3968 pub fn ges_track_set_timeline(track: *mut GESTrack, timeline: *mut GESTimeline);
3969 pub fn ges_track_update_restriction_caps(track: *mut GESTrack, caps: *const gst::GstCaps);
3970
3971 pub fn ges_track_element_get_type() -> GType;
3975 pub fn ges_track_element_add_children_props(
3976 self_: *mut GESTrackElement,
3977 element: *mut gst::GstElement,
3978 wanted_categories: *mut *const c_char,
3979 blacklist: *mut *const c_char,
3980 whitelist: *mut *const c_char,
3981 );
3982 #[cfg(feature = "v1_18")]
3983 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
3984 pub fn ges_track_element_clamp_control_source(
3985 object: *mut GESTrackElement,
3986 property_name: *const c_char,
3987 );
3988 pub fn ges_track_element_edit(
3989 object: *mut GESTrackElement,
3990 layers: *mut glib::GList,
3991 mode: GESEditMode,
3992 edge: GESEdge,
3993 position: u64,
3994 ) -> gboolean;
3995 pub fn ges_track_element_get_all_control_bindings(
3996 trackelement: *mut GESTrackElement,
3997 ) -> *mut glib::GHashTable;
3998 #[cfg(feature = "v1_18")]
3999 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4000 pub fn ges_track_element_get_auto_clamp_control_sources(
4001 object: *mut GESTrackElement,
4002 ) -> gboolean;
4003 pub fn ges_track_element_get_child_properties(
4004 object: *mut GESTrackElement,
4005 first_property_name: *const c_char,
4006 ...
4007 );
4008 pub fn ges_track_element_get_child_property(
4009 object: *mut GESTrackElement,
4010 property_name: *const c_char,
4011 value: *mut gobject::GValue,
4012 ) -> gboolean;
4013 pub fn ges_track_element_get_child_property_by_pspec(
4014 object: *mut GESTrackElement,
4015 pspec: *mut gobject::GParamSpec,
4016 value: *mut gobject::GValue,
4017 );
4018 pub fn ges_track_element_get_control_binding(
4020 object: *mut GESTrackElement,
4021 property_name: *const c_char,
4022 ) -> *mut gst::GstControlBinding;
4023 pub fn ges_track_element_get_element(object: *mut GESTrackElement) -> *mut gst::GstElement;
4024 pub fn ges_track_element_get_gnlobject(object: *mut GESTrackElement) -> *mut gst::GstElement;
4025 pub fn ges_track_element_get_nleobject(object: *mut GESTrackElement) -> *mut gst::GstElement;
4026 pub fn ges_track_element_get_track(object: *mut GESTrackElement) -> *mut GESTrack;
4027 pub fn ges_track_element_get_track_type(object: *mut GESTrackElement) -> GESTrackType;
4028 #[cfg(feature = "v1_18")]
4029 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4030 pub fn ges_track_element_has_internal_source(object: *mut GESTrackElement) -> gboolean;
4031 pub fn ges_track_element_is_active(object: *mut GESTrackElement) -> gboolean;
4032 #[cfg(feature = "v1_18")]
4033 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4034 pub fn ges_track_element_is_core(object: *mut GESTrackElement) -> gboolean;
4035 pub fn ges_track_element_list_children_properties(
4036 object: *mut GESTrackElement,
4037 n_properties: *mut c_uint,
4038 ) -> *mut *mut gobject::GParamSpec;
4039 pub fn ges_track_element_lookup_child(
4040 object: *mut GESTrackElement,
4041 prop_name: *const c_char,
4042 element: *mut *mut gst::GstElement,
4043 pspec: *mut *mut gobject::GParamSpec,
4044 ) -> gboolean;
4045 pub fn ges_track_element_remove_control_binding(
4046 object: *mut GESTrackElement,
4047 property_name: *const c_char,
4048 ) -> gboolean;
4049 pub fn ges_track_element_set_active(object: *mut GESTrackElement, active: gboolean)
4050 -> gboolean;
4051 #[cfg(feature = "v1_18")]
4052 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4053 pub fn ges_track_element_set_auto_clamp_control_sources(
4054 object: *mut GESTrackElement,
4055 auto_clamp: gboolean,
4056 );
4057 pub fn ges_track_element_set_child_properties(
4058 object: *mut GESTrackElement,
4059 first_property_name: *const c_char,
4060 ...
4061 );
4062 pub fn ges_track_element_set_child_property(
4063 object: *mut GESTrackElement,
4064 property_name: *const c_char,
4065 value: *mut gobject::GValue,
4066 ) -> gboolean;
4067 pub fn ges_track_element_set_child_property_by_pspec(
4068 object: *mut GESTrackElement,
4069 pspec: *mut gobject::GParamSpec,
4070 value: *mut gobject::GValue,
4071 );
4072 pub fn ges_track_element_set_control_source(
4074 object: *mut GESTrackElement,
4075 source: *mut gst::GstControlSource,
4076 property_name: *const c_char,
4077 binding_type: *const c_char,
4078 ) -> gboolean;
4079 #[cfg(feature = "v1_18")]
4080 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4081 pub fn ges_track_element_set_has_internal_source(
4082 object: *mut GESTrackElement,
4083 has_internal_source: gboolean,
4084 ) -> gboolean;
4085 pub fn ges_track_element_set_track_type(object: *mut GESTrackElement, type_: GESTrackType);
4086
4087 pub fn ges_track_element_asset_get_type() -> GType;
4091 #[cfg(feature = "v1_18")]
4092 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4093 pub fn ges_track_element_asset_get_natural_framerate(
4094 self_: *mut GESTrackElementAsset,
4095 framerate_n: *mut c_int,
4096 framerate_d: *mut c_int,
4097 ) -> gboolean;
4098 pub fn ges_track_element_asset_get_track_type(asset: *mut GESTrackElementAsset)
4099 -> GESTrackType;
4100 pub fn ges_track_element_asset_set_track_type(
4101 asset: *mut GESTrackElementAsset,
4102 type_: GESTrackType,
4103 );
4104
4105 pub fn ges_transition_get_type() -> GType;
4109
4110 pub fn ges_transition_clip_get_type() -> GType;
4114 pub fn ges_transition_clip_new(vtype: GESVideoStandardTransitionType)
4115 -> *mut GESTransitionClip;
4116 pub fn ges_transition_clip_new_for_nick(nick: *mut c_char) -> *mut GESTransitionClip;
4117
4118 pub fn ges_uri_clip_get_type() -> GType;
4122 pub fn ges_uri_clip_new(uri: *const c_char) -> *mut GESUriClip;
4123 pub fn ges_uri_clip_get_uri(self_: *mut GESUriClip) -> *const c_char;
4124 pub fn ges_uri_clip_is_image(self_: *mut GESUriClip) -> gboolean;
4125 pub fn ges_uri_clip_is_muted(self_: *mut GESUriClip) -> gboolean;
4126 pub fn ges_uri_clip_set_is_image(self_: *mut GESUriClip, is_image: gboolean);
4127 pub fn ges_uri_clip_set_mute(self_: *mut GESUriClip, mute: gboolean);
4128
4129 pub fn ges_uri_clip_asset_get_type() -> GType;
4133 #[cfg(feature = "v1_16")]
4134 #[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
4135 pub fn ges_uri_clip_asset_finish(
4136 res: *mut gio::GAsyncResult,
4137 error: *mut *mut glib::GError,
4138 ) -> *mut GESUriClipAsset;
4139 pub fn ges_uri_clip_asset_new(
4140 uri: *const c_char,
4141 cancellable: *mut gio::GCancellable,
4142 callback: gio::GAsyncReadyCallback,
4143 user_data: gpointer,
4144 );
4145 pub fn ges_uri_clip_asset_request_sync(
4146 uri: *const c_char,
4147 error: *mut *mut glib::GError,
4148 ) -> *mut GESUriClipAsset;
4149 pub fn ges_uri_clip_asset_get_duration(self_: *mut GESUriClipAsset) -> gst::GstClockTime;
4150 pub fn ges_uri_clip_asset_get_info(
4151 self_: *const GESUriClipAsset,
4152 ) -> *mut gst_pbutils::GstDiscovererInfo;
4153 #[cfg(feature = "v1_18")]
4154 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4155 pub fn ges_uri_clip_asset_get_max_duration(self_: *mut GESUriClipAsset) -> gst::GstClockTime;
4156 pub fn ges_uri_clip_asset_get_stream_assets(self_: *mut GESUriClipAsset) -> *const glib::GList;
4157 #[cfg(feature = "v1_18")]
4158 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4159 pub fn ges_uri_clip_asset_is_image(self_: *mut GESUriClipAsset) -> gboolean;
4160
4161 pub fn ges_uri_source_asset_get_type() -> GType;
4165 pub fn ges_uri_source_asset_get_filesource_asset(
4166 asset: *mut GESUriSourceAsset,
4167 ) -> *const GESUriClipAsset;
4168 pub fn ges_uri_source_asset_get_stream_info(
4169 asset: *mut GESUriSourceAsset,
4170 ) -> *mut gst_pbutils::GstDiscovererStreamInfo;
4171 pub fn ges_uri_source_asset_get_stream_uri(asset: *mut GESUriSourceAsset) -> *const c_char;
4172 #[cfg(feature = "v1_18")]
4173 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4174 pub fn ges_uri_source_asset_is_image(asset: *mut GESUriSourceAsset) -> gboolean;
4175
4176 pub fn ges_video_source_get_type() -> GType;
4180 #[cfg(feature = "v1_18")]
4181 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4182 pub fn ges_video_source_get_natural_size(
4183 self_: *mut GESVideoSource,
4184 width: *mut c_int,
4185 height: *mut c_int,
4186 ) -> gboolean;
4187
4188 pub fn ges_video_test_source_get_type() -> GType;
4192 pub fn ges_video_test_source_get_pattern(
4193 source: *mut GESVideoTestSource,
4194 ) -> GESVideoTestPattern;
4195 pub fn ges_video_test_source_set_pattern(
4196 self_: *mut GESVideoTestSource,
4197 pattern: GESVideoTestPattern,
4198 );
4199
4200 pub fn ges_video_track_get_type() -> GType;
4204 pub fn ges_video_track_new() -> *mut GESVideoTrack;
4205
4206 pub fn ges_video_transition_get_type() -> GType;
4210 pub fn ges_video_transition_new() -> *mut GESVideoTransition;
4211 pub fn ges_video_transition_get_border(self_: *mut GESVideoTransition) -> c_int;
4212 pub fn ges_video_transition_get_transition_type(
4213 trans: *mut GESVideoTransition,
4214 ) -> GESVideoStandardTransitionType;
4215 pub fn ges_video_transition_is_inverted(self_: *mut GESVideoTransition) -> gboolean;
4216 pub fn ges_video_transition_set_border(self_: *mut GESVideoTransition, value: c_uint);
4217 pub fn ges_video_transition_set_inverted(self_: *mut GESVideoTransition, inverted: gboolean);
4218 pub fn ges_video_transition_set_transition_type(
4219 self_: *mut GESVideoTransition,
4220 type_: GESVideoStandardTransitionType,
4221 ) -> gboolean;
4222
4223 pub fn ges_video_uri_source_get_type() -> GType;
4227
4228 pub fn ges_xml_formatter_get_type() -> GType;
4232
4233 pub fn ges_extractable_get_type() -> GType;
4237 pub fn ges_extractable_get_asset(self_: *mut GESExtractable) -> *mut GESAsset;
4238 pub fn ges_extractable_get_id(self_: *mut GESExtractable) -> *mut c_char;
4239 pub fn ges_extractable_set_asset(self_: *mut GESExtractable, asset: *mut GESAsset) -> gboolean;
4240
4241 pub fn ges_meta_container_get_type() -> GType;
4245 pub fn ges_meta_container_add_metas_from_string(
4246 container: *mut GESMetaContainer,
4247 str: *const c_char,
4248 ) -> gboolean;
4249 pub fn ges_meta_container_check_meta_registered(
4250 container: *mut GESMetaContainer,
4251 meta_item: *const c_char,
4252 flags: *mut GESMetaFlag,
4253 type_: *mut GType,
4254 ) -> gboolean;
4255 pub fn ges_meta_container_foreach(
4256 container: *mut GESMetaContainer,
4257 func: GESMetaForeachFunc,
4258 user_data: gpointer,
4259 );
4260 pub fn ges_meta_container_get_boolean(
4261 container: *mut GESMetaContainer,
4262 meta_item: *const c_char,
4263 dest: *mut gboolean,
4264 ) -> gboolean;
4265 pub fn ges_meta_container_get_date(
4266 container: *mut GESMetaContainer,
4267 meta_item: *const c_char,
4268 dest: *mut *mut glib::GDate,
4269 ) -> gboolean;
4270 pub fn ges_meta_container_get_date_time(
4271 container: *mut GESMetaContainer,
4272 meta_item: *const c_char,
4273 dest: *mut *mut gst::GstDateTime,
4274 ) -> gboolean;
4275 pub fn ges_meta_container_get_double(
4276 container: *mut GESMetaContainer,
4277 meta_item: *const c_char,
4278 dest: *mut c_double,
4279 ) -> gboolean;
4280 pub fn ges_meta_container_get_float(
4281 container: *mut GESMetaContainer,
4282 meta_item: *const c_char,
4283 dest: *mut c_float,
4284 ) -> gboolean;
4285 pub fn ges_meta_container_get_int(
4286 container: *mut GESMetaContainer,
4287 meta_item: *const c_char,
4288 dest: *mut c_int,
4289 ) -> gboolean;
4290 pub fn ges_meta_container_get_int64(
4291 container: *mut GESMetaContainer,
4292 meta_item: *const c_char,
4293 dest: *mut i64,
4294 ) -> gboolean;
4295 #[cfg(feature = "v1_18")]
4296 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4297 pub fn ges_meta_container_get_marker_list(
4298 container: *mut GESMetaContainer,
4299 key: *const c_char,
4300 ) -> *mut GESMarkerList;
4301 pub fn ges_meta_container_get_meta(
4302 container: *mut GESMetaContainer,
4303 key: *const c_char,
4304 ) -> *const gobject::GValue;
4305 pub fn ges_meta_container_get_string(
4306 container: *mut GESMetaContainer,
4307 meta_item: *const c_char,
4308 ) -> *const c_char;
4309 pub fn ges_meta_container_get_uint(
4310 container: *mut GESMetaContainer,
4311 meta_item: *const c_char,
4312 dest: *mut c_uint,
4313 ) -> gboolean;
4314 pub fn ges_meta_container_get_uint64(
4315 container: *mut GESMetaContainer,
4316 meta_item: *const c_char,
4317 dest: *mut u64,
4318 ) -> gboolean;
4319 pub fn ges_meta_container_metas_to_string(container: *mut GESMetaContainer) -> *mut c_char;
4320 pub fn ges_meta_container_register_meta(
4321 container: *mut GESMetaContainer,
4322 flags: GESMetaFlag,
4323 meta_item: *const c_char,
4324 value: *const gobject::GValue,
4325 ) -> gboolean;
4326 pub fn ges_meta_container_register_meta_boolean(
4327 container: *mut GESMetaContainer,
4328 flags: GESMetaFlag,
4329 meta_item: *const c_char,
4330 value: gboolean,
4331 ) -> gboolean;
4332 pub fn ges_meta_container_register_meta_date(
4333 container: *mut GESMetaContainer,
4334 flags: GESMetaFlag,
4335 meta_item: *const c_char,
4336 value: *const glib::GDate,
4337 ) -> gboolean;
4338 pub fn ges_meta_container_register_meta_date_time(
4339 container: *mut GESMetaContainer,
4340 flags: GESMetaFlag,
4341 meta_item: *const c_char,
4342 value: *const gst::GstDateTime,
4343 ) -> gboolean;
4344 pub fn ges_meta_container_register_meta_double(
4345 container: *mut GESMetaContainer,
4346 flags: GESMetaFlag,
4347 meta_item: *const c_char,
4348 value: c_double,
4349 ) -> gboolean;
4350 pub fn ges_meta_container_register_meta_float(
4351 container: *mut GESMetaContainer,
4352 flags: GESMetaFlag,
4353 meta_item: *const c_char,
4354 value: c_float,
4355 ) -> gboolean;
4356 pub fn ges_meta_container_register_meta_int(
4357 container: *mut GESMetaContainer,
4358 flags: GESMetaFlag,
4359 meta_item: *const c_char,
4360 value: c_int,
4361 ) -> gboolean;
4362 pub fn ges_meta_container_register_meta_int64(
4363 container: *mut GESMetaContainer,
4364 flags: GESMetaFlag,
4365 meta_item: *const c_char,
4366 value: i64,
4367 ) -> gboolean;
4368 pub fn ges_meta_container_register_meta_string(
4369 container: *mut GESMetaContainer,
4370 flags: GESMetaFlag,
4371 meta_item: *const c_char,
4372 value: *const c_char,
4373 ) -> gboolean;
4374 pub fn ges_meta_container_register_meta_uint(
4375 container: *mut GESMetaContainer,
4376 flags: GESMetaFlag,
4377 meta_item: *const c_char,
4378 value: c_uint,
4379 ) -> gboolean;
4380 pub fn ges_meta_container_register_meta_uint64(
4381 container: *mut GESMetaContainer,
4382 flags: GESMetaFlag,
4383 meta_item: *const c_char,
4384 value: u64,
4385 ) -> gboolean;
4386 #[cfg(feature = "v1_18")]
4387 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4388 pub fn ges_meta_container_register_static_meta(
4389 container: *mut GESMetaContainer,
4390 flags: GESMetaFlag,
4391 meta_item: *const c_char,
4392 type_: GType,
4393 ) -> gboolean;
4394 pub fn ges_meta_container_set_boolean(
4395 container: *mut GESMetaContainer,
4396 meta_item: *const c_char,
4397 value: gboolean,
4398 ) -> gboolean;
4399 pub fn ges_meta_container_set_date(
4400 container: *mut GESMetaContainer,
4401 meta_item: *const c_char,
4402 value: *const glib::GDate,
4403 ) -> gboolean;
4404 pub fn ges_meta_container_set_date_time(
4405 container: *mut GESMetaContainer,
4406 meta_item: *const c_char,
4407 value: *const gst::GstDateTime,
4408 ) -> gboolean;
4409 pub fn ges_meta_container_set_double(
4410 container: *mut GESMetaContainer,
4411 meta_item: *const c_char,
4412 value: c_double,
4413 ) -> gboolean;
4414 pub fn ges_meta_container_set_float(
4415 container: *mut GESMetaContainer,
4416 meta_item: *const c_char,
4417 value: c_float,
4418 ) -> gboolean;
4419 pub fn ges_meta_container_set_int(
4420 container: *mut GESMetaContainer,
4421 meta_item: *const c_char,
4422 value: c_int,
4423 ) -> gboolean;
4424 pub fn ges_meta_container_set_int64(
4425 container: *mut GESMetaContainer,
4426 meta_item: *const c_char,
4427 value: i64,
4428 ) -> gboolean;
4429 #[cfg(feature = "v1_18")]
4430 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4431 pub fn ges_meta_container_set_marker_list(
4432 container: *mut GESMetaContainer,
4433 meta_item: *const c_char,
4434 list: *const GESMarkerList,
4435 ) -> gboolean;
4436 pub fn ges_meta_container_set_meta(
4437 container: *mut GESMetaContainer,
4438 meta_item: *const c_char,
4439 value: *const gobject::GValue,
4440 ) -> gboolean;
4441 pub fn ges_meta_container_set_string(
4442 container: *mut GESMetaContainer,
4443 meta_item: *const c_char,
4444 value: *const c_char,
4445 ) -> gboolean;
4446 pub fn ges_meta_container_set_uint(
4447 container: *mut GESMetaContainer,
4448 meta_item: *const c_char,
4449 value: c_uint,
4450 ) -> gboolean;
4451 pub fn ges_meta_container_set_uint64(
4452 container: *mut GESMetaContainer,
4453 meta_item: *const c_char,
4454 value: u64,
4455 ) -> gboolean;
4456
4457 pub fn ges_add_missing_uri_relocation_uri(uri: *const c_char, recurse: gboolean) -> gboolean;
4461 #[cfg(feature = "v1_24")]
4462 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
4463 pub fn ges_buffer_add_frame_composition_meta(
4464 buffer: *mut gst::GstBuffer,
4465 ) -> *mut GESFrameCompositionMeta;
4466 pub fn ges_deinit();
4467 #[cfg(feature = "v1_18")]
4468 #[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
4469 pub fn ges_find_formatter_for_uri(uri: *const c_char) -> *mut GESAsset;
4470 #[cfg(feature = "v1_24")]
4471 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
4472 pub fn ges_frame_composition_meta_api_get_type() -> GType;
4473 pub fn ges_init() -> gboolean;
4474 pub fn ges_init_check(
4475 argc: *mut c_int,
4476 argv: *mut *mut *mut c_char,
4477 error: *mut *mut glib::GError,
4478 ) -> gboolean;
4479 pub fn ges_init_get_option_group() -> *mut glib::GOptionGroup;
4480 #[cfg(feature = "v1_16")]
4481 #[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
4482 pub fn ges_is_initialized() -> gboolean;
4483 pub fn ges_list_assets(filter: GType) -> *mut glib::GList;
4484 pub fn ges_play_sink_convert_frame(
4485 playsink: *mut gst::GstElement,
4486 caps: *mut gst::GstCaps,
4487 ) -> *mut gst::GstSample;
4488 pub fn ges_pspec_equal(key_spec_1: gconstpointer, key_spec_2: gconstpointer) -> gboolean;
4489 pub fn ges_pspec_hash(key_spec: gconstpointer) -> c_uint;
4490 pub fn ges_validate_register_action_types() -> gboolean;
4491 pub fn ges_version(
4492 major: *mut c_uint,
4493 minor: *mut c_uint,
4494 micro: *mut c_uint,
4495 nano: *mut c_uint,
4496 );
4497
4498}