1 // Generated by gir (https://github.com/gtk-rs/gir @ 1bef39f)
2 // from gir-files (https://github.com/gtk-rs/gir-files @ 7d95377)
3 // from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git @ 831b444)
4 // DO NOT EDIT
5 
6 use gstreamer_video_sys::*;
7 use std::env;
8 use std::error::Error;
9 use std::ffi::OsString;
10 use std::mem::{align_of, size_of};
11 use std::path::Path;
12 use std::process::Command;
13 use std::str;
14 use tempfile::Builder;
15 
16 static PACKAGES: &[&str] = &["gstreamer-video-1.0"];
17 
18 #[derive(Clone, Debug)]
19 struct Compiler {
20     pub args: Vec<String>,
21 }
22 
23 impl Compiler {
new() -> Result<Self, Box<dyn Error>>24     pub fn new() -> Result<Self, Box<dyn Error>> {
25         let mut args = get_var("CC", "cc")?;
26         args.push("-Wno-deprecated-declarations".to_owned());
27         // For _Generic
28         args.push("-std=c11".to_owned());
29         // For %z support in printf when using MinGW.
30         args.push("-D__USE_MINGW_ANSI_STDIO".to_owned());
31         args.extend(get_var("CFLAGS", "")?);
32         args.extend(get_var("CPPFLAGS", "")?);
33         args.extend(pkg_config_cflags(PACKAGES)?);
34         Ok(Self { args })
35     }
36 
compile(&self, src: &Path, out: &Path) -> Result<(), Box<dyn Error>>37     pub fn compile(&self, src: &Path, out: &Path) -> Result<(), Box<dyn Error>> {
38         let mut cmd = self.to_command();
39         cmd.arg(src);
40         cmd.arg("-o");
41         cmd.arg(out);
42         let status = cmd.spawn()?.wait()?;
43         if !status.success() {
44             return Err(format!("compilation command {:?} failed, {}", &cmd, status).into());
45         }
46         Ok(())
47     }
48 
to_command(&self) -> Command49     fn to_command(&self) -> Command {
50         let mut cmd = Command::new(&self.args[0]);
51         cmd.args(&self.args[1..]);
52         cmd
53     }
54 }
55 
get_var(name: &str, default: &str) -> Result<Vec<String>, Box<dyn Error>>56 fn get_var(name: &str, default: &str) -> Result<Vec<String>, Box<dyn Error>> {
57     match env::var(name) {
58         Ok(value) => Ok(shell_words::split(&value)?),
59         Err(env::VarError::NotPresent) => Ok(shell_words::split(default)?),
60         Err(err) => Err(format!("{} {}", name, err).into()),
61     }
62 }
63 
pkg_config_cflags(packages: &[&str]) -> Result<Vec<String>, Box<dyn Error>>64 fn pkg_config_cflags(packages: &[&str]) -> Result<Vec<String>, Box<dyn Error>> {
65     if packages.is_empty() {
66         return Ok(Vec::new());
67     }
68     let pkg_config = env::var_os("PKG_CONFIG").unwrap_or_else(|| OsString::from("pkg-config"));
69     let mut cmd = Command::new(pkg_config);
70     cmd.arg("--cflags");
71     cmd.args(packages);
72     let out = cmd.output()?;
73     if !out.status.success() {
74         return Err(format!("command {:?} returned {}", &cmd, out.status).into());
75     }
76     let stdout = str::from_utf8(&out.stdout)?;
77     Ok(shell_words::split(stdout.trim())?)
78 }
79 
80 #[derive(Copy, Clone, Debug, Eq, PartialEq)]
81 struct Layout {
82     size: usize,
83     alignment: usize,
84 }
85 
86 #[derive(Copy, Clone, Debug, Default, Eq, PartialEq)]
87 struct Results {
88     /// Number of successfully completed tests.
89     passed: usize,
90     /// Total number of failed tests (including those that failed to compile).
91     failed: usize,
92 }
93 
94 impl Results {
record_passed(&mut self)95     fn record_passed(&mut self) {
96         self.passed += 1;
97     }
record_failed(&mut self)98     fn record_failed(&mut self) {
99         self.failed += 1;
100     }
summary(&self) -> String101     fn summary(&self) -> String {
102         format!("{} passed; {} failed", self.passed, self.failed)
103     }
expect_total_success(&self)104     fn expect_total_success(&self) {
105         if self.failed == 0 {
106             println!("OK: {}", self.summary());
107         } else {
108             panic!("FAILED: {}", self.summary());
109         };
110     }
111 }
112 
113 #[test]
cross_validate_constants_with_c()114 fn cross_validate_constants_with_c() {
115     let mut c_constants: Vec<(String, String)> = Vec::new();
116 
117     for l in get_c_output("constant").unwrap().lines() {
118         let mut words = l.trim().split(';');
119         let name = words.next().expect("Failed to parse name").to_owned();
120         let value = words
121             .next()
122             .and_then(|s| s.parse().ok())
123             .expect("Failed to parse value");
124         c_constants.push((name, value));
125     }
126 
127     let mut results = Results::default();
128 
129     for ((rust_name, rust_value), (c_name, c_value)) in
130         RUST_CONSTANTS.iter().zip(c_constants.iter())
131     {
132         if rust_name != c_name {
133             results.record_failed();
134             eprintln!("Name mismatch:\nRust: {:?}\nC:    {:?}", rust_name, c_name,);
135             continue;
136         }
137 
138         if rust_value != c_value {
139             results.record_failed();
140             eprintln!(
141                 "Constant value mismatch for {}\nRust: {:?}\nC:    {:?}",
142                 rust_name, rust_value, &c_value
143             );
144             continue;
145         }
146 
147         results.record_passed();
148     }
149 
150     results.expect_total_success();
151 }
152 
153 #[test]
cross_validate_layout_with_c()154 fn cross_validate_layout_with_c() {
155     let mut c_layouts = Vec::new();
156 
157     for l in get_c_output("layout").unwrap().lines() {
158         let mut words = l.trim().split(';');
159         let name = words.next().expect("Failed to parse name").to_owned();
160         let size = words
161             .next()
162             .and_then(|s| s.parse().ok())
163             .expect("Failed to parse size");
164         let alignment = words
165             .next()
166             .and_then(|s| s.parse().ok())
167             .expect("Failed to parse alignment");
168         c_layouts.push((name, Layout { size, alignment }));
169     }
170 
171     let mut results = Results::default();
172 
173     for ((rust_name, rust_layout), (c_name, c_layout)) in RUST_LAYOUTS.iter().zip(c_layouts.iter())
174     {
175         if rust_name != c_name {
176             results.record_failed();
177             eprintln!("Name mismatch:\nRust: {:?}\nC:    {:?}", rust_name, c_name,);
178             continue;
179         }
180 
181         if rust_layout != c_layout {
182             results.record_failed();
183             eprintln!(
184                 "Layout mismatch for {}\nRust: {:?}\nC:    {:?}",
185                 rust_name, rust_layout, &c_layout
186             );
187             continue;
188         }
189 
190         results.record_passed();
191     }
192 
193     results.expect_total_success();
194 }
195 
get_c_output(name: &str) -> Result<String, Box<dyn Error>>196 fn get_c_output(name: &str) -> Result<String, Box<dyn Error>> {
197     let tmpdir = Builder::new().prefix("abi").tempdir()?;
198     let exe = tmpdir.path().join(name);
199     let c_file = Path::new("tests").join(name).with_extension("c");
200 
201     let cc = Compiler::new().expect("configured compiler");
202     cc.compile(&c_file, &exe)?;
203 
204     let mut abi_cmd = Command::new(exe);
205     let output = abi_cmd.output()?;
206     if !output.status.success() {
207         return Err(format!("command {:?} failed, {:?}", &abi_cmd, &output).into());
208     }
209 
210     Ok(String::from_utf8(output.stdout)?)
211 }
212 
213 const RUST_LAYOUTS: &[(&str, Layout)] = &[
214     (
215         "GstColorBalanceChannel",
216         Layout {
217             size: size_of::<GstColorBalanceChannel>(),
218             alignment: align_of::<GstColorBalanceChannel>(),
219         },
220     ),
221     (
222         "GstColorBalanceChannelClass",
223         Layout {
224             size: size_of::<GstColorBalanceChannelClass>(),
225             alignment: align_of::<GstColorBalanceChannelClass>(),
226         },
227     ),
228     (
229         "GstColorBalanceInterface",
230         Layout {
231             size: size_of::<GstColorBalanceInterface>(),
232             alignment: align_of::<GstColorBalanceInterface>(),
233         },
234     ),
235     (
236         "GstColorBalanceType",
237         Layout {
238             size: size_of::<GstColorBalanceType>(),
239             alignment: align_of::<GstColorBalanceType>(),
240         },
241     ),
242     (
243         "GstNavigationCommand",
244         Layout {
245             size: size_of::<GstNavigationCommand>(),
246             alignment: align_of::<GstNavigationCommand>(),
247         },
248     ),
249     (
250         "GstNavigationEventType",
251         Layout {
252             size: size_of::<GstNavigationEventType>(),
253             alignment: align_of::<GstNavigationEventType>(),
254         },
255     ),
256     (
257         "GstNavigationInterface",
258         Layout {
259             size: size_of::<GstNavigationInterface>(),
260             alignment: align_of::<GstNavigationInterface>(),
261         },
262     ),
263     (
264         "GstNavigationMessageType",
265         Layout {
266             size: size_of::<GstNavigationMessageType>(),
267             alignment: align_of::<GstNavigationMessageType>(),
268         },
269     ),
270     (
271         "GstNavigationQueryType",
272         Layout {
273             size: size_of::<GstNavigationQueryType>(),
274             alignment: align_of::<GstNavigationQueryType>(),
275         },
276     ),
277     (
278         "GstVideoAFDMeta",
279         Layout {
280             size: size_of::<GstVideoAFDMeta>(),
281             alignment: align_of::<GstVideoAFDMeta>(),
282         },
283     ),
284     (
285         "GstVideoAFDSpec",
286         Layout {
287             size: size_of::<GstVideoAFDSpec>(),
288             alignment: align_of::<GstVideoAFDSpec>(),
289         },
290     ),
291     (
292         "GstVideoAFDValue",
293         Layout {
294             size: size_of::<GstVideoAFDValue>(),
295             alignment: align_of::<GstVideoAFDValue>(),
296         },
297     ),
298     (
299         "GstVideoAffineTransformationMeta",
300         Layout {
301             size: size_of::<GstVideoAffineTransformationMeta>(),
302             alignment: align_of::<GstVideoAffineTransformationMeta>(),
303         },
304     ),
305     (
306         "GstVideoAggregator",
307         Layout {
308             size: size_of::<GstVideoAggregator>(),
309             alignment: align_of::<GstVideoAggregator>(),
310         },
311     ),
312     (
313         "GstVideoAggregatorClass",
314         Layout {
315             size: size_of::<GstVideoAggregatorClass>(),
316             alignment: align_of::<GstVideoAggregatorClass>(),
317         },
318     ),
319     (
320         "GstVideoAggregatorConvertPad",
321         Layout {
322             size: size_of::<GstVideoAggregatorConvertPad>(),
323             alignment: align_of::<GstVideoAggregatorConvertPad>(),
324         },
325     ),
326     (
327         "GstVideoAggregatorConvertPadClass",
328         Layout {
329             size: size_of::<GstVideoAggregatorConvertPadClass>(),
330             alignment: align_of::<GstVideoAggregatorConvertPadClass>(),
331         },
332     ),
333     (
334         "GstVideoAggregatorPad",
335         Layout {
336             size: size_of::<GstVideoAggregatorPad>(),
337             alignment: align_of::<GstVideoAggregatorPad>(),
338         },
339     ),
340     (
341         "GstVideoAggregatorPadClass",
342         Layout {
343             size: size_of::<GstVideoAggregatorPadClass>(),
344             alignment: align_of::<GstVideoAggregatorPadClass>(),
345         },
346     ),
347     (
348         "GstVideoAggregatorParallelConvertPad",
349         Layout {
350             size: size_of::<GstVideoAggregatorParallelConvertPad>(),
351             alignment: align_of::<GstVideoAggregatorParallelConvertPad>(),
352         },
353     ),
354     (
355         "GstVideoAggregatorParallelConvertPadClass",
356         Layout {
357             size: size_of::<GstVideoAggregatorParallelConvertPadClass>(),
358             alignment: align_of::<GstVideoAggregatorParallelConvertPadClass>(),
359         },
360     ),
361     (
362         "GstVideoAlignment",
363         Layout {
364             size: size_of::<GstVideoAlignment>(),
365             alignment: align_of::<GstVideoAlignment>(),
366         },
367     ),
368     (
369         "GstVideoAlphaMode",
370         Layout {
371             size: size_of::<GstVideoAlphaMode>(),
372             alignment: align_of::<GstVideoAlphaMode>(),
373         },
374     ),
375     (
376         "GstVideoAncillary",
377         Layout {
378             size: size_of::<GstVideoAncillary>(),
379             alignment: align_of::<GstVideoAncillary>(),
380         },
381     ),
382     (
383         "GstVideoAncillaryDID",
384         Layout {
385             size: size_of::<GstVideoAncillaryDID>(),
386             alignment: align_of::<GstVideoAncillaryDID>(),
387         },
388     ),
389     (
390         "GstVideoAncillaryDID16",
391         Layout {
392             size: size_of::<GstVideoAncillaryDID16>(),
393             alignment: align_of::<GstVideoAncillaryDID16>(),
394         },
395     ),
396     (
397         "GstVideoBarMeta",
398         Layout {
399             size: size_of::<GstVideoBarMeta>(),
400             alignment: align_of::<GstVideoBarMeta>(),
401         },
402     ),
403     (
404         "GstVideoBufferFlags",
405         Layout {
406             size: size_of::<GstVideoBufferFlags>(),
407             alignment: align_of::<GstVideoBufferFlags>(),
408         },
409     ),
410     (
411         "GstVideoBufferPool",
412         Layout {
413             size: size_of::<GstVideoBufferPool>(),
414             alignment: align_of::<GstVideoBufferPool>(),
415         },
416     ),
417     (
418         "GstVideoBufferPoolClass",
419         Layout {
420             size: size_of::<GstVideoBufferPoolClass>(),
421             alignment: align_of::<GstVideoBufferPoolClass>(),
422         },
423     ),
424     (
425         "GstVideoCaptionMeta",
426         Layout {
427             size: size_of::<GstVideoCaptionMeta>(),
428             alignment: align_of::<GstVideoCaptionMeta>(),
429         },
430     ),
431     (
432         "GstVideoCaptionType",
433         Layout {
434             size: size_of::<GstVideoCaptionType>(),
435             alignment: align_of::<GstVideoCaptionType>(),
436         },
437     ),
438     (
439         "GstVideoChromaFlags",
440         Layout {
441             size: size_of::<GstVideoChromaFlags>(),
442             alignment: align_of::<GstVideoChromaFlags>(),
443         },
444     ),
445     (
446         "GstVideoChromaMethod",
447         Layout {
448             size: size_of::<GstVideoChromaMethod>(),
449             alignment: align_of::<GstVideoChromaMethod>(),
450         },
451     ),
452     (
453         "GstVideoChromaMode",
454         Layout {
455             size: size_of::<GstVideoChromaMode>(),
456             alignment: align_of::<GstVideoChromaMode>(),
457         },
458     ),
459     (
460         "GstVideoChromaSite",
461         Layout {
462             size: size_of::<GstVideoChromaSite>(),
463             alignment: align_of::<GstVideoChromaSite>(),
464         },
465     ),
466     (
467         "GstVideoCodecAlphaMeta",
468         Layout {
469             size: size_of::<GstVideoCodecAlphaMeta>(),
470             alignment: align_of::<GstVideoCodecAlphaMeta>(),
471         },
472     ),
473     (
474         "GstVideoCodecFrame",
475         Layout {
476             size: size_of::<GstVideoCodecFrame>(),
477             alignment: align_of::<GstVideoCodecFrame>(),
478         },
479     ),
480     (
481         "GstVideoCodecFrameFlags",
482         Layout {
483             size: size_of::<GstVideoCodecFrameFlags>(),
484             alignment: align_of::<GstVideoCodecFrameFlags>(),
485         },
486     ),
487     (
488         "GstVideoCodecState",
489         Layout {
490             size: size_of::<GstVideoCodecState>(),
491             alignment: align_of::<GstVideoCodecState>(),
492         },
493     ),
494     (
495         "GstVideoColorMatrix",
496         Layout {
497             size: size_of::<GstVideoColorMatrix>(),
498             alignment: align_of::<GstVideoColorMatrix>(),
499         },
500     ),
501     (
502         "GstVideoColorPrimaries",
503         Layout {
504             size: size_of::<GstVideoColorPrimaries>(),
505             alignment: align_of::<GstVideoColorPrimaries>(),
506         },
507     ),
508     (
509         "GstVideoColorPrimariesInfo",
510         Layout {
511             size: size_of::<GstVideoColorPrimariesInfo>(),
512             alignment: align_of::<GstVideoColorPrimariesInfo>(),
513         },
514     ),
515     (
516         "GstVideoColorRange",
517         Layout {
518             size: size_of::<GstVideoColorRange>(),
519             alignment: align_of::<GstVideoColorRange>(),
520         },
521     ),
522     (
523         "GstVideoColorimetry",
524         Layout {
525             size: size_of::<GstVideoColorimetry>(),
526             alignment: align_of::<GstVideoColorimetry>(),
527         },
528     ),
529     (
530         "GstVideoContentLightLevel",
531         Layout {
532             size: size_of::<GstVideoContentLightLevel>(),
533             alignment: align_of::<GstVideoContentLightLevel>(),
534         },
535     ),
536     (
537         "GstVideoCropMeta",
538         Layout {
539             size: size_of::<GstVideoCropMeta>(),
540             alignment: align_of::<GstVideoCropMeta>(),
541         },
542     ),
543     (
544         "GstVideoDecoder",
545         Layout {
546             size: size_of::<GstVideoDecoder>(),
547             alignment: align_of::<GstVideoDecoder>(),
548         },
549     ),
550     (
551         "GstVideoDecoderClass",
552         Layout {
553             size: size_of::<GstVideoDecoderClass>(),
554             alignment: align_of::<GstVideoDecoderClass>(),
555         },
556     ),
557     (
558         "GstVideoDecoderRequestSyncPointFlags",
559         Layout {
560             size: size_of::<GstVideoDecoderRequestSyncPointFlags>(),
561             alignment: align_of::<GstVideoDecoderRequestSyncPointFlags>(),
562         },
563     ),
564     (
565         "GstVideoDirectionInterface",
566         Layout {
567             size: size_of::<GstVideoDirectionInterface>(),
568             alignment: align_of::<GstVideoDirectionInterface>(),
569         },
570     ),
571     (
572         "GstVideoDitherFlags",
573         Layout {
574             size: size_of::<GstVideoDitherFlags>(),
575             alignment: align_of::<GstVideoDitherFlags>(),
576         },
577     ),
578     (
579         "GstVideoDitherMethod",
580         Layout {
581             size: size_of::<GstVideoDitherMethod>(),
582             alignment: align_of::<GstVideoDitherMethod>(),
583         },
584     ),
585     (
586         "GstVideoEncoder",
587         Layout {
588             size: size_of::<GstVideoEncoder>(),
589             alignment: align_of::<GstVideoEncoder>(),
590         },
591     ),
592     (
593         "GstVideoEncoderClass",
594         Layout {
595             size: size_of::<GstVideoEncoderClass>(),
596             alignment: align_of::<GstVideoEncoderClass>(),
597         },
598     ),
599     (
600         "GstVideoFieldOrder",
601         Layout {
602             size: size_of::<GstVideoFieldOrder>(),
603             alignment: align_of::<GstVideoFieldOrder>(),
604         },
605     ),
606     (
607         "GstVideoFilter",
608         Layout {
609             size: size_of::<GstVideoFilter>(),
610             alignment: align_of::<GstVideoFilter>(),
611         },
612     ),
613     (
614         "GstVideoFilterClass",
615         Layout {
616             size: size_of::<GstVideoFilterClass>(),
617             alignment: align_of::<GstVideoFilterClass>(),
618         },
619     ),
620     (
621         "GstVideoFlags",
622         Layout {
623             size: size_of::<GstVideoFlags>(),
624             alignment: align_of::<GstVideoFlags>(),
625         },
626     ),
627     (
628         "GstVideoFormat",
629         Layout {
630             size: size_of::<GstVideoFormat>(),
631             alignment: align_of::<GstVideoFormat>(),
632         },
633     ),
634     (
635         "GstVideoFormatFlags",
636         Layout {
637             size: size_of::<GstVideoFormatFlags>(),
638             alignment: align_of::<GstVideoFormatFlags>(),
639         },
640     ),
641     (
642         "GstVideoFormatInfo",
643         Layout {
644             size: size_of::<GstVideoFormatInfo>(),
645             alignment: align_of::<GstVideoFormatInfo>(),
646         },
647     ),
648     (
649         "GstVideoFrame",
650         Layout {
651             size: size_of::<GstVideoFrame>(),
652             alignment: align_of::<GstVideoFrame>(),
653         },
654     ),
655     (
656         "GstVideoFrameFlags",
657         Layout {
658             size: size_of::<GstVideoFrameFlags>(),
659             alignment: align_of::<GstVideoFrameFlags>(),
660         },
661     ),
662     (
663         "GstVideoFrameMapFlags",
664         Layout {
665             size: size_of::<GstVideoFrameMapFlags>(),
666             alignment: align_of::<GstVideoFrameMapFlags>(),
667         },
668     ),
669     (
670         "GstVideoGLTextureOrientation",
671         Layout {
672             size: size_of::<GstVideoGLTextureOrientation>(),
673             alignment: align_of::<GstVideoGLTextureOrientation>(),
674         },
675     ),
676     (
677         "GstVideoGLTextureType",
678         Layout {
679             size: size_of::<GstVideoGLTextureType>(),
680             alignment: align_of::<GstVideoGLTextureType>(),
681         },
682     ),
683     (
684         "GstVideoGLTextureUploadMeta",
685         Layout {
686             size: size_of::<GstVideoGLTextureUploadMeta>(),
687             alignment: align_of::<GstVideoGLTextureUploadMeta>(),
688         },
689     ),
690     (
691         "GstVideoGammaMode",
692         Layout {
693             size: size_of::<GstVideoGammaMode>(),
694             alignment: align_of::<GstVideoGammaMode>(),
695         },
696     ),
697     (
698         "GstVideoInfo",
699         Layout {
700             size: size_of::<GstVideoInfo>(),
701             alignment: align_of::<GstVideoInfo>(),
702         },
703     ),
704     (
705         "GstVideoInterlaceMode",
706         Layout {
707             size: size_of::<GstVideoInterlaceMode>(),
708             alignment: align_of::<GstVideoInterlaceMode>(),
709         },
710     ),
711     (
712         "GstVideoMasteringDisplayInfo",
713         Layout {
714             size: size_of::<GstVideoMasteringDisplayInfo>(),
715             alignment: align_of::<GstVideoMasteringDisplayInfo>(),
716         },
717     ),
718     (
719         "GstVideoMasteringDisplayInfoCoordinates",
720         Layout {
721             size: size_of::<GstVideoMasteringDisplayInfoCoordinates>(),
722             alignment: align_of::<GstVideoMasteringDisplayInfoCoordinates>(),
723         },
724     ),
725     (
726         "GstVideoMatrixMode",
727         Layout {
728             size: size_of::<GstVideoMatrixMode>(),
729             alignment: align_of::<GstVideoMatrixMode>(),
730         },
731     ),
732     (
733         "GstVideoMeta",
734         Layout {
735             size: size_of::<GstVideoMeta>(),
736             alignment: align_of::<GstVideoMeta>(),
737         },
738     ),
739     (
740         "GstVideoMetaTransform",
741         Layout {
742             size: size_of::<GstVideoMetaTransform>(),
743             alignment: align_of::<GstVideoMetaTransform>(),
744         },
745     ),
746     (
747         "GstVideoMultiviewFlags",
748         Layout {
749             size: size_of::<GstVideoMultiviewFlags>(),
750             alignment: align_of::<GstVideoMultiviewFlags>(),
751         },
752     ),
753     (
754         "GstVideoMultiviewFramePacking",
755         Layout {
756             size: size_of::<GstVideoMultiviewFramePacking>(),
757             alignment: align_of::<GstVideoMultiviewFramePacking>(),
758         },
759     ),
760     (
761         "GstVideoMultiviewMode",
762         Layout {
763             size: size_of::<GstVideoMultiviewMode>(),
764             alignment: align_of::<GstVideoMultiviewMode>(),
765         },
766     ),
767     (
768         "GstVideoOrientationInterface",
769         Layout {
770             size: size_of::<GstVideoOrientationInterface>(),
771             alignment: align_of::<GstVideoOrientationInterface>(),
772         },
773     ),
774     (
775         "GstVideoOrientationMethod",
776         Layout {
777             size: size_of::<GstVideoOrientationMethod>(),
778             alignment: align_of::<GstVideoOrientationMethod>(),
779         },
780     ),
781     (
782         "GstVideoOverlayCompositionMeta",
783         Layout {
784             size: size_of::<GstVideoOverlayCompositionMeta>(),
785             alignment: align_of::<GstVideoOverlayCompositionMeta>(),
786         },
787     ),
788     (
789         "GstVideoOverlayFormatFlags",
790         Layout {
791             size: size_of::<GstVideoOverlayFormatFlags>(),
792             alignment: align_of::<GstVideoOverlayFormatFlags>(),
793         },
794     ),
795     (
796         "GstVideoOverlayInterface",
797         Layout {
798             size: size_of::<GstVideoOverlayInterface>(),
799             alignment: align_of::<GstVideoOverlayInterface>(),
800         },
801     ),
802     (
803         "GstVideoPackFlags",
804         Layout {
805             size: size_of::<GstVideoPackFlags>(),
806             alignment: align_of::<GstVideoPackFlags>(),
807         },
808     ),
809     (
810         "GstVideoPrimariesMode",
811         Layout {
812             size: size_of::<GstVideoPrimariesMode>(),
813             alignment: align_of::<GstVideoPrimariesMode>(),
814         },
815     ),
816     (
817         "GstVideoRectangle",
818         Layout {
819             size: size_of::<GstVideoRectangle>(),
820             alignment: align_of::<GstVideoRectangle>(),
821         },
822     ),
823     (
824         "GstVideoRegionOfInterestMeta",
825         Layout {
826             size: size_of::<GstVideoRegionOfInterestMeta>(),
827             alignment: align_of::<GstVideoRegionOfInterestMeta>(),
828         },
829     ),
830     (
831         "GstVideoResampler",
832         Layout {
833             size: size_of::<GstVideoResampler>(),
834             alignment: align_of::<GstVideoResampler>(),
835         },
836     ),
837     (
838         "GstVideoResamplerFlags",
839         Layout {
840             size: size_of::<GstVideoResamplerFlags>(),
841             alignment: align_of::<GstVideoResamplerFlags>(),
842         },
843     ),
844     (
845         "GstVideoResamplerMethod",
846         Layout {
847             size: size_of::<GstVideoResamplerMethod>(),
848             alignment: align_of::<GstVideoResamplerMethod>(),
849         },
850     ),
851     (
852         "GstVideoScalerFlags",
853         Layout {
854             size: size_of::<GstVideoScalerFlags>(),
855             alignment: align_of::<GstVideoScalerFlags>(),
856         },
857     ),
858     (
859         "GstVideoSink",
860         Layout {
861             size: size_of::<GstVideoSink>(),
862             alignment: align_of::<GstVideoSink>(),
863         },
864     ),
865     (
866         "GstVideoSinkClass",
867         Layout {
868             size: size_of::<GstVideoSinkClass>(),
869             alignment: align_of::<GstVideoSinkClass>(),
870         },
871     ),
872     (
873         "GstVideoTileMode",
874         Layout {
875             size: size_of::<GstVideoTileMode>(),
876             alignment: align_of::<GstVideoTileMode>(),
877         },
878     ),
879     (
880         "GstVideoTileType",
881         Layout {
882             size: size_of::<GstVideoTileType>(),
883             alignment: align_of::<GstVideoTileType>(),
884         },
885     ),
886     (
887         "GstVideoTimeCode",
888         Layout {
889             size: size_of::<GstVideoTimeCode>(),
890             alignment: align_of::<GstVideoTimeCode>(),
891         },
892     ),
893     (
894         "GstVideoTimeCodeConfig",
895         Layout {
896             size: size_of::<GstVideoTimeCodeConfig>(),
897             alignment: align_of::<GstVideoTimeCodeConfig>(),
898         },
899     ),
900     (
901         "GstVideoTimeCodeFlags",
902         Layout {
903             size: size_of::<GstVideoTimeCodeFlags>(),
904             alignment: align_of::<GstVideoTimeCodeFlags>(),
905         },
906     ),
907     (
908         "GstVideoTimeCodeInterval",
909         Layout {
910             size: size_of::<GstVideoTimeCodeInterval>(),
911             alignment: align_of::<GstVideoTimeCodeInterval>(),
912         },
913     ),
914     (
915         "GstVideoTimeCodeMeta",
916         Layout {
917             size: size_of::<GstVideoTimeCodeMeta>(),
918             alignment: align_of::<GstVideoTimeCodeMeta>(),
919         },
920     ),
921     (
922         "GstVideoTransferFunction",
923         Layout {
924             size: size_of::<GstVideoTransferFunction>(),
925             alignment: align_of::<GstVideoTransferFunction>(),
926         },
927     ),
928     (
929         "GstVideoVBIParserResult",
930         Layout {
931             size: size_of::<GstVideoVBIParserResult>(),
932             alignment: align_of::<GstVideoVBIParserResult>(),
933         },
934     ),
935 ];
936 
937 const RUST_CONSTANTS: &[(&str, &str)] = &[
938     (
939         "GST_BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META",
940         "GstBufferPoolOptionVideoAffineTransformation",
941     ),
942     (
943         "GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT",
944         "GstBufferPoolOptionVideoAlignment",
945     ),
946     (
947         "GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META",
948         "GstBufferPoolOptionVideoGLTextureUploadMeta",
949     ),
950     (
951         "GST_BUFFER_POOL_OPTION_VIDEO_META",
952         "GstBufferPoolOptionVideoMeta",
953     ),
954     ("GST_CAPS_FEATURE_FORMAT_INTERLACED", "format:Interlaced"),
955     (
956         "GST_CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META",
957         "meta:GstVideoAffineTransformation",
958     ),
959     (
960         "GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META",
961         "meta:GstVideoGLTextureUploadMeta",
962     ),
963     ("GST_CAPS_FEATURE_META_GST_VIDEO_META", "meta:GstVideoMeta"),
964     (
965         "GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION",
966         "meta:GstVideoOverlayComposition",
967     ),
968     ("(gint) GST_COLOR_BALANCE_HARDWARE", "0"),
969     ("(gint) GST_COLOR_BALANCE_SOFTWARE", "1"),
970     ("GST_META_TAG_VIDEO_COLORSPACE_STR", "colorspace"),
971     ("GST_META_TAG_VIDEO_ORIENTATION_STR", "orientation"),
972     ("GST_META_TAG_VIDEO_SIZE_STR", "size"),
973     ("GST_META_TAG_VIDEO_STR", "video"),
974     ("(gint) GST_NAVIGATION_COMMAND_ACTIVATE", "24"),
975     ("(gint) GST_NAVIGATION_COMMAND_DOWN", "23"),
976     ("(gint) GST_NAVIGATION_COMMAND_INVALID", "0"),
977     ("(gint) GST_NAVIGATION_COMMAND_LEFT", "20"),
978     ("(gint) GST_NAVIGATION_COMMAND_MENU1", "1"),
979     ("(gint) GST_NAVIGATION_COMMAND_MENU2", "2"),
980     ("(gint) GST_NAVIGATION_COMMAND_MENU3", "3"),
981     ("(gint) GST_NAVIGATION_COMMAND_MENU4", "4"),
982     ("(gint) GST_NAVIGATION_COMMAND_MENU5", "5"),
983     ("(gint) GST_NAVIGATION_COMMAND_MENU6", "6"),
984     ("(gint) GST_NAVIGATION_COMMAND_MENU7", "7"),
985     ("(gint) GST_NAVIGATION_COMMAND_NEXT_ANGLE", "31"),
986     ("(gint) GST_NAVIGATION_COMMAND_PREV_ANGLE", "30"),
987     ("(gint) GST_NAVIGATION_COMMAND_RIGHT", "21"),
988     ("(gint) GST_NAVIGATION_COMMAND_UP", "22"),
989     ("(gint) GST_NAVIGATION_EVENT_COMMAND", "6"),
990     ("(gint) GST_NAVIGATION_EVENT_INVALID", "0"),
991     ("(gint) GST_NAVIGATION_EVENT_KEY_PRESS", "1"),
992     ("(gint) GST_NAVIGATION_EVENT_KEY_RELEASE", "2"),
993     ("(gint) GST_NAVIGATION_EVENT_MOUSE_BUTTON_PRESS", "3"),
994     ("(gint) GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE", "4"),
995     ("(gint) GST_NAVIGATION_EVENT_MOUSE_MOVE", "5"),
996     ("(gint) GST_NAVIGATION_EVENT_MOUSE_SCROLL", "7"),
997     ("(gint) GST_NAVIGATION_MESSAGE_ANGLES_CHANGED", "3"),
998     ("(gint) GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED", "2"),
999     ("(gint) GST_NAVIGATION_MESSAGE_EVENT", "4"),
1000     ("(gint) GST_NAVIGATION_MESSAGE_INVALID", "0"),
1001     ("(gint) GST_NAVIGATION_MESSAGE_MOUSE_OVER", "1"),
1002     ("(gint) GST_NAVIGATION_QUERY_ANGLES", "2"),
1003     ("(gint) GST_NAVIGATION_QUERY_COMMANDS", "1"),
1004     ("(gint) GST_NAVIGATION_QUERY_INVALID", "0"),
1005     ("(gint) GST_VIDEO_AFD_14_9_LETTER_14_9_PILLAR", "11"),
1006     ("(gint) GST_VIDEO_AFD_14_9_TOP_ALIGNED", "3"),
1007     ("(gint) GST_VIDEO_AFD_16_9_LETTER_14_9_CENTER", "14"),
1008     ("(gint) GST_VIDEO_AFD_16_9_LETTER_16_9_FULL", "10"),
1009     ("(gint) GST_VIDEO_AFD_16_9_LETTER_4_3_CENTER", "15"),
1010     ("(gint) GST_VIDEO_AFD_16_9_TOP_ALIGNED", "2"),
1011     ("(gint) GST_VIDEO_AFD_4_3_FULL_14_9_CENTER", "13"),
1012     ("(gint) GST_VIDEO_AFD_4_3_FULL_16_9_FULL", "8"),
1013     ("(gint) GST_VIDEO_AFD_4_3_FULL_4_3_PILLAR", "9"),
1014     ("(gint) GST_VIDEO_AFD_GREATER_THAN_16_9", "4"),
1015     ("(gint) GST_VIDEO_AFD_SPEC_ATSC_A53", "1"),
1016     ("(gint) GST_VIDEO_AFD_SPEC_DVB_ETSI", "0"),
1017     ("(gint) GST_VIDEO_AFD_SPEC_SMPTE_ST2016_1", "2"),
1018     ("(gint) GST_VIDEO_AFD_UNAVAILABLE", "0"),
1019     ("(gint) GST_VIDEO_ALPHA_MODE_COPY", "0"),
1020     ("(gint) GST_VIDEO_ALPHA_MODE_MULT", "2"),
1021     ("(gint) GST_VIDEO_ALPHA_MODE_SET", "1"),
1022     ("(gint) GST_VIDEO_ANCILLARY_DID16_S2016_3_AFD_BAR", "16645"),
1023     ("(gint) GST_VIDEO_ANCILLARY_DID16_S334_EIA_608", "24834"),
1024     ("(gint) GST_VIDEO_ANCILLARY_DID16_S334_EIA_708", "24833"),
1025     ("(gint) GST_VIDEO_ANCILLARY_DID_CAMERA_POSITION", "240"),
1026     ("(gint) GST_VIDEO_ANCILLARY_DID_DELETION", "128"),
1027     (
1028         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_3G_AUDIO_DATA_FIRST",
1029         "160",
1030     ),
1031     (
1032         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_3G_AUDIO_DATA_LAST",
1033         "167",
1034     ),
1035     ("(gint) GST_VIDEO_ANCILLARY_DID_HANC_ERROR_DETECTION", "244"),
1036     (
1037         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_HDTV_AUDIO_DATA_FIRST",
1038         "224",
1039     ),
1040     (
1041         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_HDTV_AUDIO_DATA_LAST",
1042         "231",
1043     ),
1044     (
1045         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_SDTV_AUDIO_DATA_1_FIRST",
1046         "236",
1047     ),
1048     (
1049         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_SDTV_AUDIO_DATA_1_LAST",
1050         "239",
1051     ),
1052     (
1053         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_SDTV_AUDIO_DATA_2_FIRST",
1054         "248",
1055     ),
1056     (
1057         "(gint) GST_VIDEO_ANCILLARY_DID_HANC_SDTV_AUDIO_DATA_2_LAST",
1058         "255",
1059     ),
1060     ("(gint) GST_VIDEO_ANCILLARY_DID_UNDEFINED", "0"),
1061     ("(guint) GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD", "8388608"),
1062     ("(guint) GST_VIDEO_BUFFER_FLAG_FIRST_IN_BUNDLE", "33554432"),
1063     ("(guint) GST_VIDEO_BUFFER_FLAG_INTERLACED", "1048576"),
1064     ("(guint) GST_VIDEO_BUFFER_FLAG_LAST", "268435456"),
1065     ("(guint) GST_VIDEO_BUFFER_FLAG_MARKER", "512"),
1066     ("(guint) GST_VIDEO_BUFFER_FLAG_MULTIPLE_VIEW", "16777216"),
1067     ("(guint) GST_VIDEO_BUFFER_FLAG_ONEFIELD", "8388608"),
1068     ("(guint) GST_VIDEO_BUFFER_FLAG_RFF", "4194304"),
1069     ("(guint) GST_VIDEO_BUFFER_FLAG_TFF", "2097152"),
1070     ("(guint) GST_VIDEO_BUFFER_FLAG_TOP_FIELD", "10485760"),
1071     ("(gint) GST_VIDEO_CAPTION_TYPE_CEA608_RAW", "1"),
1072     ("(gint) GST_VIDEO_CAPTION_TYPE_CEA608_S334_1A", "2"),
1073     ("(gint) GST_VIDEO_CAPTION_TYPE_CEA708_CDP", "4"),
1074     ("(gint) GST_VIDEO_CAPTION_TYPE_CEA708_RAW", "3"),
1075     ("(gint) GST_VIDEO_CAPTION_TYPE_UNKNOWN", "0"),
1076     ("(guint) GST_VIDEO_CHROMA_FLAG_INTERLACED", "1"),
1077     ("(guint) GST_VIDEO_CHROMA_FLAG_NONE", "0"),
1078     ("(gint) GST_VIDEO_CHROMA_METHOD_LINEAR", "1"),
1079     ("(gint) GST_VIDEO_CHROMA_METHOD_NEAREST", "0"),
1080     ("(gint) GST_VIDEO_CHROMA_MODE_DOWNSAMPLE_ONLY", "2"),
1081     ("(gint) GST_VIDEO_CHROMA_MODE_FULL", "0"),
1082     ("(gint) GST_VIDEO_CHROMA_MODE_NONE", "3"),
1083     ("(gint) GST_VIDEO_CHROMA_MODE_UPSAMPLE_ONLY", "1"),
1084     ("(guint) GST_VIDEO_CHROMA_SITE_ALT_LINE", "8"),
1085     ("(guint) GST_VIDEO_CHROMA_SITE_COSITED", "6"),
1086     ("(guint) GST_VIDEO_CHROMA_SITE_DV", "14"),
1087     ("(guint) GST_VIDEO_CHROMA_SITE_H_COSITED", "2"),
1088     ("(guint) GST_VIDEO_CHROMA_SITE_JPEG", "1"),
1089     ("(guint) GST_VIDEO_CHROMA_SITE_MPEG2", "2"),
1090     ("(guint) GST_VIDEO_CHROMA_SITE_NONE", "1"),
1091     ("(guint) GST_VIDEO_CHROMA_SITE_UNKNOWN", "0"),
1092     ("(guint) GST_VIDEO_CHROMA_SITE_V_COSITED", "4"),
1093     ("(guint) GST_VIDEO_CODEC_FRAME_FLAG_CORRUPTED", "16"),
1094     ("(guint) GST_VIDEO_CODEC_FRAME_FLAG_DECODE_ONLY", "1"),
1095     ("(guint) GST_VIDEO_CODEC_FRAME_FLAG_FORCE_KEYFRAME", "4"),
1096     (
1097         "(guint) GST_VIDEO_CODEC_FRAME_FLAG_FORCE_KEYFRAME_HEADERS",
1098         "8",
1099     ),
1100     ("(guint) GST_VIDEO_CODEC_FRAME_FLAG_SYNC_POINT", "2"),
1101     ("GST_VIDEO_COLORIMETRY_BT2020", "bt2020"),
1102     ("GST_VIDEO_COLORIMETRY_BT2020_10", "bt2020-10"),
1103     ("GST_VIDEO_COLORIMETRY_BT2100_HLG", "bt2100-hlg"),
1104     ("GST_VIDEO_COLORIMETRY_BT2100_PQ", "bt2100-pq"),
1105     ("GST_VIDEO_COLORIMETRY_BT601", "bt601"),
1106     ("GST_VIDEO_COLORIMETRY_BT709", "bt709"),
1107     ("GST_VIDEO_COLORIMETRY_SMPTE240M", "smpte240m"),
1108     ("GST_VIDEO_COLORIMETRY_SRGB", "sRGB"),
1109     ("(gint) GST_VIDEO_COLOR_MATRIX_BT2020", "6"),
1110     ("(gint) GST_VIDEO_COLOR_MATRIX_BT601", "4"),
1111     ("(gint) GST_VIDEO_COLOR_MATRIX_BT709", "3"),
1112     ("(gint) GST_VIDEO_COLOR_MATRIX_FCC", "2"),
1113     ("(gint) GST_VIDEO_COLOR_MATRIX_RGB", "1"),
1114     ("(gint) GST_VIDEO_COLOR_MATRIX_SMPTE240M", "5"),
1115     ("(gint) GST_VIDEO_COLOR_MATRIX_UNKNOWN", "0"),
1116     ("(gint) GST_VIDEO_COLOR_PRIMARIES_ADOBERGB", "8"),
1117     ("(gint) GST_VIDEO_COLOR_PRIMARIES_BT2020", "7"),
1118     ("(gint) GST_VIDEO_COLOR_PRIMARIES_BT470BG", "3"),
1119     ("(gint) GST_VIDEO_COLOR_PRIMARIES_BT470M", "2"),
1120     ("(gint) GST_VIDEO_COLOR_PRIMARIES_BT709", "1"),
1121     ("(gint) GST_VIDEO_COLOR_PRIMARIES_EBU3213", "12"),
1122     ("(gint) GST_VIDEO_COLOR_PRIMARIES_FILM", "6"),
1123     ("(gint) GST_VIDEO_COLOR_PRIMARIES_SMPTE170M", "4"),
1124     ("(gint) GST_VIDEO_COLOR_PRIMARIES_SMPTE240M", "5"),
1125     ("(gint) GST_VIDEO_COLOR_PRIMARIES_SMPTEEG432", "11"),
1126     ("(gint) GST_VIDEO_COLOR_PRIMARIES_SMPTERP431", "10"),
1127     ("(gint) GST_VIDEO_COLOR_PRIMARIES_SMPTEST428", "9"),
1128     ("(gint) GST_VIDEO_COLOR_PRIMARIES_UNKNOWN", "0"),
1129     ("(gint) GST_VIDEO_COLOR_RANGE_0_255", "1"),
1130     ("(gint) GST_VIDEO_COLOR_RANGE_16_235", "2"),
1131     ("(gint) GST_VIDEO_COLOR_RANGE_UNKNOWN", "0"),
1132     ("GST_VIDEO_COMP_A", "3"),
1133     ("GST_VIDEO_COMP_B", "2"),
1134     ("GST_VIDEO_COMP_G", "1"),
1135     ("GST_VIDEO_COMP_INDEX", "0"),
1136     ("GST_VIDEO_COMP_PALETTE", "1"),
1137     ("GST_VIDEO_COMP_R", "0"),
1138     ("GST_VIDEO_COMP_U", "1"),
1139     ("GST_VIDEO_COMP_V", "2"),
1140     ("GST_VIDEO_COMP_Y", "0"),
1141     (
1142         "GST_VIDEO_CONVERTER_OPT_ALPHA_MODE",
1143         "GstVideoConverter.alpha-mode",
1144     ),
1145     (
1146         "GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE",
1147         "GstVideoConverter.alpha-value",
1148     ),
1149     (
1150         "GST_VIDEO_CONVERTER_OPT_ASYNC_TASKS",
1151         "GstVideoConverter.async-tasks",
1152     ),
1153     (
1154         "GST_VIDEO_CONVERTER_OPT_BORDER_ARGB",
1155         "GstVideoConverter.border-argb",
1156     ),
1157     (
1158         "GST_VIDEO_CONVERTER_OPT_CHROMA_MODE",
1159         "GstVideoConverter.chroma-mode",
1160     ),
1161     (
1162         "GST_VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD",
1163         "GstVideoConverter.chroma-resampler-method",
1164     ),
1165     (
1166         "GST_VIDEO_CONVERTER_OPT_DEST_HEIGHT",
1167         "GstVideoConverter.dest-height",
1168     ),
1169     (
1170         "GST_VIDEO_CONVERTER_OPT_DEST_WIDTH",
1171         "GstVideoConverter.dest-width",
1172     ),
1173     ("GST_VIDEO_CONVERTER_OPT_DEST_X", "GstVideoConverter.dest-x"),
1174     ("GST_VIDEO_CONVERTER_OPT_DEST_Y", "GstVideoConverter.dest-y"),
1175     (
1176         "GST_VIDEO_CONVERTER_OPT_DITHER_METHOD",
1177         "GstVideoConverter.dither-method",
1178     ),
1179     (
1180         "GST_VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION",
1181         "GstVideoConverter.dither-quantization",
1182     ),
1183     (
1184         "GST_VIDEO_CONVERTER_OPT_FILL_BORDER",
1185         "GstVideoConverter.fill-border",
1186     ),
1187     (
1188         "GST_VIDEO_CONVERTER_OPT_GAMMA_MODE",
1189         "GstVideoConverter.gamma-mode",
1190     ),
1191     (
1192         "GST_VIDEO_CONVERTER_OPT_MATRIX_MODE",
1193         "GstVideoConverter.matrix-mode",
1194     ),
1195     (
1196         "GST_VIDEO_CONVERTER_OPT_PRIMARIES_MODE",
1197         "GstVideoConverter.primaries-mode",
1198     ),
1199     (
1200         "GST_VIDEO_CONVERTER_OPT_RESAMPLER_METHOD",
1201         "GstVideoConverter.resampler-method",
1202     ),
1203     (
1204         "GST_VIDEO_CONVERTER_OPT_RESAMPLER_TAPS",
1205         "GstVideoConverter.resampler-taps",
1206     ),
1207     (
1208         "GST_VIDEO_CONVERTER_OPT_SRC_HEIGHT",
1209         "GstVideoConverter.src-height",
1210     ),
1211     (
1212         "GST_VIDEO_CONVERTER_OPT_SRC_WIDTH",
1213         "GstVideoConverter.src-width",
1214     ),
1215     ("GST_VIDEO_CONVERTER_OPT_SRC_X", "GstVideoConverter.src-x"),
1216     ("GST_VIDEO_CONVERTER_OPT_SRC_Y", "GstVideoConverter.src-y"),
1217     (
1218         "GST_VIDEO_CONVERTER_OPT_THREADS",
1219         "GstVideoConverter.threads",
1220     ),
1221     ("GST_VIDEO_DECODER_MAX_ERRORS", "10"),
1222     (
1223         "(guint) GST_VIDEO_DECODER_REQUEST_SYNC_POINT_CORRUPT_OUTPUT",
1224         "2",
1225     ),
1226     (
1227         "(guint) GST_VIDEO_DECODER_REQUEST_SYNC_POINT_DISCARD_INPUT",
1228         "1",
1229     ),
1230     ("GST_VIDEO_DECODER_SINK_NAME", "sink"),
1231     ("GST_VIDEO_DECODER_SRC_NAME", "src"),
1232     ("(gint) GST_VIDEO_DITHER_BAYER", "4"),
1233     ("(guint) GST_VIDEO_DITHER_FLAG_INTERLACED", "1"),
1234     ("(guint) GST_VIDEO_DITHER_FLAG_NONE", "0"),
1235     ("(guint) GST_VIDEO_DITHER_FLAG_QUANTIZE", "2"),
1236     ("(gint) GST_VIDEO_DITHER_FLOYD_STEINBERG", "2"),
1237     ("(gint) GST_VIDEO_DITHER_NONE", "0"),
1238     ("(gint) GST_VIDEO_DITHER_SIERRA_LITE", "3"),
1239     ("(gint) GST_VIDEO_DITHER_VERTERR", "1"),
1240     ("GST_VIDEO_ENCODER_SINK_NAME", "sink"),
1241     ("GST_VIDEO_ENCODER_SRC_NAME", "src"),
1242     ("(gint) GST_VIDEO_FIELD_ORDER_BOTTOM_FIELD_FIRST", "2"),
1243     ("(gint) GST_VIDEO_FIELD_ORDER_TOP_FIELD_FIRST", "1"),
1244     ("(gint) GST_VIDEO_FIELD_ORDER_UNKNOWN", "0"),
1245     ("(guint) GST_VIDEO_FLAG_NONE", "0"),
1246     ("(guint) GST_VIDEO_FLAG_PREMULTIPLIED_ALPHA", "2"),
1247     ("(guint) GST_VIDEO_FLAG_VARIABLE_FPS", "1"),
1248     ("(gint) GST_VIDEO_FORMAT_A420", "34"),
1249     ("(gint) GST_VIDEO_FORMAT_A420_10BE", "54"),
1250     ("(gint) GST_VIDEO_FORMAT_A420_10LE", "55"),
1251     ("(gint) GST_VIDEO_FORMAT_A422_10BE", "56"),
1252     ("(gint) GST_VIDEO_FORMAT_A422_10LE", "57"),
1253     ("(gint) GST_VIDEO_FORMAT_A444_10BE", "58"),
1254     ("(gint) GST_VIDEO_FORMAT_A444_10LE", "59"),
1255     ("(gint) GST_VIDEO_FORMAT_ABGR", "14"),
1256     ("(gint) GST_VIDEO_FORMAT_ARGB", "13"),
1257     ("(gint) GST_VIDEO_FORMAT_ARGB64", "39"),
1258     ("(gint) GST_VIDEO_FORMAT_AV12", "101"),
1259     ("(gint) GST_VIDEO_FORMAT_AYUV", "6"),
1260     ("(gint) GST_VIDEO_FORMAT_AYUV64", "40"),
1261     ("(gint) GST_VIDEO_FORMAT_BGR", "16"),
1262     ("(gint) GST_VIDEO_FORMAT_BGR10A2_LE", "85"),
1263     ("(gint) GST_VIDEO_FORMAT_BGR15", "32"),
1264     ("(gint) GST_VIDEO_FORMAT_BGR16", "30"),
1265     ("(gint) GST_VIDEO_FORMAT_BGRA", "12"),
1266     ("(gint) GST_VIDEO_FORMAT_BGRP", "100"),
1267     ("(gint) GST_VIDEO_FORMAT_BGRx", "8"),
1268     ("(gint) GST_VIDEO_FORMAT_ENCODED", "1"),
1269     ("(guint) GST_VIDEO_FORMAT_FLAG_ALPHA", "8"),
1270     ("(guint) GST_VIDEO_FORMAT_FLAG_COMPLEX", "64"),
1271     ("(guint) GST_VIDEO_FORMAT_FLAG_GRAY", "4"),
1272     ("(guint) GST_VIDEO_FORMAT_FLAG_LE", "16"),
1273     ("(guint) GST_VIDEO_FORMAT_FLAG_PALETTE", "32"),
1274     ("(guint) GST_VIDEO_FORMAT_FLAG_RGB", "2"),
1275     ("(guint) GST_VIDEO_FORMAT_FLAG_TILED", "256"),
1276     ("(guint) GST_VIDEO_FORMAT_FLAG_UNPACK", "128"),
1277     ("(guint) GST_VIDEO_FORMAT_FLAG_YUV", "1"),
1278     ("(gint) GST_VIDEO_FORMAT_GBR", "48"),
1279     ("(gint) GST_VIDEO_FORMAT_GBRA", "65"),
1280     ("(gint) GST_VIDEO_FORMAT_GBRA_10BE", "66"),
1281     ("(gint) GST_VIDEO_FORMAT_GBRA_10LE", "67"),
1282     ("(gint) GST_VIDEO_FORMAT_GBRA_12BE", "70"),
1283     ("(gint) GST_VIDEO_FORMAT_GBRA_12LE", "71"),
1284     ("(gint) GST_VIDEO_FORMAT_GBR_10BE", "49"),
1285     ("(gint) GST_VIDEO_FORMAT_GBR_10LE", "50"),
1286     ("(gint) GST_VIDEO_FORMAT_GBR_12BE", "68"),
1287     ("(gint) GST_VIDEO_FORMAT_GBR_12LE", "69"),
1288     ("(gint) GST_VIDEO_FORMAT_GRAY10_LE32", "78"),
1289     ("(gint) GST_VIDEO_FORMAT_GRAY16_BE", "26"),
1290     ("(gint) GST_VIDEO_FORMAT_GRAY16_LE", "27"),
1291     ("(gint) GST_VIDEO_FORMAT_GRAY8", "25"),
1292     ("(gint) GST_VIDEO_FORMAT_I420", "2"),
1293     ("(gint) GST_VIDEO_FORMAT_I420_10BE", "42"),
1294     ("(gint) GST_VIDEO_FORMAT_I420_10LE", "43"),
1295     ("(gint) GST_VIDEO_FORMAT_I420_12BE", "72"),
1296     ("(gint) GST_VIDEO_FORMAT_I420_12LE", "73"),
1297     ("(gint) GST_VIDEO_FORMAT_I422_10BE", "44"),
1298     ("(gint) GST_VIDEO_FORMAT_I422_10LE", "45"),
1299     ("(gint) GST_VIDEO_FORMAT_I422_12BE", "74"),
1300     ("(gint) GST_VIDEO_FORMAT_I422_12LE", "75"),
1301     ("(gint) GST_VIDEO_FORMAT_IYU1", "38"),
1302     ("(gint) GST_VIDEO_FORMAT_IYU2", "63"),
1303     ("(gint) GST_VIDEO_FORMAT_NV12", "23"),
1304     ("(gint) GST_VIDEO_FORMAT_NV12_10LE32", "79"),
1305     ("(gint) GST_VIDEO_FORMAT_NV12_10LE40", "81"),
1306     ("(gint) GST_VIDEO_FORMAT_NV12_32L32", "98"),
1307     ("(gint) GST_VIDEO_FORMAT_NV12_4L4", "97"),
1308     ("(gint) GST_VIDEO_FORMAT_NV12_64Z32", "53"),
1309     ("(gint) GST_VIDEO_FORMAT_NV16", "51"),
1310     ("(gint) GST_VIDEO_FORMAT_NV16_10LE32", "80"),
1311     ("(gint) GST_VIDEO_FORMAT_NV21", "24"),
1312     ("(gint) GST_VIDEO_FORMAT_NV24", "52"),
1313     ("(gint) GST_VIDEO_FORMAT_NV61", "60"),
1314     ("(gint) GST_VIDEO_FORMAT_P010_10BE", "61"),
1315     ("(gint) GST_VIDEO_FORMAT_P010_10LE", "62"),
1316     ("(gint) GST_VIDEO_FORMAT_P012_BE", "91"),
1317     ("(gint) GST_VIDEO_FORMAT_P012_LE", "92"),
1318     ("(gint) GST_VIDEO_FORMAT_P016_BE", "89"),
1319     ("(gint) GST_VIDEO_FORMAT_P016_LE", "90"),
1320     ("(gint) GST_VIDEO_FORMAT_RGB", "15"),
1321     ("(gint) GST_VIDEO_FORMAT_RGB10A2_LE", "86"),
1322     ("(gint) GST_VIDEO_FORMAT_RGB15", "31"),
1323     ("(gint) GST_VIDEO_FORMAT_RGB16", "29"),
1324     ("(gint) GST_VIDEO_FORMAT_RGB8P", "35"),
1325     ("(gint) GST_VIDEO_FORMAT_RGBA", "11"),
1326     ("(gint) GST_VIDEO_FORMAT_RGBP", "99"),
1327     ("(gint) GST_VIDEO_FORMAT_RGBx", "7"),
1328     ("(gint) GST_VIDEO_FORMAT_UNKNOWN", "0"),
1329     ("(gint) GST_VIDEO_FORMAT_UYVP", "33"),
1330     ("(gint) GST_VIDEO_FORMAT_UYVY", "5"),
1331     ("(gint) GST_VIDEO_FORMAT_VUYA", "84"),
1332     ("(gint) GST_VIDEO_FORMAT_VYUY", "64"),
1333     ("(gint) GST_VIDEO_FORMAT_Y210", "82"),
1334     ("(gint) GST_VIDEO_FORMAT_Y212_BE", "93"),
1335     ("(gint) GST_VIDEO_FORMAT_Y212_LE", "94"),
1336     ("(gint) GST_VIDEO_FORMAT_Y410", "83"),
1337     ("(gint) GST_VIDEO_FORMAT_Y412_BE", "95"),
1338     ("(gint) GST_VIDEO_FORMAT_Y412_LE", "96"),
1339     ("(gint) GST_VIDEO_FORMAT_Y41B", "17"),
1340     ("(gint) GST_VIDEO_FORMAT_Y42B", "18"),
1341     ("(gint) GST_VIDEO_FORMAT_Y444", "20"),
1342     ("(gint) GST_VIDEO_FORMAT_Y444_10BE", "46"),
1343     ("(gint) GST_VIDEO_FORMAT_Y444_10LE", "47"),
1344     ("(gint) GST_VIDEO_FORMAT_Y444_12BE", "76"),
1345     ("(gint) GST_VIDEO_FORMAT_Y444_12LE", "77"),
1346     ("(gint) GST_VIDEO_FORMAT_Y444_16BE", "87"),
1347     ("(gint) GST_VIDEO_FORMAT_Y444_16LE", "88"),
1348     ("(gint) GST_VIDEO_FORMAT_YUV9", "36"),
1349     ("(gint) GST_VIDEO_FORMAT_YUY2", "4"),
1350     ("(gint) GST_VIDEO_FORMAT_YV12", "3"),
1351     ("(gint) GST_VIDEO_FORMAT_YVU9", "37"),
1352     ("(gint) GST_VIDEO_FORMAT_YVYU", "19"),
1353     ("(gint) GST_VIDEO_FORMAT_r210", "41"),
1354     ("(gint) GST_VIDEO_FORMAT_v210", "21"),
1355     ("(gint) GST_VIDEO_FORMAT_v216", "22"),
1356     ("(gint) GST_VIDEO_FORMAT_v308", "28"),
1357     ("(gint) GST_VIDEO_FORMAT_xBGR", "10"),
1358     ("(gint) GST_VIDEO_FORMAT_xRGB", "9"),
1359     ("GST_VIDEO_FPS_RANGE", "(fraction) [ 0, max ]"),
1360     ("(guint) GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD", "8"),
1361     ("(guint) GST_VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE", "32"),
1362     ("(guint) GST_VIDEO_FRAME_FLAG_INTERLACED", "1"),
1363     ("(guint) GST_VIDEO_FRAME_FLAG_MULTIPLE_VIEW", "16"),
1364     ("(guint) GST_VIDEO_FRAME_FLAG_NONE", "0"),
1365     ("(guint) GST_VIDEO_FRAME_FLAG_ONEFIELD", "8"),
1366     ("(guint) GST_VIDEO_FRAME_FLAG_RFF", "4"),
1367     ("(guint) GST_VIDEO_FRAME_FLAG_TFF", "2"),
1368     ("(guint) GST_VIDEO_FRAME_FLAG_TOP_FIELD", "10"),
1369     ("(guint) GST_VIDEO_FRAME_MAP_FLAG_LAST", "16777216"),
1370     ("(guint) GST_VIDEO_FRAME_MAP_FLAG_NO_REF", "65536"),
1371     ("(gint) GST_VIDEO_GAMMA_MODE_NONE", "0"),
1372     ("(gint) GST_VIDEO_GAMMA_MODE_REMAP", "1"),
1373     ("(gint) GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_FLIP", "3"),
1374     (
1375         "(gint) GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_NORMAL",
1376         "2",
1377     ),
1378     (
1379         "(gint) GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_FLIP",
1380         "1",
1381     ),
1382     (
1383         "(gint) GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL",
1384         "0",
1385     ),
1386     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE", "0"),
1387     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE_ALPHA", "1"),
1388     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_R", "5"),
1389     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_RG", "6"),
1390     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_RGB", "3"),
1391     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_RGB16", "2"),
1392     ("(gint) GST_VIDEO_GL_TEXTURE_TYPE_RGBA", "4"),
1393     ("(gint) GST_VIDEO_INTERLACE_MODE_ALTERNATE", "4"),
1394     ("(gint) GST_VIDEO_INTERLACE_MODE_FIELDS", "3"),
1395     ("(gint) GST_VIDEO_INTERLACE_MODE_INTERLEAVED", "1"),
1396     ("(gint) GST_VIDEO_INTERLACE_MODE_MIXED", "2"),
1397     ("(gint) GST_VIDEO_INTERLACE_MODE_PROGRESSIVE", "0"),
1398     ("(gint) GST_VIDEO_MATRIX_MODE_FULL", "0"),
1399     ("(gint) GST_VIDEO_MATRIX_MODE_INPUT_ONLY", "1"),
1400     ("(gint) GST_VIDEO_MATRIX_MODE_NONE", "3"),
1401     ("(gint) GST_VIDEO_MATRIX_MODE_OUTPUT_ONLY", "2"),
1402     ("GST_VIDEO_MAX_COMPONENTS", "4"),
1403     ("GST_VIDEO_MAX_PLANES", "4"),
1404     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT", "16384"),
1405     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_LEFT_FLIPPED", "2"),
1406     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_LEFT_FLOPPED", "4"),
1407     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_MIXED_MONO", "32768"),
1408     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_NONE", "0"),
1409     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_RIGHT_FLIPPED", "8"),
1410     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_RIGHT_FLOPPED", "16"),
1411     ("(guint) GST_VIDEO_MULTIVIEW_FLAGS_RIGHT_VIEW_FIRST", "1"),
1412     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_CHECKERBOARD", "8"),
1413     (
1414         "(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_COLUMN_INTERLEAVED",
1415         "5",
1416     ),
1417     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_LEFT", "1"),
1418     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_MONO", "0"),
1419     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE", "-1"),
1420     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_RIGHT", "2"),
1421     (
1422         "(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_ROW_INTERLEAVED",
1423         "6",
1424     ),
1425     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE", "3"),
1426     (
1427         "(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE_QUINCUNX",
1428         "4",
1429     ),
1430     ("(gint) GST_VIDEO_MULTIVIEW_FRAME_PACKING_TOP_BOTTOM", "7"),
1431     ("(gint) GST_VIDEO_MULTIVIEW_MODE_CHECKERBOARD", "8"),
1432     ("(gint) GST_VIDEO_MULTIVIEW_MODE_COLUMN_INTERLEAVED", "5"),
1433     ("(gint) GST_VIDEO_MULTIVIEW_MODE_FRAME_BY_FRAME", "32"),
1434     ("(gint) GST_VIDEO_MULTIVIEW_MODE_LEFT", "1"),
1435     ("(gint) GST_VIDEO_MULTIVIEW_MODE_MONO", "0"),
1436     (
1437         "(gint) GST_VIDEO_MULTIVIEW_MODE_MULTIVIEW_FRAME_BY_FRAME",
1438         "33",
1439     ),
1440     ("(gint) GST_VIDEO_MULTIVIEW_MODE_NONE", "-1"),
1441     ("(gint) GST_VIDEO_MULTIVIEW_MODE_RIGHT", "2"),
1442     ("(gint) GST_VIDEO_MULTIVIEW_MODE_ROW_INTERLEAVED", "6"),
1443     ("(gint) GST_VIDEO_MULTIVIEW_MODE_SEPARATED", "34"),
1444     ("(gint) GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE", "3"),
1445     ("(gint) GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX", "4"),
1446     ("(gint) GST_VIDEO_MULTIVIEW_MODE_TOP_BOTTOM", "7"),
1447     ("(gint) GST_VIDEO_ORIENTATION_180", "2"),
1448     ("(gint) GST_VIDEO_ORIENTATION_90L", "3"),
1449     ("(gint) GST_VIDEO_ORIENTATION_90R", "1"),
1450     ("(gint) GST_VIDEO_ORIENTATION_AUTO", "8"),
1451     ("(gint) GST_VIDEO_ORIENTATION_CUSTOM", "9"),
1452     ("(gint) GST_VIDEO_ORIENTATION_HORIZ", "4"),
1453     ("(gint) GST_VIDEO_ORIENTATION_IDENTITY", "0"),
1454     ("(gint) GST_VIDEO_ORIENTATION_UL_LR", "6"),
1455     ("(gint) GST_VIDEO_ORIENTATION_UR_LL", "7"),
1456     ("(gint) GST_VIDEO_ORIENTATION_VERT", "5"),
1457     ("(guint) GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA", "2"),
1458     ("(guint) GST_VIDEO_OVERLAY_FORMAT_FLAG_NONE", "0"),
1459     (
1460         "(guint) GST_VIDEO_OVERLAY_FORMAT_FLAG_PREMULTIPLIED_ALPHA",
1461         "1",
1462     ),
1463     ("(guint) GST_VIDEO_PACK_FLAG_INTERLACED", "2"),
1464     ("(guint) GST_VIDEO_PACK_FLAG_NONE", "0"),
1465     ("(guint) GST_VIDEO_PACK_FLAG_TRUNCATE_RANGE", "1"),
1466     ("(gint) GST_VIDEO_PRIMARIES_MODE_FAST", "2"),
1467     ("(gint) GST_VIDEO_PRIMARIES_MODE_MERGE_ONLY", "1"),
1468     ("(gint) GST_VIDEO_PRIMARIES_MODE_NONE", "0"),
1469     ("(guint) GST_VIDEO_RESAMPLER_FLAG_HALF_TAPS", "1"),
1470     ("(guint) GST_VIDEO_RESAMPLER_FLAG_NONE", "0"),
1471     ("(gint) GST_VIDEO_RESAMPLER_METHOD_CUBIC", "2"),
1472     ("(gint) GST_VIDEO_RESAMPLER_METHOD_LANCZOS", "4"),
1473     ("(gint) GST_VIDEO_RESAMPLER_METHOD_LINEAR", "1"),
1474     ("(gint) GST_VIDEO_RESAMPLER_METHOD_NEAREST", "0"),
1475     ("(gint) GST_VIDEO_RESAMPLER_METHOD_SINC", "3"),
1476     (
1477         "GST_VIDEO_RESAMPLER_OPT_CUBIC_B",
1478         "GstVideoResampler.cubic-b",
1479     ),
1480     (
1481         "GST_VIDEO_RESAMPLER_OPT_CUBIC_C",
1482         "GstVideoResampler.cubic-c",
1483     ),
1484     (
1485         "GST_VIDEO_RESAMPLER_OPT_ENVELOPE",
1486         "GstVideoResampler.envelope",
1487     ),
1488     (
1489         "GST_VIDEO_RESAMPLER_OPT_MAX_TAPS",
1490         "GstVideoResampler.max-taps",
1491     ),
1492     (
1493         "GST_VIDEO_RESAMPLER_OPT_SHARPEN",
1494         "GstVideoResampler.sharpen",
1495     ),
1496     (
1497         "GST_VIDEO_RESAMPLER_OPT_SHARPNESS",
1498         "GstVideoResampler.sharpness",
1499     ),
1500     ("(guint) GST_VIDEO_SCALER_FLAG_INTERLACED", "1"),
1501     ("(guint) GST_VIDEO_SCALER_FLAG_NONE", "0"),
1502     (
1503         "GST_VIDEO_SCALER_OPT_DITHER_METHOD",
1504         "GstVideoScaler.dither-method",
1505     ),
1506     ("GST_VIDEO_SIZE_RANGE", "(int) [ 1, max ]"),
1507     ("(gint) GST_VIDEO_TILE_MODE_LINEAR", "131072"),
1508     ("(gint) GST_VIDEO_TILE_MODE_UNKNOWN", "0"),
1509     ("(gint) GST_VIDEO_TILE_MODE_ZFLIPZ_2X2", "65536"),
1510     ("(gint) GST_VIDEO_TILE_TYPE_INDEXED", "0"),
1511     ("GST_VIDEO_TILE_TYPE_MASK", "65535"),
1512     ("GST_VIDEO_TILE_TYPE_SHIFT", "16"),
1513     ("GST_VIDEO_TILE_X_TILES_MASK", "65535"),
1514     ("GST_VIDEO_TILE_Y_TILES_SHIFT", "16"),
1515     ("(guint) GST_VIDEO_TIME_CODE_FLAGS_DROP_FRAME", "1"),
1516     ("(guint) GST_VIDEO_TIME_CODE_FLAGS_INTERLACED", "2"),
1517     ("(guint) GST_VIDEO_TIME_CODE_FLAGS_NONE", "0"),
1518     ("(gint) GST_VIDEO_TRANSFER_ADOBERGB", "12"),
1519     ("(gint) GST_VIDEO_TRANSFER_ARIB_STD_B67", "15"),
1520     ("(gint) GST_VIDEO_TRANSFER_BT2020_10", "13"),
1521     ("(gint) GST_VIDEO_TRANSFER_BT2020_12", "11"),
1522     ("(gint) GST_VIDEO_TRANSFER_BT601", "16"),
1523     ("(gint) GST_VIDEO_TRANSFER_BT709", "5"),
1524     ("(gint) GST_VIDEO_TRANSFER_GAMMA10", "1"),
1525     ("(gint) GST_VIDEO_TRANSFER_GAMMA18", "2"),
1526     ("(gint) GST_VIDEO_TRANSFER_GAMMA20", "3"),
1527     ("(gint) GST_VIDEO_TRANSFER_GAMMA22", "4"),
1528     ("(gint) GST_VIDEO_TRANSFER_GAMMA28", "8"),
1529     ("(gint) GST_VIDEO_TRANSFER_LOG100", "9"),
1530     ("(gint) GST_VIDEO_TRANSFER_LOG316", "10"),
1531     ("(gint) GST_VIDEO_TRANSFER_SMPTE2084", "14"),
1532     ("(gint) GST_VIDEO_TRANSFER_SMPTE240M", "6"),
1533     ("(gint) GST_VIDEO_TRANSFER_SRGB", "7"),
1534     ("(gint) GST_VIDEO_TRANSFER_UNKNOWN", "0"),
1535     ("(gint) GST_VIDEO_VBI_PARSER_RESULT_DONE", "0"),
1536     ("(gint) GST_VIDEO_VBI_PARSER_RESULT_ERROR", "2"),
1537     ("(gint) GST_VIDEO_VBI_PARSER_RESULT_OK", "1"),
1538 ];
1539