...
 
Commits (178)
stages:
- "lint"
- "test"
- "extras"
.cargo_cache: &cache
cache:
key: "gst"
paths:
- ".cargo_cache/"
.cargo_test_template: &cargo_test
stage: "test"
.tarball_setup: &setup
variables:
# Only stuff inside the repo directory can be cached
# Override the CARGO_HOME variable to force its location
CARGO_HOME: "${CI_PROJECT_DIR}/.cargo_home"
DEPENDENCIES: |
curl
liborc-dev
......@@ -22,16 +19,10 @@ stages:
libgl1-mesa-dri
libgl1-mesa-glx
libwayland-egl1-mesa
<<: *cache
before_script:
- apt-get update -yqq
- apt-get install -yqq --no-install-recommends $DEPENDENCIES
# Only stuff inside the repo directory can be cached
# Override the CARGO_HOME variable to force its location
- export CARGO_HOME="${PWD}/.cargo_cache"
- mkdir -p precompiled-gst && cd precompiled-gst
- curl -L https://people.freedesktop.org/~slomo/gstreamer-1.14.3.tar.gz | tar xz
......@@ -41,6 +32,16 @@ stages:
- export GST_PLUGIN_SCANNER=$PWD/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner
- export PATH=$PATH:$PWD/gstreamer/bin
- export LD_LIBRARY_PATH=$PWD/gstreamer/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
- cd "${CI_PROJECT_DIR}"
cache:
key: "gst"
paths:
- "${CARGO_HOME}"
.cargo_test_template: &cargo_test
stage: "test"
<<: *setup
script:
- rustc --version
- cargo build --color=always --all
......@@ -48,10 +49,10 @@ stages:
- cargo build --color=always --all --all-features
- G_DEBUG=fatal_warnings cargo test --color=always --all --all-features
test 1.28:
# 1.28 img
test 1.31:
# 1.31 img
# https://hub.docker.com/_/rust/
image: "rust:1.28-slim"
image: "rust:1.31-slim"
<<: *cargo_test
test stable:
......@@ -68,9 +69,18 @@ test nightly:
<<: *cargo_test
rustfmt:
image: "rustlang/rust:nightly-slim"
image: "rust:slim"
stage: "lint"
script:
- rustup component add rustfmt-preview
- rustup component add rustfmt
- cargo fmt --version
- cargo fmt -- --color=always --check
clippy:
image: "rust:slim"
stage: 'extras'
<<: *setup
script:
- rustup component add clippy-preview
- cargo clippy --version
- cargo clippy --color=always --all --all-features
ignore = [
"gstreamer/src/auto",
"gstreamer-app/src/auto",
"gstreamer-audio/src/auto",
"gstreamer-base/src/auto",
"gstreamer-check/src/auto",
"gstreamer-net/src/auto",
"gstreamer-pbutils/src/auto",
"gstreamer-player/src/auto",
"gstreamer-rtsp/src/auto",
"gstreamer-rtsp-server/src/auto",
"gstreamer-sdp/src/auto",
"gstreamer-video/src/auto",
"gstreamer-webrtc/src/auto",
"gstreamer-editing-services/src/auto",
]
......@@ -15,6 +15,8 @@ members = [
"gstreamer-webrtc",
"gstreamer-check",
"gstreamer-editing-services",
"gstreamer-gl",
"examples",
"tutorials",
"tools",
]
......@@ -8,6 +8,7 @@ work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
......@@ -16,7 +17,6 @@ external_libraries = [
generate = [
"Gst.ClockTimeDiff",
"Gst.Pipeline",
"Gst.State",
"Gst.StateChange",
"Gst.SeekFlags",
......@@ -40,6 +40,7 @@ generate = [
"Gst.StreamFlags",
"Gst.ProgressType",
"Gst.BusSyncReply",
"Gst.TagFlag",
"Gst.TagMergeMode",
"Gst.PadProbeType",
"Gst.PadProbeReturn",
......@@ -61,6 +62,7 @@ generate = [
"Gst.ParseFlags",
"Gst.TaskState",
"Gst.PluginDependencyFlags",
"Gst.PluginFlags",
"Gst.DateTime",
"Gst.BufferPoolAcquireFlags",
"Gst.PromiseResult",
......@@ -83,8 +85,14 @@ conversion_type = "scalar"
[[object]]
name = "Gst.Bin"
subclassing = true
status = "generate"
trait_name = "GstBinExt"
[[object.signal]]
name = "do-latency"
# Use Result<(), glib::BoolError>
ignore = true
[[object.function]]
name = "add"
[object.function.return]
......@@ -108,7 +116,12 @@ trait_name = "GstBinExt"
[[object]]
name = "Gst.Bus"
status = "generate"
trait = false
final_type = true
[[object.function]]
name = "set_sync_handler"
# Into<Option<_>> makes this hard to use
ignore = true
[[object.function]]
name = "add_signal_watch_full"
# Priority
......@@ -132,6 +145,21 @@ trait = false
# More convenient manual implementation
ignore = true
[[object.function]]
name = "add_watch"
# More specific trait bounds possible for the closure
ignore = true
[[object.function]]
name = "add_watch_full"
# More specific trait bounds possible for the closure
ignore = true
[[object.function]]
name = "remove_watch"
[object.function.return]
bool_return_is_error = "Bus has no event source"
[[object.signal]]
name = "message"
concurrency = "send"
......@@ -274,6 +302,11 @@ name = "Gst.TocEntry"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Pipeline"
subclassing = true
status = "generate"
[[object]]
name = "Gst.Promise"
status = "manual"
......@@ -312,6 +345,7 @@ status = "generate"
[[object]]
name = "Gst.Element"
subclassing = true
status = "generate"
[[object.function]]
name = "make_from_uri"
......@@ -319,6 +353,11 @@ status = "generate"
# It is already a Result
nullable = false
[[object.function]]
name = "call_async"
# more specific closure type possible
ignore = true
[[object.function]]
name = "add_pad"
[object.function.return]
......@@ -379,6 +418,26 @@ status = "generate"
[object.function.return]
bool_return_is_error = "Failed to sync state with parent"
[[object.function]]
name = "change_state"
# Use Result<StateChangeSuccess, StateChangeError>
ignore = true
[[object.function]]
name = "continue_state"
# Use Result<StateChangeSuccess, StateChangeError>
ignore = true
[[object.function]]
name = "get_state"
# Use Result<StateChangeSuccess, StateChangeError>
ignore = true
[[object.function]]
name = "set_state"
# Use Result<StateChangeSuccess, StateChangeError>
ignore = true
[[object.function]]
name = "query"
# correct mutability
......@@ -467,17 +526,17 @@ status = "generate"
[[object]]
name = "Gst.ElementFactory"
status = "generate"
trait = false
final_type = true
[[object]]
name = "Gst.TypeFindFactory"
status = "generate"
trait = false
final_type = true
[[object]]
name = "Gst.DeviceProviderFactory"
status = "generate"
trait = false
final_type = true
[[object]]
name = "Gst.DeviceProvider"
......@@ -510,6 +569,11 @@ status = "generate"
# Work-around for 1.14 switch from transfer-floating to transfer-full
ignore = true
[[object.function]]
name = "add_filter"
# Return Option<DeviceMonitorFilterId>
ignore = true
[[object.function]]
name = "get_bus"
[object.function.return]
......@@ -520,6 +584,11 @@ status = "generate"
[object.function.return]
bool_return_is_error = "Failed to start"
[[object.function]]
name = "remove_filter"
# Use DeviceMonitorFilterId and return Result<(), glib::BoolError>
ignore = true
[[object]]
name = "Gst.Device"
status = "generate"
......@@ -533,6 +602,11 @@ status = "generate"
[object.function.return]
nullable = false
[[object.function]]
name = "reconfigure_element"
[object.function.return]
bool_return_is_error = "Failed to reconfigure the element to use this device"
[[object]]
name = "Gst.Object"
# For renaming the trait...
......@@ -571,11 +645,17 @@ trait_name = "GstObjectExt"
[[object]]
name = "Gst.Pad"
subclassing = true
status = "generate"
[[object.function]]
name = "link_maybe_ghosting"
[object.function.return]
bool_return_is_error = "Failed to link pad, possibly ghosting"
bool_return_is_error = "Failed to link pads, possibly ghosting"
[[object.function]]
name = "link_maybe_ghosting_full"
[object.function.return]
bool_return_is_error = "Failed to link pads, possibly ghosting"
[[object.function]]
name = "unlink"
......@@ -637,6 +717,11 @@ status = "generate"
# Buffer can be NULL
ignore = true
[[object.function]]
name = "get_last_flow_return"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "query"
# Correct mutability
......@@ -677,6 +762,21 @@ status = "generate"
# Pass by value
ignore = true
[[object.function]]
name = "link"
# Use Result<PadLinkSuccess, PadLinkError>
ignore = true
[[object.function]]
name = "link_full"
# Use Result<PadLinkSuccess, PadLinkError>
ignore = true
[[object.function]]
name = "store_sticky_event"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "new_from_static_template"
# Correct mutability
......@@ -717,10 +817,30 @@ status = "generate"
# Wrong place
ignore = true
[[object.function]]
pattern = "set_.*_function_full"
# More specific closure trait bounds possible
ignore = true
[[object.function]]
name = "start_task"
# More specific closure trait bounds possible
ignore = true
[[object.function]]
name = "sticky_events_foreach"
# Complex closure argument handling
ignore = true
[[object.function]]
name = "add_probe"
# Complex closure argument handling
ignore = true
[[object]]
name = "Gst.PadTemplate"
status = "generate"
trait = false
final_type = true
[[object.function]]
name = "new_from_static_pad_template_with_gtype"
# static pad template manual
......@@ -728,6 +848,7 @@ trait = false
[[object]]
name = "Gst.GhostPad"
subclassing = true
status = "generate"
[[object.function]]
name = "set_target"
......@@ -778,7 +899,7 @@ status = "generate"
[[object]]
name = "Gst.Stream"
status = "generate"
trait = false
final_type = true
[[object.function]]
name = "new"
# Work-around for 1.14 switch from transfer-floating to transfer-full
......@@ -787,16 +908,26 @@ trait = false
[[object]]
name = "Gst.StreamCollection"
status = "generate"
trait = false
final_type = true
[[object.function]]
name = "new"
# Work-around for 1.14 switch from transfer-floating to transfer-full
ignore = true
[[object.function]]
name = "add_stream"
# Ignore return value which is always `true`
ignore = true
[[object]]
name = "Gst.Plugin"
status = "generate"
trait = false
final_type = true
[[object.function]]
pattern = "register_static.*"
# Needs manual implementation
ignore = true
[[object.function]]
name = "list_free"
......@@ -822,6 +953,7 @@ trait = false
name = "get_name"
[object.function.return]
nullable = false
ignore = true
[[object.function]]
name = "get_license"
......@@ -862,7 +994,7 @@ status = "generate"
[[object]]
name = "Gst.Registry"
status = "generate"
trait = false
final_type = true
[[object.function]]
pattern = "fork_.*"
......@@ -1138,6 +1270,11 @@ status = "generate"
# wrong mutable for context parameter
ignore = true
[[object.function]]
name = "update_registry"
[object.function.return]
bool_return_is_error = "Failed to update the registry"
[[object.function]]
name = "util_group_id_next"
# newtype wrapper
......
......@@ -8,6 +8,7 @@ work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
......@@ -34,7 +35,7 @@ manual = [
[[object]]
name = "GstApp.AppSink"
status = "generate"
trait = false
final_type = true
[[object.signal]]
name = "pull-sample"
......@@ -56,6 +57,16 @@ trait = false
# Action signal
ignore = true
[[object.signal]]
name = "new-sample"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.signal]]
name = "new-preroll"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "set_caps"
[[object.function.parameter]]
......@@ -65,7 +76,7 @@ trait = false
[[object]]
name = "GstApp.AppSrc"
status = "generate"
trait = false
final_type = true
[[object.function]]
name = "push_buffer"
......@@ -97,6 +108,16 @@ trait = false
# Action signal
ignore = true
[[object.function]]
name = "end_of_stream"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "push_sample"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "set_latency"
# ClockTime
......
......@@ -8,6 +8,7 @@ work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
......
......@@ -8,6 +8,7 @@ work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
......@@ -16,8 +17,6 @@ external_libraries = [
]
generate = [
"GstBase.BaseSink",
"GstBase.BaseTransform",
"GstBase.PushSrc",
]
......@@ -38,7 +37,7 @@ manual = [
[[object]]
name = "GstBase.Adapter"
status = "generate"
trait = false
final_type = true
concurrency = "send-unique"
[[object.function]]
......@@ -70,21 +69,69 @@ concurrency = "send-unique"
name = "GstBase.FlowCombiner"
# Manual because ref/unref functions were added much later
status = "manual"
trait = false
final_type = true
concurrency = "none"
[[object]]
name = "GstBase.BaseSink"
subclassing = true
status = "generate"
[[object.function]]
name = "wait"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "wait_preroll"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object]]
name = "GstBase.BaseSrc"
subclassing = true
status = "generate"
[[object.function]]
name = "set_caps"
[object.function.return]
bool_return_is_error = "Failed to set caps"
[[object.function]]
name = "start_complete"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "start_wait"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object.function]]
name = "submit_buffer_list"
# Pass by value, to be added manually
ignore = true
[[object.function]]
name = "wait_playing"
# Use Result<FlowSuccess, FlowError>
ignore = true
[[object]]
name = "GstBase.BaseTransform"
subclassing = true
status = "generate"
[[object.function]]
name = "update_src_caps"
[object.function.return]
bool_return_is_error = "Failed to update src caps"
[[object]]
name = "GstBase.Aggregator"
status = "generate"
subclassing = true
version = "1.14"
[[object.function]]
......@@ -99,6 +146,7 @@ version = "1.14"
[[object]]
name = "GstBase.AggregatorPad"
status = "generate"
subclassing = true
version = "1.14"
[[object]]
......
......@@ -8,6 +8,7 @@ work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
......@@ -24,6 +25,7 @@ manual = [
"Gst.Clock",
"Gst.ClockTimeDiff",
"Gst.ClockType",
"GstCheck.Harness",
]
[[object]]
......@@ -34,4 +36,4 @@ conversion_type = "scalar"
[[object]]
name = "GstCheck.TestClock"
status = "generate"
trait = false
final_type = true
......@@ -7,6 +7,7 @@ target_path = "gstreamer-editing-services"
work_mode = "normal"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
......@@ -42,17 +43,10 @@ generate = [
"GES.Effect",
"GES.TrackType",
"GES.BaseEffect",
"GES.TimelineElement",
"GES.Group",
"GES.TrackElement",
"GES.Layer",
"GES.Clip",
"GES.UriClip",
"GES.Asset",
"GES.UriClipAsset",
"GES.UriSourceAsset",
"GES.Extractable",
"GES.Project",
]
[[object]]
......@@ -118,6 +112,10 @@ status = "generate"
[object.function.return]
bool_return_is_error = "Failed to move layer"
[[object.function]]
name = "remove_track"
[object.function.return]
bool_return_is_error = "Failed to remove track"
[[object]]
name = "GES.Container"
......@@ -157,6 +155,11 @@ trait_name = "GESPipelineExt"
[object.function.return]
bool_return_is_error = "Failed to save thumbnail"
[[object.function]]
name = "set_timeline"
[object.function.return]
bool_return_is_error = "Failed to set timeline"
[[object]]
name = "GES.Track"
status = "generate"
......@@ -169,4 +172,126 @@ trait_name = "GESTrackExt"
[[object.function]]
name = "remove_element"
[object.function.return]
bool_return_is_error = "Failed to remove element"
\ No newline at end of file
bool_return_is_error = "Failed to remove element"
[[object]]
name = "GES.Asset"
status = "generate"
[[object.function]]
name = "set_proxy"
[object.function.return]
bool_return_is_error = "Failed to set proxy"
[[object.function]]
name = "unproxy"
[object.function.return]
bool_return_is_error = "Failed to unproxy asset"
[[object]]
name = "GES.Clip"
status = "generate"
[[object.function]]
name = "move_to_layer"
[object.function.return]
bool_return_is_error = "Failed to move clip to specified layer"
[[object.function]]
name = "set_top_effect_index"
[object.function.return]
bool_return_is_error = "Failed to move effect"
[[object.function]]
name = "set_top_effect_priority"
[object.function.return]
bool_return_is_error = "Failed to the set top effect priority"
[[object]]
name = "GES.Extractable"
status = "generate"
[[object.function]]
name = "set_asset"
[object.function.return]
bool_return_is_error = "Failed to set asset"
[[object]]
name = "GES.Layer"
status = "generate"
[[object.function]]
name = "add_clip"
[object.function.return]
bool_return_is_error = "Failed to add clip"
[[object.function]]
name = "remove_clip"
[object.function.return]
bool_return_is_error = "Failed to remove clip"
[[object]]
name = "GES.Project"
status = "generate"
[[object.function]]
name = "add_encoding_profile"
[object.function.return]
bool_return_is_error = "Failed to add profile"
[[object.function]]
name = "remove_asset"
[object.function.return]
bool_return_is_error = "Failed to remove asset"
[[object]]
name = "GES.TimelineElement"
status = "generate"
[[object.function]]
name = "ripple"
[object.function.return]
bool_return_is_error = "Failed to ripple"
[[object.function]]
name = "ripple_end"
[object.function.return]
bool_return_is_error = "Failed to ripple"
[[object.function]]
name = "roll_end"
[object.function.return]
bool_return_is_error = "Failed to roll"
[[object.function]]
name = "roll_start"
[object.function.return]
bool_return_is_error = "Failed to roll"
[[object.function]]
name = "set_name"
[object.function.return]
bool_return_is_error = "Failed to set name"
[[object.function]]
name = "set_parent"
[object.function.return]
bool_return_is_error = "`TimelineElement` already had a parent or its parent was the same as specified"
[[object.function]]
name = "set_timeline"
[object.function.return]
bool_return_is_error = "`Failed to set timeline"
[[object.function]]
name = "trim"
[object.function.return]
bool_return_is_error = "`Failed to trim"
[[object]]
name = "GES.TrackElement"
status = "generate"
[[object.function]]
name = "edit"
[object.function.return]
bool_return_is_error = "Failed to edit"
[[object.function]]
name = "remove_control_binding"
[object.function.return]
bool_return_is_error = "Failed to remove control binding"
\ No newline at end of file
[options]
girs_dir = "gir-files"
library = "GstGL"
version = "1.0"
min_cfg_version = "1.14"
target_path = "gstreamer-gl"
work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
external_libraries = [
"GLib",
"GObject",
"Gst",
"GstBase",
"GstVideo",
]
generate = [
# BitFlags
"GstGL.GLAPI",
"GstGL.GLDisplayType",
"GstGL.GLPlatform",
"GstGL.GLSLProfile",
# Enums
"GstGL.GLFormat",
"GstGL.GLQueryType",
"GstGL.GLSLVersion",
"GstGL.GLTextureTarget",
"GstGL.GLStereoDownmix",
"GstGL.GLUploadReturn",
# Enums Errors
#"GstGL.GLBaseMemoryError",
"GstGL.GLContextError",
"GstGL.GLSLError",
"GstGL.GLWindowError",
# Records
#"GstGL.GLAllocationParams",
#"GstGL.GLRenderbufferAllocationParams",
#"GstGL.GLVideoAllocationParams",
# Objects
"GstGL.GLBaseFilter",
#"GstGL.GLBufferPool",
"GstGL.GLFramebuffer",
#"GstGL.GLBaseMemory",
#"GstGL.GLBaseMemoryAllocator",
#"GstGL.GLMemoryPBOAllocator",
#"GstGL.GLRenderbufferAllocator",
]
manual = [
"GLib.Error",
"GLib.Thread",
"GObject.Object",
"Gst.Object",
"Gst.FlowReturn",
"Gst.PadDirection",
"GstVideo.VideoMultiviewFlags",
"GstVideo.VideoMultiviewMode",
]
[[object]]
name = "Gst.Structure"
status = "manual"
ref_mode = "ref-mut"
[[object]]
name = "Gst.Buffer"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Caps"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Query"
status = "manual"
ref_mode = "ref"
[[object]]
name = "GstGL.GLBuffer"
status = "manual"
ref_mode = "ref"
[[object]]
name = "GstGL.GLQuery"
status = "manual"
ref_mode = "ref"
[[object]]
name = "GstGL.GLContext"
status = "generate"
[[object.function]]
name = "new_wrapped"
# input handle
ignore = true
[[object.function]]
name = "get_gl_context"
# return handle
ignore = true
[[object.function]]
name = "get_current_gl_context"
# return handle
ignore = true
[[object.function]]
name = "get_proc_address"
ignore = true
[[object.function]]
name = "default_get_proc_address"
ignore = true
[[object.function]]
name = "get_proc_address_with_platform"
ignore = true
[[object.function]]
name = "thread_add"
# unimplemented GLContextThreadFunc
ignore = true
[[object.function]]
name = "get_thread"
# glib::Thread not found in `glib`
ignore = true
[[object.function]]
name = "get_gl_context_for_thread"
# glib::Thread not found in `glib`
ignore = true
[[object.function]]
name = "error_quark"
# bad error domian definition in gir
ignore = true
[[object.function]]
name = "activate"
[object.function.return]
bool_return_is_error = "Failed to activate OpenGL context"
[[object.function]]
name = "get_display"
[object.function.return]
nullable = false
[[object.function]]
name = "set_window"
[object.function.return]
bool_return_is_error = "Failed to set window"
[[object]]
name = "GstGL.GLDisplay"
status = "generate"
[[object.function]]
name = "find_window"
# unimplemented pointer
ignore = true
[[object.function]]
name = "get_handle"
# return handle
ignore = true
[[object.function]]
name = "get_gl_context_for_thread"
# glib::Thread not found in `glib`
ignore = true
[[object.function]]
name = "add_context"
[object.function.return]
bool_return_is_error = "Failed to add OpenGL context"
[[object.function]]
name = "remove_window"
[object.function.return]
bool_return_is_error = "Failed to remove window"
[[object]]
name = "GstGL.GLDisplayEGL"
status = "generate"
final_type = true
cfg_condition = "feature = \"egl\""
[[object]]
name = "GstGL.GLWindow"
status = "generate"
[[object.function]]
name = "get_window_handle"
# return native handle
ignore = true
[[object.function]]
name = "send_message"
# callback
ignore = true
[[object.function]]
name = "send_message_async"
# callback
ignore = true
[[object.function]]
name = "set_close_callback"
# callback
ignore = true
[[object.function]]
name = "set_draw_callback"
# callback
ignore = true
[[object.function]]
name = "set_render_rectangle"
[object.function.return]
bool_return_is_error = "Failed to set the specified region"
[[object.function]]
name = "set_resize_callback"
# callback
ignore = true
[[object.function]]
name = "set_window_handle"
# handle
ignore = true
[[object.function]]
name = "get_display"
# handle
ignore = true
[[object.function]]
name = "error_quark"
# bad error domian definition in gir
ignore = true
[[object]]
name = "GstGL.GLColorConvert"
status = "generate"
final_type = true
[[object.function]]
name = "set_caps"
[object.function.return]
bool_return_is_error = "Failed to set caps"
[[object.function]]
name = "decide_allocation"
# correct mutability
ignore = true
[[object.function]]
name = "fixate_caps"
# correct reference ownership
ignore = true
[[object.function]]
name = "perform"
# transfer gst::Buffer not reference
ignore = true
[[object]]
name = "GstGL.GLOverlayCompositor"
status = "generate"
final_type = true
[[object.function]]
name = "upload_overlays"
# correct mutability
ignore = true
[[object]]
name = "GstGL.GLSLStage"
status = "generate"
final_type = true
[[object.function]]
name = "set_strings"
[object.function.return]
bool_return_is_error = "Failed to attach stage to set strings"
[[object]]
name = "GstGL.GLShader"
status = "generate"
final_type = true
[[object.function]]
name = "attach"
[object.function.return]
bool_return_is_error = "Failed to attach stage to shader"
[[object.function]]
name = "attach_unlocked"
[object.function.return]
bool_return_is_error = "Failed to attach stage to shader"
[[object.function]]
name = "set_uniform_matrix_2fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_2x3fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_2x4fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_3fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_3x2fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_3x4fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_4fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_4x2fv"
# array with size
ignore = true
[[object.function]]
name = "set_uniform_matrix_4x3fv"
# array with size
ignore = true
[[object]]
name = "GstGL.GLUpload"
status = "generate"
final_type = true
[[object.function]]
name = "set_caps"