gstreamer-rs/gstreamer-video/Gir.toml
Sebastian Dröge fa5491e6b3 Use borrowed miniobject/structure types in more places
When the function does not keep around an additional reference of the
value this is correct and more flexible for callers.

https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/420

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1152>
2022-11-21 12:40:37 +02:00

799 lines
16 KiB
TOML

[options]
girs_directories = ["../gir-files", "../gst-gir-files"]
library = "GstVideo"
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
trust_return_value_nullability = true
external_libraries = [
"GLib",
"GObject",
"Gst",
"GstBase",
]
generate = [
"GstVideo.ColorBalance",
"GstVideo.ColorBalanceChannel",
"GstVideo.ColorBalanceType",
"GstVideo.NavigationMessageType",
"GstVideo.NavigationQueryType",
"GstVideo.VideoAFDSpec",
"GstVideo.VideoAFDValue",
"GstVideo.VideoAggregator",
"GstVideo.VideoAggregatorParallelConvertPad",
"GstVideo.VideoAlphaMode",
"GstVideo.VideoBufferPool",
"GstVideo.VideoChromaMode",
"GstVideo.VideoDecoderRequestSyncPointFlags",
"GstVideo.VideoDitherMethod",
"GstVideo.VideoFilter",
"GstVideo.VideoFormatFlags",
"GstVideo.VideoGammaMode",
"GstVideo.VideoMatrixMode",
"GstVideo.VideoMultiviewFramePacking",
"GstVideo.VideoMultiviewMode",
"GstVideo.VideoOrientationMethod",
"GstVideo.VideoPrimariesMode",
"GstVideo.VideoResamplerMethod",
"GstVideo.VideoTileMode",
]
manual = [
"GLib.DateTime",
"GObject.Object",
"GObject.Value",
"Gst.AllocationParams",
"Gst.Allocator",
"Gst.Buffer",
"Gst.BufferPool",
"Gst.BufferPoolAcquireParams",
"Gst.ClockTimeDiff",
"Gst.Element",
"Gst.FlowReturn",
"Gst.Format",
"Gst.Memory",
"Gst.Message",
"Gst.Object",
"Gst.Pad",
"Gst.Pipeline",
"Gst.State",
"Gst.TagList",
"Gst.TagMergeMode",
"GstBase.Aggregator",
"GstBase.AggregatorPad",
"GstBase.BaseSink",
"GstBase.BaseTransform",
"GstVideo.VideoCodecFrame",
"GstVideo.VideoCodecState",
"GstVideo.VideoColorimetry",
"GstVideo.VideoColorRange",
"GstVideo.VideoFormatInfo",
"GstVideo.VideoInfo",
"GstVideo.VideoMeta",
"GstVideo.VideoTimeCode",
"GstVideo.VideoTimeCodeInterval",
]
[[object]]
name = "Gst.Caps"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.ClockTime"
status = "manual"
conversion_type = "Option"
[[object]]
name = "Gst.Event"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Query"
status = "manual"
ref_mode = "ref"
[[object]]
name = "gst.Structure"
status = "manual"
ref_mode = "ref"
[[object]]
name = "GstVideo.Navigation"
status = "generate"
[[object.function]]
name = "event_parse_key_event"
manual = true
[[object.function]]
name = "event_parse_mouse_button_event"
manual = true
[[object.function]]
name = "event_parse_mouse_move_event"
manual = true
[[object.function]]
name = "event_parse_command"
manual = true
[[object.function]]
name = "event_parse_touch_event"
manual = true
[[object.function]]
name = "event_parse_touch_up_event"
manual = true
[[object.function]]
name = "event_parse_mouse_scroll_event"
manual = true
[[object.function]]
name = "event_parse_modifier_state"
manual = true
[[object.function]]
name = "event_get_type"
manual = true
[[object.function]]
name = "event_new_command"
manual = true
[[object.function]]
name = "event_new_key_press"
manual = true
[[object.function]]
name = "event_new_key_release"
manual = true
[[object.function]]
name = "event_new_mouse_button_press"
manual = true
[[object.function]]
name = "event_new_mouse_button_release"
manual = true
[[object.function]]
name = "event_new_mouse_move"
manual = true
[[object.function]]
name = "event_new_mouse_scroll"
manual = true
[[object.function]]
name = "event_new_touch_down"
manual = true
[[object.function]]
name = "event_new_touch_motion"
manual = true
[[object.function]]
name = "event_new_touch_up"
manual = true
[[object.function]]
name = "event_new_touch_frame"
manual = true
[[object.function]]
name = "event_new_touch_cancel"
manual = true
[[object.function]]
name = "event_get_coordinates"
manual = true
[[object.function]]
name = "event_set_coordinates"
manual = true
[[object.function]]
name = "send_event"
manual = true
[[object.function]]
name = "send_event_simple"
manual = true
[[object.function]]
name = "send_key_event"
[[object.function]]
name = "send_mouse_event"
[[object.function]]
name = "send_mouse_scroll_event"
[[object.function]]
name = "send_command"
[[object.function]]
name = "message_parse_event"
manual = true
[[object.function]]
name = "message_get_type"
manual = true
[[object.function]]
name = "message_new_event"
manual = true
[[object.function]]
name = "message_new_commands_changed"
ignore = true
[[object.function]]
name = "message_parse_angles_changed"
ignore = true
[[object.function]]
name = "message_new_mouse_over"
ignore = true
[[object.function]]
name = "message_parse_mouse_over"
ignore = true
[[object.function]]
name = "message_new_angles_changed"
ignore = true
[[object.function]]
name = "query_get_type"
ignore = true
[[object.function]]
name = "query_new_angles"
ignore = true
[[object.function]]
name = "query_new_commands"
ignore = true
[[object.function]]
name = "query_parse_angles"
ignore = true
[[object.function]]
name = "query_parse_commands_length"
ignore = true
[[object.function]]
name = "query_parse_commands_nth"
ignore = true
[[object.function]]
name = "query_set_angles"
ignore = true
[[object]]
name = "GstVideo.NavigationCommand"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"serde\""
[[object.derive]]
name = "Debug, Eq, PartialEq, Ord, PartialOrd, Hash"
[[object]]
name = "GstVideo.NavigationEventType"
status = "generate"
[[object.member]]
name = "mouse_scroll"
version = "1.18"
[[object.member]]
name = "touch_down"
version = "1.22"
[[object.member]]
name = "touch_motion"
version = "1.22"
[[object.member]]
name = "touch_up"
version = "1.22"
[[object.member]]
name = "touch_frame"
version = "1.22"
[[object.member]]
name = "touch_cancel"
version = "1.22"
[[object]]
name = "GstVideo.NavigationModifierType"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object.member]]
name = "mask"
ignore = true
[[object]]
name = "GstVideo.VideoAggregatorConvertPad"
status = "generate"
[[object.property]]
name = "converter-config"
# wrong type
manual = true
[[object]]
name = "GstVideo.VideoAggregatorPad"
status = "generate"
[[object.function]]
name = "get_current_buffer"
# needs special considerations
manual = true
[[object.function]]
name = "get_prepared_frame"
# needs special considerations
manual = true
[[object.function]]
name = "has_current_buffer"
# needs special considerations
manual = true
[[object]]
name = "GstVideo.VideoBufferFlags"
status = "generate"
[[object.member]]
name = "top_field"
version = "1.16"
[[object.member]]
name = "bottom_field"
version = "1.16"
[[object.member]]
name = "marker"
version = "1.18"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "GstVideo.VideoCaptionType"
status = "generate"
[[object.function]]
name = "from_caps"
# Use &CapsRef
manual = true
[[object]]
name = "GstVideo.VideoChromaSite"
status = "generate"
[[object.member]]
name = "unknown"
ignore = true
[[object.function]]
name = "to_string"
# Manual function for < v1_20:
manual = true
# Always generate the trait, without version constraint:
version = "1.8"
[object.function.return]
nullable = false
[[object]]
name = "GstVideo.VideoCodecFrameFlags"
status = "generate"
[[object.function]]
name = "get_type"
version = "1.20"
[[object]]
name = "GstVideo.VideoColorMatrix"
status = "generate"
[[object.function]]
name = "get_Kr_Kb"
# Function and parameter name capitalization is wrong
ignore = true
[[object]]
name = "GstVideo.VideoColorPrimaries"
status = "generate"
[[object.member]]
name = "smptest428"
version = "1.16"
[[object.member]]
name = "smpterp431"
version = "1.16"
[[object.member]]
name = "smpteeg432"
version = "1.16"
[[object.member]]
name = "ebu3213"
version = "1.16"
[[object]]
name = "GstVideo.VideoDecoder"
status = "generate"
manual_traits = ["VideoDecoderExtManual"]
[[object.function]]
name = "allocate_output_frame"
manual = true
[[object.function]]
name = "allocate_output_frame_with_params"
ignore = true
[[object.function]]
name = "finish_frame"
manual = true
[[object.function]]
name = "release_frame"
manual = true
[[object.function]]
name = "drop_frame"
manual = true
[[object.function]]
name = "finish_subframe"
manual = true
[[object.function]]
name = "drop_subframe"
manual = true
[[object.function]]
name = "have_last_subframe"
manual = true
[[object.function]]
name = "get_processed_subframe_index"
manual = true
[[object.function]]
name = "get_input_subframe_index"
manual = true
[[object.function]]
name = "set_latency"
manual = true
[[object.function]]
name = "get_latency"
manual = true
[[object.function]]
name = "get_frame"
manual = true
[[object.function]]
name = "get_frames"
manual = true
[[object.function]]
name = "get_oldest_frame"
manual = true
[[object.function]]
name = "get_output_state"
manual = true
[[object.function]]
name = "set_output_state"
manual = true
[[object.function]]
name = "set_interlaced_output_state"
manual = true
[[object.function]]
name = "negotiate"
manual = true
[[object.function]]
name = "get_allocator"
manual = true
[[object.function]]
name = "allocate_output_buffer"
[object.function.return]
nullable_return_is_error = "Failed to allocate output buffer"
[[object]]
name = "GstVideo.VideoEncoder"
status = "generate"
manual_traits = ["VideoEncoderExtManual"]
[[object.function]]
name = "allocate_output_frame"
manual = true
[[object.function]]
name = "allocate_output_frame_with_params"
ignore = true
[[object.function]]
name = "finish_frame"
manual = true
[[object.function]]
name = "finish_subframe"
manual = true
[[object.function]]
name = "set_latency"
manual = true
[[object.function]]
name = "get_latency"
manual = true
[[object.function]]
name = "get_frame"
manual = true
[[object.function]]
name = "get_frames"
manual = true
[[object.function]]
name = "get_oldest_frame"
manual = true
[[object.function]]
name = "get_output_state"
manual = true
[[object.function]]
name = "set_output_state"
manual = true
[[object.function]]
name = "negotiate"
manual = true
[[object.function]]
name = "get_allocator"
manual = true
[[object]]
name = "GstVideo.VideoFieldOrder"
status = "generate"
[[object.function]]
name = "to_string"
# This has an Unknown field that may return NULL or "UNKNOWN"
manual = true
[[object]]
name = "GstVideo.VideoFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "GstVideo.VideoFormat"
status = "generate"
[[object.derive]]
name = "Debug, Eq, PartialEq, Hash"
[[object.member]]
name = "nv12_10le40"
version = "1.16"
[[object.member]]
name = "y210"
version = "1.16"
[[object.member]]
name = "y410"
version = "1.16"
[[object.member]]
name = "vuya"
version = "1.16"
[[object.member]]
name = "bgr10a2_le"
version = "1.16"
[[object.member]]
name = "rgb10a2_le"
version = "1.18"
[[object.member]]
name = "y444_16be"
version = "1.18"
[[object.member]]
name = "y444_16le"
version = "1.18"
[[object.member]]
name = "p016_be"
version = "1.18"
[[object.member]]
name = "p016_le"
version = "1.18"
[[object.member]]
name = "p012_be"
version = "1.18"
[[object.member]]
name = "p012_le"
version = "1.18"
[[object.member]]
name = "y212_be"
version = "1.18"
[[object.member]]
name = "y212_le"
version = "1.18"
[[object.member]]
name = "y412_be"
version = "1.18"
[[object.member]]
name = "y412_le"
version = "1.18"
[[object.function]]
name = "to_string"
# This has an Unknown field that may return NULL or "UNKNOWN"
manual = true
[[object.function]]
name = "get_info"
# Result is not nullable, function does effectively the same
# as VideoFormatInfo::from_format()
ignore = true
[[object.function]]
name = "from_masks"
# Use custom VideoEndianness enum
manual = true
[[object]]
name = "GstVideo.VideoFrame"
status = "manual"
[[object.function]]
name = "map"
# Readable and writable variant dealing with mutability
rename = "from_buffer_readable"
[[object]]
name = "GstVideo.VideoFrameFlags"
status = "generate"
[[object.member]]
name = "top_field"
version = "1.16"
[[object.member]]
name = "bottom_field"
version = "1.16"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "GstVideo.VideoInterlaceMode"
status = "generate"
[[object.member]]
name = "alternate"
version = "1.16"
[[object]]
name = "GstVideo.VideoMultiviewFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "GstVideo.VideoOrientation"
status = "generate"
[[object.function]]
name = "set_hcenter"
[object.function.return]
bool_return_is_error = "Failed to set horizontal centering"
[[object.function]]
name = "set_hflip"
[object.function.return]
bool_return_is_error = "Failed to set horizontal flipping"
[[object.function]]
name = "set_vcenter"
[object.function.return]
bool_return_is_error = "Failed to set vertical centering"
[[object.function]]
name = "set_vflip"
[object.function.return]
bool_return_is_error = "Failed to set vertical flipping"
[[object.function]]
name = "from_tag"
# Use &TagListRef and move to the enum
manual = true
[[object]]
name = "GstVideo.VideoOverlay"
status = "generate"
manual_traits = ["VideoOverlayExtManual"]
[[object.function]]
name = "set_property"
# Only for implementors of GstVideoOverlay
ignore = true
[[object.function]]
name = "set_window_handle"
# Pointer argument
manual = true
[[object.function]]
name = "set_render_rectangle"
[object.function.return]
bool_return_is_error = "Failed to set render rectangle"
[[object]]
name = "GstVideo.VideoOverlayFormatFlags"
status = "generate"
[[object.function]]
name = "get_type"
version = "1.16"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "GstVideo.VideoPackFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "GstVideo.VideoSink"
status = "generate"
[[object.function]]
name = "center_rect"
# Implemented in video_rectangle
manual = true
[[object]]
name = "GstVideo.VideoTimeCodeFlags"
status = "generate"
[[object.function]]
name = "get_type"
version = "1.18"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "GstVideo.VideoTransferFunction"
status = "generate"
[[object.member]]
name = "bt2020_10"
version = "1.18"
[[object.member]]
name = "smpte2084"
version = "1.18"
[[object.member]]
name = "arib_std_b67"
version = "1.18"