From: Rico Tzschichholz Date: Sun, 7 Jun 2020 13:29:37 +0000 (+0200) Subject: gstreamer: Update from 1.17.0+ git master X-Git-Tag: 0.49.1~108 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cb56688a7dac3224e39c2ebd349c36af04def4ef;p=thirdparty%2Fvala.git gstreamer: Update from 1.17.0+ git master --- diff --git a/vapi/gst-editing-services-1.0.vapi b/vapi/gst-editing-services-1.0.vapi index 517117721..aa78c2e0c 100644 --- a/vapi/gst-editing-services-1.0.vapi +++ b/vapi/gst-editing-services-1.0.vapi @@ -72,6 +72,12 @@ namespace GES { public abstract class BaseEffect : GES.Operation, GES.Extractable, GES.MetaContainer { [CCode (has_construct_function = false)] protected BaseEffect (); + [Version (since = "1.18")] + public bool is_time_effect (); + [Version (since = "1.18")] + public bool register_time_property (string child_property_name); + [Version (since = "1.18")] + public bool set_time_translation_funcs (GES.BaseEffectTimeTranslationFunc? source_to_sink_func, owned GES.BaseEffectTimeTranslationFunc? sink_to_source_func); } [CCode (cheader_filename = "ges/ges.h", type_id = "ges_base_effect_clip_get_type ()")] public abstract class BaseEffectClip : GES.OperationClip, GES.Extractable, GES.MetaContainer { @@ -94,24 +100,39 @@ namespace GES { protected Clip (); public unowned GES.TrackElement? add_asset (GES.Asset asset); public unowned GES.TrackElement add_child_to_track (GES.TrackElement child, GES.Track track) throws GLib.Error; + [Version (since = "1.18")] + public bool add_top_effect (GES.BaseEffect effect, int index) throws GLib.Error; [NoWrapper] public virtual unowned GES.TrackElement? create_track_element (GES.TrackType type); [NoWrapper] public virtual GLib.List create_track_elements (GES.TrackType type); public GES.TrackElement? find_track_element (GES.Track? track, GLib.Type type); public GLib.List find_track_elements (GES.Track? track, GES.TrackType track_type, GLib.Type type); + [Version (since = "1.18")] public Gst.ClockTime get_duration_limit (); + [Version (since = "1.18")] + public Gst.ClockTime get_internal_time_from_timeline_time (GES.TrackElement child, Gst.ClockTime timeline_time) throws GLib.Error; public GES.Layer? get_layer (); public GES.TrackType get_supported_formats (); + public Gst.ClockTime get_timeline_time_from_internal_time (GES.TrackElement child, Gst.ClockTime internal_time) throws GLib.Error; + [Version (since = "1.18")] public Gst.ClockTime get_timeline_time_from_source_frame (GES.FrameNumber frame_number) throws GLib.Error; public int get_top_effect_index (GES.BaseEffect effect); public int get_top_effect_position (GES.BaseEffect effect); public GLib.List get_top_effects (); public bool move_to_layer (GES.Layer layer); + [Version (since = "1.18")] + public bool move_to_layer_full (GES.Layer layer) throws GLib.Error; + [Version (since = "1.18")] + public bool remove_top_effect (GES.BaseEffect effect) throws GLib.Error; public void set_supported_formats (GES.TrackType supportedformats); public bool set_top_effect_index (GES.BaseEffect effect, uint newindex); + [Version (since = "1.18")] + public bool set_top_effect_index_full (GES.BaseEffect effect, uint newindex) throws GLib.Error; public bool set_top_effect_priority (GES.BaseEffect effect, uint newpriority); public unowned GES.Clip? split (uint64 position); + [Version (since = "1.18")] + public unowned GES.Clip? split_full (uint64 position) throws GLib.Error; public uint64 duration_limit { get; } public GES.Layer layer { owned get; } public GES.TrackType supported_formats { get; set construct; } @@ -225,7 +246,11 @@ namespace GES { [CCode (has_construct_function = false)] public Layer (); public unowned GES.Clip add_asset (GES.Asset asset, Gst.ClockTime start, Gst.ClockTime inpoint, Gst.ClockTime duration, GES.TrackType track_types); + [Version (since = "1.18")] + public unowned GES.Clip add_asset_full (GES.Asset asset, Gst.ClockTime start, Gst.ClockTime inpoint, Gst.ClockTime duration, GES.TrackType track_types) throws GLib.Error; public bool add_clip (GES.Clip clip); + [Version (since = "1.18")] + public bool add_clip_full (GES.Clip clip) throws GLib.Error; public bool get_active_for_track (GES.Track track); public bool get_auto_transition (); public GLib.List get_clips (); @@ -372,6 +397,9 @@ namespace GES { public class SourceClip : GES.Clip, GES.Extractable, GES.MetaContainer { [CCode (has_construct_function = false)] protected SourceClip (); + [CCode (has_construct_function = false)] + [Version (since = "1.18")] + public SourceClip.time_overlay (); } [CCode (cheader_filename = "ges/ges.h", type_id = "ges_source_clip_asset_get_type ()")] public class SourceClipAsset : GES.ClipAsset, GES.MetaContainer, GLib.AsyncInitable, GLib.Initable { @@ -512,6 +540,8 @@ namespace GES { public virtual void deep_copy (GES.TimelineElement copy); [Version (since = "1.18")] public bool edit (GLib.List? layers, int64 new_layer_priority, GES.EditMode mode, GES.Edge edge, uint64 position); + [Version (since = "1.18")] + public bool edit_full (int64 new_layer_priority, GES.EditMode mode, GES.Edge edge, uint64 position) throws GLib.Error; public bool get_child_property (string property_name, out GLib.Value value); public GLib.Value get_child_property_by_pspec (GLib.ParamSpec pspec); public Gst.ClockTime get_duration (); @@ -542,6 +572,8 @@ namespace GES { [NoWrapper] public virtual void set_child_property (GLib.Object child, GLib.ParamSpec pspec, GLib.Value value); public void set_child_property_by_pspec (GLib.ParamSpec pspec, GLib.Value value); + [NoWrapper] + public virtual bool set_child_property_full (GLib.Object child, GLib.ParamSpec pspec, GLib.Value value) throws GLib.Error; public virtual bool set_duration (Gst.ClockTime duration); public virtual bool set_inpoint (Gst.ClockTime inpoint); public virtual bool set_max_duration (Gst.ClockTime maxduration); @@ -653,6 +685,8 @@ namespace GES { [CCode (has_construct_function = false)] public Track (GES.TrackType type, owned Gst.Caps caps); public bool add_element (GES.TrackElement object); + [Version (since = "1.18")] + public bool add_element_full (GES.TrackElement object) throws GLib.Error; public bool commit (); public unowned Gst.Caps get_caps (); public GLib.List get_elements (); @@ -661,6 +695,8 @@ namespace GES { public Gst.Caps get_restriction_caps (); public unowned GES.Timeline? get_timeline (); public bool remove_element (GES.TrackElement object); + [Version (since = "1.18")] + public bool remove_element_full (GES.TrackElement object) throws GLib.Error; public void set_mixing (bool mixing); public void set_restriction_caps (Gst.Caps caps); public void set_timeline (GES.Timeline timeline); @@ -688,9 +724,13 @@ namespace GES { public void add_children_props (Gst.Element element, [CCode (array_length = false, array_null_terminated = true)] string[]? wanted_categories, [CCode (array_length = false, array_null_terminated = true)] string[]? blacklist, [CCode (array_length = false, array_null_terminated = true)] string[]? whitelist); [NoWrapper] public virtual void changed (); + [Version (since = "1.18")] + public void clamp_control_source (string property_name); [Version (deprecated = true, deprecated_since = "1.18")] public bool edit (GLib.List? layers, GES.EditMode mode, GES.Edge edge, uint64 position); public unowned GLib.HashTable get_all_control_bindings (); + [Version (since = "1.18")] + public bool get_auto_clamp_control_sources (); public unowned Gst.ControlBinding? get_control_binding (string property_name); public unowned Gst.Element get_element (); [Version (deprecated = true)] @@ -700,6 +740,7 @@ namespace GES { public unowned GES.Track? get_track (); public GES.TrackType get_track_type (); public bool is_active (); + [Version (since = "1.18")] public bool is_core (); [CCode (array_length_pos = 0.1, array_length_type = "guint")] [Version (deprecated = true)] @@ -708,11 +749,14 @@ namespace GES { public virtual bool lookup_child (string prop_name, out Gst.Element element, out GLib.ParamSpec pspec); public bool remove_control_binding (string property_name); public bool set_active (bool active); + [Version (since = "1.18")] + public void set_auto_clamp_control_sources (bool auto_clamp); public bool set_control_source (Gst.ControlSource source, string property_name, string binding_type); public void set_has_internal_source (bool has_internal_source); public void set_track_type (GES.TrackType type); [NoAccessorMethod] public bool active { get; set; } + public bool auto_clamp_control_sources { get; set; } [NoAccessorMethod] public bool has_internal_source { get; set; } public GES.Track track { get; } @@ -802,8 +846,6 @@ namespace GES { protected VideoTestSource (); public GES.VideoTestPattern get_pattern (); public void set_pattern (GES.VideoTestPattern pattern); - [NoAccessorMethod] - public bool use_time_overlay { get; set; } } [CCode (cheader_filename = "ges/ges.h", type_id = "ges_video_track_get_type ()")] public class VideoTrack : GES.Track, GES.MetaContainer, Gst.ChildProxy { @@ -940,6 +982,7 @@ namespace GES { [CCode (cname = "GES_EDIT_MODE_SLIDE")] EDIT_SLIDE, SLIDE; + [Version (since = "1.18")] public unowned string name (); } [CCode (cheader_filename = "ges/ges.h", cprefix = "GES_ERROR_", has_type_id = false)] @@ -947,7 +990,11 @@ namespace GES { ASSET_WRONG_ID, ASSET_LOADING, FORMATTER_MALFORMED_INPUT_FILE, - INVALID_FRAME_NUMBER + INVALID_FRAME_NUMBER, + NEGATIVE_LAYER, + NEGATIVE_TIME, + NOT_ENOUGH_INTERNAL_CONTENT, + INVALID_OVERLAP_IN_TRACK } [CCode (cheader_filename = "ges/ges.h", cprefix = "GES_META_", type_id = "ges_meta_flag_get_type ()")] [Flags] @@ -1107,6 +1154,9 @@ namespace GES { [CCode (cname = "GES_VIDEO_TEST_PATTERN_SOLID")] SOLID_COLOR } + [CCode (cheader_filename = "ges/ges.h", instance_pos = 3.9)] + [Version (since = "1.18")] + public delegate Gst.ClockTime BaseEffectTimeTranslationFunc (GES.BaseEffect effect, Gst.ClockTime time, GLib.HashTable time_property_values); [CCode (cheader_filename = "ges/ges.h", has_target = false)] public delegate unowned GES.TrackElement? CreateTrackElementFunc (GES.Clip clip, GES.TrackType type); [CCode (cheader_filename = "ges/ges.h", has_target = false)] diff --git a/vapi/gstreamer-1.0.vapi b/vapi/gstreamer-1.0.vapi index c6d5a39c6..62f7e8350 100644 --- a/vapi/gstreamer-1.0.vapi +++ b/vapi/gstreamer-1.0.vapi @@ -1970,6 +1970,10 @@ namespace Gst { [Version (since = "1.14")] public PadTemplate.from_static_pad_template_with_gtype (Gst.StaticPadTemplate pad_template, GLib.Type pad_type); public Gst.Caps get_caps (); + [Version (since = "1.18")] + public Gst.Caps get_documentation_caps (); + [Version (since = "1.18")] + public void set_documentation_caps (Gst.Caps caps); [CCode (has_construct_function = false)] [Version (since = "1.14")] public PadTemplate.with_gtype (string name_template, Gst.PadDirection direction, Gst.PadPresence presence, Gst.Caps caps, GLib.Type pad_type); @@ -2112,9 +2116,9 @@ namespace Gst { [CCode (has_construct_function = false)] public Promise (); public void expire (); - public unowned Gst.Structure get_reply (); + public unowned Gst.Structure? get_reply (); public void interrupt (); - public void reply (owned Gst.Structure s); + public void reply (owned Gst.Structure? s); public Gst.PromiseResult wait (); [CCode (has_construct_function = false)] public Promise.with_change_func (owned Gst.PromiseChangeFunc func); @@ -3495,6 +3499,12 @@ namespace Gst { FIXED_CLOCK, LAST } + [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_API_FLAG_IGNORE_ENUM_", type_id = "gst_plugin_api_flags_get_type ()")] + [Flags] + [Version (since = "1.18")] + public enum PluginAPIFlags { + MEMBERS + } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_DEPENDENCY_FLAG_", type_id = "gst_plugin_dependency_flags_get_type ()")] [Flags] public enum PluginDependencyFlags { @@ -4182,6 +4192,12 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static void tracing_register_hook (Gst.Tracer tracer, string detail, [CCode (scope = "async")] GLib.Callback func); [CCode (cheader_filename = "gst/gst.h")] + [Version (since = "1.18")] + public static bool type_is_plugin_api (GLib.Type type, out Gst.PluginAPIFlags? flags); + [CCode (cheader_filename = "gst/gst.h")] + [Version (since = "1.18")] + public static void type_mark_as_plugin_api (GLib.Type type, Gst.PluginAPIFlags flags); + [CCode (cheader_filename = "gst/gst.h")] public static bool update_registry (); [CCode (cheader_filename = "gst/gst.h")] public static void version (out uint major, out uint minor, out uint micro, out uint nano); diff --git a/vapi/gstreamer-audio-1.0.vapi b/vapi/gstreamer-audio-1.0.vapi index d1e690917..689d6f152 100644 --- a/vapi/gstreamer-audio-1.0.vapi +++ b/vapi/gstreamer-audio-1.0.vapi @@ -974,12 +974,18 @@ namespace Gst { public static GLib.Type audio_format_info_get_type (); [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_to_string")] public static unowned string audio_format_to_string (Gst.Audio.Format format); + [CCode (array_length_pos = 0.1, array_length_type = "guint", cheader_filename = "gst/audio/audio.h", cname = "gst_audio_formats_raw")] + [Version (since = "1.18")] + public static unowned Gst.Audio.Format[] audio_formats_raw (); [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_get_channel_reorder_map")] public static bool audio_get_channel_reorder_map ([CCode (array_length_cname = "channels", array_length_pos = 0.5)] Gst.Audio.ChannelPosition[] from, [CCode (array_length_cname = "channels", array_length_pos = 0.5)] Gst.Audio.ChannelPosition[] to, [CCode (array_length_cname = "channels", array_length_pos = 0.5)] int[] reorder_map); [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_iec61937_frame_size")] public static uint audio_iec61937_frame_size (Gst.Audio.RingBufferSpec spec); [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_iec61937_payload")] public static bool audio_iec61937_payload ([CCode (array_length_cname = "src_n", array_length_pos = 1.5, array_length_type = "guint")] uint8[] src, [CCode (array_length_cname = "dst_n", array_length_pos = 2.5, array_length_type = "guint")] uint8[] dst, Gst.Audio.RingBufferSpec spec, int endianness); + [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_make_raw_caps")] + [Version (since = "1.18")] + public static Gst.Caps audio_make_raw_caps ([CCode (array_length_cname = "len", array_length_pos = 1.5, array_length_type = "guint")] Gst.Audio.Format[]? formats, Gst.Audio.Layout layout); [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_meta_api_get_type")] public static GLib.Type audio_meta_api_get_type (); [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_meta_get_info")] diff --git a/vapi/gstreamer-base-1.0.vapi b/vapi/gstreamer-base-1.0.vapi index 4e413fc74..0f9d4c3b0 100644 --- a/vapi/gstreamer-base-1.0.vapi +++ b/vapi/gstreamer-base-1.0.vapi @@ -115,6 +115,8 @@ namespace Gst { public uint64 min_upstream_latency { get; set; } [NoAccessorMethod] public uint64 start_time { get; set; } + [NoAccessorMethod] + public Gst.Base.AggregatorStartTimeSelection start_time_selection { get; set; } } [CCode (cheader_filename = "gst/base/base.h", cname = "GstAggregatorPad", lower_case_cprefix = "gst_aggregator_pad_", type_id = "gst_aggregator_pad_get_type ()")] [GIR (name = "AggregatorPad")] @@ -890,6 +892,17 @@ namespace Gst { [CCode (cname = "ABI.abi.dts")] public int64 ABI_abi_dts; } + [CCode (cheader_filename = "gst/base/base.h", cname = "GstAggregatorStartTimeSelection", cprefix = "", type_id = "gst_aggregator_start_time_selection_get_type ()")] + [GIR (name = "AggregatorStartTimeSelection")] + [Version (since = "1.14")] + public enum AggregatorStartTimeSelection { + [CCode (cname = "Start at 0 running time (default)")] + ZERO, + [CCode (cname = "Start at first observed input running time")] + FIRST, + [CCode (cname = "Set start time with start-time property")] + SET + } [CCode (cheader_filename = "gst/base/base.h", cname = "GstCollectPadsStateFlags", cprefix = "GST_COLLECT_PADS_STATE_", has_type_id = false)] [Flags] [GIR (name = "CollectPadsStateFlags")] diff --git a/vapi/gstreamer-video-1.0.vapi b/vapi/gstreamer-video-1.0.vapi index 11887bb02..0298e556e 100644 --- a/vapi/gstreamer-video-1.0.vapi +++ b/vapi/gstreamer-video-1.0.vapi @@ -243,6 +243,8 @@ namespace Gst { public void get_latency (out Gst.ClockTime min_latency, out Gst.ClockTime max_latency); [Version (since = "1.14")] public Gst.ClockTimeDiff get_max_encode_time (Gst.Video.CodecFrame frame); + [Version (since = "1.18")] + public Gst.ClockTime get_min_force_key_unit_interval (); public Gst.Video.CodecFrame get_oldest_frame (); public Gst.Video.CodecState get_output_state (); [NoWrapper] @@ -266,6 +268,8 @@ namespace Gst { public virtual bool set_format (Gst.Video.CodecState state); public void set_headers (owned GLib.List headers); public void set_latency (Gst.ClockTime min_latency, Gst.ClockTime max_latency); + [Version (since = "1.18")] + public void set_min_force_key_unit_interval (Gst.ClockTime interval); [Version (since = "1.6")] public void set_min_pts (Gst.ClockTime min_pts); public Gst.Video.CodecState set_output_state (owned Gst.Caps caps, Gst.Video.CodecState? reference); @@ -285,6 +289,8 @@ namespace Gst { public virtual bool stop (); [NoWrapper] public virtual bool transform_meta (Gst.Video.CodecFrame frame, Gst.Meta meta); + [Version (since = "1.18")] + public uint64 min_force_key_unit_interval { get; set; } [NoAccessorMethod] public bool qos { get; set; } } @@ -1765,6 +1771,9 @@ namespace Gst { public static uint32 format_to_fourcc (Gst.Video.Format format); [CCode (cheader_filename = "gst/video/video.h")] public static unowned string format_to_string (Gst.Video.Format format); + [CCode (array_length_pos = 0.1, array_length_type = "guint", cheader_filename = "gst/video/video.h")] + [Version (since = "1.18")] + public static unowned Gst.Video.Format[] formats_raw (); [CCode (cheader_filename = "gst/video/video.h")] public static GLib.Type gl_texture_upload_meta_api_get_type (); [CCode (cheader_filename = "gst/video/video.h")] @@ -1782,6 +1791,12 @@ namespace Gst { public static bool is_video_overlay_prepare_window_handle_message (Gst.Message msg); [CCode (cheader_filename = "gst/video/video.h")] [Version (since = "1.18")] + public static Gst.Caps make_raw_caps ([CCode (array_length_cname = "len", array_length_pos = 1.1, array_length_type = "guint")] Gst.Video.Format[]? formats); + [CCode (cheader_filename = "gst/video/video.h")] + [Version (since = "1.18")] + public static Gst.Caps make_raw_caps_with_features ([CCode (array_length_cname = "len", array_length_pos = 1.5, array_length_type = "guint")] Gst.Video.Format[]? formats, owned Gst.CapsFeatures? features); + [CCode (cheader_filename = "gst/video/video.h")] + [Version (since = "1.18")] public static bool mastering_display_info_from_string (out Gst.Video.MasteringDisplayInfo minfo, string mastering); [CCode (cheader_filename = "gst/video/video.h")] public static GLib.Type meta_api_get_type (); diff --git a/vapi/gstreamer-webrtc-1.0.vapi b/vapi/gstreamer-webrtc-1.0.vapi index 32b070ca2..49dee853e 100644 --- a/vapi/gstreamer-webrtc-1.0.vapi +++ b/vapi/gstreamer-webrtc-1.0.vapi @@ -27,6 +27,55 @@ namespace Gst { [NoAccessorMethod] public Gst.WebRTCICETransport transport { owned get; } } + [CCode (cheader_filename = "gst/webrtc/webrtc.h", lower_case_csuffix = "webrtc_data_channel", type_id = "gst_webrtc_data_channel_get_type ()")] + [Version (since = "1.18")] + public abstract class WebRTCDataChannel : GLib.Object { + [CCode (array_length = false)] + public weak void* _padding[4]; + public GLib.Mutex @lock; + [CCode (has_construct_function = false)] + protected WebRTCDataChannel (); + [NoAccessorMethod] + public uint64 buffered_amount { get; } + [NoAccessorMethod] + public uint64 buffered_amount_low_threshold { get; set; } + [NoAccessorMethod] + public int id { get; construct; } + [NoAccessorMethod] + public string label { owned get; construct; } + [NoAccessorMethod] + public int max_packet_lifetime { get; construct; } + [NoAccessorMethod] + public int max_retransmits { get; construct; } + [NoAccessorMethod] + public bool negotiated { get; construct; } + [NoAccessorMethod] + public bool ordered { get; construct; } + [NoAccessorMethod] + public Gst.WebRTCPriorityType priority { get; construct; } + [NoAccessorMethod] + public string protocol { owned get; construct; } + [NoAccessorMethod] + public Gst.WebRTCDataChannelState ready_state { get; } + [HasEmitter] + public virtual signal void close (); + [HasEmitter] + public signal void on_buffered_amount_low (); + [HasEmitter] + public signal void on_close (); + [HasEmitter] + public signal void on_error (GLib.Error error); + [HasEmitter] + public signal void on_message_data (GLib.Bytes? data); + [HasEmitter] + public signal void on_message_string (string? str); + [HasEmitter] + public signal void on_open (); + [HasEmitter] + public virtual signal void send_data (GLib.Bytes? data); + [HasEmitter] + public virtual signal void send_string (string? str); + } [CCode (cheader_filename = "gst/webrtc/webrtc.h", lower_case_csuffix = "webrtc_ice_transport", type_id = "gst_webrtc_ice_transport_get_type ()")] public abstract class WebRTCICETransport : Gst.Object { [CCode (array_length = false)]