// This file was generated by gir (https://github.com/gtk-rs/gir @ f5fca82) // from gir-files (https://github.com/gtk-rs/gir-files @ ???) // DO NOT EDIT extern crate gstreamer_sys; extern crate shell_words; extern crate tempdir; use std::env; use std::error::Error; use std::path::Path; use std::mem::{align_of, size_of}; use std::process::Command; use std::str; use gstreamer_sys::*; static PACKAGES: &[&str] = &["gstreamer-1.0"]; #[derive(Clone, Debug)] struct Compiler { pub args: Vec, } impl Compiler { pub fn new() -> Result> { let mut args = get_var("CC", "cc")?; args.push("-Wno-deprecated-declarations".to_owned()); // For %z support in printf when using MinGW. args.push("-D__USE_MINGW_ANSI_STDIO".to_owned()); args.extend(get_var("CFLAGS", "")?); args.extend(get_var("CPPFLAGS", "")?); args.extend(pkg_config_cflags(PACKAGES)?); Ok(Compiler { args }) } pub fn define<'a, V: Into>>(&mut self, var: &str, val: V) { let arg = match val.into() { None => format!("-D{}", var), Some(val) => format!("-D{}={}", var, val), }; self.args.push(arg); } pub fn compile(&self, src: &Path, out: &Path) -> Result<(), Box> { let mut cmd = self.to_command(); cmd.arg(src); cmd.arg("-o"); cmd.arg(out); let status = cmd.spawn()?.wait()?; if !status.success() { return Err(format!("compilation command {:?} failed, {}", &cmd, status).into()); } Ok(()) } fn to_command(&self) -> Command { let mut cmd = Command::new(&self.args[0]); cmd.args(&self.args[1..]); cmd } } fn get_var(name: &str, default: &str) -> Result, Box> { match env::var(name) { Ok(value) => Ok(shell_words::split(&value)?), Err(env::VarError::NotPresent) => Ok(shell_words::split(default)?), Err(err) => Err(format!("{} {}", name, err).into()), } } fn pkg_config_cflags(packages: &[&str]) -> Result, Box> { if packages.is_empty() { return Ok(Vec::new()); } let mut cmd = Command::new("pkg-config"); cmd.arg("--cflags"); cmd.args(packages); let out = cmd.output()?; if !out.status.success() { return Err(format!("command {:?} returned {}", &cmd, out.status).into()); } let stdout = str::from_utf8(&out.stdout)?; Ok(shell_words::split(stdout.trim())?) } #[derive(Copy, Clone, Debug, Eq, PartialEq)] struct Layout { size: usize, alignment: usize, } #[derive(Copy, Clone, Debug, Default, Eq, PartialEq)] struct Results { /// Number of successfully completed tests. passed: usize, /// Total number of failed tests (including those that failed to compile). failed: usize, /// Number of tests that failed to compile. failed_to_compile: usize, } impl Results { fn record_passed(&mut self) { self.passed += 1; } fn record_failed(&mut self) { self.failed += 1; } fn record_failed_to_compile(&mut self) { self.failed += 1; self.failed_to_compile += 1; } fn summary(&self) -> String { format!( "{} passed; {} failed (compilation errors: {})", self.passed, self.failed, self.failed_to_compile) } fn expect_total_success(&self) { if self.failed == 0 { println!("OK: {}", self.summary()); } else { panic!("FAILED: {}", self.summary()); }; } } #[test] fn cross_validate_constants_with_c() { let tmpdir = tempdir::TempDir::new("abi").expect("temporary directory"); let cc = Compiler::new().expect("configured compiler"); assert_eq!("1", get_c_value(tmpdir.path(), &cc, "1").expect("C constant"), "failed to obtain correct constant value for 1"); let mut results : Results = Default::default(); for (i, &(name, rust_value)) in RUST_CONSTANTS.iter().enumerate() { match get_c_value(tmpdir.path(), &cc, name) { Err(e) => { results.record_failed_to_compile(); eprintln!("{}", e); }, Ok(ref c_value) => { if rust_value == c_value { results.record_passed(); } else { results.record_failed(); eprintln!("Constant value mismatch for {}\nRust: {:?}\nC: {:?}", name, rust_value, c_value); } } }; if (i + 1) % 25 == 0 { println!("constants ... {}", results.summary()); } } results.expect_total_success(); } #[test] fn cross_validate_layout_with_c() { let tmpdir = tempdir::TempDir::new("abi").expect("temporary directory"); let cc = Compiler::new().expect("configured compiler"); assert_eq!(Layout {size: 1, alignment: 1}, get_c_layout(tmpdir.path(), &cc, "char").expect("C layout"), "failed to obtain correct layout for char type"); let mut results : Results = Default::default(); for (i, &(name, rust_layout)) in RUST_LAYOUTS.iter().enumerate() { match get_c_layout(tmpdir.path(), &cc, name) { Err(e) => { results.record_failed_to_compile(); eprintln!("{}", e); }, Ok(c_layout) => { if rust_layout == c_layout { results.record_passed(); } else { results.record_failed(); eprintln!("Layout mismatch for {}\nRust: {:?}\nC: {:?}", name, rust_layout, &c_layout); } } }; if (i + 1) % 25 == 0 { println!("layout ... {}", results.summary()); } } results.expect_total_success(); } fn get_c_layout(dir: &Path, cc: &Compiler, name: &str) -> Result> { let exe = dir.join("layout"); let mut cc = cc.clone(); cc.define("ABI_TYPE_NAME", name); cc.compile(Path::new("tests/layout.c"), &exe)?; let mut abi_cmd = Command::new(exe); let output = abi_cmd.output()?; if !output.status.success() { return Err(format!("command {:?} failed, {:?}", &abi_cmd, &output).into()); } let stdout = str::from_utf8(&output.stdout)?; let mut words = stdout.trim().split_whitespace(); let size = words.next().unwrap().parse().unwrap(); let alignment = words.next().unwrap().parse().unwrap(); Ok(Layout {size, alignment}) } fn get_c_value(dir: &Path, cc: &Compiler, name: &str) -> Result> { let exe = dir.join("constant"); let mut cc = cc.clone(); cc.define("ABI_CONSTANT_NAME", name); cc.compile(Path::new("tests/constant.c"), &exe)?; let mut abi_cmd = Command::new(exe); let output = abi_cmd.output()?; if !output.status.success() { return Err(format!("command {:?} failed, {:?}", &abi_cmd, &output).into()); } Ok(str::from_utf8(&output.stdout)?.trim().to_owned()) } const RUST_LAYOUTS: &[(&str, Layout)] = &[ ("GstAllocationParams", Layout {size: size_of::(), alignment: align_of::()}), ("GstAllocator", Layout {size: size_of::(), alignment: align_of::()}), ("GstAllocatorClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstAllocatorFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstBin", Layout {size: size_of::(), alignment: align_of::()}), ("GstBinClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstBinFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstBuffer", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferCopyFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferPool", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferPoolAcquireFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferPoolAcquireParams", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferPoolClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstBufferingMode", Layout {size: size_of::(), alignment: align_of::()}), ("GstBus", Layout {size: size_of::(), alignment: align_of::()}), ("GstBusClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstBusFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstBusSyncReply", Layout {size: size_of::(), alignment: align_of::()}), ("GstCaps", Layout {size: size_of::(), alignment: align_of::()}), ("GstCapsFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstCapsIntersectMode", Layout {size: size_of::(), alignment: align_of::()}), ("GstChildProxyInterface", Layout {size: size_of::(), alignment: align_of::()}), ("GstClock", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockEntry", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockEntryType", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockID", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockReturn", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockTime", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockTimeDiff", Layout {size: size_of::(), alignment: align_of::()}), ("GstClockType", Layout {size: size_of::(), alignment: align_of::()}), ("GstControlBinding", Layout {size: size_of::(), alignment: align_of::()}), ("GstControlBindingClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstControlSource", Layout {size: size_of::(), alignment: align_of::()}), ("GstControlSourceClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstCoreError", Layout {size: size_of::(), alignment: align_of::()}), ("GstDebugCategory", Layout {size: size_of::(), alignment: align_of::()}), ("GstDebugColorFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstDebugColorMode", Layout {size: size_of::(), alignment: align_of::()}), ("GstDebugGraphDetails", Layout {size: size_of::(), alignment: align_of::()}), ("GstDebugLevel", Layout {size: size_of::(), alignment: align_of::()}), ("GstDevice", Layout {size: size_of::(), alignment: align_of::()}), ("GstDeviceClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstDeviceMonitor", Layout {size: size_of::(), alignment: align_of::()}), ("GstDeviceMonitorClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstDeviceProvider", Layout {size: size_of::(), alignment: align_of::()}), ("GstDeviceProviderClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstElement", Layout {size: size_of::(), alignment: align_of::()}), ("GstElementClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstElementFactoryListType", Layout {size: size_of::(), alignment: align_of::()}), ("GstElementFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstEvent", Layout {size: size_of::(), alignment: align_of::()}), ("GstEventType", Layout {size: size_of::(), alignment: align_of::()}), ("GstEventTypeFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstFlowReturn", Layout {size: size_of::(), alignment: align_of::()}), ("GstFormat", Layout {size: size_of::(), alignment: align_of::()}), ("GstFormatDefinition", Layout {size: size_of::(), alignment: align_of::()}), ("GstGhostPad", Layout {size: size_of::(), alignment: align_of::()}), ("GstGhostPadClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstIterator", Layout {size: size_of::(), alignment: align_of::()}), ("GstIteratorItem", Layout {size: size_of::(), alignment: align_of::()}), ("GstIteratorResult", Layout {size: size_of::(), alignment: align_of::()}), ("GstLibraryError", Layout {size: size_of::(), alignment: align_of::()}), ("GstLockFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstMapFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstMapInfo", Layout {size: size_of::(), alignment: align_of::()}), ("GstMemory", Layout {size: size_of::(), alignment: align_of::()}), ("GstMemoryFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstMessage", Layout {size: size_of::(), alignment: align_of::()}), ("GstMessageType", Layout {size: size_of::(), alignment: align_of::()}), ("GstMeta", Layout {size: size_of::(), alignment: align_of::()}), ("GstMetaFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstMetaInfo", Layout {size: size_of::(), alignment: align_of::()}), ("GstMetaTransformCopy", Layout {size: size_of::(), alignment: align_of::()}), ("GstMiniObject", Layout {size: size_of::(), alignment: align_of::()}), ("GstMiniObjectFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstObject", Layout {size: size_of::(), alignment: align_of::()}), ("GstObjectClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstObjectFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstPad", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadDirection", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadLinkCheck", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadLinkReturn", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadMode", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadPresence", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadProbeInfo", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadProbeReturn", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadProbeType", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadTemplate", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadTemplateClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstPadTemplateFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstParamSpecArray", Layout {size: size_of::(), alignment: align_of::()}), ("GstParamSpecFraction", Layout {size: size_of::(), alignment: align_of::()}), ("GstParentBufferMeta", Layout {size: size_of::(), alignment: align_of::()}), ("GstParseError", Layout {size: size_of::(), alignment: align_of::()}), ("GstParseFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstPipeline", Layout {size: size_of::(), alignment: align_of::()}), ("GstPipelineClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstPipelineFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstPluginDependencyFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstPluginDesc", Layout {size: size_of::(), alignment: align_of::()}), ("GstPluginError", Layout {size: size_of::(), alignment: align_of::()}), ("GstPluginFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstPollFD", Layout {size: size_of::(), alignment: align_of::()}), ("GstPresetInterface", Layout {size: size_of::(), alignment: align_of::()}), ("GstProgressType", Layout {size: size_of::(), alignment: align_of::()}), ("GstPromise", Layout {size: size_of::(), alignment: align_of::()}), ("GstPromiseResult", Layout {size: size_of::(), alignment: align_of::()}), ("GstProtectionMeta", Layout {size: size_of::(), alignment: align_of::()}), ("GstProxyPad", Layout {size: size_of::(), alignment: align_of::()}), ("GstProxyPadClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstQOSType", Layout {size: size_of::(), alignment: align_of::()}), ("GstQuery", Layout {size: size_of::(), alignment: align_of::()}), ("GstQueryType", Layout {size: size_of::(), alignment: align_of::()}), ("GstQueryTypeFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstRank", Layout {size: size_of::(), alignment: align_of::()}), ("GstReferenceTimestampMeta", Layout {size: size_of::(), alignment: align_of::()}), ("GstRegistry", Layout {size: size_of::(), alignment: align_of::()}), ("GstRegistryClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstResourceError", Layout {size: size_of::(), alignment: align_of::()}), ("GstSchedulingFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstSearchMode", Layout {size: size_of::(), alignment: align_of::()}), ("GstSeekFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstSeekType", Layout {size: size_of::(), alignment: align_of::()}), ("GstSegment", Layout {size: size_of::(), alignment: align_of::()}), ("GstSegmentFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstStackTraceFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstState", Layout {size: size_of::(), alignment: align_of::()}), ("GstStateChange", Layout {size: size_of::(), alignment: align_of::()}), ("GstStateChangeReturn", Layout {size: size_of::(), alignment: align_of::()}), ("GstStaticCaps", Layout {size: size_of::(), alignment: align_of::()}), ("GstStaticPadTemplate", Layout {size: size_of::(), alignment: align_of::()}), ("GstStream", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamCollection", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamCollectionClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamError", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamStatusType", Layout {size: size_of::(), alignment: align_of::()}), ("GstStreamType", Layout {size: size_of::(), alignment: align_of::()}), ("GstStructure", Layout {size: size_of::(), alignment: align_of::()}), ("GstStructureChangeType", Layout {size: size_of::(), alignment: align_of::()}), ("GstSystemClock", Layout {size: size_of::(), alignment: align_of::()}), ("GstSystemClockClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstTagFlag", Layout {size: size_of::(), alignment: align_of::()}), ("GstTagList", Layout {size: size_of::(), alignment: align_of::()}), ("GstTagMergeMode", Layout {size: size_of::(), alignment: align_of::()}), ("GstTagScope", Layout {size: size_of::(), alignment: align_of::()}), ("GstTagSetterInterface", Layout {size: size_of::(), alignment: align_of::()}), ("GstTask", Layout {size: size_of::(), alignment: align_of::()}), ("GstTaskClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstTaskPool", Layout {size: size_of::(), alignment: align_of::()}), ("GstTaskPoolClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstTaskState", Layout {size: size_of::(), alignment: align_of::()}), ("GstTimedValue", Layout {size: size_of::(), alignment: align_of::()}), ("GstTocEntryType", Layout {size: size_of::(), alignment: align_of::()}), ("GstTocLoopType", Layout {size: size_of::(), alignment: align_of::()}), ("GstTocScope", Layout {size: size_of::(), alignment: align_of::()}), ("GstTocSetterInterface", Layout {size: size_of::(), alignment: align_of::()}), ("GstTracer", Layout {size: size_of::(), alignment: align_of::()}), ("GstTracerClass", Layout {size: size_of::(), alignment: align_of::()}), ("GstTracerValueFlags", Layout {size: size_of::(), alignment: align_of::()}), ("GstTracerValueScope", Layout {size: size_of::(), alignment: align_of::()}), ("GstTypeFind", Layout {size: size_of::(), alignment: align_of::()}), ("GstTypeFindProbability", Layout {size: size_of::(), alignment: align_of::()}), ("GstURIError", Layout {size: size_of::(), alignment: align_of::()}), ("GstURIHandlerInterface", Layout {size: size_of::(), alignment: align_of::()}), ("GstURIType", Layout {size: size_of::(), alignment: align_of::()}), ("GstValueTable", Layout {size: size_of::(), alignment: align_of::()}), ]; const RUST_CONSTANTS: &[(&str, &str)] = &[ ("GST_ALLOCATOR_FLAG_CUSTOM_ALLOC", "16"), ("GST_ALLOCATOR_FLAG_LAST", "1048576"), ("GST_ALLOCATOR_SYSMEM", "SystemMemory"), ("GST_BIN_FLAG_LAST", "524288"), ("GST_BIN_FLAG_NO_RESYNC", "16384"), ("GST_BIN_FLAG_STREAMS_AWARE", "32768"), ("GST_BUFFERING_DOWNLOAD", "1"), ("GST_BUFFERING_LIVE", "3"), ("GST_BUFFERING_STREAM", "0"), ("GST_BUFFERING_TIMESHIFT", "2"), ("GST_BUFFER_COPY_ALL", "15"), ("GST_BUFFER_COPY_DEEP", "32"), ("GST_BUFFER_COPY_FLAGS", "1"), ("GST_BUFFER_COPY_MEMORY", "8"), ("GST_BUFFER_COPY_MERGE", "16"), ("GST_BUFFER_COPY_META", "4"), ("GST_BUFFER_COPY_METADATA", "7"), ("GST_BUFFER_COPY_NONE", "0"), ("GST_BUFFER_COPY_TIMESTAMPS", "2"), ("GST_BUFFER_FLAG_CORRUPTED", "256"), ("GST_BUFFER_FLAG_DECODE_ONLY", "32"), ("GST_BUFFER_FLAG_DELTA_UNIT", "8192"), ("GST_BUFFER_FLAG_DISCONT", "64"), ("GST_BUFFER_FLAG_DROPPABLE", "4096"), ("GST_BUFFER_FLAG_GAP", "2048"), ("GST_BUFFER_FLAG_HEADER", "1024"), ("GST_BUFFER_FLAG_LAST", "1048576"), ("GST_BUFFER_FLAG_LIVE", "16"), ("GST_BUFFER_FLAG_MARKER", "512"), ("GST_BUFFER_FLAG_NON_DROPPABLE", "65536"), ("GST_BUFFER_FLAG_RESYNC", "128"), ("GST_BUFFER_FLAG_SYNC_AFTER", "32768"), ("GST_BUFFER_FLAG_TAG_MEMORY", "16384"), ("GST_BUFFER_OFFSET_NONE", "18446744073709551615"), ("GST_BUFFER_POOL_ACQUIRE_FLAG_DISCONT", "4"), ("GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT", "2"), ("GST_BUFFER_POOL_ACQUIRE_FLAG_KEY_UNIT", "1"), ("GST_BUFFER_POOL_ACQUIRE_FLAG_LAST", "65536"), ("GST_BUFFER_POOL_ACQUIRE_FLAG_NONE", "0"), ("GST_BUS_ASYNC", "2"), ("GST_BUS_DROP", "0"), ("GST_BUS_FLAG_LAST", "32"), ("GST_BUS_FLUSHING", "16"), ("GST_BUS_PASS", "1"), ("GST_CAN_INLINE", "1"), ("GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY", "memory:SystemMemory"), ("GST_CAPS_FLAG_ANY", "16"), ("GST_CAPS_INTERSECT_FIRST", "1"), ("GST_CAPS_INTERSECT_ZIG_ZAG", "0"), ("GST_CLOCK_BADTIME", "4"), ("GST_CLOCK_BUSY", "3"), ("GST_CLOCK_DONE", "7"), ("GST_CLOCK_EARLY", "1"), ("GST_CLOCK_ENTRY_PERIODIC", "1"), ("GST_CLOCK_ENTRY_SINGLE", "0"), ("GST_CLOCK_ERROR", "5"), ("GST_CLOCK_FLAG_CAN_DO_PERIODIC_ASYNC", "128"), ("GST_CLOCK_FLAG_CAN_DO_PERIODIC_SYNC", "64"), ("GST_CLOCK_FLAG_CAN_DO_SINGLE_ASYNC", "32"), ("GST_CLOCK_FLAG_CAN_DO_SINGLE_SYNC", "16"), ("GST_CLOCK_FLAG_CAN_SET_MASTER", "512"), ("GST_CLOCK_FLAG_CAN_SET_RESOLUTION", "256"), ("GST_CLOCK_FLAG_LAST", "4096"), ("GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC", "1024"), ("GST_CLOCK_OK", "0"), ("GST_CLOCK_TIME_NONE", "18446744073709551615"), ("GST_CLOCK_TYPE_MONOTONIC", "1"), ("GST_CLOCK_TYPE_OTHER", "2"), ("GST_CLOCK_TYPE_REALTIME", "0"), ("GST_CLOCK_UNSCHEDULED", "2"), ("GST_CLOCK_UNSUPPORTED", "6"), ("GST_CORE_ERROR_CAPS", "10"), ("GST_CORE_ERROR_CLOCK", "13"), ("GST_CORE_ERROR_DISABLED", "14"), ("GST_CORE_ERROR_EVENT", "8"), ("GST_CORE_ERROR_FAILED", "1"), ("GST_CORE_ERROR_MISSING_PLUGIN", "12"), ("GST_CORE_ERROR_NEGOTIATION", "7"), ("GST_CORE_ERROR_NOT_IMPLEMENTED", "3"), ("GST_CORE_ERROR_NUM_ERRORS", "15"), ("GST_CORE_ERROR_PAD", "5"), ("GST_CORE_ERROR_SEEK", "9"), ("GST_CORE_ERROR_STATE_CHANGE", "4"), ("GST_CORE_ERROR_TAG", "11"), ("GST_CORE_ERROR_THREAD", "6"), ("GST_CORE_ERROR_TOO_LAZY", "2"), ("GST_DEBUG_BG_BLACK", "0"), ("GST_DEBUG_BG_BLUE", "64"), ("GST_DEBUG_BG_CYAN", "96"), ("GST_DEBUG_BG_GREEN", "32"), ("GST_DEBUG_BG_MAGENTA", "80"), ("GST_DEBUG_BG_MASK", "240"), ("GST_DEBUG_BG_RED", "16"), ("GST_DEBUG_BG_WHITE", "112"), ("GST_DEBUG_BG_YELLOW", "48"), ("GST_DEBUG_BOLD", "256"), ("GST_DEBUG_COLOR_MODE_OFF", "0"), ("GST_DEBUG_COLOR_MODE_ON", "1"), ("GST_DEBUG_COLOR_MODE_UNIX", "2"), ("GST_DEBUG_FG_BLACK", "0"), ("GST_DEBUG_FG_BLUE", "4"), ("GST_DEBUG_FG_CYAN", "6"), ("GST_DEBUG_FG_GREEN", "2"), ("GST_DEBUG_FG_MAGENTA", "5"), ("GST_DEBUG_FG_MASK", "15"), ("GST_DEBUG_FG_RED", "1"), ("GST_DEBUG_FG_WHITE", "7"), ("GST_DEBUG_FG_YELLOW", "3"), ("GST_DEBUG_FORMAT_MASK", "65280"), ("GST_DEBUG_GRAPH_SHOW_ALL", "15"), ("GST_DEBUG_GRAPH_SHOW_CAPS_DETAILS", "2"), ("GST_DEBUG_GRAPH_SHOW_FULL_PARAMS", "16"), ("GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE", "1"), ("GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS", "4"), ("GST_DEBUG_GRAPH_SHOW_STATES", "8"), ("GST_DEBUG_GRAPH_SHOW_VERBOSE", "-1"), ("GST_DEBUG_UNDERLINE", "512"), ("GST_ELEMENT_FACTORY_KLASS_DECODER", "Decoder"), ("GST_ELEMENT_FACTORY_KLASS_DECRYPTOR", "Decryptor"), ("GST_ELEMENT_FACTORY_KLASS_DEMUXER", "Demuxer"), ("GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER", "Depayloader"), ("GST_ELEMENT_FACTORY_KLASS_ENCODER", "Encoder"), ("GST_ELEMENT_FACTORY_KLASS_ENCRYPTOR", "Encryptor"), ("GST_ELEMENT_FACTORY_KLASS_FORMATTER", "Formatter"), ("GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO", "Audio"), ("GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE", "Image"), ("GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA", "Metadata"), ("GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE", "Subtitle"), ("GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO", "Video"), ("GST_ELEMENT_FACTORY_KLASS_MUXER", "Muxer"), ("GST_ELEMENT_FACTORY_KLASS_PARSER", "Parser"), ("GST_ELEMENT_FACTORY_KLASS_PAYLOADER", "Payloader"), ("GST_ELEMENT_FACTORY_KLASS_SINK", "Sink"), ("GST_ELEMENT_FACTORY_KLASS_SRC", "Source"), ("GST_ELEMENT_FACTORY_TYPE_ANY", "562949953421311"), ("GST_ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS", "3940649673949188"), ("GST_ELEMENT_FACTORY_TYPE_AUDIO_ENCODER", "1125899906842626"), ("GST_ELEMENT_FACTORY_TYPE_DECODABLE", "1377"), ("GST_ELEMENT_FACTORY_TYPE_DECODER", "1"), ("GST_ELEMENT_FACTORY_TYPE_DECRYPTOR", "1024"), ("GST_ELEMENT_FACTORY_TYPE_DEMUXER", "32"), ("GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER", "256"), ("GST_ELEMENT_FACTORY_TYPE_ENCODER", "2"), ("GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR", "2048"), ("GST_ELEMENT_FACTORY_TYPE_FORMATTER", "512"), ("GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS", "281474976710656"), ("GST_ELEMENT_FACTORY_TYPE_MEDIA_ANY", "18446462598732840960"), ("GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO", "1125899906842624"), ("GST_ELEMENT_FACTORY_TYPE_MEDIA_IMAGE", "2251799813685248"), ("GST_ELEMENT_FACTORY_TYPE_MEDIA_METADATA", "9007199254740992"), ("GST_ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE", "4503599627370496"), ("GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO", "562949953421312"), ("GST_ELEMENT_FACTORY_TYPE_MUXER", "16"), ("GST_ELEMENT_FACTORY_TYPE_PARSER", "64"), ("GST_ELEMENT_FACTORY_TYPE_PAYLOADER", "128"), ("GST_ELEMENT_FACTORY_TYPE_SINK", "4"), ("GST_ELEMENT_FACTORY_TYPE_SRC", "8"), ("GST_ELEMENT_FACTORY_TYPE_VIDEO_ENCODER", "2814749767106562"), ("GST_ELEMENT_FLAG_INDEXABLE", "512"), ("GST_ELEMENT_FLAG_LAST", "16384"), ("GST_ELEMENT_FLAG_LOCKED_STATE", "16"), ("GST_ELEMENT_FLAG_PROVIDE_CLOCK", "128"), ("GST_ELEMENT_FLAG_REQUIRE_CLOCK", "256"), ("GST_ELEMENT_FLAG_SINK", "32"), ("GST_ELEMENT_FLAG_SOURCE", "64"), ("GST_ELEMENT_METADATA_AUTHOR", "author"), ("GST_ELEMENT_METADATA_DESCRIPTION", "description"), ("GST_ELEMENT_METADATA_DOC_URI", "doc-uri"), ("GST_ELEMENT_METADATA_ICON_NAME", "icon-name"), ("GST_ELEMENT_METADATA_KLASS", "klass"), ("GST_ELEMENT_METADATA_LONGNAME", "long-name"), ("GST_ERROR_SYSTEM", "system error: %s"), ("GST_EVENT_BUFFERSIZE", "23054"), ("GST_EVENT_CAPS", "12814"), ("GST_EVENT_CUSTOM_BOTH", "79367"), ("GST_EVENT_CUSTOM_BOTH_OOB", "81923"), ("GST_EVENT_CUSTOM_DOWNSTREAM", "71686"), ("GST_EVENT_CUSTOM_DOWNSTREAM_OOB", "74242"), ("GST_EVENT_CUSTOM_DOWNSTREAM_STICKY", "76830"), ("GST_EVENT_CUSTOM_UPSTREAM", "69121"), ("GST_EVENT_EOS", "28174"), ("GST_EVENT_FLUSH_START", "2563"), ("GST_EVENT_FLUSH_STOP", "5127"), ("GST_EVENT_GAP", "40966"), ("GST_EVENT_LATENCY", "56321"), ("GST_EVENT_NAVIGATION", "53761"), ("GST_EVENT_NUM_SHIFT", "8"), ("GST_EVENT_PROTECTION", "33310"), ("GST_EVENT_QOS", "48641"), ("GST_EVENT_RECONFIGURE", "61441"), ("GST_EVENT_SEEK", "51201"), ("GST_EVENT_SEGMENT", "17934"), ("GST_EVENT_SEGMENT_DONE", "38406"), ("GST_EVENT_SELECT_STREAMS", "66561"), ("GST_EVENT_SINK_MESSAGE", "25630"), ("GST_EVENT_STEP", "58881"), ("GST_EVENT_STREAM_COLLECTION", "19230"), ("GST_EVENT_STREAM_GROUP_DONE", "26894"), ("GST_EVENT_STREAM_START", "10254"), ("GST_EVENT_TAG", "20510"), ("GST_EVENT_TOC", "30750"), ("GST_EVENT_TOC_SELECT", "64001"), ("GST_EVENT_TYPE_BOTH", "3"), ("GST_EVENT_TYPE_DOWNSTREAM", "2"), ("GST_EVENT_TYPE_SERIALIZED", "4"), ("GST_EVENT_TYPE_STICKY", "8"), ("GST_EVENT_TYPE_STICKY_MULTI", "16"), ("GST_EVENT_TYPE_UPSTREAM", "1"), ("GST_EVENT_UNKNOWN", "0"), ("GST_FLAG_SET_MASK_EXACT", "4294967295"), ("GST_FLOW_CUSTOM_ERROR", "-100"), ("GST_FLOW_CUSTOM_ERROR_1", "-101"), ("GST_FLOW_CUSTOM_ERROR_2", "-102"), ("GST_FLOW_CUSTOM_SUCCESS", "100"), ("GST_FLOW_CUSTOM_SUCCESS_1", "101"), ("GST_FLOW_CUSTOM_SUCCESS_2", "102"), ("GST_FLOW_EOS", "-3"), ("GST_FLOW_ERROR", "-5"), ("GST_FLOW_FLUSHING", "-2"), ("GST_FLOW_NOT_LINKED", "-1"), ("GST_FLOW_NOT_NEGOTIATED", "-4"), ("GST_FLOW_NOT_SUPPORTED", "-6"), ("GST_FLOW_OK", "0"), ("GST_FORMAT_BUFFERS", "4"), ("GST_FORMAT_BYTES", "2"), ("GST_FORMAT_DEFAULT", "1"), ("GST_FORMAT_PERCENT", "5"), ("GST_FORMAT_PERCENT_MAX", "1000000"), ("GST_FORMAT_PERCENT_SCALE", "10000"), ("GST_FORMAT_TIME", "3"), ("GST_FORMAT_UNDEFINED", "0"), ("GST_FOURCC_FORMAT", "c%c%c%c"), ("GST_GROUP_ID_INVALID", "0"), ("GST_ITERATOR_DONE", "0"), ("GST_ITERATOR_ERROR", "3"), ("GST_ITERATOR_ITEM_END", "2"), ("GST_ITERATOR_ITEM_PASS", "1"), ("GST_ITERATOR_ITEM_SKIP", "0"), ("GST_ITERATOR_OK", "1"), ("GST_ITERATOR_RESYNC", "2"), ("GST_LEVEL_COUNT", "10"), ("GST_LEVEL_DEBUG", "5"), ("GST_LEVEL_ERROR", "1"), ("GST_LEVEL_FIXME", "3"), ("GST_LEVEL_INFO", "4"), ("GST_LEVEL_LOG", "6"), ("GST_LEVEL_MEMDUMP", "9"), ("GST_LEVEL_NONE", "0"), ("GST_LEVEL_TRACE", "7"), ("GST_LEVEL_WARNING", "2"), ("GST_LIBRARY_ERROR_ENCODE", "6"), ("GST_LIBRARY_ERROR_FAILED", "1"), ("GST_LIBRARY_ERROR_INIT", "3"), ("GST_LIBRARY_ERROR_NUM_ERRORS", "7"), ("GST_LIBRARY_ERROR_SETTINGS", "5"), ("GST_LIBRARY_ERROR_SHUTDOWN", "4"), ("GST_LIBRARY_ERROR_TOO_LAZY", "2"), ("GST_LICENSE_UNKNOWN", "unknown"), ("GST_LOCK_FLAG_EXCLUSIVE", "4"), ("GST_LOCK_FLAG_LAST", "256"), ("GST_LOCK_FLAG_READ", "1"), ("GST_LOCK_FLAG_READWRITE", "3"), ("GST_LOCK_FLAG_WRITE", "2"), ("GST_MAP_FLAG_LAST", "65536"), ("GST_MAP_READ", "1"), ("GST_MAP_READWRITE", "3"), ("GST_MAP_WRITE", "2"), ("GST_MEMORY_FLAG_LAST", "1048576"), ("GST_MEMORY_FLAG_NOT_MAPPABLE", "256"), ("GST_MEMORY_FLAG_NO_SHARE", "16"), ("GST_MEMORY_FLAG_PHYSICALLY_CONTIGUOUS", "128"), ("GST_MEMORY_FLAG_READONLY", "2"), ("GST_MEMORY_FLAG_ZERO_PADDED", "64"), ("GST_MEMORY_FLAG_ZERO_PREFIXED", "32"), ("GST_MESSAGE_ANY", "4294967295"), ("GST_MESSAGE_APPLICATION", "16384"), ("GST_MESSAGE_ASYNC_DONE", "2097152"), ("GST_MESSAGE_ASYNC_START", "1048576"), ("GST_MESSAGE_BUFFERING", "32"), ("GST_MESSAGE_CLOCK_LOST", "1024"), ("GST_MESSAGE_CLOCK_PROVIDE", "512"), ("GST_MESSAGE_DEVICE_ADDED", "2147483649"), ("GST_MESSAGE_DEVICE_REMOVED", "2147483650"), ("GST_MESSAGE_DURATION_CHANGED", "262144"), ("GST_MESSAGE_ELEMENT", "32768"), ("GST_MESSAGE_EOS", "1"), ("GST_MESSAGE_ERROR", "2"), ("GST_MESSAGE_EXTENDED", "2147483648"), ("GST_MESSAGE_HAVE_CONTEXT", "1073741824"), ("GST_MESSAGE_INFO", "8"), ("GST_MESSAGE_LATENCY", "524288"), ("GST_MESSAGE_NEED_CONTEXT", "536870912"), ("GST_MESSAGE_NEW_CLOCK", "2048"), ("GST_MESSAGE_PROGRESS", "33554432"), ("GST_MESSAGE_PROPERTY_NOTIFY", "2147483651"), ("GST_MESSAGE_QOS", "16777216"), ("GST_MESSAGE_REDIRECT", "2147483654"), ("GST_MESSAGE_REQUEST_STATE", "4194304"), ("GST_MESSAGE_RESET_TIME", "134217728"), ("GST_MESSAGE_SEGMENT_DONE", "131072"), ("GST_MESSAGE_SEGMENT_START", "65536"), ("GST_MESSAGE_STATE_CHANGED", "64"), ("GST_MESSAGE_STATE_DIRTY", "128"), ("GST_MESSAGE_STEP_DONE", "256"), ("GST_MESSAGE_STEP_START", "8388608"), ("GST_MESSAGE_STREAMS_SELECTED", "2147483653"), ("GST_MESSAGE_STREAM_COLLECTION", "2147483652"), ("GST_MESSAGE_STREAM_START", "268435456"), ("GST_MESSAGE_STREAM_STATUS", "8192"), ("GST_MESSAGE_STRUCTURE_CHANGE", "4096"), ("GST_MESSAGE_TAG", "16"), ("GST_MESSAGE_TOC", "67108864"), ("GST_MESSAGE_UNKNOWN", "0"), ("GST_MESSAGE_WARNING", "4"), ("GST_META_FLAG_LAST", "65536"), ("GST_META_FLAG_LOCKED", "4"), ("GST_META_FLAG_NONE", "0"), ("GST_META_FLAG_POOLED", "2"), ("GST_META_FLAG_READONLY", "1"), ("GST_META_TAG_MEMORY_STR", "memory"), ("GST_MINI_OBJECT_FLAG_LAST", "16"), ("GST_MINI_OBJECT_FLAG_LOCKABLE", "1"), ("GST_MINI_OBJECT_FLAG_LOCK_READONLY", "2"), ("GST_MINI_OBJECT_FLAG_MAY_BE_LEAKED", "4"), ("GST_MSECOND", "1000000"), ("GST_NSECOND", "1"), ("GST_OBJECT_FLAG_LAST", "16"), ("GST_OBJECT_FLAG_MAY_BE_LEAKED", "1"), ("GST_PAD_ALWAYS", "0"), ("GST_PAD_FLAG_ACCEPT_INTERSECT", "32768"), ("GST_PAD_FLAG_ACCEPT_TEMPLATE", "65536"), ("GST_PAD_FLAG_BLOCKED", "16"), ("GST_PAD_FLAG_BLOCKING", "128"), ("GST_PAD_FLAG_EOS", "64"), ("GST_PAD_FLAG_FIXED_CAPS", "2048"), ("GST_PAD_FLAG_FLUSHING", "32"), ("GST_PAD_FLAG_LAST", "1048576"), ("GST_PAD_FLAG_NEED_PARENT", "256"), ("GST_PAD_FLAG_NEED_RECONFIGURE", "512"), ("GST_PAD_FLAG_PENDING_EVENTS", "1024"), ("GST_PAD_FLAG_PROXY_ALLOCATION", "8192"), ("GST_PAD_FLAG_PROXY_CAPS", "4096"), ("GST_PAD_FLAG_PROXY_SCHEDULING", "16384"), ("GST_PAD_LINK_CHECK_CAPS", "4"), ("GST_PAD_LINK_CHECK_DEFAULT", "5"), ("GST_PAD_LINK_CHECK_HIERARCHY", "1"), ("GST_PAD_LINK_CHECK_NOTHING", "0"), ("GST_PAD_LINK_CHECK_NO_RECONFIGURE", "8"), ("GST_PAD_LINK_CHECK_TEMPLATE_CAPS", "2"), ("GST_PAD_LINK_NOFORMAT", "-4"), ("GST_PAD_LINK_NOSCHED", "-5"), ("GST_PAD_LINK_OK", "0"), ("GST_PAD_LINK_REFUSED", "-6"), ("GST_PAD_LINK_WAS_LINKED", "-2"), ("GST_PAD_LINK_WRONG_DIRECTION", "-3"), ("GST_PAD_LINK_WRONG_HIERARCHY", "-1"), ("GST_PAD_MODE_NONE", "0"), ("GST_PAD_MODE_PULL", "2"), ("GST_PAD_MODE_PUSH", "1"), ("GST_PAD_PROBE_DROP", "0"), ("GST_PAD_PROBE_HANDLED", "4"), ("GST_PAD_PROBE_OK", "1"), ("GST_PAD_PROBE_PASS", "3"), ("GST_PAD_PROBE_REMOVE", "2"), ("GST_PAD_PROBE_TYPE_ALL_BOTH", "1776"), ("GST_PAD_PROBE_TYPE_BLOCK", "2"), ("GST_PAD_PROBE_TYPE_BLOCKING", "3"), ("GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM", "114"), ("GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM", "130"), ("GST_PAD_PROBE_TYPE_BUFFER", "16"), ("GST_PAD_PROBE_TYPE_BUFFER_LIST", "32"), ("GST_PAD_PROBE_TYPE_DATA_BOTH", "240"), ("GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM", "112"), ("GST_PAD_PROBE_TYPE_DATA_UPSTREAM", "128"), ("GST_PAD_PROBE_TYPE_EVENT_BOTH", "192"), ("GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM", "64"), ("GST_PAD_PROBE_TYPE_EVENT_FLUSH", "256"), ("GST_PAD_PROBE_TYPE_EVENT_UPSTREAM", "128"), ("GST_PAD_PROBE_TYPE_IDLE", "1"), ("GST_PAD_PROBE_TYPE_INVALID", "0"), ("GST_PAD_PROBE_TYPE_PULL", "8192"), ("GST_PAD_PROBE_TYPE_PUSH", "4096"), ("GST_PAD_PROBE_TYPE_QUERY_BOTH", "1536"), ("GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM", "512"), ("GST_PAD_PROBE_TYPE_QUERY_UPSTREAM", "1024"), ("GST_PAD_PROBE_TYPE_SCHEDULING", "12288"), ("GST_PAD_REQUEST", "2"), ("GST_PAD_SINK", "2"), ("GST_PAD_SOMETIMES", "1"), ("GST_PAD_SRC", "1"), ("GST_PAD_TEMPLATE_FLAG_LAST", "256"), ("GST_PAD_UNKNOWN", "0"), ("GST_PARAM_CONTROLLABLE", "512"), ("GST_PARAM_MUTABLE_PAUSED", "2048"), ("GST_PARAM_MUTABLE_PLAYING", "4096"), ("GST_PARAM_MUTABLE_READY", "1024"), ("GST_PARAM_USER_SHIFT", "65536"), ("GST_PARSE_ERROR_COULD_NOT_SET_PROPERTY", "4"), ("GST_PARSE_ERROR_DELAYED_LINK", "7"), ("GST_PARSE_ERROR_EMPTY", "6"), ("GST_PARSE_ERROR_EMPTY_BIN", "5"), ("GST_PARSE_ERROR_LINK", "3"), ("GST_PARSE_ERROR_NO_SUCH_ELEMENT", "1"), ("GST_PARSE_ERROR_NO_SUCH_PROPERTY", "2"), ("GST_PARSE_ERROR_SYNTAX", "0"), ("GST_PARSE_FLAG_FATAL_ERRORS", "1"), ("GST_PARSE_FLAG_NONE", "0"), ("GST_PARSE_FLAG_NO_SINGLE_ELEMENT_BINS", "2"), ("GST_PARSE_FLAG_PLACE_IN_BIN", "4"), ("GST_PIPELINE_FLAG_FIXED_CLOCK", "524288"), ("GST_PIPELINE_FLAG_LAST", "8388608"), ("GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX", "8"), ("GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX", "4"), ("GST_PLUGIN_DEPENDENCY_FLAG_NONE", "0"), ("GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY", "2"), ("GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_RELATIVE_TO_EXE", "16"), ("GST_PLUGIN_DEPENDENCY_FLAG_RECURSE", "1"), ("GST_PLUGIN_ERROR_DEPENDENCIES", "1"), ("GST_PLUGIN_ERROR_MODULE", "0"), ("GST_PLUGIN_ERROR_NAME_MISMATCH", "2"), ("GST_PLUGIN_FLAG_BLACKLISTED", "32"), ("GST_PLUGIN_FLAG_CACHED", "16"), ("GST_PROGRESS_TYPE_CANCELED", "3"), ("GST_PROGRESS_TYPE_COMPLETE", "2"), ("GST_PROGRESS_TYPE_CONTINUE", "1"), ("GST_PROGRESS_TYPE_ERROR", "4"), ("GST_PROGRESS_TYPE_START", "0"), ("GST_PROMISE_RESULT_EXPIRED", "3"), ("GST_PROMISE_RESULT_INTERRUPTED", "1"), ("GST_PROMISE_RESULT_PENDING", "0"), ("GST_PROMISE_RESULT_REPLIED", "2"), ("GST_PROTECTION_SYSTEM_ID_CAPS_FIELD", "protection-system"), ("GST_PTR_FORMAT", "paA"), ("GST_QOS_TYPE_OVERFLOW", "0"), ("GST_QOS_TYPE_THROTTLE", "2"), ("GST_QOS_TYPE_UNDERFLOW", "1"), ("GST_QUERY_ACCEPT_CAPS", "40963"), ("GST_QUERY_ALLOCATION", "35846"), ("GST_QUERY_BUFFERING", "28163"), ("GST_QUERY_CAPS", "43523"), ("GST_QUERY_CONTEXT", "48643"), ("GST_QUERY_CONVERT", "20483"), ("GST_QUERY_CUSTOM", "30723"), ("GST_QUERY_DRAIN", "46086"), ("GST_QUERY_DURATION", "5123"), ("GST_QUERY_FORMATS", "23043"), ("GST_QUERY_JITTER", "10243"), ("GST_QUERY_LATENCY", "7683"), ("GST_QUERY_NUM_SHIFT", "8"), ("GST_QUERY_POSITION", "2563"), ("GST_QUERY_RATE", "12803"), ("GST_QUERY_SCHEDULING", "38401"), ("GST_QUERY_SEEKING", "15363"), ("GST_QUERY_SEGMENT", "17923"), ("GST_QUERY_TYPE_BOTH", "3"), ("GST_QUERY_TYPE_DOWNSTREAM", "2"), ("GST_QUERY_TYPE_SERIALIZED", "4"), ("GST_QUERY_TYPE_UPSTREAM", "1"), ("GST_QUERY_UNKNOWN", "0"), ("GST_QUERY_URI", "33283"), ("GST_RANK_MARGINAL", "64"), ("GST_RANK_NONE", "0"), ("GST_RANK_PRIMARY", "256"), ("GST_RANK_SECONDARY", "128"), ("GST_RESOURCE_ERROR_BUSY", "4"), ("GST_RESOURCE_ERROR_CLOSE", "8"), ("GST_RESOURCE_ERROR_FAILED", "1"), ("GST_RESOURCE_ERROR_NOT_AUTHORIZED", "15"), ("GST_RESOURCE_ERROR_NOT_FOUND", "3"), ("GST_RESOURCE_ERROR_NO_SPACE_LEFT", "14"), ("GST_RESOURCE_ERROR_NUM_ERRORS", "16"), ("GST_RESOURCE_ERROR_OPEN_READ", "5"), ("GST_RESOURCE_ERROR_OPEN_READ_WRITE", "7"), ("GST_RESOURCE_ERROR_OPEN_WRITE", "6"), ("GST_RESOURCE_ERROR_READ", "9"), ("GST_RESOURCE_ERROR_SEEK", "11"), ("GST_RESOURCE_ERROR_SETTINGS", "13"), ("GST_RESOURCE_ERROR_SYNC", "12"), ("GST_RESOURCE_ERROR_TOO_LAZY", "2"), ("GST_RESOURCE_ERROR_WRITE", "10"), ("GST_SCHEDULING_FLAG_BANDWIDTH_LIMITED", "4"), ("GST_SCHEDULING_FLAG_SEEKABLE", "1"), ("GST_SCHEDULING_FLAG_SEQUENTIAL", "2"), ("GST_SEARCH_MODE_AFTER", "2"), ("GST_SEARCH_MODE_BEFORE", "1"), ("GST_SEARCH_MODE_EXACT", "0"), ("GST_SECOND", "1000000000"), ("GST_SEEK_FLAG_ACCURATE", "2"), ("GST_SEEK_FLAG_FLUSH", "1"), ("GST_SEEK_FLAG_KEY_UNIT", "4"), ("GST_SEEK_FLAG_NONE", "0"), ("GST_SEEK_FLAG_SEGMENT", "8"), ("GST_SEEK_FLAG_SKIP", "16"), ("GST_SEEK_FLAG_SNAP_AFTER", "64"), ("GST_SEEK_FLAG_SNAP_BEFORE", "32"), ("GST_SEEK_FLAG_SNAP_NEAREST", "96"), ("GST_SEEK_FLAG_TRICKMODE", "16"), ("GST_SEEK_FLAG_TRICKMODE_KEY_UNITS", "128"), ("GST_SEEK_FLAG_TRICKMODE_NO_AUDIO", "256"), ("GST_SEEK_TYPE_END", "2"), ("GST_SEEK_TYPE_NONE", "0"), ("GST_SEEK_TYPE_SET", "1"), ("GST_SEGMENT_FLAG_NONE", "0"), ("GST_SEGMENT_FLAG_RESET", "1"), ("GST_SEGMENT_FLAG_SEGMENT", "8"), ("GST_SEGMENT_FLAG_SKIP", "16"), ("GST_SEGMENT_FLAG_TRICKMODE", "16"), ("GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS", "128"), ("GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO", "256"), ("GST_SEGMENT_FORMAT", "paB"), ("GST_SEQNUM_INVALID", "0"), ("GST_STACK_TRACE_SHOW_FULL", "1"), ("GST_STATE_CHANGE_ASYNC", "2"), ("GST_STATE_CHANGE_FAILURE", "0"), ("GST_STATE_CHANGE_NO_PREROLL", "3"), ("GST_STATE_CHANGE_NULL_TO_NULL", "9"), ("GST_STATE_CHANGE_NULL_TO_READY", "10"), ("GST_STATE_CHANGE_PAUSED_TO_PAUSED", "27"), ("GST_STATE_CHANGE_PAUSED_TO_PLAYING", "28"), ("GST_STATE_CHANGE_PAUSED_TO_READY", "26"), ("GST_STATE_CHANGE_PLAYING_TO_PAUSED", "35"), ("GST_STATE_CHANGE_PLAYING_TO_PLAYING", "36"), ("GST_STATE_CHANGE_READY_TO_NULL", "17"), ("GST_STATE_CHANGE_READY_TO_PAUSED", "19"), ("GST_STATE_CHANGE_READY_TO_READY", "18"), ("GST_STATE_CHANGE_SUCCESS", "1"), ("GST_STATE_NULL", "1"), ("GST_STATE_PAUSED", "3"), ("GST_STATE_PLAYING", "4"), ("GST_STATE_READY", "2"), ("GST_STATE_VOID_PENDING", "0"), ("GST_STIME_FORMAT", "c%"), ("GST_STREAM_ERROR_CODEC_NOT_FOUND", "6"), ("GST_STREAM_ERROR_DECODE", "7"), ("GST_STREAM_ERROR_DECRYPT", "12"), ("GST_STREAM_ERROR_DECRYPT_NOKEY", "13"), ("GST_STREAM_ERROR_DEMUX", "9"), ("GST_STREAM_ERROR_ENCODE", "8"), ("GST_STREAM_ERROR_FAILED", "1"), ("GST_STREAM_ERROR_FORMAT", "11"), ("GST_STREAM_ERROR_MUX", "10"), ("GST_STREAM_ERROR_NOT_IMPLEMENTED", "3"), ("GST_STREAM_ERROR_NUM_ERRORS", "14"), ("GST_STREAM_ERROR_TOO_LAZY", "2"), ("GST_STREAM_ERROR_TYPE_NOT_FOUND", "4"), ("GST_STREAM_ERROR_WRONG_TYPE", "5"), ("GST_STREAM_FLAG_NONE", "0"), ("GST_STREAM_FLAG_SELECT", "2"), ("GST_STREAM_FLAG_SPARSE", "1"), ("GST_STREAM_FLAG_UNSELECT", "4"), ("GST_STREAM_STATUS_TYPE_CREATE", "0"), ("GST_STREAM_STATUS_TYPE_DESTROY", "3"), ("GST_STREAM_STATUS_TYPE_ENTER", "1"), ("GST_STREAM_STATUS_TYPE_LEAVE", "2"), ("GST_STREAM_STATUS_TYPE_PAUSE", "9"), ("GST_STREAM_STATUS_TYPE_START", "8"), ("GST_STREAM_STATUS_TYPE_STOP", "10"), ("GST_STREAM_TYPE_AUDIO", "2"), ("GST_STREAM_TYPE_CONTAINER", "8"), ("GST_STREAM_TYPE_TEXT", "16"), ("GST_STREAM_TYPE_UNKNOWN", "1"), ("GST_STREAM_TYPE_VIDEO", "4"), ("GST_STRUCTURE_CHANGE_TYPE_PAD_LINK", "0"), ("GST_STRUCTURE_CHANGE_TYPE_PAD_UNLINK", "1"), ("GST_TAG_ALBUM", "album"), ("GST_TAG_ALBUM_ARTIST", "album-artist"), ("GST_TAG_ALBUM_ARTIST_SORTNAME", "album-artist-sortname"), ("GST_TAG_ALBUM_GAIN", "replaygain-album-gain"), ("GST_TAG_ALBUM_PEAK", "replaygain-album-peak"), ("GST_TAG_ALBUM_SORTNAME", "album-sortname"), ("GST_TAG_ALBUM_VOLUME_COUNT", "album-disc-count"), ("GST_TAG_ALBUM_VOLUME_NUMBER", "album-disc-number"), ("GST_TAG_APPLICATION_DATA", "application-data"), ("GST_TAG_APPLICATION_NAME", "application-name"), ("GST_TAG_ARTIST", "artist"), ("GST_TAG_ARTIST_SORTNAME", "artist-sortname"), ("GST_TAG_ATTACHMENT", "attachment"), ("GST_TAG_AUDIO_CODEC", "audio-codec"), ("GST_TAG_BEATS_PER_MINUTE", "beats-per-minute"), ("GST_TAG_BITRATE", "bitrate"), ("GST_TAG_CODEC", "codec"), ("GST_TAG_COMMENT", "comment"), ("GST_TAG_COMPOSER", "composer"), ("GST_TAG_COMPOSER_SORTNAME", "composer-sortname"), ("GST_TAG_CONDUCTOR", "conductor"), ("GST_TAG_CONTACT", "contact"), ("GST_TAG_CONTAINER_FORMAT", "container-format"), ("GST_TAG_COPYRIGHT", "copyright"), ("GST_TAG_COPYRIGHT_URI", "copyright-uri"), ("GST_TAG_DATE", "date"), ("GST_TAG_DATE_TIME", "datetime"), ("GST_TAG_DESCRIPTION", "description"), ("GST_TAG_DEVICE_MANUFACTURER", "device-manufacturer"), ("GST_TAG_DEVICE_MODEL", "device-model"), ("GST_TAG_DURATION", "duration"), ("GST_TAG_ENCODED_BY", "encoded-by"), ("GST_TAG_ENCODER", "encoder"), ("GST_TAG_ENCODER_VERSION", "encoder-version"), ("GST_TAG_EXTENDED_COMMENT", "extended-comment"), ("GST_TAG_FLAG_COUNT", "4"), ("GST_TAG_FLAG_DECODED", "3"), ("GST_TAG_FLAG_ENCODED", "2"), ("GST_TAG_FLAG_META", "1"), ("GST_TAG_FLAG_UNDEFINED", "0"), ("GST_TAG_GENRE", "genre"), ("GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION", "geo-location-capture-direction"), ("GST_TAG_GEO_LOCATION_CITY", "geo-location-city"), ("GST_TAG_GEO_LOCATION_COUNTRY", "geo-location-country"), ("GST_TAG_GEO_LOCATION_ELEVATION", "geo-location-elevation"), ("GST_TAG_GEO_LOCATION_HORIZONTAL_ERROR", "geo-location-horizontal-error"), ("GST_TAG_GEO_LOCATION_LATITUDE", "geo-location-latitude"), ("GST_TAG_GEO_LOCATION_LONGITUDE", "geo-location-longitude"), ("GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION", "geo-location-movement-direction"), ("GST_TAG_GEO_LOCATION_MOVEMENT_SPEED", "geo-location-movement-speed"), ("GST_TAG_GEO_LOCATION_NAME", "geo-location-name"), ("GST_TAG_GEO_LOCATION_SUBLOCATION", "geo-location-sublocation"), ("GST_TAG_GROUPING", "grouping"), ("GST_TAG_HOMEPAGE", "homepage"), ("GST_TAG_IMAGE", "image"), ("GST_TAG_IMAGE_ORIENTATION", "image-orientation"), ("GST_TAG_INTERPRETED_BY", "interpreted-by"), ("GST_TAG_ISRC", "isrc"), ("GST_TAG_KEYWORDS", "keywords"), ("GST_TAG_LANGUAGE_CODE", "language-code"), ("GST_TAG_LANGUAGE_NAME", "language-name"), ("GST_TAG_LICENSE", "license"), ("GST_TAG_LICENSE_URI", "license-uri"), ("GST_TAG_LOCATION", "location"), ("GST_TAG_LYRICS", "lyrics"), ("GST_TAG_MAXIMUM_BITRATE", "maximum-bitrate"), ("GST_TAG_MERGE_APPEND", "3"), ("GST_TAG_MERGE_COUNT", "7"), ("GST_TAG_MERGE_KEEP", "5"), ("GST_TAG_MERGE_KEEP_ALL", "6"), ("GST_TAG_MERGE_PREPEND", "4"), ("GST_TAG_MERGE_REPLACE", "2"), ("GST_TAG_MERGE_REPLACE_ALL", "1"), ("GST_TAG_MERGE_UNDEFINED", "0"), ("GST_TAG_MIDI_BASE_NOTE", "midi-base-note"), ("GST_TAG_MINIMUM_BITRATE", "minimum-bitrate"), ("GST_TAG_NOMINAL_BITRATE", "nominal-bitrate"), ("GST_TAG_ORGANIZATION", "organization"), ("GST_TAG_PERFORMER", "performer"), ("GST_TAG_PREVIEW_IMAGE", "preview-image"), ("GST_TAG_PRIVATE_DATA", "private-data"), ("GST_TAG_PUBLISHER", "publisher"), ("GST_TAG_REFERENCE_LEVEL", "replaygain-reference-level"), ("GST_TAG_SCOPE_GLOBAL", "1"), ("GST_TAG_SCOPE_STREAM", "0"), ("GST_TAG_SERIAL", "serial"), ("GST_TAG_SHOW_EPISODE_NUMBER", "show-episode-number"), ("GST_TAG_SHOW_NAME", "show-name"), ("GST_TAG_SHOW_SEASON_NUMBER", "show-season-number"), ("GST_TAG_SHOW_SORTNAME", "show-sortname"), ("GST_TAG_SUBTITLE_CODEC", "subtitle-codec"), ("GST_TAG_TITLE", "title"), ("GST_TAG_TITLE_SORTNAME", "title-sortname"), ("GST_TAG_TRACK_COUNT", "track-count"), ("GST_TAG_TRACK_GAIN", "replaygain-track-gain"), ("GST_TAG_TRACK_NUMBER", "track-number"), ("GST_TAG_TRACK_PEAK", "replaygain-track-peak"), ("GST_TAG_USER_RATING", "user-rating"), ("GST_TAG_VERSION", "version"), ("GST_TAG_VIDEO_CODEC", "video-codec"), ("GST_TASK_PAUSED", "2"), ("GST_TASK_STARTED", "0"), ("GST_TASK_STOPPED", "1"), ("GST_TIME_FORMAT", "u:%02u:%02u.%09u"), ("GST_TOC_ENTRY_TYPE_ANGLE", "-3"), ("GST_TOC_ENTRY_TYPE_CHAPTER", "3"), ("GST_TOC_ENTRY_TYPE_EDITION", "-1"), ("GST_TOC_ENTRY_TYPE_INVALID", "0"), ("GST_TOC_ENTRY_TYPE_TITLE", "1"), ("GST_TOC_ENTRY_TYPE_TRACK", "2"), ("GST_TOC_ENTRY_TYPE_VERSION", "-2"), ("GST_TOC_LOOP_FORWARD", "1"), ("GST_TOC_LOOP_NONE", "0"), ("GST_TOC_LOOP_PING_PONG", "3"), ("GST_TOC_LOOP_REVERSE", "2"), ("GST_TOC_REPEAT_COUNT_INFINITE", "-1"), ("GST_TOC_SCOPE_CURRENT", "2"), ("GST_TOC_SCOPE_GLOBAL", "1"), ("GST_TRACER_VALUE_FLAGS_AGGREGATED", "2"), ("GST_TRACER_VALUE_FLAGS_NONE", "0"), ("GST_TRACER_VALUE_FLAGS_OPTIONAL", "1"), ("GST_TRACER_VALUE_SCOPE_ELEMENT", "2"), ("GST_TRACER_VALUE_SCOPE_PAD", "3"), ("GST_TRACER_VALUE_SCOPE_PROCESS", "0"), ("GST_TRACER_VALUE_SCOPE_THREAD", "1"), ("GST_TYPE_FIND_LIKELY", "80"), ("GST_TYPE_FIND_MAXIMUM", "100"), ("GST_TYPE_FIND_MINIMUM", "1"), ("GST_TYPE_FIND_NEARLY_CERTAIN", "99"), ("GST_TYPE_FIND_NONE", "0"), ("GST_TYPE_FIND_POSSIBLE", "50"), ("GST_URI_ERROR_BAD_REFERENCE", "3"), ("GST_URI_ERROR_BAD_STATE", "2"), ("GST_URI_ERROR_BAD_URI", "1"), ("GST_URI_ERROR_UNSUPPORTED_PROTOCOL", "0"), ("GST_URI_NO_PORT", "0"), ("GST_URI_SINK", "1"), ("GST_URI_SRC", "2"), ("GST_URI_UNKNOWN", "0"), ("GST_USECOND", "1000"), ("GST_VALUE_EQUAL", "0"), ("GST_VALUE_GREATER_THAN", "1"), ("GST_VALUE_LESS_THAN", "-1"), ("GST_VALUE_UNORDERED", "2"), ("GST_VERSION_MAJOR", "1"), ("GST_VERSION_MICRO", "1"), ("GST_VERSION_MINOR", "14"), ("GST_VERSION_NANO", "0"), ];