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_sys as gst;
19
20#[cfg(unix)]
21#[allow(unused_imports)]
22use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
23#[allow(unused_imports)]
24use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
25#[allow(unused_imports)]
26use std::ffi::{
27 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
28};
29
30#[allow(unused_imports)]
31use glib::{gboolean, gconstpointer, gpointer, GType};
32
33pub type GstValidateIssueId = glib::GQuark;
35
36pub type GstValidateActionReturn = c_int;
38pub const GST_VALIDATE_EXECUTE_ACTION_ERROR: GstValidateActionReturn = 0;
39pub const GST_VALIDATE_EXECUTE_ACTION_OK: GstValidateActionReturn = 1;
40pub const GST_VALIDATE_EXECUTE_ACTION_ASYNC: GstValidateActionReturn = 2;
41pub const GST_VALIDATE_EXECUTE_ACTION_NON_BLOCKING: GstValidateActionReturn = 3;
42pub const GST_VALIDATE_EXECUTE_ACTION_INTERLACED: GstValidateActionReturn = 3;
43pub const GST_VALIDATE_EXECUTE_ACTION_ERROR_REPORTED: GstValidateActionReturn = 4;
44pub const GST_VALIDATE_EXECUTE_ACTION_IN_PROGRESS: GstValidateActionReturn = 5;
45pub const GST_VALIDATE_EXECUTE_ACTION_NONE: GstValidateActionReturn = 6;
46pub const GST_VALIDATE_EXECUTE_ACTION_DONE: GstValidateActionReturn = 7;
47
48pub type GstValidateInterceptionReturn = c_int;
49pub const GST_VALIDATE_REPORTER_DROP: GstValidateInterceptionReturn = 0;
50pub const GST_VALIDATE_REPORTER_KEEP: GstValidateInterceptionReturn = 1;
51pub const GST_VALIDATE_REPORTER_REPORT: GstValidateInterceptionReturn = 2;
52
53pub type GstValidateReportLevel = c_int;
54pub const GST_VALIDATE_REPORT_LEVEL_CRITICAL: GstValidateReportLevel = 0;
55pub const GST_VALIDATE_REPORT_LEVEL_WARNING: GstValidateReportLevel = 1;
56pub const GST_VALIDATE_REPORT_LEVEL_ISSUE: GstValidateReportLevel = 2;
57pub const GST_VALIDATE_REPORT_LEVEL_IGNORE: GstValidateReportLevel = 3;
58pub const GST_VALIDATE_REPORT_LEVEL_UNKNOWN: GstValidateReportLevel = 4;
59pub const GST_VALIDATE_REPORT_LEVEL_EXPECTED: GstValidateReportLevel = 5;
60pub const GST_VALIDATE_REPORT_LEVEL_NUM_ENTRIES: GstValidateReportLevel = 6;
61
62pub type GstValidateReportingDetails = c_int;
63pub const GST_VALIDATE_SHOW_UNKNOWN: GstValidateReportingDetails = 0;
64pub const GST_VALIDATE_SHOW_NONE: GstValidateReportingDetails = 1;
65pub const GST_VALIDATE_SHOW_SYNTHETIC: GstValidateReportingDetails = 2;
66pub const GST_VALIDATE_SHOW_SUBCHAIN: GstValidateReportingDetails = 3;
67pub const GST_VALIDATE_SHOW_MONITOR: GstValidateReportingDetails = 4;
68pub const GST_VALIDATE_SHOW_ALL: GstValidateReportingDetails = 5;
69pub const GST_VALIDATE_SHOW_SMART: GstValidateReportingDetails = 6;
70pub const GST_VALIDATE_SHOW_COUNT: GstValidateReportingDetails = 7;
71
72pub const GST_VALIDATE_UNKNOWN_BOOL: c_int = -1;
74pub const GST_VALIDATE_UNKNOWN_UINT64: c_int = -1;
75
76pub type GstValidateActionTypeFlags = c_uint;
78pub const GST_VALIDATE_ACTION_TYPE_NONE: GstValidateActionTypeFlags = 0;
79pub const GST_VALIDATE_ACTION_TYPE_CONFIG: GstValidateActionTypeFlags = 2;
80pub const GST_VALIDATE_ACTION_TYPE_ASYNC: GstValidateActionTypeFlags = 4;
81pub const GST_VALIDATE_ACTION_TYPE_NON_BLOCKING: GstValidateActionTypeFlags = 8;
82pub const GST_VALIDATE_ACTION_TYPE_INTERLACED: GstValidateActionTypeFlags = 8;
83pub const GST_VALIDATE_ACTION_TYPE_CAN_EXECUTE_ON_ADDITION: GstValidateActionTypeFlags = 16;
84pub const GST_VALIDATE_ACTION_TYPE_NEEDS_CLOCK: GstValidateActionTypeFlags = 32;
85pub const GST_VALIDATE_ACTION_TYPE_NO_EXECUTION_NOT_FATAL: GstValidateActionTypeFlags = 64;
86pub const GST_VALIDATE_ACTION_TYPE_CAN_BE_OPTIONAL: GstValidateActionTypeFlags = 128;
87pub const GST_VALIDATE_ACTION_TYPE_DOESNT_NEED_PIPELINE: GstValidateActionTypeFlags = 256;
88pub const GST_VALIDATE_ACTION_TYPE_HANDLED_IN_CONFIG: GstValidateActionTypeFlags = 512;
89pub const GST_VALIDATE_ACTION_TYPE_CHECK: GstValidateActionTypeFlags = 1024;
90
91pub type GstValidateDebugFlags = c_uint;
92pub const GST_VALIDATE_FATAL_DEFAULT: GstValidateDebugFlags = 0;
93pub const GST_VALIDATE_FATAL_ISSUES: GstValidateDebugFlags = 1;
94pub const GST_VALIDATE_FATAL_WARNINGS: GstValidateDebugFlags = 2;
95pub const GST_VALIDATE_FATAL_CRITICALS: GstValidateDebugFlags = 4;
96pub const GST_VALIDATE_PRINT_ISSUES: GstValidateDebugFlags = 8;
97pub const GST_VALIDATE_PRINT_WARNINGS: GstValidateDebugFlags = 16;
98pub const GST_VALIDATE_PRINT_CRITICALS: GstValidateDebugFlags = 32;
99
100pub type GstValidateIssueFlags = c_uint;
101pub const GST_VALIDATE_ISSUE_FLAGS_NONE: GstValidateIssueFlags = 0;
102pub const GST_VALIDATE_ISSUE_FLAGS_FULL_DETAILS: GstValidateIssueFlags = 1;
103pub const GST_VALIDATE_ISSUE_FLAGS_NO_BACKTRACE: GstValidateIssueFlags = 2;
104pub const GST_VALIDATE_ISSUE_FLAGS_FORCE_BACKTRACE: GstValidateIssueFlags = 4;
105
106pub type GstValidateMediaDescriptorWriterFlags = c_uint;
107pub const GST_VALIDATE_MEDIA_DESCRIPTOR_WRITER_FLAGS_NONE: GstValidateMediaDescriptorWriterFlags =
108 1;
109pub const GST_VALIDATE_MEDIA_DESCRIPTOR_WRITER_FLAGS_NO_PARSER:
110 GstValidateMediaDescriptorWriterFlags = 2;
111pub const GST_VALIDATE_MEDIA_DESCRIPTOR_WRITER_FLAGS_FULL: GstValidateMediaDescriptorWriterFlags =
112 4;
113pub const GST_VALIDATE_MEDIA_DESCRIPTOR_WRITER_FLAGS_HANDLE_GLOGS:
114 GstValidateMediaDescriptorWriterFlags = 8;
115
116pub type GstValidateObjectSetPropertyFlags = c_uint;
117pub const GST_VALIDATE_OBJECT_SET_PROPERTY_FLAGS_OPTIONAL: GstValidateObjectSetPropertyFlags = 1;
118pub const GST_VALIDATE_OBJECT_SET_PROPERTY_FLAGS_NO_VALUE_CHECK: GstValidateObjectSetPropertyFlags =
119 2;
120
121pub type GstValidateStructureResolveVariablesFlags = c_uint;
122pub const GST_VALIDATE_STRUCTURE_RESOLVE_VARIABLES_ALL: GstValidateStructureResolveVariablesFlags =
123 0;
124pub const GST_VALIDATE_STRUCTURE_RESOLVE_VARIABLES_LOCAL_ONLY:
125 GstValidateStructureResolveVariablesFlags = 1;
126pub const GST_VALIDATE_STRUCTURE_RESOLVE_VARIABLES_NO_FAILURE:
127 GstValidateStructureResolveVariablesFlags = 2;
128pub const GST_VALIDATE_STRUCTURE_RESOLVE_VARIABLES_NO_EXPRESSION:
129 GstValidateStructureResolveVariablesFlags = 2;
130
131pub type GstValidateVerbosityFlags = c_uint;
132pub const GST_VALIDATE_VERBOSITY_NONE: GstValidateVerbosityFlags = 0;
133pub const GST_VALIDATE_VERBOSITY_POSITION: GstValidateVerbosityFlags = 2;
134pub const GST_VALIDATE_VERBOSITY_MESSAGES: GstValidateVerbosityFlags = 4;
135pub const GST_VALIDATE_VERBOSITY_PROPS_CHANGES: GstValidateVerbosityFlags = 8;
136pub const GST_VALIDATE_VERBOSITY_NEW_ELEMENTS: GstValidateVerbosityFlags = 16;
137pub const GST_VALIDATE_VERBOSITY_ALL: GstValidateVerbosityFlags = 30;
138
139pub type GstValidateExecuteAction =
141 Option<unsafe extern "C" fn(*mut GstValidateScenario, *mut GstValidateAction) -> c_int>;
142pub type GstValidateGetIncludePathsFunc =
143 Option<unsafe extern "C" fn(*const c_char) -> *mut *mut c_char>;
144pub type GstValidateOverrideBufferHandler = Option<
145 unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor, *mut gst::GstBuffer),
146>;
147pub type GstValidateOverrideElementAddedHandler = Option<
148 unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor, *mut gst::GstElement),
149>;
150pub type GstValidateOverrideEventHandler = Option<
151 unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor, *mut gst::GstEvent),
152>;
153pub type GstValidateOverrideGetCapsHandler = Option<
154 unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor, *mut gst::GstCaps),
155>;
156pub type GstValidateOverrideQueryHandler = Option<
157 unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor, *mut gst::GstQuery),
158>;
159pub type GstValidateOverrideSetCapsHandler = Option<
160 unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor, *mut gst::GstCaps),
161>;
162pub type GstValidateParseVariableFunc =
163 Option<unsafe extern "C" fn(*const c_char, *mut c_double, gpointer) -> c_int>;
164pub type GstValidatePrepareAction = Option<unsafe extern "C" fn(*mut GstValidateAction) -> c_int>;
165
166#[derive(Copy, Clone)]
168#[repr(C)]
169pub struct GstValidateAction {
170 pub mini_object: gst::GstMiniObject,
171 pub type_: *const c_char,
172 pub name: *const c_char,
173 pub structure: *mut gst::GstStructure,
174 pub action_number: c_uint,
175 pub repeat: c_int,
176 pub playback_time: gst::GstClockTime,
177 pub lineno: c_int,
178 pub filename: *mut c_char,
179 pub debug: *mut c_char,
180 pub n_repeats: c_int,
181 pub rangename: *mut c_char,
182 pub priv_: *mut GstValidateActionPrivate,
183 pub _gst_reserved: [gpointer; 4],
184}
185
186impl ::std::fmt::Debug for GstValidateAction {
187 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
188 f.debug_struct(&format!("GstValidateAction @ {self:p}"))
189 .field("mini_object", &self.mini_object)
190 .field("type_", &self.type_)
191 .field("name", &self.name)
192 .field("structure", &self.structure)
193 .finish()
194 }
195}
196
197#[derive(Copy, Clone)]
198#[repr(C)]
199pub struct GstValidateActionParameter {
200 pub name: *const c_char,
201 pub description: *const c_char,
202 pub mandatory: gboolean,
203 pub types: *const c_char,
204 pub possible_variables: *const c_char,
205 pub def: *const c_char,
206 pub free: glib::GDestroyNotify,
207 pub _gst_reserved: [gpointer; 3],
208}
209
210impl ::std::fmt::Debug for GstValidateActionParameter {
211 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
212 f.debug_struct(&format!("GstValidateActionParameter @ {self:p}"))
213 .field("name", &self.name)
214 .field("description", &self.description)
215 .field("mandatory", &self.mandatory)
216 .field("types", &self.types)
217 .field("possible_variables", &self.possible_variables)
218 .field("def", &self.def)
219 .field("free", &self.free)
220 .finish()
221 }
222}
223
224#[repr(C)]
225#[allow(dead_code)]
226pub struct _GstValidateActionPrivate {
227 _data: [u8; 0],
228 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
229}
230
231pub type GstValidateActionPrivate = _GstValidateActionPrivate;
232
233#[derive(Copy, Clone)]
234#[repr(C)]
235pub struct GstValidateActionType {
236 pub mini_object: gst::GstMiniObject,
237 pub name: *mut c_char,
238 pub implementer_namespace: *mut c_char,
239 pub prepare: GstValidatePrepareAction,
240 pub execute: GstValidateExecuteAction,
241 pub parameters: *mut GstValidateActionParameter,
242 pub description: *mut c_char,
243 pub flags: GstValidateActionTypeFlags,
244 pub rank: gst::GstRank,
245 pub overriden_type: *mut GstValidateActionType,
246 pub priv_: *mut GstValidateActionTypePrivate,
247 pub _gst_reserved: [gpointer; 20],
248}
249
250impl ::std::fmt::Debug for GstValidateActionType {
251 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
252 f.debug_struct(&format!("GstValidateActionType @ {self:p}"))
253 .field("mini_object", &self.mini_object)
254 .field("name", &self.name)
255 .field("implementer_namespace", &self.implementer_namespace)
256 .field("prepare", &self.prepare)
257 .field("execute", &self.execute)
258 .field("parameters", &self.parameters)
259 .field("description", &self.description)
260 .field("flags", &self.flags)
261 .field("rank", &self.rank)
262 .field("overriden_type", &self.overriden_type)
263 .field("priv_", &self.priv_)
264 .finish()
265 }
266}
267
268#[repr(C)]
269#[allow(dead_code)]
270pub struct _GstValidateActionTypePrivate {
271 _data: [u8; 0],
272 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
273}
274
275pub type GstValidateActionTypePrivate = _GstValidateActionTypePrivate;
276
277#[derive(Copy, Clone)]
278#[repr(C)]
279pub struct GstValidateBinMonitorClass {
280 pub parent_class: GstValidateElementMonitorClass,
281 pub _gst_reserved: [gpointer; 4],
282}
283
284impl ::std::fmt::Debug for GstValidateBinMonitorClass {
285 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
286 f.debug_struct(&format!("GstValidateBinMonitorClass @ {self:p}"))
287 .field("parent_class", &self.parent_class)
288 .finish()
289 }
290}
291
292#[derive(Copy, Clone)]
293#[repr(C)]
294pub struct GstValidateElementMonitorClass {
295 pub parent_class: GstValidateMonitorClass,
296 pub _gst_reserved: [gpointer; 4],
297}
298
299impl ::std::fmt::Debug for GstValidateElementMonitorClass {
300 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
301 f.debug_struct(&format!("GstValidateElementMonitorClass @ {self:p}"))
302 .field("parent_class", &self.parent_class)
303 .finish()
304 }
305}
306
307#[derive(Copy, Clone)]
308#[repr(C)]
309pub struct GstValidateIssue {
310 pub issue_id: GstValidateIssueId,
311 pub summary: *mut c_char,
312 pub description: *mut c_char,
313 pub area: *mut c_char,
314 pub name: *mut c_char,
315 pub default_level: GstValidateReportLevel,
316 pub refcount: c_int,
317 pub flags: GstValidateIssueFlags,
318 pub _gst_reserved: [gpointer; 4],
319}
320
321impl ::std::fmt::Debug for GstValidateIssue {
322 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
323 f.debug_struct(&format!("GstValidateIssue @ {self:p}"))
324 .field("issue_id", &self.issue_id)
325 .field("summary", &self.summary)
326 .field("description", &self.description)
327 .field("area", &self.area)
328 .field("name", &self.name)
329 .field("default_level", &self.default_level)
330 .field("refcount", &self.refcount)
331 .field("flags", &self.flags)
332 .field("_gst_reserved", &self._gst_reserved)
333 .finish()
334 }
335}
336
337#[derive(Copy, Clone)]
338#[repr(C)]
339pub struct GstValidateMediaDescriptorClass {
340 pub parent: gst::GstObjectClass,
341 pub _gst_reserved: [gpointer; 4],
342}
343
344impl ::std::fmt::Debug for GstValidateMediaDescriptorClass {
345 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
346 f.debug_struct(&format!("GstValidateMediaDescriptorClass @ {self:p}"))
347 .field("parent", &self.parent)
348 .finish()
349 }
350}
351
352#[derive(Copy, Clone)]
353#[repr(C)]
354pub struct GstValidateMediaDescriptorParserClass {
355 pub parent: GstValidateMediaDescriptorClass,
356 pub _gst_reserved: [gpointer; 4],
357}
358
359impl ::std::fmt::Debug for GstValidateMediaDescriptorParserClass {
360 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
361 f.debug_struct(&format!("GstValidateMediaDescriptorParserClass @ {self:p}"))
362 .field("parent", &self.parent)
363 .finish()
364 }
365}
366
367#[repr(C)]
368#[allow(dead_code)]
369pub struct _GstValidateMediaDescriptorParserPrivate {
370 _data: [u8; 0],
371 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
372}
373
374pub type GstValidateMediaDescriptorParserPrivate = _GstValidateMediaDescriptorParserPrivate;
375
376#[repr(C)]
377#[allow(dead_code)]
378pub struct _GstValidateMediaDescriptorPrivate {
379 _data: [u8; 0],
380 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
381}
382
383pub type GstValidateMediaDescriptorPrivate = _GstValidateMediaDescriptorPrivate;
384
385#[derive(Copy, Clone)]
386#[repr(C)]
387pub struct GstValidateMediaDescriptorWriterClass {
388 pub parent: GstValidateMediaDescriptorClass,
389 pub _gst_reserved: [gpointer; 4],
390}
391
392impl ::std::fmt::Debug for GstValidateMediaDescriptorWriterClass {
393 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
394 f.debug_struct(&format!("GstValidateMediaDescriptorWriterClass @ {self:p}"))
395 .field("parent", &self.parent)
396 .finish()
397 }
398}
399
400#[repr(C)]
401#[allow(dead_code)]
402pub struct _GstValidateMediaDescriptorWriterPrivate {
403 _data: [u8; 0],
404 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
405}
406
407pub type GstValidateMediaDescriptorWriterPrivate = _GstValidateMediaDescriptorWriterPrivate;
408
409#[derive(Copy, Clone)]
410#[repr(C)]
411pub struct GstValidateMediaInfo {
412 pub duration: gst::GstClockTime,
413 pub is_image: gboolean,
414 pub file_size: u64,
415 pub seekable: gboolean,
416 pub playback_error: *mut c_char,
417 pub reverse_playback_error: *mut c_char,
418 pub track_switch_error: *mut c_char,
419 pub uri: *mut c_char,
420 pub discover_only: gboolean,
421 pub stream_info: *mut GstValidateStreamInfo,
422 pub _gst_reserved: [gpointer; 4],
423}
424
425impl ::std::fmt::Debug for GstValidateMediaInfo {
426 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
427 f.debug_struct(&format!("GstValidateMediaInfo @ {self:p}"))
428 .field("duration", &self.duration)
429 .field("is_image", &self.is_image)
430 .field("file_size", &self.file_size)
431 .field("seekable", &self.seekable)
432 .field("playback_error", &self.playback_error)
433 .field("reverse_playback_error", &self.reverse_playback_error)
434 .field("track_switch_error", &self.track_switch_error)
435 .field("uri", &self.uri)
436 .field("discover_only", &self.discover_only)
437 .field("stream_info", &self.stream_info)
438 .finish()
439 }
440}
441
442#[derive(Copy, Clone)]
443#[repr(C)]
444pub struct GstValidateMonitorClass {
445 pub parent_class: gst::GstObjectClass,
446 pub setup: Option<unsafe extern "C" fn(*mut GstValidateMonitor) -> gboolean>,
447 pub get_element: Option<unsafe extern "C" fn(*mut GstValidateMonitor) -> *mut gst::GstElement>,
448 pub set_media_descriptor:
449 Option<unsafe extern "C" fn(*mut GstValidateMonitor, *mut GstValidateMediaDescriptor)>,
450 pub _gst_reserved: [gpointer; 4],
451}
452
453impl ::std::fmt::Debug for GstValidateMonitorClass {
454 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
455 f.debug_struct(&format!("GstValidateMonitorClass @ {self:p}"))
456 .field("parent_class", &self.parent_class)
457 .field("setup", &self.setup)
458 .field("get_element", &self.get_element)
459 .field("set_media_descriptor", &self.set_media_descriptor)
460 .finish()
461 }
462}
463
464#[derive(Copy, Clone)]
465#[repr(C)]
466pub struct GstValidateOverrideClass {
467 pub parent_class: gst::GstObjectClass,
468 pub can_attach:
469 Option<unsafe extern "C" fn(*mut GstValidateOverride, *mut GstValidateMonitor) -> gboolean>,
470 pub attached: Option<unsafe extern "C" fn(*mut GstValidateOverride)>,
471 pub _gst_reserved: [gpointer; 4],
472}
473
474impl ::std::fmt::Debug for GstValidateOverrideClass {
475 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
476 f.debug_struct(&format!("GstValidateOverrideClass @ {self:p}"))
477 .field("can_attach", &self.can_attach)
478 .field("attached", &self.attached)
479 .finish()
480 }
481}
482
483#[repr(C)]
484#[allow(dead_code)]
485pub struct _GstValidateOverridePrivate {
486 _data: [u8; 0],
487 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
488}
489
490pub type GstValidateOverridePrivate = _GstValidateOverridePrivate;
491
492#[derive(Copy, Clone)]
493#[repr(C)]
494pub struct GstValidateOverrideRegistry {
495 pub mutex: glib::GMutex,
496 pub name_overrides: glib::GQueue,
497 pub gtype_overrides: glib::GQueue,
498 pub klass_overrides: glib::GQueue,
499 pub _gst_reserved: [gpointer; 4],
500}
501
502impl ::std::fmt::Debug for GstValidateOverrideRegistry {
503 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
504 f.debug_struct(&format!("GstValidateOverrideRegistry @ {self:p}"))
505 .field("mutex", &self.mutex)
506 .field("name_overrides", &self.name_overrides)
507 .field("gtype_overrides", &self.gtype_overrides)
508 .field("klass_overrides", &self.klass_overrides)
509 .finish()
510 }
511}
512
513#[derive(Copy, Clone)]
514#[repr(C)]
515pub struct GstValidatePadMonitorClass {
516 pub parent_class: GstValidateMonitorClass,
517 pub _gst_reserved: [gpointer; 4],
518}
519
520impl ::std::fmt::Debug for GstValidatePadMonitorClass {
521 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
522 f.debug_struct(&format!("GstValidatePadMonitorClass @ {self:p}"))
523 .field("parent_class", &self.parent_class)
524 .finish()
525 }
526}
527
528#[repr(C)]
529#[allow(dead_code)]
530pub struct _GstValidatePadSeekData {
531 _data: [u8; 0],
532 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
533}
534
535pub type GstValidatePadSeekData = _GstValidatePadSeekData;
536
537#[derive(Copy, Clone)]
538#[repr(C)]
539pub struct GstValidatePipelineMonitorClass {
540 pub parent_class: GstValidateBinMonitorClass,
541 pub _gst_reserved: [gpointer; 4],
542}
543
544impl ::std::fmt::Debug for GstValidatePipelineMonitorClass {
545 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
546 f.debug_struct(&format!("GstValidatePipelineMonitorClass @ {self:p}"))
547 .field("parent_class", &self.parent_class)
548 .finish()
549 }
550}
551
552#[derive(Copy, Clone)]
553#[repr(C)]
554pub struct GstValidateReport {
555 pub mini_object: gst::GstMiniObject,
556 pub issue: *mut GstValidateIssue,
557 pub level: GstValidateReportLevel,
558 pub reporter: *mut GstValidateReporter,
559 pub timestamp: gst::GstClockTime,
560 pub message: *mut c_char,
561 pub shadow_reports_lock: glib::GMutex,
562 pub master_report: *mut GstValidateReport,
563 pub shadow_reports: *mut glib::GList,
564 pub repeated_reports: *mut glib::GList,
565 pub reporting_level: GstValidateReportingDetails,
566 pub reporter_name: *mut c_char,
567 pub trace: *mut c_char,
568 pub dotfile_name: *mut c_char,
569 pub _gst_reserved: [gpointer; 4],
570}
571
572impl ::std::fmt::Debug for GstValidateReport {
573 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
574 f.debug_struct(&format!("GstValidateReport @ {self:p}"))
575 .field("mini_object", &self.mini_object)
576 .field("issue", &self.issue)
577 .field("level", &self.level)
578 .field("reporter", &self.reporter)
579 .field("timestamp", &self.timestamp)
580 .field("message", &self.message)
581 .field("shadow_reports_lock", &self.shadow_reports_lock)
582 .field("master_report", &self.master_report)
583 .field("shadow_reports", &self.shadow_reports)
584 .field("repeated_reports", &self.repeated_reports)
585 .field("reporting_level", &self.reporting_level)
586 .field("reporter_name", &self.reporter_name)
587 .field("trace", &self.trace)
588 .field("dotfile_name", &self.dotfile_name)
589 .field("_gst_reserved", &self._gst_reserved)
590 .finish()
591 }
592}
593
594#[derive(Copy, Clone)]
595#[repr(C)]
596pub struct GstValidateReporterInterface {
597 pub parent: gobject::GTypeInterface,
598 pub intercept_report: Option<
599 unsafe extern "C" fn(
600 *mut GstValidateReporter,
601 *mut GstValidateReport,
602 ) -> GstValidateInterceptionReturn,
603 >,
604 pub get_reporting_level:
605 Option<unsafe extern "C" fn(*mut GstValidateReporter) -> GstValidateReportingDetails>,
606 pub get_pipeline:
607 Option<unsafe extern "C" fn(*mut GstValidateReporter) -> *mut gst::GstPipeline>,
608 pub _gst_reserved: [gpointer; 4],
609}
610
611impl ::std::fmt::Debug for GstValidateReporterInterface {
612 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
613 f.debug_struct(&format!("GstValidateReporterInterface @ {self:p}"))
614 .field("parent", &self.parent)
615 .field("intercept_report", &self.intercept_report)
616 .field("get_reporting_level", &self.get_reporting_level)
617 .field("get_pipeline", &self.get_pipeline)
618 .finish()
619 }
620}
621
622#[derive(Copy, Clone)]
623#[repr(C)]
624pub struct GstValidateRunnerClass {
625 pub parent_class: gst::GstTracerClass,
626 pub _gst_reserved: [gpointer; 4],
627}
628
629impl ::std::fmt::Debug for GstValidateRunnerClass {
630 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
631 f.debug_struct(&format!("GstValidateRunnerClass @ {self:p}"))
632 .field("parent_class", &self.parent_class)
633 .finish()
634 }
635}
636
637#[repr(C)]
638#[allow(dead_code)]
639pub struct _GstValidateRunnerPrivate {
640 _data: [u8; 0],
641 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
642}
643
644pub type GstValidateRunnerPrivate = _GstValidateRunnerPrivate;
645
646#[derive(Copy, Clone)]
647#[repr(C)]
648pub struct GstValidateScenarioClass {
649 pub parent_class: gst::GstObjectClass,
650 pub _gst_reserved: [gpointer; 4],
651}
652
653impl ::std::fmt::Debug for GstValidateScenarioClass {
654 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
655 f.debug_struct(&format!("GstValidateScenarioClass @ {self:p}"))
656 .field("parent_class", &self.parent_class)
657 .finish()
658 }
659}
660
661#[repr(C)]
662#[allow(dead_code)]
663pub struct _GstValidateScenarioPrivate {
664 _data: [u8; 0],
665 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
666}
667
668pub type GstValidateScenarioPrivate = _GstValidateScenarioPrivate;
669
670#[repr(C)]
671#[allow(dead_code)]
672pub struct _GstValidateStreamInfo {
673 _data: [u8; 0],
674 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
675}
676
677pub type GstValidateStreamInfo = _GstValidateStreamInfo;
678
679#[derive(Copy, Clone)]
681#[repr(C)]
682pub struct GstValidateBinMonitor {
683 pub parent: GstValidateElementMonitor,
684 pub element_monitors: *mut glib::GList,
685 pub scenario: *mut GstValidateScenario,
686 pub element_added_id: c_ulong,
687 pub element_removed_id: c_ulong,
688 pub _gst_reserved: [gpointer; 4],
689}
690
691impl ::std::fmt::Debug for GstValidateBinMonitor {
692 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
693 f.debug_struct(&format!("GstValidateBinMonitor @ {self:p}"))
694 .field("parent", &self.parent)
695 .field("element_monitors", &self.element_monitors)
696 .field("scenario", &self.scenario)
697 .finish()
698 }
699}
700
701#[derive(Copy, Clone)]
702#[repr(C)]
703pub struct GstValidateElementMonitor {
704 pub parent: GstValidateMonitor,
705 pub pad_added_id: c_ulong,
706 pub pad_monitors: *mut glib::GList,
707 pub is_decoder: gboolean,
708 pub is_encoder: gboolean,
709 pub is_demuxer: gboolean,
710 pub is_converter: gboolean,
711 pub is_sink: gboolean,
712 pub _gst_reserved: [gpointer; 4],
713}
714
715impl ::std::fmt::Debug for GstValidateElementMonitor {
716 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
717 f.debug_struct(&format!("GstValidateElementMonitor @ {self:p}"))
718 .field("parent", &self.parent)
719 .finish()
720 }
721}
722
723#[derive(Copy, Clone)]
724#[repr(C)]
725pub struct GstValidateMediaDescriptor {
726 pub parent: gst::GstObject,
727 pub lock: glib::GMutex,
728 pub priv_: *mut GstValidateMediaDescriptorPrivate,
729 pub _gst_reserved: [gpointer; 4],
730}
731
732impl ::std::fmt::Debug for GstValidateMediaDescriptor {
733 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
734 f.debug_struct(&format!("GstValidateMediaDescriptor @ {self:p}"))
735 .field("parent", &self.parent)
736 .field("lock", &self.lock)
737 .finish()
738 }
739}
740
741#[derive(Copy, Clone)]
742#[repr(C)]
743pub struct GstValidateMediaDescriptorParser {
744 pub parent: GstValidateMediaDescriptor,
745 pub priv_: *mut GstValidateMediaDescriptorParserPrivate,
746 pub _gst_reserved: [gpointer; 4],
747}
748
749impl ::std::fmt::Debug for GstValidateMediaDescriptorParser {
750 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
751 f.debug_struct(&format!("GstValidateMediaDescriptorParser @ {self:p}"))
752 .field("parent", &self.parent)
753 .field("priv_", &self.priv_)
754 .finish()
755 }
756}
757
758#[derive(Copy, Clone)]
759#[repr(C)]
760pub struct GstValidateMediaDescriptorWriter {
761 pub parent: GstValidateMediaDescriptor,
762 pub priv_: *mut GstValidateMediaDescriptorWriterPrivate,
763 pub _gst_reserved: [gpointer; 4],
764}
765
766impl ::std::fmt::Debug for GstValidateMediaDescriptorWriter {
767 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
768 f.debug_struct(&format!("GstValidateMediaDescriptorWriter @ {self:p}"))
769 .field("parent", &self.parent)
770 .field("priv_", &self.priv_)
771 .finish()
772 }
773}
774
775#[derive(Copy, Clone)]
776#[repr(C)]
777pub struct GstValidateMonitor {
778 pub object: gst::GstObject,
779 pub target: gobject::GWeakRef,
780 pub pipeline: gobject::GWeakRef,
781 pub mutex: glib::GMutex,
782 pub target_name: *mut c_char,
783 pub parent: *mut GstValidateMonitor,
784 pub overrides_mutex: glib::GMutex,
785 pub overrides: glib::GQueue,
786 pub media_descriptor: *mut GstValidateMediaDescriptor,
787 pub level: GstValidateReportingDetails,
788 pub reports: *mut glib::GHashTable,
789 pub verbosity: GstValidateVerbosityFlags,
790 pub _gst_reserved: [gpointer; 4],
791}
792
793impl ::std::fmt::Debug for GstValidateMonitor {
794 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
795 f.debug_struct(&format!("GstValidateMonitor @ {self:p}"))
796 .field("object", &self.object)
797 .field("target", &self.target)
798 .field("pipeline", &self.pipeline)
799 .field("mutex", &self.mutex)
800 .field("target_name", &self.target_name)
801 .field("parent", &self.parent)
802 .field("overrides_mutex", &self.overrides_mutex)
803 .field("overrides", &self.overrides)
804 .field("media_descriptor", &self.media_descriptor)
805 .field("level", &self.level)
806 .finish()
807 }
808}
809
810#[derive(Copy, Clone)]
811#[repr(C)]
812pub struct GstValidateOverride {
813 pub parent: gst::GstObject,
814 pub buffer_handler: GstValidateOverrideBufferHandler,
815 pub event_handler: GstValidateOverrideEventHandler,
816 pub query_handler: GstValidateOverrideQueryHandler,
817 pub buffer_probe_handler: GstValidateOverrideBufferHandler,
818 pub getcaps_handler: GstValidateOverrideGetCapsHandler,
819 pub setcaps_handler: GstValidateOverrideSetCapsHandler,
820 pub element_added_handler: GstValidateOverrideElementAddedHandler,
821 pub priv_: *mut GstValidateOverridePrivate,
822 pub _gst_reserved: [gpointer; 4],
823}
824
825impl ::std::fmt::Debug for GstValidateOverride {
826 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
827 f.debug_struct(&format!("GstValidateOverride @ {self:p}"))
828 .field("parent", &self.parent)
829 .field("buffer_handler", &self.buffer_handler)
830 .field("event_handler", &self.event_handler)
831 .field("query_handler", &self.query_handler)
832 .field("buffer_probe_handler", &self.buffer_probe_handler)
833 .field("getcaps_handler", &self.getcaps_handler)
834 .field("setcaps_handler", &self.setcaps_handler)
835 .field("element_added_handler", &self.element_added_handler)
836 .finish()
837 }
838}
839
840#[derive(Copy, Clone)]
841#[repr(C)]
842pub struct GstValidatePadMonitor {
843 pub parent: GstValidateMonitor,
844 pub setup: gboolean,
845 pub chain_func: gst::GstPadChainFunction,
846 pub event_func: gst::GstPadEventFunction,
847 pub event_full_func: gst::GstPadEventFullFunction,
848 pub query_func: gst::GstPadQueryFunction,
849 pub activatemode_func: gst::GstPadActivateModeFunction,
850 pub get_range_func: gst::GstPadGetRangeFunction,
851 pub pad_probe_id: c_ulong,
852 pub last_caps: *mut gst::GstCaps,
853 pub caps_is_audio: gboolean,
854 pub caps_is_video: gboolean,
855 pub caps_is_raw: gboolean,
856 pub first_buffer: gboolean,
857 pub has_segment: gboolean,
858 pub is_eos: gboolean,
859 pub pending_flush_stop: gboolean,
860 pub pending_newsegment_seqnum: u32,
861 pub pending_eos_seqnum: u32,
862 pub seeks: *mut glib::GList,
863 pub current_seek: *mut GstValidatePadSeekData,
864 pub pending_buffer_discont: gboolean,
865 pub expected_segment: *mut gst::GstEvent,
866 pub serialized_events: *mut glib::GPtrArray,
867 pub expired_events: *mut glib::GList,
868 pub pending_setcaps_fields: *mut gst::GstStructure,
869 pub last_refused_caps: *mut gst::GstCaps,
870 pub last_query_filter: *mut gst::GstCaps,
871 pub last_query_res: *mut gst::GstCaps,
872 pub segment: gst::GstSegment,
873 pub current_timestamp: gst::GstClockTime,
874 pub current_duration: gst::GstClockTime,
875 pub timestamp_range_start: gst::GstClockTime,
876 pub timestamp_range_end: gst::GstClockTime,
877 pub all_bufs: *mut glib::GList,
878 pub current_buf: *mut glib::GList,
879 pub check_buffers: gboolean,
880 pub min_buf_freq: c_double,
881 pub buffers_pushed: c_int,
882 pub last_buffers_pushed: c_int,
883 pub min_buf_freq_interval_ts: gst::GstClockTime,
884 pub min_buf_freq_first_buffer_ts: gst::GstClockTime,
885 pub min_buf_freq_start: gst::GstClockTime,
886 pub _gst_reserved: [gpointer; 4],
887}
888
889impl ::std::fmt::Debug for GstValidatePadMonitor {
890 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
891 f.debug_struct(&format!("GstValidatePadMonitor @ {self:p}"))
892 .field("parent", &self.parent)
893 .field("setup", &self.setup)
894 .field("chain_func", &self.chain_func)
895 .field("event_func", &self.event_func)
896 .field("event_full_func", &self.event_full_func)
897 .field("query_func", &self.query_func)
898 .field("activatemode_func", &self.activatemode_func)
899 .field("get_range_func", &self.get_range_func)
900 .field("pad_probe_id", &self.pad_probe_id)
901 .finish()
902 }
903}
904
905#[derive(Copy, Clone)]
906#[repr(C)]
907pub struct GstValidatePipelineMonitor {
908 pub parent: GstValidateBinMonitor,
909 pub element_added_id: c_ulong,
910 pub print_pos_srcid: c_uint,
911 pub buffering: gboolean,
912 pub got_error: gboolean,
913 pub is_playbin: gboolean,
914 pub is_playbin3: gboolean,
915 pub stream_collection: *mut gst::GstStreamCollection,
916 pub streams_selected: *mut glib::GList,
917 pub deep_notify_id: c_ulong,
918 pub _gst_reserved: [gpointer; 4],
919}
920
921impl ::std::fmt::Debug for GstValidatePipelineMonitor {
922 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
923 f.debug_struct(&format!("GstValidatePipelineMonitor @ {self:p}"))
924 .field("parent", &self.parent)
925 .finish()
926 }
927}
928
929#[derive(Copy, Clone)]
930#[repr(C)]
931pub struct GstValidateRunner {
932 pub object: gst::GstTracer,
933 pub priv_: *mut GstValidateRunnerPrivate,
934 pub _gst_reserved: [gpointer; 4],
935}
936
937impl ::std::fmt::Debug for GstValidateRunner {
938 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
939 f.debug_struct(&format!("GstValidateRunner @ {self:p}"))
940 .field("object", &self.object)
941 .finish()
942 }
943}
944
945#[derive(Copy, Clone)]
946#[repr(C)]
947pub struct GstValidateScenario {
948 pub parent: gst::GstObject,
949 pub description: *mut gst::GstStructure,
950 pub priv_: *mut GstValidateScenarioPrivate,
951 pub eos_handling_lock: glib::GMutex,
952 pub _gst_reserved: [gpointer; 4],
953}
954
955impl ::std::fmt::Debug for GstValidateScenario {
956 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
957 f.debug_struct(&format!("GstValidateScenario @ {self:p}"))
958 .field("parent", &self.parent)
959 .field("description", &self.description)
960 .finish()
961 }
962}
963
964#[repr(C)]
966#[allow(dead_code)]
967pub struct GstValidateReporter {
968 _data: [u8; 0],
969 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
970}
971
972impl ::std::fmt::Debug for GstValidateReporter {
973 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
974 write!(f, "GstValidateReporter @ {self:p}")
975 }
976}
977
978extern "C" {
979
980 pub fn gst_validate_action_return_get_type() -> GType;
984 pub fn gst_validate_action_return_get_name(r: GstValidateActionReturn) -> *const c_char;
985
986 pub fn gst_validate_interception_return_get_type() -> GType;
990
991 pub fn gst_validate_report_level_get_type() -> GType;
995 pub fn gst_validate_report_level_from_name(level_name: *const c_char)
996 -> GstValidateReportLevel;
997 pub fn gst_validate_report_level_get_name(level: GstValidateReportLevel) -> *const c_char;
998
999 pub fn gst_validate_reporting_details_get_type() -> GType;
1003
1004 pub fn gst_validate_action_type_flags_get_type() -> GType;
1008
1009 pub fn gst_validate_debug_flags_get_type() -> GType;
1013
1014 pub fn gst_validate_issue_flags_get_type() -> GType;
1018
1019 pub fn gst_validate_media_descriptor_writer_flags_get_type() -> GType;
1023
1024 #[cfg(feature = "v1_24")]
1028 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
1029 pub fn gst_validate_object_set_property_flags_get_type() -> GType;
1030
1031 pub fn gst_validate_structure_resolve_variables_flags_get_type() -> GType;
1035
1036 pub fn gst_validate_verbosity_flags_get_type() -> GType;
1040
1041 pub fn gst_validate_action_get_type() -> GType;
1045 pub fn gst_validate_action_new(
1046 scenario: *mut GstValidateScenario,
1047 action_type: *mut GstValidateActionType,
1048 structure: *mut gst::GstStructure,
1049 add_to_lists: gboolean,
1050 ) -> *mut GstValidateAction;
1051 pub fn gst_validate_action_get_scenario(
1052 action: *mut GstValidateAction,
1053 ) -> *mut GstValidateScenario;
1054 pub fn gst_validate_action_ref(action: *mut GstValidateAction) -> *mut GstValidateAction;
1055 pub fn gst_validate_action_set_done(action: *mut GstValidateAction);
1056 pub fn gst_validate_action_unref(action: *mut GstValidateAction);
1057 pub fn gst_validate_action_get_clocktime(
1058 scenario: *mut GstValidateScenario,
1059 action: *mut GstValidateAction,
1060 name: *const c_char,
1061 retval: *mut gst::GstClockTime,
1062 ) -> gboolean;
1063
1064 pub fn gst_validate_action_type_get_type() -> GType;
1068
1069 pub fn gst_validate_issue_get_type() -> GType;
1073 pub fn gst_validate_issue_new(
1074 issue_id: GstValidateIssueId,
1075 summary: *const c_char,
1076 description: *const c_char,
1077 default_level: GstValidateReportLevel,
1078 ) -> *mut GstValidateIssue;
1079 pub fn gst_validate_issue_new_full(
1080 issue_id: GstValidateIssueId,
1081 summary: *const c_char,
1082 description: *const c_char,
1083 default_level: GstValidateReportLevel,
1084 flags: GstValidateIssueFlags,
1085 ) -> *mut GstValidateIssue;
1086 pub fn gst_validate_issue_get_id(issue: *mut GstValidateIssue) -> u32;
1087 pub fn gst_validate_issue_register(issue: *mut GstValidateIssue);
1088 pub fn gst_validate_issue_set_default_level(
1089 issue: *mut GstValidateIssue,
1090 default_level: GstValidateReportLevel,
1091 );
1092 pub fn gst_validate_issue_from_id(issue_id: GstValidateIssueId) -> *mut GstValidateIssue;
1093
1094 pub fn gst_validate_media_info_clear(mi: *mut GstValidateMediaInfo);
1098 pub fn gst_validate_media_info_compare(
1099 expected: *mut GstValidateMediaInfo,
1100 extracted: *mut GstValidateMediaInfo,
1101 ) -> gboolean;
1102 pub fn gst_validate_media_info_free(mi: *mut GstValidateMediaInfo);
1103 pub fn gst_validate_media_info_init(mi: *mut GstValidateMediaInfo);
1104 pub fn gst_validate_media_info_inspect_uri(
1105 mi: *mut GstValidateMediaInfo,
1106 uri: *const c_char,
1107 discover_only: gboolean,
1108 error: *mut *mut glib::GError,
1109 ) -> gboolean;
1110 pub fn gst_validate_media_info_save(
1111 mi: *mut GstValidateMediaInfo,
1112 path: *const c_char,
1113 error: *mut *mut glib::GError,
1114 ) -> gboolean;
1115 pub fn gst_validate_media_info_to_string(
1116 mi: *mut GstValidateMediaInfo,
1117 length: *mut size_t,
1118 ) -> *mut c_char;
1119 pub fn gst_validate_media_info_load(
1120 path: *const c_char,
1121 error: *mut *mut glib::GError,
1122 ) -> *mut GstValidateMediaInfo;
1123
1124 pub fn gst_validate_override_registry_get_override_for_names(
1128 reg: *mut GstValidateOverrideRegistry,
1129 name: *const c_char,
1130 ...
1131 ) -> *mut glib::GList;
1132 pub fn gst_validate_override_registry_get_override_list(
1133 registry: *mut GstValidateOverrideRegistry,
1134 ) -> *mut glib::GList;
1135 pub fn gst_validate_override_registry_attach_overrides(monitor: *mut GstValidateMonitor);
1136 pub fn gst_validate_override_registry_get() -> *mut GstValidateOverrideRegistry;
1137 pub fn gst_validate_override_registry_preload() -> c_int;
1138
1139 pub fn gst_validate_report_get_type() -> GType;
1143 pub fn gst_validate_report_new(
1144 issue: *mut GstValidateIssue,
1145 reporter: *mut GstValidateReporter,
1146 message: *const c_char,
1147 ) -> *mut GstValidateReport;
1148 pub fn gst_validate_report_add_message(report: *mut GstValidateReport, message: *const c_char);
1149 pub fn gst_validate_report_add_repeated_report(
1150 report: *mut GstValidateReport,
1151 repeated_report: *mut GstValidateReport,
1152 );
1153 pub fn gst_validate_report_check_abort(report: *mut GstValidateReport) -> gboolean;
1154 pub fn gst_validate_report_get_dotfile_name(report: *mut GstValidateReport) -> *mut c_char;
1155 pub fn gst_validate_report_get_issue(report: *mut GstValidateReport) -> *mut GstValidateIssue;
1156 pub fn gst_validate_report_get_issue_id(report: *mut GstValidateReport) -> u32;
1157 pub fn gst_validate_report_get_level(report: *mut GstValidateReport) -> GstValidateReportLevel;
1158 pub fn gst_validate_report_get_message(report: *mut GstValidateReport) -> *mut c_char;
1159 pub fn gst_validate_report_get_reporter(
1160 report: *mut GstValidateReport,
1161 ) -> *mut GstValidateReporter;
1162 pub fn gst_validate_report_get_reporter_name(report: *mut GstValidateReport) -> *mut c_char;
1163 pub fn gst_validate_report_get_reporting_level(
1164 report: *mut GstValidateReport,
1165 ) -> GstValidateReportingDetails;
1166 pub fn gst_validate_report_get_timestamp(report: *mut GstValidateReport) -> gst::GstClockTime;
1167 pub fn gst_validate_report_get_trace(report: *mut GstValidateReport) -> *mut c_char;
1168 pub fn gst_validate_report_print_description(report: *mut GstValidateReport);
1169 pub fn gst_validate_report_print_details(report: *mut GstValidateReport);
1170 pub fn gst_validate_report_print_detected_on(report: *mut GstValidateReport);
1171 pub fn gst_validate_report_print_level(report: *mut GstValidateReport);
1172 pub fn gst_validate_report_printf(report: *mut GstValidateReport);
1173 pub fn gst_validate_report_ref(report: *mut GstValidateReport) -> *mut GstValidateReport;
1174 pub fn gst_validate_report_set_master_report(
1175 report: *mut GstValidateReport,
1176 master_report: *mut GstValidateReport,
1177 ) -> gboolean;
1178 pub fn gst_validate_report_set_reporting_level(
1179 report: *mut GstValidateReport,
1180 level: GstValidateReportingDetails,
1181 );
1182 pub fn gst_validate_report_should_print(report: *mut GstValidateReport) -> gboolean;
1183 pub fn gst_validate_report_unref(report: *mut GstValidateReport);
1184 pub fn gst_validate_report_action(
1185 reporter: *mut GstValidateReporter,
1186 action: *mut GstValidateAction,
1187 issue_id: GstValidateIssueId,
1188 format: *const c_char,
1189 ...
1190 );
1191 pub fn gst_validate_report_init();
1192 pub fn gst_validate_bin_monitor_get_type() -> GType;
1198 pub fn gst_validate_bin_monitor_new(
1199 bin: *mut gst::GstBin,
1200 runner: *mut GstValidateRunner,
1201 parent: *mut GstValidateMonitor,
1202 ) -> *mut GstValidateBinMonitor;
1203 pub fn gst_validate_bin_monitor_get_scenario(
1204 monitor: *mut GstValidateBinMonitor,
1205 ) -> *mut GstValidateScenario;
1206
1207 pub fn gst_validate_element_monitor_get_type() -> GType;
1211 pub fn gst_validate_element_monitor_new(
1212 element: *mut gst::GstElement,
1213 runner: *mut GstValidateRunner,
1214 parent: *mut GstValidateMonitor,
1215 ) -> *mut GstValidateElementMonitor;
1216
1217 pub fn gst_validate_media_descriptor_get_type() -> GType;
1221 pub fn gst_validate_media_descriptor_detects_frames(
1222 self_: *mut GstValidateMediaDescriptor,
1223 ) -> gboolean;
1224 pub fn gst_validate_media_descriptor_get_buffers(
1225 self_: *mut GstValidateMediaDescriptor,
1226 pad: *mut gst::GstPad,
1227 compare_func: glib::GCompareFunc,
1228 bufs: *mut *mut glib::GList,
1229 ) -> gboolean;
1230 pub fn gst_validate_media_descriptor_get_duration(
1231 self_: *mut GstValidateMediaDescriptor,
1232 ) -> gst::GstClockTime;
1233 pub fn gst_validate_media_descriptor_get_pads(
1234 self_: *mut GstValidateMediaDescriptor,
1235 ) -> *mut glib::GList;
1236 pub fn gst_validate_media_descriptor_get_seekable(
1237 self_: *mut GstValidateMediaDescriptor,
1238 ) -> gboolean;
1239 pub fn gst_validate_media_descriptor_has_frame_info(
1240 self_: *mut GstValidateMediaDescriptor,
1241 ) -> gboolean;
1242
1243 pub fn gst_validate_media_descriptor_parser_get_type() -> GType;
1247 pub fn gst_validate_media_descriptor_parser_new(
1248 runner: *mut GstValidateRunner,
1249 xmlpath: *const c_char,
1250 error: *mut *mut glib::GError,
1251 ) -> *mut GstValidateMediaDescriptorParser;
1252 pub fn gst_validate_media_descriptor_parser_new_from_xml(
1253 runner: *mut GstValidateRunner,
1254 xml: *const c_char,
1255 error: *mut *mut glib::GError,
1256 ) -> *mut GstValidateMediaDescriptorParser;
1257 pub fn gst_validate_media_descriptor_parser_add_stream(
1258 parser: *mut GstValidateMediaDescriptorParser,
1259 pad: *mut gst::GstPad,
1260 ) -> gboolean;
1261 pub fn gst_validate_media_descriptor_parser_add_taglist(
1262 parser: *mut GstValidateMediaDescriptorParser,
1263 taglist: *mut gst::GstTagList,
1264 ) -> gboolean;
1265 pub fn gst_validate_media_descriptor_parser_all_stream_found(
1266 parser: *mut GstValidateMediaDescriptorParser,
1267 ) -> gboolean;
1268 pub fn gst_validate_media_descriptor_parser_all_tags_found(
1269 parser: *mut GstValidateMediaDescriptorParser,
1270 ) -> gboolean;
1271 pub fn gst_validate_media_descriptor_parser_get_xml_path(
1272 parser: *mut GstValidateMediaDescriptorParser,
1273 ) -> *mut c_char;
1274
1275 pub fn gst_validate_media_descriptor_writer_get_type() -> GType;
1279 pub fn gst_validate_media_descriptor_writer_new(
1280 runner: *mut GstValidateRunner,
1281 location: *const c_char,
1282 duration: gst::GstClockTime,
1283 seekable: gboolean,
1284 ) -> *mut GstValidateMediaDescriptorWriter;
1285 pub fn gst_validate_media_descriptor_writer_new_discover(
1286 runner: *mut GstValidateRunner,
1287 uri: *const c_char,
1288 flags: GstValidateMediaDescriptorWriterFlags,
1289 error: *mut *mut glib::GError,
1290 ) -> *mut GstValidateMediaDescriptorWriter;
1291 pub fn gst_validate_media_descriptor_writer_add_frame(
1292 writer: *mut GstValidateMediaDescriptorWriter,
1293 pad: *mut gst::GstPad,
1294 buf: *mut gst::GstBuffer,
1295 ) -> gboolean;
1296 pub fn gst_validate_media_descriptor_writer_add_pad(
1297 writer: *mut GstValidateMediaDescriptorWriter,
1298 pad: *mut gst::GstPad,
1299 ) -> gboolean;
1300 pub fn gst_validate_media_descriptor_writer_add_taglist(
1301 writer: *mut GstValidateMediaDescriptorWriter,
1302 taglist: *const gst::GstTagList,
1303 ) -> gboolean;
1304 pub fn gst_validate_media_descriptor_writer_add_tags(
1305 writer: *mut GstValidateMediaDescriptorWriter,
1306 stream_id: *const c_char,
1307 taglist: *const gst::GstTagList,
1308 ) -> gboolean;
1309 pub fn gst_validate_media_descriptor_writer_detects_frames(
1310 writer: *mut GstValidateMediaDescriptorWriter,
1311 ) -> gboolean;
1312 pub fn gst_validate_media_descriptor_writer_get_duration(
1313 writer: *mut GstValidateMediaDescriptorWriter,
1314 ) -> gst::GstClockTime;
1315 pub fn gst_validate_media_descriptor_writer_get_seekable(
1316 writer: *mut GstValidateMediaDescriptorWriter,
1317 ) -> gboolean;
1318 pub fn gst_validate_media_descriptor_writer_get_xml_path(
1319 writer: *mut GstValidateMediaDescriptorWriter,
1320 ) -> *mut c_char;
1321 pub fn gst_validate_media_descriptor_writer_serialize(
1322 writer: *mut GstValidateMediaDescriptorWriter,
1323 ) -> *mut c_char;
1324 pub fn gst_validate_media_descriptor_writer_write(
1325 writer: *mut GstValidateMediaDescriptorWriter,
1326 filename: *const c_char,
1327 ) -> gboolean;
1328
1329 pub fn gst_validate_monitor_get_type() -> GType;
1333 pub fn gst_validate_monitor_factory_create(
1334 target: *mut gst::GstObject,
1335 runner: *mut GstValidateRunner,
1336 parent: *mut GstValidateMonitor,
1337 ) -> *mut GstValidateMonitor;
1338 pub fn gst_validate_monitor_attach_override(
1339 monitor: *mut GstValidateMonitor,
1340 override_: *mut GstValidateOverride,
1341 );
1342 pub fn gst_validate_monitor_get_element(
1343 monitor: *mut GstValidateMonitor,
1344 ) -> *mut gst::GstElement;
1345 pub fn gst_validate_monitor_get_element_name(monitor: *mut GstValidateMonitor) -> *mut c_char;
1346 pub fn gst_validate_monitor_get_pipeline(
1347 monitor: *mut GstValidateMonitor,
1348 ) -> *mut gst::GstPipeline;
1349 pub fn gst_validate_monitor_get_target(monitor: *mut GstValidateMonitor)
1350 -> *mut gst::GstObject;
1351 pub fn gst_validate_monitor_set_media_descriptor(
1352 monitor: *mut GstValidateMonitor,
1353 media_descriptor: *mut GstValidateMediaDescriptor,
1354 );
1355
1356 pub fn gst_validate_override_get_type() -> GType;
1360 pub fn gst_validate_override_new() -> *mut GstValidateOverride;
1361 pub fn gst_validate_override_register_by_klass(
1362 klass: *const c_char,
1363 override_: *mut GstValidateOverride,
1364 );
1365 pub fn gst_validate_override_register_by_name(
1366 name: *const c_char,
1367 override_: *mut GstValidateOverride,
1368 );
1369 pub fn gst_validate_override_register_by_type(
1370 gtype: GType,
1371 override_: *mut GstValidateOverride,
1372 );
1373 pub fn gst_validate_override_attached(override_: *mut GstValidateOverride);
1374 pub fn gst_validate_override_buffer_handler(
1375 override_: *mut GstValidateOverride,
1376 monitor: *mut GstValidateMonitor,
1377 buffer: *mut gst::GstBuffer,
1378 );
1379 pub fn gst_validate_override_buffer_probe_handler(
1380 override_: *mut GstValidateOverride,
1381 monitor: *mut GstValidateMonitor,
1382 buffer: *mut gst::GstBuffer,
1383 );
1384 pub fn gst_validate_override_can_attach(
1385 override_: *mut GstValidateOverride,
1386 monitor: *mut GstValidateMonitor,
1387 ) -> gboolean;
1388 pub fn gst_validate_override_change_severity(
1389 override_: *mut GstValidateOverride,
1390 issue_id: GstValidateIssueId,
1391 new_level: GstValidateReportLevel,
1392 );
1393 pub fn gst_validate_override_element_added_handler(
1394 override_: *mut GstValidateOverride,
1395 monitor: *mut GstValidateMonitor,
1396 child: *mut gst::GstElement,
1397 );
1398 pub fn gst_validate_override_event_handler(
1399 override_: *mut GstValidateOverride,
1400 monitor: *mut GstValidateMonitor,
1401 event: *mut gst::GstEvent,
1402 );
1403 pub fn gst_validate_override_free(override_: *mut GstValidateOverride);
1404 pub fn gst_validate_override_get_severity(
1405 override_: *mut GstValidateOverride,
1406 issue_id: GstValidateIssueId,
1407 default_level: GstValidateReportLevel,
1408 ) -> GstValidateReportLevel;
1409 pub fn gst_validate_override_getcaps_handler(
1410 override_: *mut GstValidateOverride,
1411 monitor: *mut GstValidateMonitor,
1412 caps: *mut gst::GstCaps,
1413 );
1414 pub fn gst_validate_override_query_handler(
1415 override_: *mut GstValidateOverride,
1416 monitor: *mut GstValidateMonitor,
1417 query: *mut gst::GstQuery,
1418 );
1419 pub fn gst_validate_override_set_buffer_handler(
1420 override_: *mut GstValidateOverride,
1421 handler: GstValidateOverrideBufferHandler,
1422 );
1423 pub fn gst_validate_override_set_buffer_probe_handler(
1424 override_: *mut GstValidateOverride,
1425 handler: GstValidateOverrideBufferHandler,
1426 );
1427 pub fn gst_validate_override_set_element_added_handler(
1428 override_: *mut GstValidateOverride,
1429 func: GstValidateOverrideElementAddedHandler,
1430 );
1431 pub fn gst_validate_override_set_event_handler(
1432 override_: *mut GstValidateOverride,
1433 handler: GstValidateOverrideEventHandler,
1434 );
1435 pub fn gst_validate_override_set_getcaps_handler(
1436 override_: *mut GstValidateOverride,
1437 handler: GstValidateOverrideGetCapsHandler,
1438 );
1439 pub fn gst_validate_override_set_query_handler(
1440 override_: *mut GstValidateOverride,
1441 handler: GstValidateOverrideQueryHandler,
1442 );
1443 pub fn gst_validate_override_set_setcaps_handler(
1444 override_: *mut GstValidateOverride,
1445 handler: GstValidateOverrideSetCapsHandler,
1446 );
1447 pub fn gst_validate_override_setcaps_handler(
1448 override_: *mut GstValidateOverride,
1449 monitor: *mut GstValidateMonitor,
1450 caps: *mut gst::GstCaps,
1451 );
1452
1453 pub fn gst_validate_pad_monitor_get_type() -> GType;
1457 pub fn gst_validate_pad_monitor_new(
1458 pad: *mut gst::GstPad,
1459 runner: *mut GstValidateRunner,
1460 parent: *mut GstValidateElementMonitor,
1461 ) -> *mut GstValidatePadMonitor;
1462
1463 pub fn gst_validate_pipeline_monitor_get_type() -> GType;
1467 pub fn gst_validate_pipeline_monitor_new(
1468 pipeline: *mut gst::GstPipeline,
1469 runner: *mut GstValidateRunner,
1470 parent: *mut GstValidateMonitor,
1471 ) -> *mut GstValidatePipelineMonitor;
1472
1473 pub fn gst_validate_runner_get_type() -> GType;
1477 pub fn gst_validate_runner_new() -> *mut GstValidateRunner;
1478 pub fn gst_validate_runner_add_report(
1479 runner: *mut GstValidateRunner,
1480 report: *mut GstValidateReport,
1481 );
1482 pub fn gst_validate_runner_exit(
1483 runner: *mut GstValidateRunner,
1484 print_result: gboolean,
1485 ) -> c_int;
1486 pub fn gst_validate_runner_get_default_reporting_level(
1487 runner: *mut GstValidateRunner,
1488 ) -> GstValidateReportingDetails;
1489 pub fn gst_validate_runner_get_reporting_level_for_name(
1490 runner: *mut GstValidateRunner,
1491 name: *const c_char,
1492 ) -> GstValidateReportingDetails;
1493 pub fn gst_validate_runner_get_reports(runner: *mut GstValidateRunner) -> *mut glib::GList;
1494 pub fn gst_validate_runner_get_reports_count(runner: *mut GstValidateRunner) -> c_uint;
1495 pub fn gst_validate_runner_printf(runner: *mut GstValidateRunner) -> c_int;
1496
1497 pub fn gst_validate_scenario_get_type() -> GType;
1501 pub fn gst_validate_scenario_deinit();
1502 pub fn gst_validate_scenario_factory_create(
1503 runner: *mut GstValidateRunner,
1504 pipeline: *mut gst::GstElement,
1505 scenario_name: *const c_char,
1506 ) -> *mut GstValidateScenario;
1507 pub fn gst_validate_scenario_execute_seek(
1508 scenario: *mut GstValidateScenario,
1509 action: *mut GstValidateAction,
1510 rate: c_double,
1511 format: gst::GstFormat,
1512 flags: gst::GstSeekFlags,
1513 start_type: gst::GstSeekType,
1514 start: gst::GstClockTime,
1515 stop_type: gst::GstSeekType,
1516 stop: gst::GstClockTime,
1517 ) -> c_int;
1518 pub fn gst_validate_scenario_get_actions(
1519 scenario: *mut GstValidateScenario,
1520 ) -> *mut glib::GList;
1521 pub fn gst_validate_scenario_get_pipeline(
1522 scenario: *mut GstValidateScenario,
1523 ) -> *mut gst::GstElement;
1524 pub fn gst_validate_scenario_get_target_state(
1525 scenario: *mut GstValidateScenario,
1526 ) -> gst::GstState;
1527
1528 pub fn gst_validate_reporter_get_type() -> GType;
1532 pub fn gst_validate_reporter_get_name(reporter: *mut GstValidateReporter) -> *const c_char;
1533 pub fn gst_validate_reporter_get_pipeline(
1534 reporter: *mut GstValidateReporter,
1535 ) -> *mut gst::GstPipeline;
1536 pub fn gst_validate_reporter_get_report(
1537 reporter: *mut GstValidateReporter,
1538 issue_id: GstValidateIssueId,
1539 ) -> *mut GstValidateReport;
1540 pub fn gst_validate_reporter_get_reporting_level(
1541 reporter: *mut GstValidateReporter,
1542 ) -> GstValidateReportingDetails;
1543 pub fn gst_validate_reporter_get_reports(
1544 reporter: *mut GstValidateReporter,
1545 ) -> *mut glib::GList;
1546 pub fn gst_validate_reporter_get_reports_count(reporter: *mut GstValidateReporter) -> c_int;
1547 pub fn gst_validate_reporter_get_runner(
1548 reporter: *mut GstValidateReporter,
1549 ) -> *mut GstValidateRunner;
1550 pub fn gst_validate_reporter_init(reporter: *mut GstValidateReporter, name: *const c_char);
1551 pub fn gst_validate_reporter_purge_reports(reporter: *mut GstValidateReporter);
1552 pub fn gst_validate_reporter_report_simple(
1553 reporter: *mut GstValidateReporter,
1554 issue_id: GstValidateIssueId,
1555 message: *const c_char,
1556 );
1557 pub fn gst_validate_reporter_set_handle_g_logs(reporter: *mut GstValidateReporter);
1558 pub fn gst_validate_reporter_set_name(reporter: *mut GstValidateReporter, name: *mut c_char);
1559 pub fn gst_validate_reporter_set_runner(
1560 reporter: *mut GstValidateReporter,
1561 runner: *mut GstValidateRunner,
1562 );
1563
1564 pub fn gst_validate_abort(format: *const c_char, ...);
1568 pub fn gst_validate_deinit();
1569 pub fn gst_validate_element_has_klass(
1570 element: *mut gst::GstElement,
1571 klass: *const c_char,
1572 ) -> gboolean;
1573 pub fn gst_validate_element_matches_target(
1574 element: *mut gst::GstElement,
1575 s: *mut gst::GstStructure,
1576 ) -> gboolean;
1577 pub fn gst_validate_error_structure(action: gpointer, format: *const c_char, ...);
1578 pub fn gst_validate_execute_action(
1579 action_type: *mut GstValidateActionType,
1580 action: *mut GstValidateAction,
1581 ) -> c_int;
1582 pub fn gst_validate_fail_on_missing_plugin() -> gboolean;
1583 pub fn gst_validate_get_action_type(type_name: *const c_char) -> *mut GstValidateActionType;
1584 pub fn gst_validate_has_colored_output() -> gboolean;
1585 pub fn gst_validate_init();
1586 pub fn gst_validate_init_debug();
1587 pub fn gst_validate_is_initialized() -> gboolean;
1588 pub fn gst_validate_list_scenarios(
1589 scenarios: *mut *mut c_char,
1590 num_scenarios: c_int,
1591 output_file: *mut c_char,
1592 ) -> gboolean;
1593 pub fn gst_validate_media_descriptors_compare(
1594 ref_: *mut GstValidateMediaDescriptor,
1595 compared: *mut GstValidateMediaDescriptor,
1596 ) -> gboolean;
1597 pub fn gst_validate_object_set_property(
1598 reporter: *mut GstValidateReporter,
1599 object: *mut gobject::GObject,
1600 property: *const c_char,
1601 value: *const gobject::GValue,
1602 optional: gboolean,
1603 ) -> GstValidateActionReturn;
1604 #[cfg(feature = "v1_24")]
1605 #[cfg_attr(docsrs, doc(cfg(feature = "v1_24")))]
1606 pub fn gst_validate_object_set_property_full(
1607 reporter: *mut GstValidateReporter,
1608 object: *mut gobject::GObject,
1609 property: *const c_char,
1610 value: *const gobject::GValue,
1611 flags: GstValidateObjectSetPropertyFlags,
1612 ) -> GstValidateActionReturn;
1613 pub fn gst_validate_plugin_get_config(plugin: *mut gst::GstPlugin) -> *mut glib::GList;
1614 pub fn gst_validate_print_action(action: *mut GstValidateAction, message: *const c_char);
1615 pub fn gst_validate_print_action_types(
1616 wanted_types: *mut *const c_char,
1617 num_wanted_types: c_int,
1618 ) -> gboolean;
1619 pub fn gst_validate_print_issues();
1620 pub fn gst_validate_print_position(
1621 position: gst::GstClockTime,
1622 duration: gst::GstClockTime,
1623 rate: c_double,
1624 extra_info: *mut c_char,
1625 );
1626 pub fn gst_validate_printf(source: gpointer, format: *const c_char, ...);
1627 pub fn gst_validate_register_action_type(
1629 type_name: *const c_char,
1630 implementer_namespace: *const c_char,
1631 function: GstValidateExecuteAction,
1632 parameters: *mut GstValidateActionParameter,
1633 description: *const c_char,
1634 flags: GstValidateActionTypeFlags,
1635 ) -> *mut GstValidateActionType;
1636 pub fn gst_validate_register_action_type_dynamic(
1637 plugin: *mut gst::GstPlugin,
1638 type_name: *const c_char,
1639 rank: gst::GstRank,
1640 function: GstValidateExecuteAction,
1641 parameters: *mut GstValidateActionParameter,
1642 description: *const c_char,
1643 flags: GstValidateActionTypeFlags,
1644 ) -> *mut GstValidateActionType;
1645 pub fn gst_validate_replace_variables_in_string(
1646 incom: gpointer,
1647 local_vars: *mut gst::GstStructure,
1648 in_string: *const c_char,
1649 flags: GstValidateStructureResolveVariablesFlags,
1650 ) -> *mut c_char;
1651 pub fn gst_validate_report(
1652 reporter: *mut GstValidateReporter,
1653 issue_id: GstValidateIssueId,
1654 format: *const c_char,
1655 ...
1656 );
1657 pub fn gst_validate_set_globals(structure: *mut gst::GstStructure);
1658 pub fn gst_validate_setup_test_file(
1659 testfile: *const c_char,
1660 use_fakesinks: gboolean,
1661 ) -> *mut gst::GstStructure;
1662 pub fn gst_validate_skip_test(format: *const c_char, ...);
1663 pub fn gst_validate_spin_on_fault_signals();
1664 pub fn gst_validate_structs_parse_from_gfile(
1665 scenario_file: *mut gio::GFile,
1666 get_include_paths_func: GstValidateGetIncludePathsFunc,
1667 ) -> *mut glib::GList;
1668 pub fn gst_validate_structure_resolve_variables(
1669 source: gpointer,
1670 structure: *mut gst::GstStructure,
1671 local_variables: *mut gst::GstStructure,
1672 flags: GstValidateStructureResolveVariablesFlags,
1673 );
1674 pub fn gst_validate_structure_set_variables_from_struct_file(
1675 vars: *mut gst::GstStructure,
1676 struct_file: *const c_char,
1677 );
1678 pub fn gst_validate_utils_enum_from_str(
1679 type_: GType,
1680 str_enum: *const c_char,
1681 enum_value: *mut c_uint,
1682 ) -> gboolean;
1683 pub fn gst_validate_utils_flags_from_str(type_: GType, str_flags: *const c_char) -> c_uint;
1684 pub fn gst_validate_utils_get_clocktime(
1685 structure: *mut gst::GstStructure,
1686 name: *const c_char,
1687 retval: *mut gst::GstClockTime,
1688 ) -> gboolean;
1689 pub fn gst_validate_utils_get_strv(
1690 str: *mut gst::GstStructure,
1691 fieldname: *const c_char,
1692 ) -> *mut *mut c_char;
1693 pub fn gst_validate_utils_parse_expression(
1694 expr: *const c_char,
1695 variable_func: GstValidateParseVariableFunc,
1696 user_data: gpointer,
1697 error: *mut *mut c_char,
1698 ) -> c_double;
1699 pub fn gst_validate_utils_structs_parse_from_filename(
1700 scenario_file: *const c_char,
1701 get_include_paths_func: GstValidateGetIncludePathsFunc,
1702 file_path: *mut *mut c_char,
1703 ) -> *mut glib::GList;
1704 pub fn gst_validate_utils_test_file_get_meta(
1705 testfile: *const c_char,
1706 use_fakesinks: gboolean,
1707 ) -> *mut gst::GstStructure;
1708
1709}