forked from mirrors/gstreamer-rs
01f0988a48
GLMemory input/output objects cannot be passed as mutable: to_glib_none_mut checks if the miniobject is writable, even though the underlying implementation should really only care about whether the _data_ owned by this miniobject is. (This temporary GLMemory object references its parent buffer object that is also referenced externally, resulting in two references making the object itself immutable) Furthermore take care of automatically calling `add_rgba_pad_templates` in `class_init` if `ADD_RGBA_PAD_TEMPLATES` is set to `true` (the default).
535 lines
11 KiB
TOML
535 lines
11 KiB
TOML
[options]
|
|
library = "GstGL"
|
|
version = "1.0"
|
|
min_cfg_version = "1.14"
|
|
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 = [
|
|
# 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.GLRenderbufferAllocationParams",
|
|
# Objects
|
|
#"GstGL.GLBufferPool",
|
|
"GstGL.GLBaseMemoryAllocator",
|
|
"GstGL.GLMemoryAllocator",
|
|
#"GstGL.GLMemoryPBOAllocator",
|
|
#"GstGL.GLRenderbufferAllocator",
|
|
]
|
|
|
|
manual = [
|
|
"GLib.Error",
|
|
"GLib.Thread",
|
|
"GObject.Object",
|
|
"Gst.AllocationParams",
|
|
"Gst.Allocator",
|
|
"Gst.BufferPool",
|
|
"Gst.Element",
|
|
"Gst.FlowReturn",
|
|
"Gst.Memory",
|
|
"Gst.Object",
|
|
"Gst.PadDirection",
|
|
"GstBase.BaseTransform",
|
|
"GstBase.PushSrc",
|
|
"GstGL.GLBaseMemory",
|
|
"GstGL.GLMemory",
|
|
"GstVideo.VideoAlignment",
|
|
"GstVideo.VideoInfo",
|
|
"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.GLBaseFilter"
|
|
status = "generate"
|
|
version = "1.14"
|
|
|
|
[[object]]
|
|
name = "GstGL.GLBuffer"
|
|
status = "manual"
|
|
ref_mode = "ref"
|
|
|
|
[[object]]
|
|
name = "GstGL.GLQuery"
|
|
status = "manual"
|
|
ref_mode = "ref"
|
|
|
|
[[object]]
|
|
name = "GstGL.GLContext"
|
|
status = "generate"
|
|
manual_traits = ["GLContextExtManual"]
|
|
|
|
[[object.function]]
|
|
name = "new_wrapped"
|
|
# input handle
|
|
manual = true
|
|
|
|
[[object.function]]
|
|
name = "get_gl_context"
|
|
# return handle
|
|
manual = true
|
|
|
|
[[object.function]]
|
|
name = "get_current_gl_context"
|
|
# return handle
|
|
manual = true
|
|
|
|
[[object.function]]
|
|
name = "get_proc_address"
|
|
manual = true
|
|
|
|
[[object.function]]
|
|
name = "default_get_proc_address"
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "get_proc_address_with_platform"
|
|
manual = 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.function]]
|
|
name = "create_window"
|
|
[object.function.return]
|
|
nullable_return_is_error = "Failed to create window"
|
|
|
|
[[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.property]]
|
|
name = "yinvert"
|
|
version = "1.16"
|
|
|
|
[[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"
|
|
[object.function.return]
|
|
bool_return_is_error = "Failed to set caps"
|
|
|
|
[[object.function]]
|
|
name = "perform_with_buffer"
|
|
# Result<Buffer, GLUploadReturn>
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "propose_allocation"
|
|
# fix mutability
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "get_input_template_caps"
|
|
[object.function.return]
|
|
nullable = false
|
|
|
|
[[object]]
|
|
name = "GstGL.GLViewConvert"
|
|
status = "generate"
|
|
final_type = true
|
|
|
|
[[object.function]]
|
|
name = "set_caps"
|
|
[object.function.return]
|
|
bool_return_is_error = "Failed to set caps"
|
|
|
|
[[object.function]]
|
|
name = "fixate_caps"
|
|
# correct reference ownership
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "get_output"
|
|
# Result<Buffer, FlowReturn>
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "tranform_caps"
|
|
[object.function.return]
|
|
nullable = false
|
|
|
|
[[object.function]]
|
|
name = "submit_input_buffer"
|
|
# Buffer ownership transfer
|
|
ignore = true
|
|
|
|
[[object]]
|
|
name = "GstGL.GLDisplayType"
|
|
status = "generate"
|
|
[[object.member]]
|
|
name = "none"
|
|
ignore = true
|
|
[[object.member]]
|
|
name = "any"
|
|
ignore = true
|
|
[[object.member]]
|
|
name = "egl_device"
|
|
version = "1.18"
|
|
|
|
[[object]]
|
|
name = "GstGL.GLAPI"
|
|
status = "generate"
|
|
[[object.member]]
|
|
name = "none"
|
|
ignore = true
|
|
[[object.member]]
|
|
name = "any"
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "to_string"
|
|
[object.function.return]
|
|
nullable = false
|
|
|
|
[[object]]
|
|
name = "GstGL.GLPlatform"
|
|
status = "generate"
|
|
[[object.member]]
|
|
name = "none"
|
|
ignore = true
|
|
[[object.member]]
|
|
name = "any"
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "to_string"
|
|
[object.function.return]
|
|
nullable = false
|
|
|
|
[[object]]
|
|
name = "GstGL.GLSLProfile"
|
|
status = "generate"
|
|
[[object.member]]
|
|
name = "none"
|
|
ignore = true
|
|
[[object.member]]
|
|
name = "any"
|
|
ignore = true
|
|
|
|
[[object]]
|
|
name = "GstGL.GLAllocationParams"
|
|
status = "generate"
|
|
|
|
[[object.function]]
|
|
name = "free_data"
|
|
# Function should only be called by subclasses from
|
|
# an overridden `free` vfunc.
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "copy_data"
|
|
[[object.function.parameter]]
|
|
name = "src"
|
|
const = true
|
|
|
|
[[object]]
|
|
name = "GstGL.GLVideoAllocationParams"
|
|
status = "generate"
|
|
|
|
[[object.function]]
|
|
name = "free_data"
|
|
# Function should only be called by subclasses from
|
|
# an overridden `free` vfunc.
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
name = "copy_data"
|
|
[[object.function.parameter]]
|
|
name = "src_vid"
|
|
const = true
|
|
|
|
[[object]]
|
|
name = "GstGL.GLFramebuffer"
|
|
status = "generate"
|
|
|
|
[[object.function]]
|
|
name = "attach"
|
|
# attachment_point parameter unchecked
|
|
unsafe = true
|
|
|
|
[[object]]
|
|
name = "GstGL.GLFilter"
|
|
status = "generate"
|
|
|
|
[[object.function]]
|
|
name = "add_rgba_pad_templates"
|
|
# Automatically called if
|
|
# GLFilterImpl::ADD_RGBA_PAD_TEMPLATES is true
|
|
ignore = true
|
|
|
|
[[object.function]]
|
|
pattern = "render_to_target\\w*"
|
|
[[object.function.parameter]]
|
|
pattern = "input|output"
|
|
const = true
|
|
|
|
[[object.function]]
|
|
name = "render_to_target"
|
|
[object.function.return]
|
|
bool_return_is_error = "`func` returned `false`"
|
|
|
|
[[object.function]]
|
|
name = "filter_texture"
|
|
[object.function.return]
|
|
bool_return_is_error = "Failed to transform texture"
|