mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs.git
synced 2024-11-25 11:01:10 +00:00
Add checks for the Gir.tomls
... and fix all the failures.
This commit is contained in:
parent
668a9bbf58
commit
8f3ed6d289
59 changed files with 3494 additions and 3300 deletions
|
@ -27,6 +27,7 @@ once_cell = "1.0"
|
|||
[dev-dependencies]
|
||||
futures-util = { version = "0.3", features = ["sink"] }
|
||||
futures-executor = "0.3"
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
|
|
@ -22,13 +22,33 @@ generate = [
|
|||
|
||||
manual = [
|
||||
"GObject.Object",
|
||||
"Gst.Object",
|
||||
"Gst.Element",
|
||||
"Gst.URIHandler",
|
||||
"Gst.Format",
|
||||
"Gst.MiniObject",
|
||||
"Gst.Object",
|
||||
"Gst.URIHandler",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.BufferList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.FlowReturn"
|
||||
status = "manual"
|
||||
|
@ -38,6 +58,16 @@ must_use = true
|
|||
ok_type = "gst::FlowSuccess"
|
||||
err_type = "gst::FlowError"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstApp.AppSink"
|
||||
status = "generate"
|
||||
|
@ -209,33 +239,3 @@ final_type = true
|
|||
[[object.function.parameter]]
|
||||
name = "caps"
|
||||
nullable = true
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.BufferList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
|
8
gstreamer-app/tests/check_gir.rs
Normal file
8
gstreamer-app/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -26,6 +26,7 @@ once_cell = "1.0"
|
|||
|
||||
[dev-dependencies]
|
||||
itertools = "0.10"
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
|
|
@ -17,17 +17,17 @@ external_libraries = [
|
|||
]
|
||||
|
||||
generate = [
|
||||
"GstAudio.AudioBaseSrc",
|
||||
"GstAudio.AudioChannelPosition",
|
||||
"GstAudio.AudioDitherMethod",
|
||||
"GstAudio.AudioNoiseShapingMethod",
|
||||
"GstAudio.AudioResamplerMethod",
|
||||
"GstAudio.AudioFormatFlags",
|
||||
"GstAudio.AudioLayout",
|
||||
"GstAudio.AudioChannelPosition",
|
||||
"GstAudio.StreamVolume",
|
||||
"GstAudio.StreamVolumeFormat",
|
||||
"GstAudio.AudioNoiseShapingMethod",
|
||||
"GstAudio.AudioResamplerMethod",
|
||||
"GstAudio.AudioSink",
|
||||
"GstAudio.AudioSrc",
|
||||
"GstAudio.AudioBaseSrc",
|
||||
"GstAudio.StreamVolume",
|
||||
"GstAudio.StreamVolumeFormat",
|
||||
]
|
||||
|
||||
manual = [
|
||||
|
@ -39,37 +39,37 @@ manual = [
|
|||
"Gst.Format",
|
||||
"Gst.TagList",
|
||||
"Gst.TagMergeMode",
|
||||
"GstBase.BaseSink",
|
||||
"GstBase.BaseSrc",
|
||||
"GstAudio.AudioClippingMeta",
|
||||
"GstAudio.AudioFormatInfo",
|
||||
"GstAudio.AudioInfo",
|
||||
"GstAudio.AudioLevelMeta",
|
||||
"GstAudio.AudioMeta",
|
||||
"GstAudio.AudioRingBufferSpec",
|
||||
"GstBase.BaseSink",
|
||||
"GstBase.BaseSrc",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Object"
|
||||
# For renaming the trait...
|
||||
status = "manual"
|
||||
trait_name = "GstObjectExt"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Object"
|
||||
# For renaming the trait...
|
||||
status = "manual"
|
||||
trait_name = "GstObjectExt"
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioBaseSink"
|
||||
status = "generate"
|
||||
|
@ -105,154 +105,6 @@ status = "manual"
|
|||
# Readable and writable variant dealing with mutability
|
||||
rename = "from_buffer_readable"
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioFormat"
|
||||
status = "generate"
|
||||
|
||||
[[object.derive]]
|
||||
name = "Debug, Eq, PartialEq, Hash"
|
||||
|
||||
[[object.member]]
|
||||
name = "s16"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u16"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s24_32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u24_32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s24"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u24"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s20"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u20"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s18"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u18"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "f32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "f64"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "to_string"
|
||||
# This has an Unknown field that may return NULL or "UNKNOWN"
|
||||
manual = true
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "fill_silence"
|
||||
# Function does not belong in AudioFormat but AudioFormatInfo.
|
||||
# Manual implementation is available, and glib argument conversion
|
||||
# is broken.
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_info"
|
||||
# Result is not nullable, function does effectively the same
|
||||
# as AudioFormatInfo::from_format()
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "build_integer"
|
||||
# Use custom AudioEndianness enum
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioStreamAlign"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "process"
|
||||
# bool does not signal error
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
pattern = "get_.*"
|
||||
[[object.function.parameter]]
|
||||
name = "align"
|
||||
const = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
[[object.function.parameter]]
|
||||
name = "alignment_threshold"
|
||||
mandatory = true
|
||||
[[object.function.parameter]]
|
||||
name = "discont_wait"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_alignment_threshold"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_discont_wait"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_alignment_threshold"
|
||||
[[object.function.parameter]]
|
||||
name = "alignment_threshold"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_discont_wait"
|
||||
[[object.function.parameter]]
|
||||
name = "discont_wait"
|
||||
mandatory = true
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioDecoder"
|
||||
status = "generate"
|
||||
|
@ -380,6 +232,122 @@ manual_traits = ["AudioEncoderExtManual"]
|
|||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to allocate output buffer"
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioFormat"
|
||||
status = "generate"
|
||||
|
||||
[[object.derive]]
|
||||
name = "Debug, Eq, PartialEq, Hash"
|
||||
|
||||
[[object.member]]
|
||||
name = "s16"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u16"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s24_32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u24_32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s24"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u24"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s20"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u20"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "s18"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "u18"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "f32"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.member]]
|
||||
name = "f64"
|
||||
# Platform dependant
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "to_string"
|
||||
# This has an Unknown field that may return NULL or "UNKNOWN"
|
||||
manual = true
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "fill_silence"
|
||||
# Function does not belong in AudioFormat but AudioFormatInfo.
|
||||
# Manual implementation is available, and glib argument conversion
|
||||
# is broken.
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_info"
|
||||
# Result is not nullable, function does effectively the same
|
||||
# as AudioFormatInfo::from_format()
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "build_integer"
|
||||
# Use custom AudioEndianness enum
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioPackFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioRingBufferFormatType"
|
||||
status = "generate"
|
||||
|
@ -397,15 +365,47 @@ status = "generate"
|
|||
version = "1.12"
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioFlags"
|
||||
name = "GstAudio.AudioStreamAlign"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstAudio.AudioPackFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
[[object.function]]
|
||||
name = "process"
|
||||
# bool does not signal error
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
pattern = "get_.*"
|
||||
[[object.function.parameter]]
|
||||
name = "align"
|
||||
const = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
[[object.function.parameter]]
|
||||
name = "alignment_threshold"
|
||||
mandatory = true
|
||||
[[object.function.parameter]]
|
||||
name = "discont_wait"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_alignment_threshold"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_discont_wait"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_alignment_threshold"
|
||||
[[object.function.parameter]]
|
||||
name = "alignment_threshold"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_discont_wait"
|
||||
[[object.function.parameter]]
|
||||
name = "discont_wait"
|
||||
mandatory = true
|
||||
|
|
8
gstreamer-audio/tests/check_gir.rs
Normal file
8
gstreamer-audio/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -21,6 +21,9 @@ ffi = { package = "gstreamer-base-sys", path = "sys", features = ["v1_8"] }
|
|||
glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
||||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -17,8 +17,8 @@ external_libraries = [
|
|||
]
|
||||
|
||||
generate = [
|
||||
"GstBase.PushSrc",
|
||||
"GstBase.AggregatorStartTimeSelection",
|
||||
"GstBase.PushSrc",
|
||||
]
|
||||
|
||||
manual = [
|
||||
|
@ -43,6 +43,21 @@ manual = [
|
|||
"GstBase.BaseParseFrame",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.BufferList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockReturn"
|
||||
status = "manual"
|
||||
|
@ -52,6 +67,11 @@ must_use = true
|
|||
ok_type = "gst::ClockSuccess"
|
||||
err_type = "gst::ClockError"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.FlowReturn"
|
||||
status = "manual"
|
||||
|
@ -61,6 +81,59 @@ must_use = true
|
|||
ok_type = "gst::FlowSuccess"
|
||||
err_type = "gst::FlowError"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.TagList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.*"
|
||||
status = "generate"
|
||||
# We'll opt-in for constants at a later time
|
||||
[[object.constant]]
|
||||
pattern = ".+"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_data"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_data_with_extension"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_buffer"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_buffer_with_extension"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Could not find type"
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_extension"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Could not find type"
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.Adapter"
|
||||
status = "generate"
|
||||
|
@ -107,11 +180,106 @@ concurrency = "send-unique"
|
|||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.FlowCombiner"
|
||||
# Manual because ref/unref functions were added much later
|
||||
status = "manual"
|
||||
final_type = true
|
||||
concurrency = "none"
|
||||
name = "GstBase.Aggregator"
|
||||
status = "generate"
|
||||
manual_traits = ["AggregatorExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "update_segment"
|
||||
# Takes FormattedValue as argument
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_allocator"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "finish_buffer"
|
||||
# Takes ownership
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "finish_buffer_list"
|
||||
# Takes ownership
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "selected_samples"
|
||||
# Info parameter
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_latency"
|
||||
[[object.function.parameter]]
|
||||
name = "min_latency"
|
||||
mandatory = true
|
||||
|
||||
[[object.property]]
|
||||
name = "latency"
|
||||
version = "1.14"
|
||||
|
||||
[[object.property]]
|
||||
name = "start-time-selection"
|
||||
version = "1.18"
|
||||
|
||||
[[object.property]]
|
||||
name = "min-upstream-latency"
|
||||
# clock time instead of u64
|
||||
manual = true
|
||||
|
||||
[[object.signal]]
|
||||
name = "samples-selected"
|
||||
# StructureRef instead of Structure
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.AggregatorPad"
|
||||
status = "generate"
|
||||
manual_traits = ["AggregatorPadExtManual"]
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.BaseParse"
|
||||
status = "generate"
|
||||
manual_traits = ["BaseParseExtManual"]
|
||||
[[object.function]]
|
||||
name = "add_index_entry"
|
||||
[[object.function.parameter]]
|
||||
name = "ts"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "finish_frame"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_duration"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_latency"
|
||||
[[object.function.parameter]]
|
||||
name = "min_latency"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "convert_default"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_frame_rate"
|
||||
manual = true
|
||||
|
||||
# Didn't bind gst_base_parse_frame_{new,init} so not needed
|
||||
[[object.function]]
|
||||
name = "push_frame"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.BaseParseFrameFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.BaseSink"
|
||||
|
@ -250,176 +418,8 @@ manual_traits = ["BaseTransformExtManual"]
|
|||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.Aggregator"
|
||||
status = "generate"
|
||||
manual_traits = ["AggregatorExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "update_segment"
|
||||
# Takes FormattedValue as argument
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_allocator"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "finish_buffer"
|
||||
# Takes ownership
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "finish_buffer_list"
|
||||
# Takes ownership
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "selected_samples"
|
||||
# Info parameter
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_latency"
|
||||
[[object.function.parameter]]
|
||||
name = "min_latency"
|
||||
mandatory = true
|
||||
|
||||
[[object.property]]
|
||||
name = "latency"
|
||||
version = "1.14"
|
||||
|
||||
[[object.property]]
|
||||
name = "start-time-selection"
|
||||
version = "1.18"
|
||||
|
||||
[[object.property]]
|
||||
name = "min-upstream-latency"
|
||||
# clock time instead of u64
|
||||
manual = true
|
||||
|
||||
[[object.signal]]
|
||||
name = "samples-selected"
|
||||
# StructureRef instead of Structure
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.AggregatorPad"
|
||||
status = "generate"
|
||||
manual_traits = ["AggregatorPadExtManual"]
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.*"
|
||||
status = "generate"
|
||||
# We'll opt-in for constants at a later time
|
||||
[[object.constant]]
|
||||
pattern = ".+"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_data"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_data_with_extension"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_buffer"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_buffer_with_extension"
|
||||
# broken return value
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Could not find type"
|
||||
|
||||
[[object.function]]
|
||||
name = "type_find_helper_for_extension"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Could not find type"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
name = "GstBase.FlowCombiner"
|
||||
# Manual because ref/unref functions were added much later
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.BufferList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.TagList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.BaseParse"
|
||||
status = "generate"
|
||||
manual_traits = ["BaseParseExtManual"]
|
||||
[[object.function]]
|
||||
name = "add_index_entry"
|
||||
[[object.function.parameter]]
|
||||
name = "ts"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "finish_frame"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_duration"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_latency"
|
||||
[[object.function.parameter]]
|
||||
name = "min_latency"
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "convert_default"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_frame_rate"
|
||||
manual = true
|
||||
|
||||
# Didn't bind gst_base_parse_frame_{new,init} so not needed
|
||||
[[object.function]]
|
||||
name = "push_frame"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstBase.BaseParseFrameFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
final_type = true
|
||||
concurrency = "none"
|
||||
|
|
8
gstreamer-base/tests/check_gir.rs
Normal file
8
gstreamer-base/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -19,6 +19,9 @@ ffi = { package = "gstreamer-check-sys", path = "sys", features = ["v1_8"] }
|
|||
glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
||||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -62,6 +62,18 @@ name = "Gst.ClockTime"
|
|||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "GstCheck.Harness"
|
||||
status = "manual"
|
||||
|
||||
[[object.function]]
|
||||
name = "new_with_element"
|
||||
rename = "with_element"
|
||||
|
||||
[[object.function]]
|
||||
name = "new_with_padnames"
|
||||
rename = "with_padnames"
|
||||
|
||||
[[object]]
|
||||
name = "GstCheck.TestClock"
|
||||
status = "generate"
|
||||
|
@ -107,15 +119,3 @@ final_type = true
|
|||
[[object.function]]
|
||||
name = "timed_wait_for_multiple_pending_ids"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstCheck.Harness"
|
||||
status = "manual"
|
||||
|
||||
[[object.function]]
|
||||
name = "new_with_element"
|
||||
rename = "with_element"
|
||||
|
||||
[[object.function]]
|
||||
name = "new_with_padnames"
|
||||
rename = "with_padnames"
|
||||
|
|
8
gstreamer-check/tests/check_gir.rs
Normal file
8
gstreamer-check/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -20,6 +20,9 @@ ffi = { package = "gstreamer-controller-sys", path = "sys", features = ["v1_8"]
|
|||
glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
||||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -18,19 +18,19 @@ external_libraries = [
|
|||
generate = [
|
||||
"GstController.ARGBControlBinding",
|
||||
"GstController.DirectControlBinding",
|
||||
"GstController.InterpolationControlSource",
|
||||
"GstController.LFOControlSource",
|
||||
"GstController.TriggerControlSource",
|
||||
"GstController.DirectControlBindingConvertValue",
|
||||
"GstController.DirectControlBindingConvertGValue",
|
||||
"GstController.LFOWaveform",
|
||||
"GstController.DirectControlBindingConvertValue",
|
||||
"GstController.InterpolationControlSource",
|
||||
"GstController.InterpolationMode",
|
||||
"GstController.LFOControlSource",
|
||||
"GstController.LFOWaveform",
|
||||
"GstController.TriggerControlSource",
|
||||
]
|
||||
|
||||
manual = [
|
||||
"Gst.Object",
|
||||
"Gst.ControlBinding",
|
||||
"Gst.ControlSource",
|
||||
"Gst.Object",
|
||||
"GstController.ControlPoint",
|
||||
]
|
||||
|
||||
|
@ -39,6 +39,10 @@ name = "Gst.ClockTime"
|
|||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "GstController.ProxyControlBinding"
|
||||
status = "generate"
|
||||
version = "1.12"
|
||||
|
||||
[[object]]
|
||||
name = "GstController.TimedValueControlSource"
|
||||
|
@ -55,8 +59,3 @@ status = "generate"
|
|||
[[object.function.parameter]]
|
||||
name = "timestamp"
|
||||
mandatory = true
|
||||
|
||||
[[object]]
|
||||
name = "GstController.ProxyControlBinding"
|
||||
status = "generate"
|
||||
version = "1.12"
|
||||
|
|
8
gstreamer-controller/tests/check_gir.rs
Normal file
8
gstreamer-controller/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -23,6 +23,9 @@ gst = { package = "gstreamer", path = "../gstreamer" }
|
|||
gst-base = { package = "gstreamer-base", path = "../gstreamer-base" }
|
||||
gst-pbutils = { package = "gstreamer-pbutils", path = "../gstreamer-pbutils" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
v1_10 = ["gst/v1_10", "gst-base/v1_10", "gst-pbutils/v1_10", "ffi/v1_10"]
|
||||
v1_12 = ["gst/v1_12", "gst-base/v1_12", "gst-pbutils/v1_12", "ffi/v1_12", "v1_10"]
|
||||
|
|
|
@ -9,138 +9,110 @@ single_version_file = true
|
|||
generate_display_trait = false
|
||||
|
||||
external_libraries = [
|
||||
"Gio",
|
||||
"GLib",
|
||||
"GObject",
|
||||
"Gio",
|
||||
"Gst",
|
||||
"GstPbutils",
|
||||
]
|
||||
|
||||
manual = [
|
||||
"Gio.AsyncReadyCallback",
|
||||
"Gio.Cancellable",
|
||||
"GLib.Date",
|
||||
"GLib.DateTime",
|
||||
"GLib.Error",
|
||||
"GLib.Source",
|
||||
"GLib.Type",
|
||||
"Gio.Cancellable",
|
||||
"Gio.AsyncReadyCallback",
|
||||
"GObject.Object",
|
||||
"GObject.Value",
|
||||
"Gst.DateTime",
|
||||
"Gst.Bin",
|
||||
"Gst.ChildProxy",
|
||||
"Gst.ControlBinding",
|
||||
"Gst.ControlSource",
|
||||
"Gst.CoreError",
|
||||
"Gst.DateTime",
|
||||
"Gst.Element",
|
||||
"Gst.ElementFactory",
|
||||
"Gst.EventType",
|
||||
"Gst.Bin",
|
||||
"Gst.Pad",
|
||||
"Gst.Pipeline",
|
||||
"Gst.Segment",
|
||||
"Gst.State",
|
||||
"Gst.StaticCaps",
|
||||
"Gst.StaticPadTemplate",
|
||||
"GstPbutils.EncodingProfile",
|
||||
"GstPbutils.DiscovererInfo",
|
||||
"GstPbutils.DiscovererStreamInfo",
|
||||
"GstPbutils.EncodingProfile",
|
||||
]
|
||||
|
||||
generate = [
|
||||
"GES.PipelineFlags",
|
||||
"GES.FrameNumber",
|
||||
"GES.Group",
|
||||
"GES.UriClipAsset",
|
||||
"GES.UriSourceAsset",
|
||||
"GES.OperationClip",
|
||||
"GES.TransitionClip",
|
||||
"GES.BaseTransitionClip",
|
||||
"GES.VideoStandardTransitionType",
|
||||
"GES.Source",
|
||||
"GES.AssetLoadingReturn",
|
||||
"GES.AudioSource",
|
||||
"GES.AudioTestSource",
|
||||
"GES.AudioTrack",
|
||||
"GES.AudioTransition",
|
||||
"GES.Operation",
|
||||
"GES.Transition",
|
||||
"GES.AudioUriSource",
|
||||
"GES.BaseEffectClip",
|
||||
"GES.Formatter",
|
||||
"GES.BaseTransitionClip",
|
||||
"GES.BaseXmlFormatter",
|
||||
"GES.ChildrenControlMode",
|
||||
"GES.ClipAsset",
|
||||
"GES.TrackElementAsset",
|
||||
"GES.EffectAsset",
|
||||
"GES.EffectClip",
|
||||
"GES.Error",
|
||||
"GES.ExtractableCheckId",
|
||||
"GES.VideoUriSource",
|
||||
"GES.VideoSource",
|
||||
"GES.Formatter",
|
||||
"GES.FrameNumber",
|
||||
"GES.Group",
|
||||
"GES.ImageSource",
|
||||
"GES.MultiFileSource",
|
||||
"GES.OverlayClip",
|
||||
"GES.Marker",
|
||||
"GES.MarkerFlags",
|
||||
"GES.MarkerList",
|
||||
"GES.MetaContainer",
|
||||
"GES.MetaFlag",
|
||||
"GES.Marker",
|
||||
"GES.MarkerList",
|
||||
"GES.MarkerFlags",
|
||||
"GES.MultiFileSource",
|
||||
"GES.Operation",
|
||||
"GES.OperationClip",
|
||||
"GES.OverlayClip",
|
||||
"GES.PipelineFlags",
|
||||
"GES.Source",
|
||||
"GES.SourceClip",
|
||||
"GES.SourceClipAsset",
|
||||
"GES.TestClip",
|
||||
"GES.TextHAlign",
|
||||
"GES.TextOverlay",
|
||||
"GES.TextOverlayClip",
|
||||
"GES.TextVAlign",
|
||||
"GES.TitleClip",
|
||||
"GES.TitleSource",
|
||||
"GES.TrackElementAsset",
|
||||
"GES.Transition",
|
||||
"GES.TransitionClip",
|
||||
"GES.UriClipAsset",
|
||||
"GES.UriSourceAsset",
|
||||
"GES.VideoSource",
|
||||
"GES.VideoStandardTransitionType",
|
||||
"GES.VideoTestPattern",
|
||||
"GES.VideoTestSource",
|
||||
"GES.VideoTrack",
|
||||
"GES.VideoTransition",
|
||||
"GES.VideoUriSource",
|
||||
"GES.XmlFormatter",
|
||||
"GES.TextHAlign",
|
||||
"GES.TextVAlign",
|
||||
"GES.TextOverlay",
|
||||
"GES.TextOverlayClip",
|
||||
"GES.TitleClip",
|
||||
"GES.TitleSource",
|
||||
"GES.AssetLoadingReturn",
|
||||
"GES.Error",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Object"
|
||||
# For renaming the trait...
|
||||
status = "manual"
|
||||
trait_name = "GstObjectExt"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.BufferList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
name = "GES.Asset"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "set_proxy"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set proxy"
|
||||
|
||||
[[object.function]]
|
||||
name = "get_caps"
|
||||
# Function moved to SampleRef
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
name = "unproxy"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to unproxy asset"
|
||||
|
||||
[[object]]
|
||||
name = "GES.BaseEffect"
|
||||
|
@ -151,20 +123,37 @@ status = "generate"
|
|||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GES.Effect"
|
||||
name = "GES.Clip"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
name = "get_duration_limit"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create effect from description"
|
||||
mandatory = true
|
||||
|
||||
[[object]]
|
||||
name = "GES.UriClip"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
name = "move_to_layer"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create Uri clip from Uri"
|
||||
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.function]]
|
||||
name = "add_asset"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to add asset"
|
||||
|
||||
[[object.function]]
|
||||
name = "split"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to split clip"
|
||||
|
||||
[[object]]
|
||||
name = "GES.CommandLineFormatter"
|
||||
|
@ -178,6 +167,117 @@ status = "generate"
|
|||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GES.Container"
|
||||
status = "generate"
|
||||
trait_name = "GESContainerExt"
|
||||
[[object.function]]
|
||||
name = "add"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add element"
|
||||
|
||||
[[object.function]]
|
||||
name = "remove"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove element"
|
||||
|
||||
[[object.function]]
|
||||
name = "edit"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to edit container"
|
||||
|
||||
[[object]]
|
||||
name = "GES.Edge"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GES.EditMode"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GES.Effect"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create effect from description"
|
||||
|
||||
[[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 = "get_duration"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "remove_clip"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove clip"
|
||||
|
||||
[[object.function]]
|
||||
name = "add_asset"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to add asset"
|
||||
|
||||
[[object]]
|
||||
name = "GES.Pipeline"
|
||||
status = "generate"
|
||||
trait_name = "GESPipelineExt"
|
||||
[[object.function]]
|
||||
name = "set_render_settings"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set render settings"
|
||||
|
||||
[[object.function]]
|
||||
name = "set_mode"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set mode"
|
||||
|
||||
[[object.function]]
|
||||
name = "save_thumbnail"
|
||||
[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.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.Timeline"
|
||||
status = "generate"
|
||||
|
@ -239,169 +339,6 @@ status = "generate"
|
|||
name = "snapping_distance"
|
||||
mandatory = true
|
||||
|
||||
[[object]]
|
||||
name = "GES.Container"
|
||||
status = "generate"
|
||||
trait_name = "GESContainerExt"
|
||||
[[object.function]]
|
||||
name = "add"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add element"
|
||||
|
||||
[[object.function]]
|
||||
name = "remove"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove element"
|
||||
|
||||
[[object.function]]
|
||||
name = "edit"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to edit container"
|
||||
|
||||
[[object]]
|
||||
name = "GES.Pipeline"
|
||||
status = "generate"
|
||||
trait_name = "GESPipelineExt"
|
||||
[[object.function]]
|
||||
name = "set_render_settings"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set render settings"
|
||||
|
||||
[[object.function]]
|
||||
name = "set_mode"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set mode"
|
||||
|
||||
[[object.function]]
|
||||
name = "save_thumbnail"
|
||||
[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"
|
||||
trait_name = "GESTrackExt"
|
||||
[[object.function]]
|
||||
name = "add_element"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add element"
|
||||
|
||||
[[object.function]]
|
||||
name = "remove_element"
|
||||
[object.function.return]
|
||||
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 = "get_duration_limit"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[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.function]]
|
||||
name = "add_asset"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to add asset"
|
||||
|
||||
[[object.function]]
|
||||
name = "split"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to split clip"
|
||||
|
||||
[[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.Edge"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GES.EditMode"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[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 = "get_duration"
|
||||
[object.function.return]
|
||||
mandatory = true
|
||||
|
||||
[[object.function]]
|
||||
name = "remove_clip"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove clip"
|
||||
|
||||
[[object.function]]
|
||||
name = "add_asset"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to add asset"
|
||||
|
||||
[[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"
|
||||
|
@ -506,6 +443,20 @@ manual_traits = ["TimelineElementExtManual"]
|
|||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to copy timeline element"
|
||||
|
||||
[[object]]
|
||||
name = "GES.Track"
|
||||
status = "generate"
|
||||
trait_name = "GESTrackExt"
|
||||
[[object.function]]
|
||||
name = "add_element"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add element"
|
||||
|
||||
[[object.function]]
|
||||
name = "remove_element"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove element"
|
||||
|
||||
[[object]]
|
||||
name = "GES.TrackElement"
|
||||
status = "generate"
|
||||
|
@ -526,3 +477,52 @@ status = "generate"
|
|||
name = "name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GES.UriClip"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create Uri clip from Uri"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.BufferList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Object"
|
||||
# For renaming the trait...
|
||||
status = "manual"
|
||||
trait_name = "GstObjectExt"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object.function]]
|
||||
name = "get_caps"
|
||||
# Function moved to SampleRef
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
|
8
gstreamer-editing-services/tests/check_gir.rs
Normal file
8
gstreamer-editing-services/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -28,6 +28,9 @@ gst = { package = "gstreamer", path = "../gstreamer", features = ["v1_14"] }
|
|||
gst-base = { package = "gstreamer-base", path = "../gstreamer-base", features = ["v1_14"] }
|
||||
gst-video = { package = "gstreamer-video", path = "../gstreamer-video", features = ["v1_14"] }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
dox = ["v1_20", "ffi/dox", "glib/dox", "gst/dox", "gst-base/dox", "gst-video/dox"]
|
||||
|
|
|
@ -18,31 +18,21 @@ external_libraries = [
|
|||
]
|
||||
|
||||
generate = [
|
||||
# Enums
|
||||
"GstGL.GLBaseFilter",
|
||||
"GstGL.GLBaseMemoryAllocator",
|
||||
"GstGL.GLBaseSrc",
|
||||
"GstGL.GLConfigCaveat",
|
||||
"GstGL.GLConfigSurfaceType",
|
||||
"GstGL.GLContextError",
|
||||
"GstGL.GLFormat",
|
||||
"GstGL.GLMemoryAllocator",
|
||||
"GstGL.GLQueryType",
|
||||
"GstGL.GLSLError",
|
||||
"GstGL.GLSLVersion",
|
||||
"GstGL.GLStereoDownmix",
|
||||
"GstGL.GLTextureTarget",
|
||||
"GstGL.GLUploadReturn",
|
||||
# Flags
|
||||
"GstGL.GLConfigSurfaceType",
|
||||
# Enums Errors
|
||||
#"GstGL.GLBaseMemoryError",
|
||||
"GstGL.GLContextError",
|
||||
"GstGL.GLSLError",
|
||||
"GstGL.GLWindowError",
|
||||
# Records
|
||||
#"GstGL.GLRenderbufferAllocationParams",
|
||||
# Objects
|
||||
#"GstGL.GLBufferPool",
|
||||
"GstGL.GLBaseFilter",
|
||||
"GstGL.GLBaseMemoryAllocator",
|
||||
"GstGL.GLBaseSrc",
|
||||
"GstGL.GLMemoryAllocator",
|
||||
#"GstGL.GLMemoryPBOAllocator",
|
||||
#"GstGL.GLRenderbufferAllocator",
|
||||
]
|
||||
|
||||
manual = [
|
||||
|
@ -71,11 +61,6 @@ manual = [
|
|||
"GstVideo.VideoOverlay",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
|
@ -91,15 +76,70 @@ name = "Gst.Query"
|
|||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[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.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.GLBuffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLQuery"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
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.GLContext"
|
||||
|
@ -203,82 +243,49 @@ status = "generate"
|
|||
nullable_return_is_error = "Failed to create window"
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLWindow"
|
||||
name = "GstGL.GLDisplayType"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "get_window_handle"
|
||||
# return native handle
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
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
|
||||
[[object.member]]
|
||||
name = "any"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLColorConvert"
|
||||
name = "GstGL.GLFilter"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_caps"
|
||||
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 = "Failed to set caps"
|
||||
bool_return_is_error = "`func` returned `false`"
|
||||
|
||||
[[object.function]]
|
||||
name = "decide_allocation"
|
||||
# correct mutability
|
||||
ignore = true
|
||||
name = "filter_texture"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to transform texture"
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLFramebuffer"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "fixate_caps"
|
||||
# correct reference ownership
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "perform"
|
||||
# transfer gst::Buffer not reference
|
||||
ignore = true
|
||||
name = "attach"
|
||||
# attachment_point parameter unchecked
|
||||
unsafe = true
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLOverlayCompositor"
|
||||
|
@ -295,14 +302,24 @@ final_type = true
|
|||
version = "1.16"
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLSLStage"
|
||||
name = "GstGL.GLPlatform"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
[[object.member]]
|
||||
name = "any"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_strings"
|
||||
name = "to_string"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to attach stage to set strings"
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLQuery"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLShader"
|
||||
|
@ -364,6 +381,26 @@ final_type = true
|
|||
# array with size
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLSLProfile"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
[[object.member]]
|
||||
name = "any"
|
||||
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.GLUpload"
|
||||
status = "generate"
|
||||
|
@ -389,6 +426,22 @@ final_type = true
|
|||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[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.GLViewConvert"
|
||||
status = "generate"
|
||||
|
@ -420,119 +473,55 @@ final_type = true
|
|||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLDisplayType"
|
||||
name = "GstGL.GLWindow"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
[[object.member]]
|
||||
name = "any"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLAPI"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
[[object.member]]
|
||||
name = "any"
|
||||
[[object.function]]
|
||||
name = "get_window_handle"
|
||||
# return native handle
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "to_string"
|
||||
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]
|
||||
nullable = false
|
||||
bool_return_is_error = "Failed to set the specified region"
|
||||
|
||||
[[object]]
|
||||
name = "GstGL.GLPlatform"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
[[object.member]]
|
||||
name = "any"
|
||||
[[object.function]]
|
||||
name = "set_resize_callback"
|
||||
# callback
|
||||
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.
|
||||
name = "set_window_handle"
|
||||
# handle
|
||||
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.
|
||||
name = "get_display"
|
||||
# handle
|
||||
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
|
||||
name = "error_quark"
|
||||
# bad error domian definition in gir
|
||||
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"
|
||||
|
||||
|
|
|
@ -24,6 +24,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../../gstreamer", features = ["v1_14"] }
|
||||
gst-gl = { package = "gstreamer-gl", path = "../" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
dox = ["v1_18", "ffi/dox", "glib/dox", "gst/dox", "gst-gl/dox"]
|
||||
|
|
|
@ -14,8 +14,8 @@ external_libraries = [
|
|||
"GObject",
|
||||
"Gst",
|
||||
"GstBase",
|
||||
"GstVideo",
|
||||
"GstGL",
|
||||
"GstVideo",
|
||||
]
|
||||
|
||||
generate = [
|
||||
|
@ -26,17 +26,12 @@ manual = [
|
|||
"GLib.Error",
|
||||
"GLib.Thread",
|
||||
"GObject.Object",
|
||||
"Gst.Object",
|
||||
"Gst.FlowReturn",
|
||||
"Gst.Object",
|
||||
"Gst.PadDirection",
|
||||
"GstGL.GLDisplay",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
|
@ -51,3 +46,9 @@ ref_mode = "ref"
|
|||
name = "Gst.Query"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
|
8
gstreamer-gl/tests/check_gir.rs
Normal file
8
gstreamer-gl/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -24,6 +24,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../../gstreamer", features = ["v1_14"] }
|
||||
gst-gl = { package = "gstreamer-gl", path = "../" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
dox = ["v1_18", "ffi/dox", "glib/dox", "gst/dox", "gst-gl/dox"]
|
||||
|
|
|
@ -14,8 +14,8 @@ external_libraries = [
|
|||
"GObject",
|
||||
"Gst",
|
||||
"GstBase",
|
||||
"GstVideo",
|
||||
"GstGL",
|
||||
"GstVideo",
|
||||
]
|
||||
|
||||
generate = [
|
||||
|
@ -26,17 +26,12 @@ manual = [
|
|||
"GLib.Error",
|
||||
"GLib.Thread",
|
||||
"GObject.Object",
|
||||
"Gst.Object",
|
||||
"Gst.FlowReturn",
|
||||
"Gst.Object",
|
||||
"Gst.PadDirection",
|
||||
"GstGL.GLDisplay",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
|
@ -51,3 +46,8 @@ ref_mode = "ref"
|
|||
name = "Gst.Query"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
|
|
@ -24,6 +24,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../../gstreamer", features = ["v1_14"] }
|
||||
gst-gl = { package = "gstreamer-gl", path = "../" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
dox = ["v1_18", "ffi/dox", "glib/dox", "gst/dox", "gst-gl/dox"]
|
||||
|
|
|
@ -14,8 +14,8 @@ external_libraries = [
|
|||
"GObject",
|
||||
"Gst",
|
||||
"GstBase",
|
||||
"GstVideo",
|
||||
"GstGL",
|
||||
"GstVideo",
|
||||
]
|
||||
|
||||
generate = [
|
||||
|
@ -26,17 +26,12 @@ manual = [
|
|||
"GLib.Error",
|
||||
"GLib.Thread",
|
||||
"GObject.Object",
|
||||
"Gst.Object",
|
||||
"Gst.FlowReturn",
|
||||
"Gst.Object",
|
||||
"Gst.PadDirection",
|
||||
"GstGL.GLDisplay",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
|
@ -51,3 +46,8 @@ ref_mode = "ref"
|
|||
name = "Gst.Query"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
|
8
gstreamer-mpegts/tests/check_gir.rs
Normal file
8
gstreamer-mpegts/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -19,6 +19,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
gio = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -11,10 +11,10 @@ generate_display_trait = false
|
|||
trust_return_value_nullability = true
|
||||
|
||||
external_libraries = [
|
||||
"Gio",
|
||||
"GLib",
|
||||
"GObject",
|
||||
"Gst",
|
||||
"Gio",
|
||||
]
|
||||
|
||||
generate = [
|
||||
|
@ -34,26 +34,6 @@ name = "Gst.ClockTime"
|
|||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "GstNet.NtpClock"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# Floating reference handling
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstNet.PtpClock"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# Floating reference handling
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstNet.NetClientClock"
|
||||
status = "generate"
|
||||
|
@ -73,3 +53,23 @@ final_type = true
|
|||
name = "new"
|
||||
# Floating reference handling
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstNet.NtpClock"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# Floating reference handling
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstNet.PtpClock"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# Floating reference handling
|
||||
manual = true
|
||||
|
|
8
gstreamer-net/tests/check_gir.rs
Normal file
8
gstreamer-net/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -21,6 +21,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
thiserror = "1.0"
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -35,7 +35,7 @@ manual = [
|
|||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Toc"
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
|
@ -45,14 +45,9 @@ status = "manual"
|
|||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Message"
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Event"
|
||||
|
@ -60,7 +55,7 @@ status = "manual"
|
|||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.TagList"
|
||||
name = "Gst.Message"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
|
@ -70,203 +65,15 @@ status = "manual"
|
|||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
name = "Gst.TagList"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
ref_mode = "ref"
|
||||
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.Discoverer"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "discover_uri_async"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add URI to list of discovers"
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
[[object.function.parameter]]
|
||||
name = "timeout"
|
||||
mandatory = true
|
||||
|
||||
# Manually implemented to use ClockTime
|
||||
[[object.property]]
|
||||
name = "timeout"
|
||||
manual = true
|
||||
|
||||
[[object.property]]
|
||||
name = "use-cache"
|
||||
version = "1.16"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererInfo"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "copy"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "to_variant"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to serialize DiscovererInfo to Variant"
|
||||
|
||||
[[object.function]]
|
||||
name = "from_variant"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to deserialize DiscovererInfo from Variant"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererStreamInfo"
|
||||
status = "generate"
|
||||
final_type = false
|
||||
|
||||
# Not useful
|
||||
[[object.function]]
|
||||
name = "list_free"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_stream_type_nick"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererAudioInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererVideoInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
# Implement manually to expose as gst::Fraction
|
||||
[[object.function]]
|
||||
name = "get_framerate_num"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
name = "get_framerate_denom"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
name = "get_par_num"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
name = "get_par_denom"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererSubtitleInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererContainerInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingProfile"
|
||||
status = "generate"
|
||||
|
||||
# Ignore all setters, making it immutable. A builder will be provided.
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
pattern = "set_.*"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
pattern = "get_restriction"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "copy"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "get_input_caps"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "get_format"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.property]]
|
||||
name = "restriction-caps"
|
||||
# encodingprofile is immutable after constructed
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "from_discoverer"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create EncodingProfile from DiscovererInfo"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingContainerProfile"
|
||||
status = "generate"
|
||||
|
||||
# Make it immutable, only able to be constructed for a builder
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "add_profile"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingTarget"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "add_profile"
|
||||
# can be provided on constructor and we better
|
||||
# consider this immutable
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_category"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
[[object.function]]
|
||||
name = "get_description"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
[[object.function]]
|
||||
name = "get_name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingAudioProfile"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
# Ignore all setters, making it immutable. A builder will be provided.
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
pattern = "set_.*"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingVideoProfile"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
# Ignore all setters, making it immutable. A builder will be provided.
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
pattern = "set_.*"
|
||||
manual = true
|
||||
name = "Gst.Toc"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.*"
|
||||
|
@ -346,6 +153,60 @@ status = "generate"
|
|||
name = "plugins_base_version"
|
||||
assertion = "skip"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.Discoverer"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "discover_uri_async"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add URI to list of discovers"
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
[[object.function.parameter]]
|
||||
name = "timeout"
|
||||
mandatory = true
|
||||
|
||||
# Manually implemented to use ClockTime
|
||||
[[object.property]]
|
||||
name = "timeout"
|
||||
manual = true
|
||||
|
||||
[[object.property]]
|
||||
name = "use-cache"
|
||||
version = "1.16"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererAudioInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererContainerInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererInfo"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "copy"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "to_variant"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to serialize DiscovererInfo to Variant"
|
||||
|
||||
[[object.function]]
|
||||
name = "from_variant"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to deserialize DiscovererInfo from Variant"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererSerializeFlags"
|
||||
status = "generate"
|
||||
|
@ -355,3 +216,143 @@ status = "generate"
|
|||
[[object.member]]
|
||||
name = "all"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererStreamInfo"
|
||||
status = "generate"
|
||||
final_type = false
|
||||
|
||||
# Not useful
|
||||
[[object.function]]
|
||||
name = "list_free"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_stream_type_nick"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererSubtitleInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.DiscovererVideoInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
# Implement manually to expose as gst::Fraction
|
||||
[[object.function]]
|
||||
name = "get_framerate_num"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
name = "get_framerate_denom"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
name = "get_par_num"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
name = "get_par_denom"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingAudioProfile"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
# Ignore all setters, making it immutable. A builder will be provided.
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
pattern = "set_.*"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingContainerProfile"
|
||||
status = "generate"
|
||||
|
||||
# Make it immutable, only able to be constructed for a builder
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "add_profile"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingProfile"
|
||||
status = "generate"
|
||||
|
||||
# Ignore all setters, making it immutable. A builder will be provided.
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
pattern = "set_.*"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
pattern = "get_restriction"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "copy"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "get_input_caps"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "get_format"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.property]]
|
||||
name = "restriction-caps"
|
||||
# encodingprofile is immutable after constructed
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "from_discoverer"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create EncodingProfile from DiscovererInfo"
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingTarget"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "add_profile"
|
||||
# can be provided on constructor and we better
|
||||
# consider this immutable
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "get_category"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
[[object.function]]
|
||||
name = "get_description"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
[[object.function]]
|
||||
name = "get_name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstPbutils.EncodingVideoProfile"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
# Ignore all setters, making it immutable. A builder will be provided.
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
manual = true
|
||||
[[object.function]]
|
||||
pattern = "set_.*"
|
||||
manual = true
|
||||
|
|
8
gstreamer-pbutils/tests/check_gir.rs
Normal file
8
gstreamer-pbutils/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -22,6 +22,9 @@ gst = { package = "gstreamer", path = "../gstreamer", features = ["v1_12"] }
|
|||
gst-video = { package = "gstreamer-video", path = "../gstreamer-video", features = ["v1_12"] }
|
||||
once_cell = "1.0"
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_14 = ["gst/v1_14", "gst-video/v1_14", "ffi/v1_14"]
|
||||
|
|
|
@ -32,8 +32,8 @@ manual = [
|
|||
"GLib.Error",
|
||||
"GLib.MainContext",
|
||||
"GObject.Object",
|
||||
"Gst.Object",
|
||||
"Gst.Element",
|
||||
"Gst.Object",
|
||||
"GstVideo.VideoMultiviewFlags",
|
||||
"GstVideo.VideoMultiviewFramePacking",
|
||||
]
|
||||
|
@ -44,21 +44,25 @@ status = "manual"
|
|||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.TagList"
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Sample"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.TagList"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.Player"
|
||||
status = "generate"
|
||||
|
@ -181,6 +185,21 @@ name = "GstPlayer.PlayerAudioInfo"
|
|||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.PlayerGMainContextSignalDispatcher"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# Wrong return value
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.PlayerSubtitleInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.PlayerVideoInfo"
|
||||
status = "generate"
|
||||
|
@ -196,11 +215,6 @@ final_type = true
|
|||
# Fraction
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.PlayerSubtitleInfo"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.PlayerVideoOverlayVideoRenderer"
|
||||
status = "generate"
|
||||
|
@ -223,18 +237,3 @@ final_type = true
|
|||
[[object.function]]
|
||||
name = "set_window_handle"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstPlayer.PlayerGMainContextSignalDispatcher"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# Wrong return value
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
|
8
gstreamer-player/tests/check_gir.rs
Normal file
8
gstreamer-player/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -20,6 +20,9 @@ ffi = { package = "gstreamer-rtp-sys", path = "sys", features = ["v1_8"] }
|
|||
glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
||||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -63,6 +63,20 @@ status = "manual"
|
|||
# Readable and writable variant dealing with mutability
|
||||
rename = "from_buffer_readable"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtp.RTPBufferFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "last"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtp.RTPBufferMapFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "last"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtp.RTPHeaderExtension"
|
||||
status = "generate"
|
||||
|
@ -91,17 +105,3 @@ manual_traits = ["RTPHeaderExtensionExtManual"]
|
|||
name = "get_sdp_caps_field_name"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstRtp.RTPBufferFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "last"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtp.RTPBufferMapFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "last"
|
||||
ignore = true
|
||||
|
|
8
gstreamer-rtp/tests/check_gir.rs
Normal file
8
gstreamer-rtp/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -25,6 +25,9 @@ gst-sdp = { package = "gstreamer-sdp", path = "../gstreamer-sdp" }
|
|||
gst-rtsp = { package = "gstreamer-rtsp", path = "../gstreamer-rtsp" }
|
||||
gst-net = { package = "gstreamer-net", path = "../gstreamer-net" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "gst-sdp/v1_10", "gst-rtsp/v1_10", "gst-net/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -10,9 +10,9 @@ single_version_file = true
|
|||
generate_display_trait = false
|
||||
|
||||
external_libraries = [
|
||||
"Gio",
|
||||
"GLib",
|
||||
"GObject",
|
||||
"Gio",
|
||||
"Gst",
|
||||
"GstNet",
|
||||
"GstRtsp",
|
||||
|
@ -21,6 +21,7 @@ external_libraries = [
|
|||
|
||||
generate = [
|
||||
"GstRtspServer.RTSPAddressPoolResult",
|
||||
"GstRtspServer.RTSPFilterResult",
|
||||
"GstRtspServer.RTSPMediaFactoryURI",
|
||||
"GstRtspServer.RTSPMediaStatus",
|
||||
"GstRtspServer.RTSPPublishClockMode",
|
||||
|
@ -28,10 +29,17 @@ generate = [
|
|||
"GstRtspServer.RTSPThreadPool",
|
||||
"GstRtspServer.RTSPThreadType",
|
||||
"GstRtspServer.RTSPTransportMode",
|
||||
"GstRtspServer.RTSPFilterResult"
|
||||
]
|
||||
|
||||
manual = [
|
||||
"Gio.Cancellable",
|
||||
"Gio.Socket",
|
||||
"Gio.SocketFamily",
|
||||
"Gio.TlsAuthenticationMode",
|
||||
"Gio.TlsCertificate",
|
||||
"Gio.TlsCertificateFlags",
|
||||
"Gio.TlsConnection",
|
||||
"Gio.TlsDatabase",
|
||||
"GLib.Error",
|
||||
"GLib.IOCondition",
|
||||
"GLib.MainContext",
|
||||
|
@ -39,20 +47,12 @@ manual = [
|
|||
"GLib.Source",
|
||||
"GLib.ThreadPool",
|
||||
"GObject.Object",
|
||||
"Gio.TlsCertificateFlags",
|
||||
"Gio.TlsCertificate",
|
||||
"Gio.TlsDatabase",
|
||||
"Gio.TlsConnection",
|
||||
"Gio.TlsAuthenticationMode",
|
||||
"Gio.Socket",
|
||||
"Gio.Cancellable",
|
||||
"Gio.SocketFamily",
|
||||
"Gst.Element",
|
||||
"Gst.State",
|
||||
"Gst.Clock",
|
||||
"Gst.Pipeline",
|
||||
"Gst.Pad",
|
||||
"Gst.Bin",
|
||||
"Gst.Clock",
|
||||
"Gst.Element",
|
||||
"Gst.Pad",
|
||||
"Gst.Pipeline",
|
||||
"Gst.State",
|
||||
"GstNet.NetTimeProvider",
|
||||
"GstRtsp.RTSPAuthMethod",
|
||||
"GstRtsp.RTSPLowerTrans",
|
||||
|
@ -63,31 +63,6 @@ manual = [
|
|||
"GstRtsp.RTSPUrl",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.FlowReturn"
|
||||
status = "manual"
|
||||
must_use = true
|
||||
[object.conversion_type]
|
||||
variant = "Result"
|
||||
ok_type = "gst::FlowSuccess"
|
||||
err_type = "gst::FlowError"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Object"
|
||||
# For renaming the trait...
|
||||
status = "manual"
|
||||
trait_name = "GstObjectExt"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Message"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Buffer"
|
||||
status = "manual"
|
||||
|
@ -98,110 +73,35 @@ name = "Gst.Caps"
|
|||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPContext"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPToken"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPThread"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object.function]]
|
||||
name = "stop"
|
||||
# Moved to RTSPThreadRef
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPServer"
|
||||
status = "generate"
|
||||
manual_traits = ["RTSPServerExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "attach"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "io_func"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to connect the source"
|
||||
|
||||
[[object.function]]
|
||||
name = "transfer_connection"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to transfer to the connection"
|
||||
name = "Gst.FlowReturn"
|
||||
status = "manual"
|
||||
must_use = true
|
||||
[object.conversion_type]
|
||||
variant = "Result"
|
||||
ok_type = "gst::FlowSuccess"
|
||||
err_type = "gst::FlowError"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPClient"
|
||||
status = "generate"
|
||||
manual_traits = ["RTSPClientExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "attach"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_send_func"
|
||||
# user_data takes raw pointer
|
||||
ignore = true
|
||||
name = "Gst.Message"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPStream"
|
||||
status = "generate"
|
||||
name = "Gst.Object"
|
||||
# For renaming the trait...
|
||||
status = "manual"
|
||||
trait_name = "GstObjectExt"
|
||||
|
||||
[[object.function]]
|
||||
name = "query_position"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "query_stop"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "add_transport"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add transport"
|
||||
|
||||
[[object.function]]
|
||||
name = "remove_transport"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove transport"
|
||||
|
||||
[[object.function]]
|
||||
name = "join_bin"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to join bin"
|
||||
|
||||
[[object.function]]
|
||||
name = "leave_bin"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to leave bin"
|
||||
|
||||
[[object.function]]
|
||||
name = "set_blocked"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to block/unblock the dataflow"
|
||||
|
||||
[[object.function]]
|
||||
name = "unblock_linked"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to unblock the dataflow"
|
||||
|
||||
[[object.function]]
|
||||
name = "update_crypto"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to update crypto"
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPAddress"
|
||||
|
@ -209,24 +109,11 @@ status = "generate"
|
|||
concurrency = "send"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPStreamTransport"
|
||||
name = "GstRtspServer.RTSPAddressFlags"
|
||||
status = "generate"
|
||||
concurrency = "none"
|
||||
|
||||
[[object.function]]
|
||||
name = "send_rtcp"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to send rtcp"
|
||||
|
||||
[[object.function]]
|
||||
name = "send_rtp"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to send rtp"
|
||||
|
||||
[[object.function]]
|
||||
name = "set_active"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set active"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPAddressPool"
|
||||
|
@ -247,6 +134,50 @@ manual_traits = ["RTSPAddressPoolExtManual"]
|
|||
name = "reserve_address"
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name="GstRtspServer.RTSPAuth"
|
||||
status="generate"
|
||||
manual_traits = ["RTSPAuthExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "check"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Check failed"
|
||||
|
||||
[[object.function]]
|
||||
name = "connect_accept_certificate"
|
||||
# Use Result<(), LoggableError>
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "make_basic"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "set_default_token"
|
||||
# gir forgets mut
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPClient"
|
||||
status = "generate"
|
||||
manual_traits = ["RTSPClientExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "attach"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_send_func"
|
||||
# user_data takes raw pointer
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPContext"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPMedia"
|
||||
status = "generate"
|
||||
|
@ -296,6 +227,43 @@ manual_traits = ["RTSPMediaFactoryExtManual"]
|
|||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to create media element"
|
||||
|
||||
|
||||
[[object]]
|
||||
name="GstRtspServer.RTSPMountPoints"
|
||||
status="generate"
|
||||
[[object.function]]
|
||||
name = "make_path"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to make path"
|
||||
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPServer"
|
||||
status = "generate"
|
||||
manual_traits = ["RTSPServerExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "attach"
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "io_func"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to connect the source"
|
||||
|
||||
[[object.function]]
|
||||
name = "transfer_connection"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to transfer to the connection"
|
||||
|
||||
[[object]]
|
||||
name="GstRtspServer.RTSPSession"
|
||||
status="generate"
|
||||
[[object.function]]
|
||||
name = "manage_media"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to manage media"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPSessionMedia"
|
||||
status = "generate"
|
||||
|
@ -326,49 +294,83 @@ manual_traits = ["RTSPSessionPoolExtManual"]
|
|||
nullable_return_is_error = "Failed to create session pool"
|
||||
|
||||
[[object]]
|
||||
name="GstRtspServer.RTSPAuth"
|
||||
status="generate"
|
||||
manual_traits = ["RTSPAuthExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "check"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Check failed"
|
||||
|
||||
[[object.function]]
|
||||
name = "connect_accept_certificate"
|
||||
# Use Result<(), LoggableError>
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "make_basic"
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object.function]]
|
||||
name = "set_default_token"
|
||||
# gir forgets mut
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name="GstRtspServer.RTSPMountPoints"
|
||||
status="generate"
|
||||
[[object.function]]
|
||||
name = "make_path"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to make path"
|
||||
|
||||
[[object]]
|
||||
name="GstRtspServer.RTSPSession"
|
||||
status="generate"
|
||||
[[object.function]]
|
||||
name = "manage_media"
|
||||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to manage media"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPAddressFlags"
|
||||
name = "GstRtspServer.RTSPStream"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
|
||||
[[object.function]]
|
||||
name = "query_position"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "query_stop"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "add_transport"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to add transport"
|
||||
|
||||
[[object.function]]
|
||||
name = "remove_transport"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to remove transport"
|
||||
|
||||
[[object.function]]
|
||||
name = "join_bin"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to join bin"
|
||||
|
||||
[[object.function]]
|
||||
name = "leave_bin"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to leave bin"
|
||||
|
||||
[[object.function]]
|
||||
name = "set_blocked"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to block/unblock the dataflow"
|
||||
|
||||
[[object.function]]
|
||||
name = "unblock_linked"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to unblock the dataflow"
|
||||
|
||||
[[object.function]]
|
||||
name = "update_crypto"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to update crypto"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPStreamTransport"
|
||||
status = "generate"
|
||||
concurrency = "none"
|
||||
|
||||
[[object.function]]
|
||||
name = "send_rtcp"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to send rtcp"
|
||||
|
||||
[[object.function]]
|
||||
name = "send_rtp"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to send rtp"
|
||||
|
||||
[[object.function]]
|
||||
name = "set_active"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set active"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPThread"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object.function]]
|
||||
name = "stop"
|
||||
# Moved to RTSPThreadRef
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtspServer.RTSPToken"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
|
8
gstreamer-rtsp-server/tests/check_gir.rs
Normal file
8
gstreamer-rtsp-server/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -21,6 +21,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
gst-sdp = { package = "gstreamer-sdp", path = "../gstreamer-sdp" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_10 = ["gst/v1_10", "gst-sdp/v1_10", "ffi/v1_10"]
|
||||
|
|
|
@ -10,9 +10,9 @@ single_version_file = true
|
|||
generate_display_trait = false
|
||||
|
||||
external_libraries = [
|
||||
"Gio",
|
||||
"GLib",
|
||||
"GObject",
|
||||
"Gio",
|
||||
"GstSdp"
|
||||
]
|
||||
|
||||
|
@ -34,18 +34,9 @@ manual = [
|
|||
]
|
||||
|
||||
[[object]]
|
||||
name = "GstRtsp.RTSPUrl"
|
||||
status = "generate"
|
||||
concurrency = "send"
|
||||
|
||||
[[object.function]]
|
||||
name = "get_port"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtsp.RTSPAuthParam"
|
||||
status = "generate"
|
||||
concurrency = "send"
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
|
@ -53,14 +44,14 @@ status = "manual"
|
|||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Structure"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
name = "GstRtsp.RTSPAuthParam"
|
||||
status = "generate"
|
||||
concurrency = "send"
|
||||
|
||||
[[object]]
|
||||
name = "GstRtsp.RTSPLowerTrans"
|
||||
|
@ -89,3 +80,12 @@ status = "generate"
|
|||
[[object.member]]
|
||||
name = "unknown"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstRtsp.RTSPUrl"
|
||||
status = "generate"
|
||||
concurrency = "send"
|
||||
|
||||
[[object.function]]
|
||||
name = "get_port"
|
||||
ignore = true
|
||||
|
|
8
gstreamer-rtsp/tests/check_gir.rs
Normal file
8
gstreamer-rtsp/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -18,6 +18,9 @@ ffi = { package = "gstreamer-sdp-sys", path = "sys", features = ["v1_8"] }
|
|||
glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
||||
gst = { package = "gstreamer", path = "../gstreamer" }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
v1_8_1 = ["ffi/v1_8_1"]
|
||||
|
|
8
gstreamer-sdp/tests/check_gir.rs
Normal file
8
gstreamer-sdp/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
8
gstreamer-tag/tests/check_gir.rs
Normal file
8
gstreamer-tag/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -27,6 +27,7 @@ fragile = "1"
|
|||
|
||||
[dev-dependencies]
|
||||
itertools = "0.10"
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
|
|
@ -65,8 +65,8 @@ manual = [
|
|||
"GstBase.BaseTransform",
|
||||
"GstVideo.VideoCodecFrame",
|
||||
"GstVideo.VideoCodecState",
|
||||
"GstVideo.VideoColorRange",
|
||||
"GstVideo.VideoColorimetry",
|
||||
"GstVideo.VideoColorRange",
|
||||
"GstVideo.VideoFormatInfo",
|
||||
"GstVideo.VideoInfo",
|
||||
"GstVideo.VideoMeta",
|
||||
|
@ -74,64 +74,78 @@ manual = [
|
|||
"GstVideo.VideoTimeCodeInterval",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "Gst.Caps"
|
||||
status = "manual"
|
||||
ref_mode = "ref"
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoFrame"
|
||||
name = "Gst.ClockTime"
|
||||
status = "manual"
|
||||
|
||||
[[object.function]]
|
||||
name = "map"
|
||||
# Readable and writable variant dealing with mutability
|
||||
rename = "from_buffer_readable"
|
||||
conversion_type = "Option"
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoOrientation"
|
||||
name = "GstVideo.VideoBufferFlags"
|
||||
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.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.VideoOverlay"
|
||||
name = "GstVideo.VideoChromaSite"
|
||||
status = "generate"
|
||||
manual_traits = ["VideoOverlayExtManual"]
|
||||
|
||||
[[object.function]]
|
||||
name = "set_property"
|
||||
# Only for implementors of GstVideoOverlay
|
||||
[[object.member]]
|
||||
name = "unknown"
|
||||
ignore = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_window_handle"
|
||||
# Pointer argument
|
||||
name = "to_string"
|
||||
# Manual function for < v1_20:
|
||||
manual = true
|
||||
|
||||
[[object.function]]
|
||||
name = "set_render_rectangle"
|
||||
# Always generate the trait, without version constraint:
|
||||
version = "1.8"
|
||||
[object.function.return]
|
||||
bool_return_is_error = "Failed to set render rectangle"
|
||||
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"
|
||||
|
@ -295,6 +309,24 @@ manual_traits = ["VideoEncoderExtManual"]
|
|||
[object.function.return]
|
||||
nullable_return_is_error = "Failed to allocate output buffer"
|
||||
|
||||
[[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.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoFormat"
|
||||
status = "generate"
|
||||
|
@ -465,33 +497,13 @@ status = "generate"
|
|||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoSink"
|
||||
status = "generate"
|
||||
name = "GstVideo.VideoFrame"
|
||||
status = "manual"
|
||||
|
||||
[[object.function]]
|
||||
name = "center_rect"
|
||||
# Implemented in video_rectangle
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoOverlayFormatFlags"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "get_type"
|
||||
version = "1.16"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoTimeCodeFlags"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "get_type"
|
||||
version = "1.18"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
name = "map"
|
||||
# Readable and writable variant dealing with mutability
|
||||
rename = "from_buffer_readable"
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoFrameFlags"
|
||||
|
@ -502,28 +514,8 @@ status = "generate"
|
|||
[[object.member]]
|
||||
name = "bottom_field"
|
||||
version = "1.16"
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoCodecFrameFlags"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "get_type"
|
||||
version = "1.20"
|
||||
|
||||
[[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"
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
|
@ -538,36 +530,6 @@ status = "generate"
|
|||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[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.VideoFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoFrameFlags"
|
||||
status = "generate"
|
||||
[[object.member]]
|
||||
name = "none"
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoMultiviewFlags"
|
||||
status = "generate"
|
||||
|
@ -575,6 +537,56 @@ status = "generate"
|
|||
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]]
|
||||
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"
|
||||
|
@ -582,6 +594,25 @@ status = "generate"
|
|||
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"
|
||||
|
@ -594,38 +625,3 @@ status = "generate"
|
|||
[[object.member]]
|
||||
name = "arib_std_b67"
|
||||
version = "1.18"
|
||||
|
||||
[[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.VideoFieldOrder"
|
||||
status = "generate"
|
||||
|
||||
[[object.function]]
|
||||
name = "to_string"
|
||||
# This has an Unknown field that may return NULL or "UNKNOWN"
|
||||
manual = true
|
||||
[object.function.return]
|
||||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstVideo.VideoColorMatrix"
|
||||
status = "generate"
|
||||
[[object.function]]
|
||||
name = "get_Kr_Kb"
|
||||
# Function and parameter name capitalization is wrong
|
||||
ignore = true
|
||||
|
|
|
@ -479,8 +479,12 @@ bitflags! {
|
|||
const MULTIPLE_VIEW = ffi::GST_VIDEO_FRAME_FLAG_MULTIPLE_VIEW as u32;
|
||||
#[doc(alias = "GST_VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE")]
|
||||
const FIRST_IN_BUNDLE = ffi::GST_VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE as u32;
|
||||
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
||||
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
||||
#[doc(alias = "GST_VIDEO_FRAME_FLAG_TOP_FIELD")]
|
||||
const TOP_FIELD = ffi::GST_VIDEO_FRAME_FLAG_TOP_FIELD as u32;
|
||||
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
||||
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
||||
#[doc(alias = "GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD")]
|
||||
const BOTTOM_FIELD = ffi::GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD as u32;
|
||||
}
|
||||
|
|
8
gstreamer-video/tests/check_gir.rs
Normal file
8
gstreamer-video/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -20,6 +20,9 @@ glib = { git = "https://github.com/gtk-rs/gtk-rs-core" }
|
|||
gst = { package = "gstreamer", path = "../gstreamer", features = ["v1_14"] }
|
||||
gst-sdp = { package = "gstreamer-sdp", path = "../gstreamer-sdp", features = ["v1_14"] }
|
||||
|
||||
[dev-dependencies]
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
dox = ["v1_20", "ffi/dox", "glib/dox", "gst/dox", "gst-sdp/dox"]
|
||||
|
|
|
@ -45,6 +45,16 @@ manual = [
|
|||
"GstSdp.SDPMessage",
|
||||
]
|
||||
|
||||
[[object]]
|
||||
name = "GstWebRTC.WebRTCDataChannel"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "on_error"
|
||||
# takes ownership of SDP message
|
||||
manual = true
|
||||
|
||||
[[object]]
|
||||
name = "GstWebRTC.WebRTCDTLSTransport"
|
||||
status = "generate"
|
||||
|
@ -71,24 +81,9 @@ status = "generate"
|
|||
final_type = true
|
||||
|
||||
[[object]]
|
||||
name = "GstWebRTC.WebRTCSessionDescription"
|
||||
name = "GstWebRTC.WebRTCSCTPTransport"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# takes ownership of SDP message
|
||||
ignore = true
|
||||
|
||||
[[object]]
|
||||
name = "GstWebRTC.WebRTCDataChannel"
|
||||
status = "generate"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "on_error"
|
||||
# takes ownership of SDP message
|
||||
manual = true
|
||||
version = "1.20"
|
||||
|
||||
[[object]]
|
||||
name = "GstWebRTC.WebRTCSDPType"
|
||||
|
@ -100,6 +95,11 @@ status = "generate"
|
|||
nullable = false
|
||||
|
||||
[[object]]
|
||||
name = "GstWebRTC.WebRTCSCTPTransport"
|
||||
name = "GstWebRTC.WebRTCSessionDescription"
|
||||
status = "generate"
|
||||
version = "1.20"
|
||||
final_type = true
|
||||
|
||||
[[object.function]]
|
||||
name = "new"
|
||||
# takes ownership of SDP message
|
||||
ignore = true
|
||||
|
|
8
gstreamer-webrtc/tests/check_gir.rs
Normal file
8
gstreamer-webrtc/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
|
@ -38,6 +38,7 @@ fragile = "1"
|
|||
ron = "0.7"
|
||||
serde_json = "1.0"
|
||||
futures-executor = "0.3.1"
|
||||
gir-format-check = "0.1"
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
|
3579
gstreamer/Gir.toml
3579
gstreamer/Gir.toml
File diff suppressed because it is too large
Load diff
8
gstreamer/tests/check_gir.rs
Normal file
8
gstreamer/tests/check_gir.rs
Normal file
|
@ -0,0 +1,8 @@
|
|||
// Take a look at the license at the top of the repository in the LICENSE file.
|
||||
|
||||
#[test]
|
||||
fn check_gir_file() {
|
||||
let res = gir_format_check::check_gir_file("Gir.toml");
|
||||
println!("{}", res);
|
||||
assert_eq!(res.nb_errors, 0);
|
||||
}
|
Loading…
Reference in a new issue