From: Rico Tzschichholz Date: Mon, 26 Oct 2015 15:36:25 +0000 (+0100) Subject: vapi: Update GIR-based bindings X-Git-Tag: 0.31.1~69 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cbd7b680395abcc5a2bea3d3f51455f247cd97c1;p=thirdparty%2Fvala.git vapi: Update GIR-based bindings --- diff --git a/vapi/gdk-3.0.vapi b/vapi/gdk-3.0.vapi index 2257088b5..dc1ea1a01 100644 --- a/vapi/gdk-3.0.vapi +++ b/vapi/gdk-3.0.vapi @@ -4615,7 +4615,7 @@ namespace Gdk { public bool get_has_cursor (); public bool get_history (Gdk.Window window, uint32 start, uint32 stop, [CCode (array_length_cname = "n_events", array_length_pos = 4.1)] out Gdk.TimeCoord[] events); public bool get_key (uint index_, out uint keyval, out Gdk.ModifierType modifiers); - public unowned Gdk.Window get_last_event_window (); + public unowned Gdk.Window? get_last_event_window (); public Gdk.InputMode get_mode (); public int get_n_axes (); public int get_n_keys (); @@ -5118,6 +5118,7 @@ namespace Gdk { public unowned Gdk.GLContext get_shared_context (); public void get_version (out int major, out int minor); public unowned Gdk.Window get_window (); + public bool is_legacy (); public void make_current (); public bool realize () throws GLib.Error; public void set_debug_enabled (bool enabled); diff --git a/vapi/gdk-pixbuf-2.0.vapi b/vapi/gdk-pixbuf-2.0.vapi index 28dac7a7d..e533a9756 100644 --- a/vapi/gdk-pixbuf-2.0.vapi +++ b/vapi/gdk-pixbuf-2.0.vapi @@ -248,7 +248,8 @@ namespace Gdk { BAD_OPTION, UNKNOWN_TYPE, UNSUPPORTED_OPERATION, - FAILED; + FAILED, + INCOMPLETE_ANIMATION; public static GLib.Quark quark (); } [CCode (cheader_filename = "gdk-pixbuf/gdk-pixbuf.h", instance_pos = 1.9)] diff --git a/vapi/gdl-3.0.vapi b/vapi/gdl-3.0.vapi index fc27098e3..4984d1796 100644 --- a/vapi/gdl-3.0.vapi +++ b/vapi/gdl-3.0.vapi @@ -12,7 +12,7 @@ namespace Gdl { public GLib.List get_named_items (); [Deprecated (since = "3.6")] public unowned Gdl.DockPlaceholder get_placeholder_by_name (string name); - public unowned Gdl.DockObject get_root (); + public unowned Gdl.DockObject? get_root (); public void hide_preview (); public Gtk.Widget new_from (bool floating); public void set_skip_taskbar (bool skip); @@ -61,7 +61,7 @@ namespace Gdl { public Gdl.DockItemBehavior get_behavior_flags (); public unowned Gtk.Widget get_child (); public void get_drag_area (Gdk.Rectangle rect); - public unowned Gtk.Widget get_grip (); + public unowned Gtk.Widget? get_grip (); public Gtk.Orientation get_orientation (); public unowned Gtk.Widget get_tablabel (); public void hide_grip (); @@ -157,7 +157,7 @@ namespace Gdl { public void foreach_toplevel (bool include_controller, GLib.Func function); public unowned Gdl.DockObject get_controller (); public string get_dock_name (); - public unowned Gdl.DockObject get_object (string nick_name); + public unowned Gdl.DockObject? get_object (string nick_name); public void remove (Gdl.DockObject object); public void set_controller (Gdl.DockObject new_controller); [NoAccessorMethod] @@ -192,10 +192,10 @@ namespace Gdl { public unowned Gdl.DockObject get_controller (); public unowned string get_long_name (); public unowned GLib.Object get_master (); - public unowned Gdl.DockObject get_parent_object (); + public unowned Gdl.DockObject? get_parent_object (); public unowned Gdk.Pixbuf get_pixbuf (); public unowned string get_stock_id (); - public unowned Gdl.Dock get_toplevel (); + public unowned Gdl.Dock? get_toplevel (); public bool is_automatic (); public bool is_bound (); public bool is_closed (); diff --git a/vapi/gio-2.0.vapi b/vapi/gio-2.0.vapi index fd251fae6..02089f6bb 100644 --- a/vapi/gio-2.0.vapi +++ b/vapi/gio-2.0.vapi @@ -34,7 +34,7 @@ namespace GLib { [CCode (cheader_filename = "gio/gio.h")] public static string get_description (string type); [CCode (cheader_filename = "gio/gio.h")] - public static string get_generic_icon_name (string type); + public static string? get_generic_icon_name (string type); [CCode (cheader_filename = "gio/gio.h")] public static GLib.Icon get_icon (string type); [CCode (cheader_filename = "gio/gio.h")] @@ -535,7 +535,7 @@ namespace GLib { public bool get_exit_on_close (); public unowned string get_guid (); public uint32 get_last_serial (); - public unowned GLib.Credentials get_peer_credentials (); + public unowned GLib.Credentials? get_peer_credentials (); public async T get_proxy (string? name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError; public T get_proxy_sync (string? name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError; public unowned GLib.IOStream get_stream (); @@ -1379,7 +1379,7 @@ namespace GLib { public abstract ssize_t read ([CCode (array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.IOError; public bool read_all ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, out size_t bytes_read, GLib.Cancellable? cancellable = null) throws GLib.IOError; public async bool read_all_async ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, int io_priority, GLib.Cancellable? cancellable, out size_t bytes_read) throws GLib.Error; - public virtual async ssize_t read_async ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError; + public virtual async ssize_t read_async ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[]? buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError; public GLib.Bytes read_bytes (size_t count, GLib.Cancellable? cancellable = null) throws GLib.Error; public async GLib.Bytes read_bytes_async (size_t count, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error; public bool set_pending () throws GLib.Error; @@ -1629,7 +1629,7 @@ namespace GLib { public abstract ssize_t write ([CCode (array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.IOError; public bool write_all ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, out size_t bytes_written, GLib.Cancellable? cancellable = null) throws GLib.IOError; public async bool write_all_async ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, int io_priority, GLib.Cancellable? cancellable, out size_t bytes_written) throws GLib.Error; - public virtual async ssize_t write_async ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError; + public virtual async ssize_t write_async ([CCode (array_length_cname = "count", array_length_pos = 1.5, array_length_type = "gsize")] uint8[]? buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError; public ssize_t write_bytes (GLib.Bytes bytes, GLib.Cancellable? cancellable = null) throws GLib.Error; public async ssize_t write_bytes_async (GLib.Bytes bytes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error; } @@ -1758,7 +1758,7 @@ namespace GLib { public void @get (string key, string format, ...); public bool get_boolean (string key); public GLib.Settings get_child (string name); - public GLib.Variant get_default_value (string key); + public GLib.Variant? get_default_value (string key); public double get_double (string key); public int get_enum (string key); public uint get_flags (string key); @@ -1771,7 +1771,7 @@ namespace GLib { [CCode (array_length = false, array_null_terminated = true)] public string[] get_strv (string key); public uint get_uint (string key); - public GLib.Variant get_user_value (string key); + public GLib.Variant? get_user_value (string key); public GLib.Variant get_value (string key); public bool is_writable (string name); [CCode (array_length = false, array_null_terminated = true)] @@ -1974,18 +1974,15 @@ namespace GLib { public string[] ignore_hosts { owned get; set; } } [CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_get_type ()")] - public class Socket : GLib.Object, GLib.Initable { + public class Socket : GLib.Object, GLib.DatagramBased, GLib.Initable { [CCode (has_construct_function = false)] public Socket (GLib.SocketFamily family, GLib.SocketType type, GLib.SocketProtocol protocol) throws GLib.Error; public GLib.Socket accept (GLib.Cancellable? cancellable = null) throws GLib.Error; public bool bind (GLib.SocketAddress address, bool allow_reuse) throws GLib.Error; public bool check_connect_result () throws GLib.Error; public bool close () throws GLib.Error; - public GLib.IOCondition condition_check (GLib.IOCondition condition); public bool condition_timed_wait (GLib.IOCondition condition, int64 timeout, GLib.Cancellable? cancellable = null) throws GLib.Error; - public bool condition_wait (GLib.IOCondition condition, GLib.Cancellable? cancellable = null) throws GLib.IOError; public bool connect (GLib.SocketAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error; - public GLib.SocketSource create_source (GLib.IOCondition condition, GLib.Cancellable? cancellable = null); [CCode (has_construct_function = false)] public Socket.from_fd (int fd) throws GLib.Error; public ssize_t get_available_bytes (); @@ -2016,7 +2013,6 @@ namespace GLib { public ssize_t receive_with_blocking ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, bool blocking, GLib.Cancellable? cancellable = null) throws GLib.Error; public ssize_t send ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error; public ssize_t send_message (GLib.SocketAddress? address, [CCode (array_length_cname = "num_vectors", array_length_pos = 2.5)] GLib.OutputVector[] vectors, [CCode (array_length_cname = "num_messages", array_length_pos = 3.5)] GLib.SocketControlMessage[]? messages, int flags, GLib.Cancellable? cancellable = null) throws GLib.Error; - public int send_messages ([CCode (array_length_cname = "num_messages", array_length_pos = 1.5, array_length_type = "guint")] GLib.OutputMessage[] messages, int flags, GLib.Cancellable? cancellable = null) throws GLib.Error; public ssize_t send_to (GLib.SocketAddress? address, [CCode (array_length_cname = "size", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error; public ssize_t send_with_blocking ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, bool blocking, GLib.Cancellable? cancellable = null) throws GLib.Error; public void set_blocking (bool blocking); @@ -2287,7 +2283,7 @@ namespace GLib { public TestDBus (GLib.TestDBusFlags flags); public void add_service_dir (string path); public void down (); - public unowned string get_bus_address (); + public unowned string? get_bus_address (); public GLib.TestDBusFlags get_flags (); public void stop (); public static void unset (); @@ -2387,7 +2383,7 @@ namespace GLib { [CCode (has_construct_function = false)] protected TlsDatabase (); public virtual string? create_certificate_handle (GLib.TlsCertificate certificate); - public virtual GLib.TlsCertificate lookup_certificate_for_handle (string handle, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error; + public virtual GLib.TlsCertificate? lookup_certificate_for_handle (string handle, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error; public virtual async GLib.TlsCertificate lookup_certificate_for_handle_async (string handle, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error; public virtual GLib.TlsCertificate lookup_certificate_issuer (GLib.TlsCertificate certificate, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error; public virtual async GLib.TlsCertificate lookup_certificate_issuer_async (GLib.TlsCertificate certificate, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error; @@ -2519,10 +2515,10 @@ namespace GLib { public abstract void change_state (GLib.Variant value); public abstract bool get_enabled (); public abstract unowned string get_name (); - public abstract unowned GLib.VariantType get_parameter_type (); + public abstract unowned GLib.VariantType? get_parameter_type (); public abstract GLib.Variant get_state (); public abstract GLib.Variant? get_state_hint (); - public abstract unowned GLib.VariantType get_state_type (); + public abstract unowned GLib.VariantType? get_state_type (); public static bool name_is_valid (string action_name); public static bool parse_detailed_name (string detailed_name, out string action_name, out GLib.Variant target_value) throws GLib.Error; public static string print_detailed_name (string action_name, GLib.Variant? target_value); @@ -2617,7 +2613,7 @@ namespace GLib { } [CCode (cheader_filename = "gio/gio.h", type_id = "g_converter_get_type ()")] public interface Converter : GLib.Object { - public abstract GLib.ConverterResult convert ([CCode (array_length_cname = "inbuf_size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] inbuf, [CCode (array_length_cname = "outbuf_size", array_length_pos = 2.5, array_length_type = "gsize", type = "void*")] uint8[] outbuf, GLib.ConverterFlags flags, out size_t bytes_read, out size_t bytes_written) throws GLib.Error; + public abstract GLib.ConverterResult convert ([CCode (array_length_cname = "inbuf_size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[]? inbuf, [CCode (array_length_cname = "outbuf_size", array_length_pos = 2.5, array_length_type = "gsize", type = "void*")] uint8[] outbuf, GLib.ConverterFlags flags, out size_t bytes_read, out size_t bytes_written) throws GLib.Error; public abstract void reset (); } [CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_interface_get_type ()")] @@ -2646,6 +2642,14 @@ namespace GLib { public virtual signal void object_added (GLib.DBusObject object); public virtual signal void object_removed (GLib.DBusObject object); } + [CCode (cheader_filename = "gio/gio.h", type_cname = "GDatagramBasedInterface", type_id = "g_datagram_based_get_type ()")] + public interface DatagramBased : GLib.Object { + public abstract GLib.IOCondition condition_check (GLib.IOCondition condition); + public abstract bool condition_wait (GLib.IOCondition condition, int64 timeout, GLib.Cancellable? cancellable = null) throws GLib.Error; + public abstract GLib.Source create_source (GLib.IOCondition condition, GLib.Cancellable? cancellable = null); + public abstract int receive_messages ([CCode (array_length_cname = "num_messages", array_length_pos = 1.5, array_length_type = "guint")] GLib.InputMessage[] messages, int flags, int64 timeout, GLib.Cancellable? cancellable = null) throws GLib.Error; + public abstract int send_messages ([CCode (array_length_cname = "num_messages", array_length_pos = 1.5, array_length_type = "guint")] GLib.OutputMessage[] messages, int flags, int64 timeout, GLib.Cancellable? cancellable = null) throws GLib.Error; + } [CCode (cheader_filename = "gio/gio.h", type_id = "g_drive_get_type ()")] public interface Drive : GLib.Object { public abstract bool can_eject (); @@ -2882,7 +2886,7 @@ namespace GLib { public abstract bool can_poll (); public abstract GLib.PollableSource create_source (GLib.Cancellable? cancellable = null); public abstract bool is_writable (); - public abstract ssize_t write_nonblocking ([CCode (array_length_cname = "count", array_length_pos = 1.1, array_length_type = "gsize")] uint8[] buffer) throws GLib.Error; + public abstract ssize_t write_nonblocking ([CCode (array_length_cname = "count", array_length_pos = 1.1, array_length_type = "gsize")] uint8[]? buffer) throws GLib.Error; } [CCode (cheader_filename = "gio/gio.h", type_cname = "GProxyInterface", type_id = "g_proxy_get_type ()")] public interface Proxy : GLib.Object { @@ -2918,6 +2922,7 @@ namespace GLib { public interface SocketConnectable : GLib.Object { public abstract GLib.SocketAddressEnumerator enumerate (); public abstract GLib.SocketAddressEnumerator proxy_enumerate (); + public abstract string to_string (); } [CCode (cheader_filename = "gio/gio.h", type_cname = "GTlsBackendInterface", type_id = "g_tls_backend_get_type ()")] public interface TlsBackend : GLib.Object { @@ -3023,6 +3028,18 @@ namespace GLib { public GLib.FileAttributeInfoFlags flags; } [CCode (cheader_filename = "gio/gio.h", has_type_id = false)] + public struct InputMessage { + public weak GLib.SocketAddress address; + [CCode (array_length = false, array_null_terminated = true)] + public weak GLib.InputVector[] vectors; + public uint num_vectors; + public size_t bytes_received; + public int flags; + [CCode (array_length = false, array_null_terminated = true)] + public weak GLib.SocketControlMessage[] control_messages; + public uint num_control_messages; + } + [CCode (cheader_filename = "gio/gio.h", has_type_id = false)] public struct InputVector { public void* buffer; public size_t size; @@ -3701,7 +3718,8 @@ namespace GLib { PROXY_NOT_ALLOWED, BROKEN_PIPE, CONNECTION_CLOSED, - NOT_CONNECTED; + NOT_CONNECTED, + MESSAGE_TOO_LARGE; [CCode (cheader_filename = "gio/gio.h")] public static unowned GLib.IOError from_errno (int err_no); [CCode (cheader_filename = "gio/gio.h")] @@ -3753,7 +3771,7 @@ namespace GLib { [CCode (cheader_filename = "gio/gio.h", instance_pos = 7.9)] public delegate bool DBusInterfaceSetPropertyFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string property_name, GLib.Variant value) throws GLib.Error; [CCode (cheader_filename = "gio/gio.h", instance_pos = 3.9)] - public delegate GLib.DBusMessage DBusMessageFilterFunction (GLib.DBusConnection connection, owned GLib.DBusMessage message, bool incoming); + public delegate GLib.DBusMessage? DBusMessageFilterFunction (GLib.DBusConnection connection, owned GLib.DBusMessage message, bool incoming); [CCode (cheader_filename = "gio/gio.h", instance_pos = 3.9)] public delegate GLib.Type DBusProxyTypeFunc (GLib.DBusObjectManagerClient manager, string object_path, string? interface_name); [CCode (cheader_filename = "gio/gio.h", instance_pos = 6.9)] @@ -3764,6 +3782,8 @@ namespace GLib { public delegate string[] DBusSubtreeEnumerateFunc (GLib.DBusConnection connection, string sender, string object_path); [CCode (cheader_filename = "gio/gio.h", instance_pos = 4.9)] public delegate GLib.DBusInterfaceInfo DBusSubtreeIntrospectFunc (GLib.DBusConnection connection, string sender, string object_path, string node); + [CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)] + public delegate bool DatagramBasedSourceFunc (GLib.DatagramBased datagram_based, GLib.IOCondition condition); [CCode (cheader_filename = "gio/gio.h", instance_pos = 4.9)] public delegate void FileMeasureProgressCallback (bool reporting, uint64 current_size, uint64 num_dirs, uint64 num_files); [CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)] diff --git a/vapi/gobject-introspection-1.0.vapi b/vapi/gobject-introspection-1.0.vapi index d94a468f7..e65027a3c 100644 --- a/vapi/gobject-introspection-1.0.vapi +++ b/vapi/gobject-introspection-1.0.vapi @@ -269,6 +269,7 @@ namespace GI { public class VFuncInfo : GI.BaseInfo { [CCode (has_construct_function = false)] protected VFuncInfo (); + public static void* get_address (GI.VFuncInfo info, GLib.Type implementor_gtype) throws GLib.Error; public static GI.VFuncInfoFlags get_flags (GI.VFuncInfo info); public static GI.FunctionInfo get_invoker (GI.VFuncInfo info); public static int get_offset (GI.VFuncInfo info); diff --git a/vapi/gstreamer-1.0.vapi b/vapi/gstreamer-1.0.vapi index 1e246d644..77f569e6c 100644 --- a/vapi/gstreamer-1.0.vapi +++ b/vapi/gstreamer-1.0.vapi @@ -13,6 +13,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static void add_log_function (owned Gst.LogFunction func); [CCode (cheader_filename = "gst/gst.h")] + public static string bin_to_dot_data (Gst.Bin bin, Gst.DebugGraphDetails details); + [CCode (cheader_filename = "gst/gst.h")] public static void bin_to_dot_file (Gst.Bin bin, Gst.DebugGraphDetails details, string file_name); [CCode (cheader_filename = "gst/gst.h")] public static void bin_to_dot_file_with_ts (Gst.Bin bin, Gst.DebugGraphDetails details, string file_name); @@ -36,7 +38,7 @@ namespace Gst { [PrintfFormat] public static void log (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, string format, ...); [CCode (cheader_filename = "gst/gst.h")] - public static void log_default (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, Gst.DebugMessage message, void* unused = null); + public static void log_default (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, Gst.DebugMessage message, void* user_data = null); [CCode (cheader_filename = "gst/gst.h")] public static void log_valist (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, string format, va_list args); [CCode (cheader_filename = "gst/gst.h")] @@ -65,12 +67,16 @@ namespace Gst { namespace ElementFactoryKlass { [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DECODER")] public const string DECODER; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DECRYPTOR")] + public const string DECRYPTOR; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DEMUXER")] public const string DEMUXER; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER")] public const string DEPAYLOADER; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_ENCODER")] public const string ENCODER; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_ENCRYPTOR")] + public const string ENCRYPTOR; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_FORMATTER")] public const string FORMATTER; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO")] @@ -105,12 +111,16 @@ namespace Gst { public const int DECODABLE; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DECODER")] public const int DECODER; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DECRYPTOR")] + public const int DECRYPTOR; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DEMUXER")] public const int DEMUXER; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER")] public const int DEPAYLOADER; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_ENCODER")] public const int ENCODER; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR")] + public const int ENCRYPTOR; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_FORMATTER")] public const int FORMATTER; [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS")] @@ -336,6 +346,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static GLib.Quark error_quark (); [CCode (cheader_filename = "gst/gst.h")] + public static Gst.Uri? from_string (string uri); + [CCode (cheader_filename = "gst/gst.h")] public static string get_location (string uri); [CCode (cheader_filename = "gst/gst.h")] public static string get_protocol (string uri); @@ -344,6 +356,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static bool is_valid (string uri); [CCode (cheader_filename = "gst/gst.h")] + public static string join_strings (string base_uri, string ref_uri); + [CCode (cheader_filename = "gst/gst.h")] public static bool protocol_is_supported (Gst.URIType type, string protocol); [CCode (cheader_filename = "gst/gst.h")] public static bool protocol_is_valid (string protocol); @@ -426,6 +440,10 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static double get_double_range_min (GLib.Value value); [CCode (cheader_filename = "gst/gst.h")] + public static uint get_flagset_flags (GLib.Value value); + [CCode (cheader_filename = "gst/gst.h")] + public static uint get_flagset_mask (GLib.Value value); + [CCode (cheader_filename = "gst/gst.h")] public static int get_fraction_denominator (GLib.Value value); [CCode (cheader_filename = "gst/gst.h")] public static int get_fraction_numerator (GLib.Value value); @@ -468,6 +486,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static void set_double_range (GLib.Value value, double start, double end); [CCode (cheader_filename = "gst/gst.h")] + public static void set_flagset (GLib.Value value, uint flags, uint mask); + [CCode (cheader_filename = "gst/gst.h")] public static void set_fraction (GLib.Value value, int numerator, int denominator); [CCode (cheader_filename = "gst/gst.h")] public static void set_fraction_range (GLib.Value value, GLib.Value start, GLib.Value end); @@ -503,9 +523,12 @@ namespace Gst { public abstract class Allocator : Gst.Object { public weak Gst.MemoryCopyFunction mem_copy; public weak Gst.MemoryIsSpanFunction mem_is_span; + public weak Gst.MemoryMapFunction mem_map; + public weak Gst.MemoryMapFullFunction mem_map_full; public weak Gst.MemoryShareFunction mem_share; public weak string mem_type; public weak Gst.MemoryUnmapFunction mem_unmap; + public weak Gst.MemoryUnmapFullFunction mem_unmap_full; [CCode (has_construct_function = false)] protected Allocator (); public virtual Gst.Memory alloc (size_t size, Gst.AllocationParams? @params); @@ -561,6 +584,7 @@ namespace Gst { [NoWrapper] public virtual bool remove_element (Gst.Element element); public void remove_many (params Gst.Element[] elements); + public bool sync_children_states (); [NoAccessorMethod] public bool async_handling { get; set; } [NoAccessorMethod] @@ -586,11 +610,14 @@ namespace Gst { [CCode (has_construct_function = false)] public Buffer (); public unowned Gst.Meta? add_meta (Gst.MetaInfo info, void* @params); + public unowned Gst.ParentBufferMeta? add_parent_buffer_meta (Gst.Buffer @ref); + public unowned Gst.ProtectionMeta? add_protection_meta (owned Gst.Structure info); [CCode (has_construct_function = false)] public Buffer.allocate (Gst.Allocator? allocator, size_t size, Gst.AllocationParams? @params); public Gst.Buffer append (owned Gst.Buffer buf2); public void append_memory (owned Gst.Memory mem); public Gst.Buffer append_region (owned Gst.Buffer buf2, ssize_t offset, ssize_t size); + public Gst.Buffer copy_deep (); public bool copy_into (Gst.Buffer src, Gst.BufferCopyFlags flags, size_t offset, size_t size); public Gst.Buffer copy_region (Gst.BufferCopyFlags flags, size_t offset, size_t size); public size_t extract (size_t offset, void* dest, size_t size); @@ -638,6 +665,7 @@ namespace Gst { public class BufferList : Gst.MiniObject { [CCode (has_construct_function = false)] public BufferList (); + public Gst.BufferList copy_deep (); public bool @foreach (Gst.BufferListFunc func); public unowned Gst.Buffer? @get (uint idx); public void insert (int idx, owned Gst.Buffer buffer); @@ -655,7 +683,7 @@ namespace Gst { [NoWrapper] public virtual Gst.FlowReturn alloc_buffer (Gst.Buffer buffer, Gst.BufferPoolAcquireParams @params); public static void config_add_option (Gst.Structure config, string option); - public static bool config_get_allocator (Gst.Structure config, Gst.Allocator allocator, Gst.AllocationParams @params); + public static bool config_get_allocator (Gst.Structure config, out unowned Gst.Allocator allocator, out unowned Gst.AllocationParams @params); public static unowned string config_get_option (Gst.Structure config, uint index); public static bool config_get_params (Gst.Structure config, out unowned Gst.Caps caps, out uint size, out uint min_buffers, out uint max_buffers); public static bool config_has_option (Gst.Structure config, string option); @@ -704,6 +732,7 @@ namespace Gst { public Gst.Message? pop_filtered (Gst.MessageType types); public bool post (owned Gst.Message message); public void remove_signal_watch (); + public bool remove_watch (); public void set_flushing (bool flushing); public void set_sync_handler (owned Gst.BusSyncHandler? func); public Gst.BusSyncReply sync_signal_handler (Gst.Message message, void* data); @@ -727,7 +756,9 @@ namespace Gst { public Caps.empty (); [CCode (has_construct_function = false)] public Caps.empty_simple (string media_type); + public void filter_and_map_in_place (Gst.CapsFilterMapFunc func); public Gst.Caps fixate (); + public bool @foreach (Gst.CapsForeachFunc func); public static Gst.Caps from_string (string string); [CCode (has_construct_function = false)] public Caps.full (params Gst.Structure[] structure); @@ -748,6 +779,7 @@ namespace Gst { public bool is_subset (Gst.Caps superset); public bool is_subset_structure (Gst.Structure structure); public bool is_subset_structure_full (Gst.Structure structure, Gst.CapsFeatures? features); + public bool map_in_place (Gst.CapsMapFunc func); public Gst.Caps merge (owned Gst.Caps caps2); public Gst.Caps merge_structure (owned Gst.Structure structure); public Gst.Caps merge_structure_full (owned Gst.Structure structure, owned Gst.CapsFeatures? features); @@ -800,7 +832,9 @@ namespace Gst { [CCode (has_construct_function = false)] protected Clock (); public bool add_observation (Gst.ClockTime slave, Gst.ClockTime master, out double r_squared); + public bool add_observation_unapplied (Gst.ClockTime slave, Gst.ClockTime master, out double r_squared, out Gst.ClockTime @internal, out Gst.ClockTime external, out Gst.ClockTime rate_num, out Gst.ClockTime rate_denom); public Gst.ClockTime adjust_unlocked (Gst.ClockTime @internal); + public Gst.ClockTime adjust_with_calibration (Gst.ClockTime internal_target, Gst.ClockTime cinternal, Gst.ClockTime cexternal, Gst.ClockTime cnum, Gst.ClockTime cdenom); [NoWrapper] public virtual Gst.ClockTime change_resolution (Gst.ClockTime old_resolution, Gst.ClockTime new_resolution); public void get_calibration (out Gst.ClockTime @internal, out Gst.ClockTime external, out Gst.ClockTime rate_num, out Gst.ClockTime rate_denom); @@ -816,12 +850,14 @@ namespace Gst { public static void id_unschedule (Gst.ClockID id); public static Gst.ClockReturn id_wait (Gst.ClockID id, out Gst.ClockTimeDiff jitter); public static Gst.ClockReturn id_wait_async (Gst.ClockID id, owned Gst.ClockCallback func); + public bool is_synced (); public Gst.ClockID new_periodic_id (Gst.ClockTime start_time, Gst.ClockTime interval); public Gst.ClockID new_single_shot_id (Gst.ClockTime time); public bool periodic_id_reinit (Gst.ClockID id, Gst.ClockTime start_time, Gst.ClockTime interval); public void set_calibration (Gst.ClockTime @internal, Gst.ClockTime external, Gst.ClockTime rate_num, Gst.ClockTime rate_denom); public bool set_master (Gst.Clock? master); public Gst.ClockTime set_resolution (Gst.ClockTime resolution); + public void set_synced (bool synced); public void set_timeout (Gst.ClockTime timeout); public bool single_shot_id_reinit (Gst.ClockID id, Gst.ClockTime time); public Gst.ClockTime unadjust_unlocked (Gst.ClockTime external); @@ -831,11 +867,13 @@ namespace Gst { public virtual Gst.ClockReturn wait (Gst.ClockEntry entry, Gst.ClockTimeDiff jitter); [NoWrapper] public virtual Gst.ClockReturn wait_async (Gst.ClockEntry entry); + public bool wait_for_sync (Gst.ClockTime timeout); public uint64 timeout { get; set; } [NoAccessorMethod] public int window_size { get; set; } [NoAccessorMethod] public int window_threshold { get; set; } + public signal void synced (bool synced); } [CCode (cheader_filename = "gst/gst.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_context_get_type ()")] [Compact] @@ -927,12 +965,14 @@ namespace Gst { public Gst.Caps get_caps (); public string get_device_class (); public string get_display_name (); + public Gst.Structure get_properties (); public bool has_classes (string classes); public bool has_classesv ([CCode (array_length = false, array_null_terminated = true)] string[] classes); public virtual bool reconfigure_element (Gst.Element element); public Gst.Caps caps { owned get; construct; } public string device_class { owned get; construct; } public string display_name { owned get; construct; } + public Gst.Structure properties { owned get; construct; } public signal void removed (); } [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_monitor_get_type ()")] @@ -942,9 +982,15 @@ namespace Gst { public uint add_filter (string? classes, Gst.Caps? caps); public Gst.Bus get_bus (); public GLib.List get_devices (); + [CCode (array_length = false, array_null_terminated = true)] + public string[] get_providers (); + public bool get_show_all_devices (); public bool remove_filter (uint filter_id); + public void set_show_all_devices (bool show_all); public bool start (); public void stop (); + [NoAccessorMethod] + public bool show_all { get; set; } } [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_provider_get_type ()")] public abstract class DeviceProvider : Gst.Object { @@ -961,8 +1007,11 @@ namespace Gst { public Gst.Bus get_bus (); public GLib.List get_devices (); public unowned Gst.DeviceProviderFactory get_factory (); + [CCode (array_length = false, array_null_terminated = true)] + public string[] get_hidden_providers (); [CCode (cname = "gst_device_provider_class_get_metadata")] public class unowned string get_metadata (string key); + public void hide_provider (string name); public static bool register (Gst.Plugin? plugin, string name, uint rank, GLib.Type type); [CCode (cname = "gst_device_provider_class_set_metadata")] public class void set_metadata (string longname, string classification, string description, string author); @@ -970,6 +1019,9 @@ namespace Gst { public class void set_static_metadata (owned string longname, owned string classification, owned string description, owned string author); public virtual bool start (); public virtual void stop (); + public void unhide_provider (string name); + public signal void provider_hidden (string object); + public signal void provider_unhidden (string object); } [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_provider_factory_get_type ()")] public class DeviceProviderFactory : Gst.PluginFeature { @@ -1066,9 +1118,8 @@ namespace Gst { public virtual void release_pad (Gst.Pad pad); public void release_request_pad (Gst.Pad pad); public bool remove_pad (owned Gst.Pad pad); - [NoWrapper] - public virtual Gst.Pad? request_new_pad (Gst.PadTemplate templ, string name, Gst.Caps caps); - public Gst.Pad? request_pad (Gst.PadTemplate templ, string? name, Gst.Caps? caps); + [CCode (vfunc_name = "request_new_pad")] + public virtual Gst.Pad? request_pad (Gst.PadTemplate templ, string? name, Gst.Caps? caps); public bool seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop); public bool seek_simple (Gst.Format format, Gst.SeekFlags seek_flags, int64 seek_pos); public virtual bool send_event (owned Gst.Event event); @@ -1158,6 +1209,7 @@ namespace Gst { public void parse_gap (out Gst.ClockTime timestamp, out Gst.ClockTime duration); public bool parse_group_id (out uint group_id); public void parse_latency (out Gst.ClockTime latency); + public void parse_protection (out unowned string system_id, out unowned Gst.Buffer data, string? origin); public void parse_qos (out Gst.QOSType type, out double proportion, out Gst.ClockTimeDiff diff, out Gst.ClockTime timestamp); public void parse_seek (out double rate, out Gst.Format format, out Gst.SeekFlags flags, out Gst.SeekType start_type, out int64 start, out Gst.SeekType stop_type, out int64 stop); public void parse_segment (out unowned Gst.Segment segment); @@ -1170,6 +1222,8 @@ namespace Gst { public void parse_toc (out Gst.Toc toc, out bool updated); public void parse_toc_select (out string uid); [CCode (has_construct_function = false)] + public Event.protection (string system_id, Gst.Buffer data, string origin); + [CCode (has_construct_function = false)] public Event.qos (Gst.QOSType type, double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp); [CCode (has_construct_function = false)] public Event.reconfigure (); @@ -1197,6 +1251,12 @@ namespace Gst { public Event.toc_select (string uid); public unowned Gst.Structure writable_structure (); } + [CCode (cheader_filename = "gst/gst.h", lower_case_csuffix = "flagset", type_id = "gst_flagset_get_type ()")] + public class FlagSet { + [CCode (has_construct_function = false)] + protected FlagSet (); + public static GLib.Type register (GLib.Type flags_type); + } [CCode (cheader_filename = "gst/gst.h", type_id = "gst_fraction_get_type ()")] public class Fraction { [CCode (has_construct_function = false)] @@ -1285,45 +1345,45 @@ namespace Gst { public uint64 timestamp; public Gst.MessageType type; [CCode (has_construct_function = false)] - public Message.application (Gst.Object src, owned Gst.Structure structure); + public Message.application (Gst.Object? src, owned Gst.Structure structure); [CCode (has_construct_function = false)] - public Message.async_done (Gst.Object src, Gst.ClockTime running_time); + public Message.async_done (Gst.Object? src, Gst.ClockTime running_time); [CCode (has_construct_function = false)] - public Message.async_start (Gst.Object src); + public Message.async_start (Gst.Object? src); [CCode (has_construct_function = false)] - public Message.buffering (Gst.Object src, int percent); + public Message.buffering (Gst.Object? src, int percent); [CCode (has_construct_function = false)] - public Message.clock_lost (Gst.Object src, Gst.Clock clock); + public Message.clock_lost (Gst.Object? src, Gst.Clock clock); [CCode (has_construct_function = false)] - public Message.clock_provide (Gst.Object src, Gst.Clock clock, bool ready); + public Message.clock_provide (Gst.Object? src, Gst.Clock clock, bool ready); [CCode (has_construct_function = false)] - public Message.custom (Gst.MessageType type, Gst.Object src, owned Gst.Structure? structure); + public Message.custom (Gst.MessageType type, Gst.Object? src, owned Gst.Structure? structure); [CCode (has_construct_function = false)] public Message.device_added (Gst.Object src, Gst.Device device); [CCode (has_construct_function = false)] public Message.device_removed (Gst.Object src, Gst.Device device); [CCode (has_construct_function = false)] - public Message.duration_changed (Gst.Object src); + public Message.duration_changed (Gst.Object? src); [CCode (has_construct_function = false)] - public Message.element (Gst.Object src, owned Gst.Structure structure); + public Message.element (Gst.Object? src, owned Gst.Structure structure); [CCode (has_construct_function = false)] - public Message.eos (Gst.Object src); + public Message.eos (Gst.Object? src); [CCode (has_construct_function = false)] - public Message.error (Gst.Object src, GLib.Error error, string debug); + public Message.error (Gst.Object? src, GLib.Error error, string debug); public uint32 get_seqnum (); public unowned GLib.Value? get_stream_status_object (); public unowned Gst.Structure get_structure (); public bool has_name (string name); [CCode (has_construct_function = false)] - public Message.have_context (Gst.Object src, owned Gst.Context context); + public Message.have_context (Gst.Object? src, owned Gst.Context context); [CCode (has_construct_function = false)] - public Message.info (Gst.Object src, GLib.Error error, string debug); + public Message.info (Gst.Object? src, GLib.Error error, string debug); [CCode (has_construct_function = false)] - public Message.latency (Gst.Object src); + public Message.latency (Gst.Object? src); [CCode (has_construct_function = false)] - public Message.need_context (Gst.Object src, string context_type); + public Message.need_context (Gst.Object? src, string context_type); [CCode (has_construct_function = false)] - public Message.new_clock (Gst.Object src, Gst.Clock clock); + public Message.new_clock (Gst.Object? src, Gst.Clock clock); public void parse_async_done (out Gst.ClockTime running_time); public void parse_buffering (out int percent); public void parse_buffering_stats (out Gst.BufferingMode mode, out int avg_in, out int avg_out, out int64 buffering_left); @@ -1358,13 +1418,13 @@ namespace Gst { [CCode (has_construct_function = false)] public Message.qos (Gst.Object src, bool live, uint64 running_time, uint64 stream_time, uint64 timestamp, uint64 duration); [CCode (has_construct_function = false)] - public Message.request_state (Gst.Object src, Gst.State state); + public Message.request_state (Gst.Object? src, Gst.State state); [CCode (has_construct_function = false)] - public Message.reset_time (Gst.Object src, Gst.ClockTime running_time); + public Message.reset_time (Gst.Object? src, Gst.ClockTime running_time); [CCode (has_construct_function = false)] - public Message.segment_done (Gst.Object src, Gst.Format format, int64 position); + public Message.segment_done (Gst.Object? src, Gst.Format format, int64 position); [CCode (has_construct_function = false)] - public Message.segment_start (Gst.Object src, Gst.Format format, int64 position); + public Message.segment_start (Gst.Object? src, Gst.Format format, int64 position); public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left); public void set_group_id (uint group_id); public void set_qos_stats (Gst.Format format, uint64 processed, uint64 dropped); @@ -1372,25 +1432,25 @@ namespace Gst { public void set_seqnum (uint32 seqnum); public void set_stream_status_object (GLib.Value object); [CCode (has_construct_function = false)] - public Message.state_changed (Gst.Object src, Gst.State oldstate, Gst.State newstate, Gst.State pending); + public Message.state_changed (Gst.Object? src, Gst.State oldstate, Gst.State newstate, Gst.State pending); [CCode (has_construct_function = false)] - public Message.state_dirty (Gst.Object src); + public Message.state_dirty (Gst.Object? src); [CCode (has_construct_function = false)] public Message.step_done (Gst.Object src, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate, uint64 duration, bool eos); [CCode (has_construct_function = false)] public Message.step_start (Gst.Object src, bool active, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate); [CCode (has_construct_function = false)] - public Message.stream_start (Gst.Object src); + public Message.stream_start (Gst.Object? src); [CCode (has_construct_function = false)] public Message.stream_status (Gst.Object src, Gst.StreamStatusType type, Gst.Element owner); [CCode (has_construct_function = false)] - public Message.structure_change (Gst.Object src, Gst.StructureChangeType type, Gst.Element owner, bool busy); + public Message.structure_change (Gst.Object? src, Gst.StructureChangeType type, Gst.Element owner, bool busy); [CCode (has_construct_function = false)] - public Message.tag (Gst.Object src, owned Gst.TagList tag_list); + public Message.tag (Gst.Object? src, owned Gst.TagList tag_list); [CCode (has_construct_function = false)] public Message.toc (Gst.Object src, Gst.Toc toc, bool updated); [CCode (has_construct_function = false)] - public Message.warning (Gst.Object src, GLib.Error error, string debug); + public Message.warning (Gst.Object? src, GLib.Error error, string debug); } [CCode (cheader_filename = "gst/gst.h", get_value_function = "g_value_get_boxed", ref_function = "gst_mini_object_ref", set_value_function = "g_value_set_boxed", take_value_function = "g_value_take_boxed", unref_function = "gst_mini_object_unref")] [Compact] @@ -1436,7 +1496,10 @@ namespace Gst { public GLib.Value? get_value (string property_name, Gst.ClockTime timestamp); public bool get_value_array (string property_name, Gst.ClockTime timestamp, Gst.ClockTime interval, uint n_values, void* values); public bool has_active_control_bindings (); + [Deprecated] public bool has_ancestor (Gst.Object ancestor); + public bool has_as_ancestor (Gst.Object ancestor); + public bool has_as_parent (Gst.Object parent); public Gst.Object @ref (); public bool remove_control_binding (Gst.ControlBinding binding); public static bool replace (ref Gst.Object? oldobj, Gst.Object? newobj); @@ -1556,6 +1619,7 @@ namespace Gst { [NoAccessorMethod] public Gst.Caps caps { owned get; } public Gst.PadDirection direction { get; construct; } + public int64 offset { get; set; } [NoAccessorMethod] public Gst.PadTemplate template { owned get; set; } public virtual signal void linked (Gst.Pad peer); @@ -1601,12 +1665,16 @@ namespace Gst { public Gst.Bus get_bus (); public Gst.Clock get_clock (); public Gst.ClockTime get_delay (); + public Gst.ClockTime get_latency (); + public Gst.Clock get_pipeline_clock (); public void set_auto_flush_bus (bool auto_flush); public bool set_clock (Gst.Clock clock); public void set_delay (Gst.ClockTime delay); + public void set_latency (Gst.ClockTime latency); public void use_clock (Gst.Clock? clock); public bool auto_flush_bus { get; set; } public uint64 delay { get; set; } + public uint64 latency { get; set; } } [CCode (cheader_filename = "gst/gst.h", type_id = "gst_plugin_get_type ()")] public class Plugin : Gst.Object { @@ -1818,9 +1886,11 @@ namespace Gst { [CCode (has_construct_function = false)] public Sample (Gst.Buffer? buffer, Gst.Caps? caps, Gst.Segment? segment, owned Gst.Structure? info); public unowned Gst.Buffer? get_buffer (); + public unowned Gst.BufferList? get_buffer_list (); public unowned Gst.Caps? get_caps (); public unowned Gst.Structure get_info (); public unowned Gst.Segment get_segment (); + public void set_buffer_list (Gst.BufferList buffer_list); } [CCode (cheader_filename = "gst/gst.h", copy_function = "gst_segment_copy", free_function = "gst_segment_free", type_id = "gst_segment_get_type ()")] [Compact] @@ -1844,10 +1914,12 @@ namespace Gst { public bool do_seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, uint64 start, Gst.SeekType stop_type, uint64 stop, bool update); public void free (); public void init (Gst.Format format); + public bool is_equal (Gst.Segment s1); public bool offset_running_time (Gst.Format format, int64 offset); public bool set_running_time (Gst.Format format, uint64 running_time); public uint64 to_position (Gst.Format format, uint64 running_time); public uint64 to_running_time (Gst.Format format, uint64 position); + public int to_running_time_full (Gst.Format format, uint64 position, uint64 running_time); public uint64 to_stream_time (Gst.Format format, uint64 position); } [CCode (cheader_filename = "gst/gst.h", copy_function = "gst_structure_copy", free_function = "gst_structure_free", type_id = "gst_structure_get_type ()")] @@ -1860,6 +1932,7 @@ namespace Gst { public Gst.Structure copy (); [CCode (has_construct_function = false)] public Structure.empty (string name); + public void filter_and_map_in_place (Gst.StructureFilterMapFunc func); public void fixate (); public bool fixate_field (string field_name); public bool fixate_field_boolean (string field_name, bool target); @@ -1878,6 +1951,7 @@ namespace Gst { public bool get_double (string fieldname, out double value); public bool get_enum (string fieldname, GLib.Type enumtype, out int value); public GLib.Type get_field_type (string fieldname); + public bool get_flagset (string fieldname, out uint value_flags, out uint value_mask); public bool get_fraction (string fieldname, out int value_numerator, out int value_denominator); public bool get_int (string fieldname, out int value); public bool get_int64 (string fieldname, out int64 value); @@ -2063,6 +2137,48 @@ namespace Gst { public static GLib.List get_list (); public bool has_function (); } + [CCode (cheader_filename = "gst/gst.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_uri_get_type ()")] + [Compact] + public class Uri { + [CCode (has_construct_function = false)] + public Uri (string? scheme, string? userinfo, string? host, uint port, string? path, string? query, string? fragment); + public bool append_path (string relative_path); + public bool append_path_segment (string path_segment); + public bool equal (Gst.Uri second); + public Gst.Uri from_string_with_base (string uri); + public unowned string get_fragment (); + public unowned string get_host (); + public string get_path (); + public GLib.List get_path_segments (); + public string get_path_string (); + public uint get_port (); + public GLib.List get_query_keys (); + public string get_query_string (); + public GLib.HashTable get_query_table (); + public unowned string get_query_value (string query_key); + public unowned string get_scheme (); + public unowned string get_userinfo (); + public bool is_normalized (); + public bool is_writable (); + public Gst.Uri join (Gst.Uri? ref_uri); + public Gst.Uri make_writable (); + public Gst.Uri new_with_base (string? scheme, string? userinfo, string? host, uint port, string? path, string? query, string? fragment); + public bool normalize (); + public bool query_has_key (string query_key); + public bool remove_query_key (string query_key); + public bool set_fragment (string? fragment); + public bool set_host (string host); + public bool set_path (string path); + public bool set_path_segments (owned GLib.List? path_segments); + public bool set_path_string (string path); + public bool set_port (uint port); + public bool set_query_string (string query); + public bool set_query_table (GLib.HashTable? query_table); + public bool set_query_value (string query_key, string? query_value); + public bool set_scheme (string scheme); + public bool set_userinfo (string userinfo); + public string to_string (); + } [CCode (cheader_filename = "gst/gst.h", type_id = "gst_value_array_get_type ()")] public class ValueArray { [CCode (has_construct_function = false)] @@ -2111,6 +2227,7 @@ namespace Gst { public abstract string[] get_preset_names (); [CCode (array_length = false, array_null_terminated = true)] public abstract string[] get_property_names (); + public bool is_editable (); public abstract bool load_preset (string name); public abstract bool rename_preset (string old_name, string new_name); public abstract bool save_preset (string name); @@ -2242,8 +2359,12 @@ namespace Gst { public void* data; public uint64 offset; public uint size; + [CCode (array_length = false, array_null_terminated = true, cname = "ABI._gst_reserved")] + public weak void*[] ABI__gst_reserved; + [CCode (cname = "ABI.abi.flow_ret")] + public Gst.FlowReturn ABI_abi_flow_ret; public unowned Gst.Buffer get_buffer (); - public Gst.BufferList get_buffer_list (); + public unowned Gst.BufferList get_buffer_list (); public unowned Gst.Event get_event (); public unowned Gst.Query get_query (); } @@ -2258,6 +2379,13 @@ namespace Gst { public int def_den; } [CCode (cheader_filename = "gst/gst.h", has_type_id = false)] + public struct ParentBufferMeta { + public Gst.Meta parent; + public weak Gst.Buffer buffer; + public static GLib.Type api_get_type (); + public static unowned Gst.MetaInfo? get_info (); + } + [CCode (cheader_filename = "gst/gst.h", has_type_id = false)] public struct PluginDesc { public int major_version; public int minor_version; @@ -2277,6 +2405,13 @@ namespace Gst { public void init (); } [CCode (cheader_filename = "gst/gst.h", has_type_id = false)] + public struct ProtectionMeta { + public Gst.Meta meta; + public weak Gst.Structure info; + public static GLib.Type api_get_type (); + public static unowned Gst.MetaInfo? get_info (); + } + [CCode (cheader_filename = "gst/gst.h", has_type_id = false)] public struct StaticCaps { public weak Gst.Caps caps; public weak global::string string; @@ -2353,6 +2488,7 @@ namespace Gst { DROPPABLE, DELTA_UNIT, TAG_MEMORY, + SYNC_AFTER, LAST } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_POOL_ACQUIRE_FLAG_", type_id = "gst_buffer_pool_acquire_flags_get_type ()")] @@ -2407,6 +2543,7 @@ namespace Gst { CAN_DO_PERIODIC_ASYNC, CAN_SET_RESOLUTION, CAN_SET_MASTER, + NEEDS_STARTUP_SYNC, LAST } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_", type_id = "gst_clock_return_get_type ()")] @@ -2460,7 +2597,9 @@ namespace Gst { CAPS_DETAILS, NON_DEFAULT_PARAMS, STATES, - ALL + FULL_PARAMS, + ALL, + VERBOSE } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_LEVEL_", type_id = "gst_debug_level_get_type ()")] public enum DebugLevel { @@ -2499,6 +2638,7 @@ namespace Gst { SINK_MESSAGE, EOS, TOC, + PROTECTION, SEGMENT_DONE, GAP, QOS, @@ -2685,6 +2825,7 @@ namespace Gst { PROXY_ALLOCATION, PROXY_SCHEDULING, ACCEPT_INTERSECT, + ACCEPT_TEMPLATE, LAST } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_LINK_CHECK_", type_id = "gst_pad_link_check_get_type ()")] @@ -2724,7 +2865,8 @@ namespace Gst { DROP, OK, REMOVE, - PASS + PASS, + HANDLED } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_PROBE_TYPE_", type_id = "gst_pad_probe_type_get_type ()")] [Flags] @@ -2858,10 +3000,13 @@ namespace Gst { ACCURATE, KEY_UNIT, SEGMENT, + TRICKMODE, SKIP, SNAP_BEFORE, SNAP_AFTER, - SNAP_NEAREST + SNAP_NEAREST, + TRICKMODE_KEY_UNITS, + TRICKMODE_NO_AUDIO } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEEK_TYPE_", type_id = "gst_seek_type_get_type ()")] public enum SeekType { @@ -2874,8 +3019,11 @@ namespace Gst { public enum SegmentFlags { NONE, RESET, + TRICKMODE, SKIP, - SEGMENT + SEGMENT, + TRICKMODE_KEY_UNITS, + TRICKMODE_NO_AUDIO } [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_", type_id = "gst_state_get_type ()")] public enum State { @@ -3093,6 +3241,12 @@ namespace Gst { public delegate bool BusFunc (Gst.Bus bus, Gst.Message message); [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] public delegate Gst.BusSyncReply BusSyncHandler (Gst.Bus bus, Gst.Message message); + [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] + public delegate bool CapsFilterMapFunc (Gst.CapsFeatures features, Gst.Structure structure); + [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] + public delegate bool CapsForeachFunc (Gst.CapsFeatures features, Gst.Structure structure); + [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] + public delegate bool CapsMapFunc (Gst.CapsFeatures features, Gst.Structure structure); [CCode (cheader_filename = "gst/gst.h", instance_pos = 3.9)] public delegate bool ClockCallback (Gst.Clock clock, Gst.ClockTime time, Gst.ClockID id); [CCode (cheader_filename = "gst/gst.h", has_target = false)] @@ -3124,8 +3278,14 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate bool MemoryIsSpanFunction (Gst.Memory mem1, Gst.Memory mem2, size_t offset); [CCode (cheader_filename = "gst/gst.h", has_target = false)] + public delegate void* MemoryMapFullFunction (Gst.Memory mem, Gst.MapInfo info, size_t maxsize); + [CCode (cheader_filename = "gst/gst.h", has_target = false)] + public delegate void* MemoryMapFunction (Gst.Memory mem, size_t maxsize, Gst.MapFlags flags); + [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate Gst.Memory MemoryShareFunction (Gst.Memory mem, ssize_t offset, ssize_t size); [CCode (cheader_filename = "gst/gst.h", has_target = false)] + public delegate void MemoryUnmapFullFunction (Gst.Memory mem, Gst.MapInfo info); + [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate void MemoryUnmapFunction (Gst.Memory mem); [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate void MetaFreeFunction (Gst.Meta meta, Gst.Buffer buffer); @@ -3174,6 +3334,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate bool PluginInitFunc (Gst.Plugin plugin); [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] + public delegate bool StructureFilterMapFunc (GLib.Quark field_id, GLib.Value value); + [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] public delegate bool StructureForeachFunc (GLib.Quark field_id, GLib.Value value); [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)] public delegate bool StructureMapFunc (GLib.Quark field_id, GLib.Value value); @@ -3227,6 +3389,8 @@ namespace Gst { public const int EVENT_NUM_SHIFT; [CCode (cheader_filename = "gst/gst.h", cname = "GST_EVENT_TYPE_BOTH")] public const int EVENT_TYPE_BOTH; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_FLAG_SET_MASK_EXACT")] + public const uint FLAG_SET_MASK_EXACT; [CCode (cheader_filename = "gst/gst.h", cname = "GST_FORMAT_PERCENT_MAX")] public const int64 FORMAT_PERCENT_MAX; [CCode (cheader_filename = "gst/gst.h", cname = "GST_FORMAT_PERCENT_SCALE")] @@ -3255,6 +3419,8 @@ namespace Gst { public const int PARAM_MUTABLE_READY; [CCode (cheader_filename = "gst/gst.h", cname = "GST_PARAM_USER_SHIFT")] public const int PARAM_USER_SHIFT; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_PROTECTION_SYSTEM_ID_CAPS_FIELD")] + public const string PROTECTION_SYSTEM_ID_CAPS_FIELD; [CCode (cheader_filename = "gst/gst.h", cname = "GST_PTR_FORMAT")] public const string PTR_FORMAT; [CCode (cheader_filename = "gst/gst.h", cname = "GST_QUERY_NUM_SHIFT")] @@ -3265,10 +3431,14 @@ namespace Gst { public const int SECOND; [CCode (cheader_filename = "gst/gst.h", cname = "GST_SEGMENT_FORMAT")] public const string SEGMENT_FORMAT; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_STIME_FORMAT")] + public const string STIME_FORMAT; [CCode (cheader_filename = "gst/gst.h", cname = "GST_TIME_FORMAT")] public const string TIME_FORMAT; [CCode (cheader_filename = "gst/gst.h", cname = "GST_TOC_REPEAT_COUNT_INFINITE")] public const int TOC_REPEAT_COUNT_INFINITE; + [CCode (cheader_filename = "gst/gst.h", cname = "GST_URI_NO_PORT")] + public const int URI_NO_PORT; [CCode (cheader_filename = "gst/gst.h", cname = "GST_USECOND")] public const int USECOND; [CCode (cheader_filename = "gst/gst.h", cname = "GST_VALUE_EQUAL")] @@ -3318,6 +3488,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static bool preset_set_app_dir (string app_dir); [CCode (cheader_filename = "gst/gst.h")] + public static unowned string protection_select_system (string system_identifiers); + [CCode (cheader_filename = "gst/gst.h")] public static bool segtrap_is_enabled (); [CCode (cheader_filename = "gst/gst.h")] public static void segtrap_set_enabled (bool enabled); diff --git a/vapi/gstreamer-allocators-1.0.vapi b/vapi/gstreamer-allocators-1.0.vapi index 6db1c6e3f..40c24e296 100644 --- a/vapi/gstreamer-allocators-1.0.vapi +++ b/vapi/gstreamer-allocators-1.0.vapi @@ -3,15 +3,36 @@ [CCode (cprefix = "Gst", gir_namespace = "GstAllocators", gir_version = "1.0", lower_case_cprefix = "gst_")] namespace Gst { namespace Allocators { + [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "GstFdAllocator", lower_case_cprefix = "gst_fd_allocator_", type_id = "gst_fd_allocator_get_type ()")] + [GIR (name = "FdAllocator")] + public class FdAllocator : Gst.Allocator { + [CCode (has_construct_function = false, type = "GstAllocator*")] + public FdAllocator (); + public static Gst.Memory alloc (Gst.Allocator allocator, int fd, size_t size, Gst.Allocators.FdMemoryFlags flags); + } + [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "GstFdMemoryFlags", cprefix = "GST_FD_MEMORY_FLAG_", has_type_id = false)] + [Flags] + [GIR (name = "FdMemoryFlags")] + public enum FdMemoryFlags { + NONE, + KEEP_MAPPED, + MAP_PRIVATE + } [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "GST_ALLOCATOR_DMABUF")] public const string ALLOCATOR_DMABUF; + [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "GST_ALLOCATOR_FD")] + public const string ALLOCATOR_FD; [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "gst_dmabuf_allocator_alloc")] - public static Gst.Memory dmabuf_allocator_alloc (Gst.Allocator? allocator, int fd, size_t size); + public static Gst.Memory dmabuf_allocator_alloc (Gst.Allocator allocator, int fd, size_t size); [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "gst_dmabuf_allocator_new")] public static Gst.Allocator dmabuf_allocator_new (); [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "gst_dmabuf_memory_get_fd")] public static int dmabuf_memory_get_fd (Gst.Memory mem); + [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "gst_fd_memory_get_fd")] + public static int fd_memory_get_fd (Gst.Memory mem); [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "gst_is_dmabuf_memory")] public static bool is_dmabuf_memory (Gst.Memory mem); + [CCode (cheader_filename = "gst/allocators/allocators.h", cname = "gst_is_fd_memory")] + public static bool is_fd_memory (Gst.Memory mem); } } diff --git a/vapi/gstreamer-app-1.0.vapi b/vapi/gstreamer-app-1.0.vapi index db9e86183..ea92619dd 100644 --- a/vapi/gstreamer-app-1.0.vapi +++ b/vapi/gstreamer-app-1.0.vapi @@ -72,6 +72,8 @@ namespace Gst { public virtual signal void need_data (uint length); [HasEmitter] public virtual signal Gst.FlowReturn push_buffer (Gst.Buffer buffer); + [HasEmitter] + public virtual signal Gst.FlowReturn push_sample (Gst.Sample sample); public virtual signal bool seek_data (uint64 offset); } [CCode (cheader_filename = "gst/app/app.h", cprefix = "GST_APP_STREAM_TYPE_", type_id = "gst_app_stream_type_get_type ()")] diff --git a/vapi/gstreamer-audio-1.0.vapi b/vapi/gstreamer-audio-1.0.vapi index c9ec3f004..63fb0b49e 100644 --- a/vapi/gstreamer-audio-1.0.vapi +++ b/vapi/gstreamer-audio-1.0.vapi @@ -20,7 +20,9 @@ namespace Gst { public Gst.Audio.BaseSinkSlaveMethod get_slave_method (); [NoWrapper] public virtual Gst.Buffer payload (Gst.Buffer buffer); + public void report_device_failure (); public void set_alignment_threshold (Gst.ClockTime alignment_threshold); + public void set_custom_slaving_callback (owned Gst.Audio.BaseSinkCustomSlavingCallback callback); public void set_discont_wait (Gst.ClockTime discont_wait); public void set_drift_tolerance (int64 drift_tolerance); public void set_provide_clock (bool provide); @@ -123,8 +125,10 @@ namespace Gst { public int get_plc_aware (); public Gst.ClockTime get_tolerance (); [NoWrapper] + public virtual Gst.Caps getcaps (Gst.Caps filter); + [NoWrapper] public virtual Gst.FlowReturn handle_frame (Gst.Buffer buffer); - public void merge_tags (Gst.TagList tags, Gst.TagMergeMode mode); + public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode); public virtual bool negotiate (); [NoWrapper] public virtual bool open (); @@ -134,6 +138,7 @@ namespace Gst { public virtual Gst.FlowReturn pre_push (Gst.Buffer buffer); [NoWrapper] public virtual bool propose_allocation (Gst.Query query); + public Gst.Caps proxy_getcaps (Gst.Caps? caps, Gst.Caps? filter); public void set_drainable (bool enabled); public void set_estimate_rate (bool enabled); [NoWrapper] @@ -146,14 +151,21 @@ namespace Gst { public void set_plc (bool enabled); public void set_plc_aware (bool plc); public void set_tolerance (Gst.ClockTime tolerance); + public void set_use_default_pad_acceptcaps (bool use); [NoWrapper] public virtual bool sink_event (Gst.Event event); [NoWrapper] + public virtual bool sink_query (Gst.Query query); + [NoWrapper] public virtual bool src_event (Gst.Event event); [NoWrapper] + public virtual bool src_query (Gst.Query query); + [NoWrapper] public virtual bool start (); [NoWrapper] public virtual bool stop (); + [NoWrapper] + public virtual bool transform_meta (Gst.Buffer outbuf, Gst.Meta meta, Gst.Buffer inbuf); public int64 min_latency { get; set; } public bool plc { get; set; } public int64 tolerance { get; set; } @@ -193,7 +205,7 @@ namespace Gst { public virtual Gst.Caps getcaps (Gst.Caps filter); [NoWrapper] public virtual Gst.FlowReturn handle_frame (Gst.Buffer buffer); - public void merge_tags (Gst.TagList tags, Gst.TagMergeMode mode); + public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode); public virtual bool negotiate (); [NoWrapper] public virtual bool open (); @@ -201,7 +213,7 @@ namespace Gst { public virtual Gst.FlowReturn pre_push (Gst.Buffer buffer); [NoWrapper] public virtual bool propose_allocation (Gst.Query query); - public Gst.Caps proxy_getcaps (Gst.Caps caps, Gst.Caps filter); + public Gst.Caps proxy_getcaps (Gst.Caps? caps, Gst.Caps? filter); public void set_drainable (bool enabled); [NoWrapper] public virtual bool set_format (Gst.Audio.Info info); @@ -220,11 +232,17 @@ namespace Gst { [NoWrapper] public virtual bool sink_event (Gst.Event event); [NoWrapper] + public virtual bool sink_query (Gst.Query query); + [NoWrapper] public virtual bool src_event (Gst.Event event); [NoWrapper] + public virtual bool src_query (Gst.Query query); + [NoWrapper] public virtual bool start (); [NoWrapper] public virtual bool stop (); + [NoWrapper] + public virtual bool transform_meta (Gst.Buffer outbuf, Gst.Meta meta, Gst.Buffer inbuf); public bool hard_resync { get; set; } public bool mark_granule { get; } public bool perfect_timestamp { get; set; } @@ -413,12 +431,23 @@ namespace Gst { public int segtotal; public int seglatency; } + [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_BASE_SINK_DISCONT_REASON_", has_type_id = false)] + [GIR (name = "AudioBaseSinkDiscontReason")] + public enum BaseSinkDiscontReason { + NO_DISCONT, + NEW_CAPS, + FLUSH, + SYNC_LATENCY, + ALIGNMENT, + DEVICE_FAILURE + } [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_BASE_SINK_SLAVE_", type_id = "gst_audio_base_sink_slave_method_get_type ()")] [GIR (name = "AudioBaseSinkSlaveMethod")] public enum BaseSinkSlaveMethod { RESAMPLE, SKEW, - NONE + NONE, + CUSTOM } [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_BASE_SRC_SLAVE_", type_id = "gst_audio_base_src_slave_method_get_type ()")] [GIR (name = "AudioBaseSrcSlaveMethod")] @@ -581,6 +610,8 @@ namespace Gst { CUBIC, DB } + [CCode (cheader_filename = "gst/audio/audio.h", instance_pos = 5.9)] + public delegate void BaseSinkCustomSlavingCallback (Gst.Audio.BaseSink sink, Gst.ClockTime etime, Gst.ClockTime itime, Gst.ClockTimeDiff requested_skew, Gst.Audio.BaseSinkDiscontReason discont_reason); [CCode (cheader_filename = "gst/audio/audio.h", instance_pos = 1.9)] public delegate Gst.ClockTime ClockGetTimeFunc (Gst.Clock clock); [CCode (cheader_filename = "gst/audio/audio.h", has_target = false)] diff --git a/vapi/gstreamer-base-1.0.vapi b/vapi/gstreamer-base-1.0.vapi index 86cfdfe09..fd7ef2543 100644 --- a/vapi/gstreamer-base-1.0.vapi +++ b/vapi/gstreamer-base-1.0.vapi @@ -14,6 +14,10 @@ namespace Gst { public void copy ([CCode (array_length_cname = "size", array_length_pos = 2.1, array_length_type = "gsize")] out unowned uint8[] dest, size_t offset); public GLib.Bytes copy_bytes (size_t offset, size_t size); public void flush (size_t flush); + public Gst.Buffer? get_buffer (size_t nbytes); + public Gst.Buffer? get_buffer_fast (size_t nbytes); + public Gst.BufferList? get_buffer_list (size_t nbytes); + public GLib.List? get_list (size_t nbytes); [CCode (array_length_pos = 0.1, array_length_type = "gsize")] public unowned uint8[]? map (); public ssize_t masked_scan_uint32 (uint32 mask, uint32 pattern, size_t offset, size_t size); @@ -27,6 +31,7 @@ namespace Gst { public uint8[]? take (); public Gst.Buffer? take_buffer (size_t nbytes); public Gst.Buffer? take_buffer_fast (size_t nbytes); + public Gst.BufferList? take_buffer_list (size_t nbytes); public GLib.List? take_list (size_t nbytes); public void unmap (); } @@ -148,6 +153,8 @@ namespace Gst { public void init ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "guint")] uint8[] data); [CCode (cname = "gst_byte_reader_masked_scan_uint32")] public uint masked_scan_uint32 (uint32 mask, uint32 pattern, uint offset, uint size); + [CCode (cname = "gst_byte_reader_masked_scan_uint32_peek")] + public uint masked_scan_uint32_peek (uint32 mask, uint32 pattern, uint offset, uint size, uint32 value); [CCode (cname = "gst_byte_reader_peek_data")] public bool peek_data ([CCode (array_length_cname = "size", array_length_pos = 0.5, array_length_type = "guint")] out unowned uint8[] val); [CCode (cname = "gst_byte_reader_peek_float32_be")] @@ -313,7 +320,14 @@ namespace Gst { public bool query_default (Gst.Base.CollectData data, Gst.Query query, bool discard); public Gst.Buffer read_buffer (Gst.Base.CollectData data, uint size); public bool remove_pad (Gst.Pad pad); + public void set_buffer_function (Gst.Base.CollectPadsBufferFunction func); + public void set_clip_function (Gst.Base.CollectPadsClipFunction clipfunc); + public void set_compare_function (Gst.Base.CollectPadsCompareFunction func); + public void set_event_function (Gst.Base.CollectPadsEventFunction func); + public void set_flush_function (Gst.Base.CollectPadsFlushFunction func); public void set_flushing (bool flushing); + public void set_function (Gst.Base.CollectPadsFunction func); + public void set_query_function (Gst.Base.CollectPadsQueryFunction func); public void set_waiting (Gst.Base.CollectData data, bool waiting); public bool src_event_default (Gst.Pad pad, Gst.Event event); public void start (); @@ -343,9 +357,12 @@ namespace Gst { [CCode (has_construct_function = false)] public FlowCombiner (); public void add_pad (Gst.Pad pad); + public void clear (); public void free (); public void remove_pad (Gst.Pad pad); + public void reset (); public Gst.FlowReturn update_flow (Gst.FlowReturn fret); + public Gst.FlowReturn update_pad_flow (Gst.Pad pad, Gst.FlowReturn fret); } [CCode (cheader_filename = "gst/base/base.h", type_id = "gst_base_parse_get_type ()")] [GIR (name = "BaseParse")] @@ -367,6 +384,7 @@ namespace Gst { public virtual Gst.Caps get_sink_caps (Gst.Caps filter); [NoWrapper] public virtual Gst.FlowReturn handle_frame (Gst.Base.ParseFrame frame, int skipsize); + public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode); [NoWrapper] public virtual Gst.FlowReturn pre_push_frame (Gst.Base.ParseFrame frame); public Gst.FlowReturn push_frame (Gst.Base.ParseFrame frame); @@ -602,6 +620,7 @@ namespace Gst { [GIR (name = "BaseTransform")] public abstract class Transform : Gst.Element { public bool have_segment; + public weak Gst.Buffer queued_buf; public weak Gst.Segment segment; public weak Gst.Pad sinkpad; public weak Gst.Pad srcpad; @@ -619,6 +638,8 @@ namespace Gst { public virtual bool filter_meta (Gst.Query query, GLib.Type api, Gst.Structure @params); [NoWrapper] public virtual Gst.Caps fixate_caps (Gst.PadDirection direction, Gst.Caps caps, Gst.Caps othercaps); + [NoWrapper] + public virtual Gst.FlowReturn generate_output (Gst.Buffer outbuf); public void get_allocator (out Gst.Allocator allocator, out Gst.AllocationParams @params); public Gst.BufferPool get_buffer_pool (); [NoWrapper] @@ -650,6 +671,8 @@ namespace Gst { [NoWrapper] public virtual bool stop (); [NoWrapper] + public virtual Gst.FlowReturn submit_input_buffer (bool is_discont, Gst.Buffer input); + [NoWrapper] public virtual Gst.FlowReturn transform (Gst.Buffer inbuf, Gst.Buffer outbuf); [NoWrapper] public virtual Gst.Caps transform_caps (Gst.PadDirection direction, Gst.Caps caps, Gst.Caps filter); @@ -660,6 +683,7 @@ namespace Gst { [NoWrapper] public virtual bool transform_size (Gst.PadDirection direction, Gst.Caps caps, size_t size, Gst.Caps othercaps, size_t othersize); public void update_qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp); + public bool update_src_caps (Gst.Caps updated_caps); [NoAccessorMethod] public bool qos { get; set; } } @@ -671,6 +695,8 @@ namespace Gst { public weak Gst.Buffer buffer; public uint pos; public weak Gst.Segment segment; + [CCode (cname = "ABI.abi.dts")] + public int64 ABI_abi_dts; } [CCode (cheader_filename = "gst/base/base.h", cname = "GstCollectPadsStateFlags", cprefix = "GST_COLLECT_PADS_STATE_", has_type_id = false)] [Flags] diff --git a/vapi/gstreamer-check-1.0.vapi b/vapi/gstreamer-check-1.0.vapi index bf939f3cc..0faf9edfc 100644 --- a/vapi/gstreamer-check-1.0.vapi +++ b/vapi/gstreamer-check-1.0.vapi @@ -3,6 +3,11 @@ [CCode (cprefix = "Gst", gir_namespace = "GstCheck", gir_version = "1.0", lower_case_cprefix = "gst_")] namespace Gst { namespace Check { + [CCode (cheader_filename = "gst/check/check.h", cname = "GstHarnessThread")] + [Compact] + [GIR (name = "HarnessThread")] + public class HarnessThread { + } [CCode (cheader_filename = "gst/check/gstbufferstraw.h,gst/check/gstcheck.h,gst/check/gstconsistencychecker.h,gst/check/internal-check.h", cname = "GstStreamConsistency", lower_case_cprefix = "gst_consistency_checker_")] [Compact] [GIR (name = "StreamConsistency")] @@ -42,6 +47,127 @@ namespace Gst { public int size; public int abi_size; } + [CCode (cheader_filename = "gst/check/check.h", cname = "GstHarness", has_type_id = false)] + [GIR (name = "Harness")] + public struct Harness { + public weak Gst.Element element; + public weak Gst.Pad srcpad; + public weak Gst.Pad sinkpad; + [CCode (cname = "gst_harness_add_element_sink_pad")] + public void add_element_sink_pad (Gst.Pad sinkpad); + [CCode (cname = "gst_harness_add_element_src_pad")] + public void add_element_src_pad (Gst.Pad srcpad); + [CCode (cname = "gst_harness_add_probe")] + public void add_probe (string element_name, string pad_name, Gst.PadProbeType mask, owned Gst.PadProbeCallback callback); + [CCode (cname = "gst_harness_add_sink")] + public void add_sink (string sink_element_name); + [CCode (cname = "gst_harness_add_sink_harness")] + public void add_sink_harness (owned Gst.Check.Harness sink_harness); + [CCode (cname = "gst_harness_add_sink_parse")] + public void add_sink_parse (string launchline); + [CCode (cname = "gst_harness_add_src")] + public void add_src (string src_element_name, bool has_clock_wait); + [CCode (cname = "gst_harness_add_src_harness")] + public void add_src_harness (owned Gst.Check.Harness src_harness, bool has_clock_wait); + [CCode (cname = "gst_harness_add_src_parse")] + public void add_src_parse (string launchline, bool has_clock_wait); + [CCode (cname = "gst_harness_buffers_in_queue")] + public uint buffers_in_queue (); + [CCode (cname = "gst_harness_buffers_received")] + public uint buffers_received (); + [CCode (cname = "gst_harness_crank_multiple_clock_waits")] + public bool crank_multiple_clock_waits (uint waits); + [CCode (cname = "gst_harness_crank_single_clock_wait")] + public bool crank_single_clock_wait (); + [CCode (cname = "gst_harness_create_buffer")] + public Gst.Buffer create_buffer (size_t size); + [CCode (cname = "gst_harness_dump_to_file")] + public void dump_to_file (string filename); + [CCode (cname = "gst_harness_events_in_queue")] + public uint events_in_queue (); + [CCode (cname = "gst_harness_events_received")] + public uint events_received (); + [CCode (cname = "gst_harness_find_element")] + public Gst.Element? find_element (string element_name); + [CCode (cname = "gst_harness_get_allocator")] + public void get_allocator (out unowned Gst.Allocator allocator, out Gst.AllocationParams @params); + [CCode (cname = "gst_harness_get_last_pushed_timestamp")] + public Gst.ClockTime get_last_pushed_timestamp (); + [CCode (cname = "gst_harness_get_testclock")] + public Gst.Check.TestClock get_testclock (); + [CCode (cname = "gst_harness_play")] + public void play (); + [CCode (cname = "gst_harness_pull")] + public Gst.Buffer pull (); + [CCode (cname = "gst_harness_pull_event")] + public Gst.Event pull_event (); + [CCode (cname = "gst_harness_pull_upstream_event")] + public Gst.Event pull_upstream_event (); + [CCode (cname = "gst_harness_push")] + public Gst.FlowReturn push (Gst.Buffer buffer); + [CCode (cname = "gst_harness_push_and_pull")] + public Gst.Buffer push_and_pull (Gst.Buffer buffer); + [CCode (cname = "gst_harness_push_event")] + public bool push_event (Gst.Event event); + [CCode (cname = "gst_harness_push_from_src")] + public Gst.FlowReturn push_from_src (); + [CCode (cname = "gst_harness_push_to_sink")] + public Gst.FlowReturn push_to_sink (); + [CCode (cname = "gst_harness_push_upstream_event")] + public bool push_upstream_event (Gst.Event event); + [CCode (cname = "gst_harness_query_latency")] + public Gst.ClockTime query_latency (); + [CCode (cname = "gst_harness_set_blocking_push_mode")] + public void set_blocking_push_mode (); + [CCode (cname = "gst_harness_set_caps")] + public void set_caps (owned Gst.Caps @in, owned Gst.Caps @out); + [CCode (cname = "gst_harness_set_caps_str")] + public void set_caps_str (string @in, string @out); + [CCode (cname = "gst_harness_set_drop_buffers")] + public void set_drop_buffers (bool drop_buffers); + [CCode (cname = "gst_harness_set_forwarding")] + public void set_forwarding (bool forwarding); + [CCode (cname = "gst_harness_set_propose_allocator")] + public void set_propose_allocator (owned Gst.Allocator? allocator, Gst.AllocationParams? @params); + [CCode (cname = "gst_harness_set_sink_caps")] + public void set_sink_caps (owned Gst.Caps caps); + [CCode (cname = "gst_harness_set_sink_caps_str")] + public void set_sink_caps_str (string str); + [CCode (cname = "gst_harness_set_src_caps")] + public void set_src_caps (owned Gst.Caps caps); + [CCode (cname = "gst_harness_set_src_caps_str")] + public void set_src_caps_str (string str); + [CCode (cname = "gst_harness_set_time")] + public bool set_time (Gst.ClockTime time); + [CCode (cname = "gst_harness_set_upstream_latency")] + public void set_upstream_latency (Gst.ClockTime latency); + [CCode (cname = "gst_harness_sink_push_many")] + public Gst.FlowReturn sink_push_many (int pushes); + [CCode (cname = "gst_harness_src_crank_and_push_many")] + public Gst.FlowReturn src_crank_and_push_many (int cranks, int pushes); + [CCode (cname = "gst_harness_src_push_event")] + public bool src_push_event (); + [CCode (cname = "gst_harness_teardown")] + public void teardown (); + [CCode (cname = "gst_harness_try_pull")] + public Gst.Buffer try_pull (); + [CCode (cname = "gst_harness_try_pull_event")] + public Gst.Event try_pull_event (); + [CCode (cname = "gst_harness_try_pull_upstream_event")] + public Gst.Event try_pull_upstream_event (); + [CCode (cname = "gst_harness_upstream_events_in_queue")] + public uint upstream_events_in_queue (); + [CCode (cname = "gst_harness_upstream_events_received")] + public uint upstream_events_received (); + [CCode (cname = "gst_harness_use_systemclock")] + public void use_systemclock (); + [CCode (cname = "gst_harness_use_testclock")] + public void use_testclock (); + [CCode (cname = "gst_harness_wait_for_clock_id_waits")] + public bool wait_for_clock_id_waits (uint waits, uint timeout); + } + [CCode (cheader_filename = "gst/check/check.h", cname = "GstHarnessPrepareBufferFunc", has_target = false)] + public delegate Gst.Buffer HarnessPrepareBufferFunc (Gst.Check.Harness h, void* data); [CCode (cheader_filename = "gst/check/check.h")] public static void abi_list (Gst.Check.ABIStruct list, bool have_abi_sizes); [CCode (cheader_filename = "gst/check/check.h")] @@ -62,11 +188,15 @@ namespace Gst { public static void element_push_buffer (string element_name, Gst.Buffer buffer_in, Gst.Caps caps_in, Gst.Buffer buffer_out, Gst.Caps caps_out); [CCode (cheader_filename = "gst/check/check.h")] public static void element_push_buffer_list (string element_name, owned GLib.List buffer_in, Gst.Caps caps_in, owned GLib.List buffer_out, Gst.Caps caps_out, Gst.FlowReturn last_flow_return); + [CCode (cheader_filename = "gst/check/check.h", cname = "gst_harness_stress_thread_stop")] + public static uint harness_stress_thread_stop (Gst.Check.HarnessThread t); [CCode (cheader_filename = "gst/check/check.h")] public static void init (int argc, string argv); [CCode (cheader_filename = "gst/check/check.h")] public static void message_error (Gst.Message message, Gst.MessageType type, GLib.Quark domain, int code); [CCode (cheader_filename = "gst/check/check.h")] + public static void object_destroyed_on_unref (void* object_to_unref); + [CCode (cheader_filename = "gst/check/check.h")] public static Gst.Element setup_element (string factory); [CCode (cheader_filename = "gst/check/check.h")] public static void setup_events (Gst.Pad srcpad, Gst.Element element, Gst.Caps? caps, Gst.Format format); diff --git a/vapi/gstreamer-controller-1.0.vapi b/vapi/gstreamer-controller-1.0.vapi index dacf931c7..bd3a54498 100644 --- a/vapi/gstreamer-controller-1.0.vapi +++ b/vapi/gstreamer-controller-1.0.vapi @@ -17,11 +17,30 @@ namespace Gst { [NoAccessorMethod] public Gst.ControlSource control_source_r { owned get; set construct; } } + [CCode (cheader_filename = "gst/controller/controller.h", cname = "GstControlPoint", copy_function = "g_boxed_copy", free_function = "g_boxed_free", lower_case_cprefix = "gst_control_point_", type_id = "gst_control_point_get_type ()")] + [Compact] + [GIR (name = "ControlPoint")] + public class ControlPoint { + [CCode (cname = "cache.cubic.h")] + public double cache_cubic_h; + [CCode (cname = "cache.cubic.z")] + public double cache_cubic_z; + public Gst.ClockTime timestamp; + public double value; + } [CCode (cheader_filename = "gst/controller/controller.h", cname = "GstDirectControlBinding", lower_case_cprefix = "gst_direct_control_binding_", type_id = "gst_direct_control_binding_get_type ()")] [GIR (name = "DirectControlBinding")] public class DirectControlBinding : Gst.ControlBinding { + [CCode (array_length = false, array_null_terminated = true, cname = "ABI._gst_reserved")] + public weak void*[] ABI__gst_reserved; + [CCode (cname = "ABI.abi.want_absolute")] + public bool ABI_abi_want_absolute; [CCode (has_construct_function = false, type = "GstControlBinding*")] public DirectControlBinding (Gst.Object object, string property_name, Gst.ControlSource cs); + [CCode (cname = "gst_direct_control_binding_new_absolute", has_construct_function = false, type = "GstControlBinding*")] + public DirectControlBinding..new_with_absolute (Gst.Object object, string property_name, Gst.ControlSource cs); + [NoAccessorMethod] + public bool absolute { get; construct; } [NoAccessorMethod] public Gst.ControlSource control_source { owned get; set construct; } } @@ -65,6 +84,9 @@ namespace Gst { public bool set_from_list (GLib.SList timedvalues); public bool unset (Gst.ClockTime timestamp); public void unset_all (); + public signal void value_added (Gst.Controller.ControlPoint timed_value); + public signal void value_changed (Gst.Controller.ControlPoint timed_value); + public signal void value_removed (Gst.Controller.ControlPoint timed_value); } [CCode (cheader_filename = "gst/controller/controller.h", cname = "GstTriggerControlSource", lower_case_cprefix = "gst_trigger_control_source_", type_id = "gst_trigger_control_source_get_type ()")] [GIR (name = "TriggerControlSource")] @@ -74,16 +96,6 @@ namespace Gst { [NoAccessorMethod] public int64 tolerance { get; set; } } - [CCode (cheader_filename = "gst/controller/controller.h", cname = "GstControlPoint", has_type_id = false)] - [GIR (name = "ControlPoint")] - public struct ControlPoint { - public Gst.ClockTime timestamp; - public double value; - [CCode (cname = "cache.cubic.h")] - public double cache_cubic_h; - [CCode (cname = "cache.cubic.z")] - public double cache_cubic_z; - } [CCode (cheader_filename = "gst/controller/controller.h", cname = "GstInterpolationMode", cprefix = "GST_INTERPOLATION_MODE_", type_id = "gst_interpolation_mode_get_type ()")] [GIR (name = "InterpolationMode")] public enum InterpolationMode { diff --git a/vapi/gstreamer-net-1.0.vapi b/vapi/gstreamer-net-1.0.vapi index 7e1675a86..5d4a8563c 100644 --- a/vapi/gstreamer-net-1.0.vapi +++ b/vapi/gstreamer-net-1.0.vapi @@ -9,12 +9,36 @@ namespace Gst { [CCode (has_construct_function = false, type = "GstClock*")] public ClientClock (string name, string remote_address, int remote_port, Gst.ClockTime base_time); [NoAccessorMethod] - public string address { owned get; set; } + public string address { owned get; set construct; } [NoAccessorMethod] - public int port { get; set; } + public uint64 base_time { get; construct; } + [NoAccessorMethod] + public Gst.Bus bus { owned get; set; } + [NoAccessorMethod] + public Gst.Clock internal_clock { owned get; } + [NoAccessorMethod] + public uint64 minimum_update_interval { get; set; } + [NoAccessorMethod] + public int port { get; set construct; } [NoAccessorMethod] public uint64 round_trip_limit { get; set; } } + [CCode (cheader_filename = "gst/net/net.h", cname = "GstNtpClock", lower_case_cprefix = "gst_ntp_clock_", type_id = "gst_ntp_clock_get_type ()")] + [GIR (name = "NtpClock")] + public class NtpClock : Gst.Net.ClientClock { + [CCode (has_construct_function = false, type = "GstClock*")] + public NtpClock (string name, string remote_address, int remote_port, Gst.ClockTime base_time); + } + [CCode (cheader_filename = "gst/net/net.h", cname = "GstPtpClock", lower_case_cprefix = "gst_ptp_clock_", type_id = "gst_ptp_clock_get_type ()")] + [GIR (name = "PtpClock")] + public class PtpClock : Gst.SystemClock { + [CCode (has_construct_function = false, type = "GstClock*")] + public PtpClock (string name, uint domain); + [NoAccessorMethod] + public uint domain { get; construct; } + [NoAccessorMethod] + public Gst.Clock internal_clock { owned get; } + } [CCode (cheader_filename = "gst/net/net.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_net_time_packet_get_type ()")] [Compact] [GIR (name = "NetTimePacket")] @@ -51,11 +75,47 @@ namespace Gst { public Gst.Meta meta; public weak GLib.SocketAddress addr; } + [CCode (cheader_filename = "gst/net/net.h", has_type_id = false)] + [GIR (name = "NetControlMessageMeta")] + public struct ControlMessageMeta { + public Gst.Meta meta; + public weak GLib.SocketControlMessage message; + } + [CCode (cheader_filename = "gst/net/net.h", cname = "GstPtpStatisticsCallback", instance_pos = 2.9)] + public delegate bool PtpStatisticsCallback (uint8 domain, Gst.Structure stats); + [CCode (cheader_filename = "gst/net/net.h", cname = "GST_PTP_CLOCK_ID_NONE")] + public const uint64 PTP_CLOCK_ID_NONE; + [CCode (cheader_filename = "gst/net/net.h", cname = "GST_PTP_STATISTICS_BEST_MASTER_CLOCK_SELECTED")] + public const string PTP_STATISTICS_BEST_MASTER_CLOCK_SELECTED; + [CCode (cheader_filename = "gst/net/net.h", cname = "GST_PTP_STATISTICS_NEW_DOMAIN_FOUND")] + public const string PTP_STATISTICS_NEW_DOMAIN_FOUND; + [CCode (cheader_filename = "gst/net/net.h", cname = "GST_PTP_STATISTICS_PATH_DELAY_MEASURED")] + public const string PTP_STATISTICS_PATH_DELAY_MEASURED; + [CCode (cheader_filename = "gst/net/net.h", cname = "GST_PTP_STATISTICS_TIME_UPDATED")] + public const string PTP_STATISTICS_TIME_UPDATED; [CCode (cheader_filename = "gst/net/net.h")] public static GLib.Type address_meta_api_get_type (); [CCode (cheader_filename = "gst/net/net.h")] public static unowned Gst.MetaInfo? address_meta_get_info (); [CCode (cheader_filename = "gst/net/net.h", cname = "gst_buffer_add_net_address_meta")] public static unowned Gst.Net.AddressMeta? buffer_add_net_address_meta (Gst.Buffer buffer, GLib.SocketAddress addr); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_buffer_add_net_control_message_meta")] + public static unowned Gst.Net.ControlMessageMeta? buffer_add_net_control_message_meta (Gst.Buffer buffer, GLib.SocketControlMessage message); + [CCode (cheader_filename = "gst/net/net.h")] + public static GLib.Type control_message_meta_api_get_type (); + [CCode (cheader_filename = "gst/net/net.h")] + public static unowned Gst.MetaInfo? control_message_meta_get_info (); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_ptp_deinit")] + public static void ptp_deinit (); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_ptp_init")] + public static bool ptp_init (uint64 clock_id, [CCode (array_length = false, array_null_terminated = true)] string[]? interfaces); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_ptp_is_initialized")] + public static bool ptp_is_initialized (); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_ptp_is_supported")] + public static bool ptp_is_supported (); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_ptp_statistics_callback_add")] + public static ulong ptp_statistics_callback_add (owned Gst.Net.PtpStatisticsCallback callback); + [CCode (cheader_filename = "gst/net/net.h", cname = "gst_ptp_statistics_callback_remove")] + public static void ptp_statistics_callback_remove (ulong id); } } diff --git a/vapi/gstreamer-pbutils-1.0.vapi b/vapi/gstreamer-pbutils-1.0.vapi index 8140c7b06..b0270e4a1 100644 --- a/vapi/gstreamer-pbutils-1.0.vapi +++ b/vapi/gstreamer-pbutils-1.0.vapi @@ -76,6 +76,7 @@ namespace Gst { [CCode (has_construct_function = false)] protected DiscovererInfo (); public Gst.PbUtils.DiscovererInfo copy (); + public static Gst.PbUtils.DiscovererInfo from_variant (GLib.Variant variant); public GLib.List get_audio_streams (); public GLib.List get_container_streams (); public Gst.ClockTime get_duration (); @@ -93,6 +94,7 @@ namespace Gst { public unowned Gst.Toc get_toc (); public unowned string get_uri (); public GLib.List get_video_streams (); + public GLib.Variant to_variant (Gst.PbUtils.DiscovererSerializeFlags flags); } [CCode (cheader_filename = "gst/pbutils/pbutils.h", cname = "GstDiscovererStreamInfo", lower_case_cprefix = "gst_discoverer_stream_info_", type_id = "gst_discoverer_stream_info_get_type ()")] [GIR (name = "DiscovererStreamInfo")] @@ -156,6 +158,7 @@ namespace Gst { protected EncodingProfile (); public static Gst.PbUtils.EncodingProfile find (string targetname, string profilename, string? category); public static Gst.PbUtils.EncodingProfile from_discoverer (Gst.PbUtils.DiscovererInfo info); + public bool get_allow_dynamic_output (); public unowned string get_description (); public unowned string get_file_extension (); public Gst.Caps get_format (); @@ -166,8 +169,11 @@ namespace Gst { public unowned string get_preset_name (); public Gst.Caps get_restriction (); public unowned string get_type_nick (); + public bool is_enabled (); public bool is_equal (Gst.PbUtils.EncodingProfile b); + public void set_allow_dynamic_output (bool allow_dynamic_output); public void set_description (string description); + public void set_enabled (bool enabled); public void set_format (Gst.Caps format); public void set_name (string name); public void set_presence (uint presence); @@ -210,6 +216,9 @@ namespace Gst { [CCode (has_construct_function = false)] public InstallPluginsContext (); public void free (); + public void set_confirm_search (bool confirm_search); + public void set_desktop_id (string desktop_id); + public void set_startup_notification_id (string startup_id); public void set_xid (uint xid); } [CCode (cheader_filename = "gst/pbutils/pbutils.h", cname = "GstDiscovererResult", cprefix = "GST_DISCOVERER_", type_id = "gst_discoverer_result_get_type ()")] @@ -222,6 +231,16 @@ namespace Gst { BUSY, MISSING_PLUGINS } + [CCode (cheader_filename = "gst/pbutils/pbutils.h", cname = "GstDiscovererSerializeFlags", cprefix = "GST_DISCOVERER_SERIALIZE_", type_id = "gst_discoverer_serialize_flags_get_type ()")] + [Flags] + [GIR (name = "DiscovererSerializeFlags")] + public enum DiscovererSerializeFlags { + BASIC, + CAPS, + TAGS, + MISC, + ALL + } [CCode (cheader_filename = "gst/pbutils/pbutils.h", cname = "GstInstallPluginsReturn", cprefix = "GST_INSTALL_PLUGINS_", type_id = "gst_install_plugins_return_get_type ()")] [GIR (name = "InstallPluginsReturn")] public enum InstallPluginsReturn { diff --git a/vapi/gstreamer-rtp-1.0.vapi b/vapi/gstreamer-rtp-1.0.vapi index 8f67ae7e9..1c99bbed6 100644 --- a/vapi/gstreamer-rtp-1.0.vapi +++ b/vapi/gstreamer-rtp-1.0.vapi @@ -39,6 +39,8 @@ namespace Gst { public virtual bool packet_lost (Gst.Event event); [NoWrapper] public virtual Gst.Buffer process (Gst.Buffer @in); + [NoWrapper] + public virtual Gst.Buffer process_rtp_packet (Gst.RTP.Buffer rtp_buffer); public Gst.FlowReturn push (Gst.Buffer out_buf); public Gst.FlowReturn push_list (Gst.BufferList out_list); [NoWrapper] @@ -151,7 +153,14 @@ namespace Gst { public weak string encoding_parameters; public uint bitrate; } - [CCode (cheader_filename = "gst/rtp/rtp.h", cprefix = "GST_RTP_PAYLOAD_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtp/rtp.h", cprefix = "GST_RTP_BUFFER_MAP_FLAG_", type_id = "gst_rtp_buffer_map_flags_get_type ()")] + [Flags] + [GIR (name = "RTPBufferMapFlags")] + public enum BufferMapFlags { + SKIP_PADDING, + LAST + } + [CCode (cheader_filename = "gst/rtp/rtp.h", cprefix = "GST_RTP_PAYLOAD_", type_id = "gst_rtp_payload_get_type ()")] [GIR (name = "RTPPayload")] public enum Payload { PCMU, @@ -216,6 +225,15 @@ namespace Gst { public const int TS48; public const string TS48_STRING; } + [CCode (cheader_filename = "gst/rtp/rtp.h", cprefix = "GST_RTP_PROFILE_", type_id = "gst_rtp_profile_get_type ()")] + [GIR (name = "RTPProfile")] + public enum Profile { + UNKNOWN, + AVP, + SAVP, + AVPF, + SAVPF + } [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GST_RTP_HDREXT_BASE")] public const string HDREXT_BASE; [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GST_RTP_HDREXT_NTP_56")] @@ -366,14 +384,14 @@ namespace Gst { [CCode (cname = "gst_rtcp_packet_sr_set_sender_info")] public void sr_set_sender_info (uint32 ssrc, uint64 ntptime, uint32 rtptime, uint32 packet_count, uint32 octet_count); } - [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GstRTCPFBType", cprefix = "GST_RTCP_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GstRTCPFBType", cprefix = "GST_RTCP_", type_id = "gst_rtcpfb_type_get_type ()")] [GIR (name = "RTCPFBType")] public enum FBType { FB_TYPE_INVALID, RTPFB_TYPE_NACK, RTPFB_TYPE_TMMBR, RTPFB_TYPE_TMMBN, - RTPFB_TYPE_RCTP_SR_REQ, + RTPFB_TYPE_RTCP_SR_REQ, PSFB_TYPE_PLI, PSFB_TYPE_SLI, PSFB_TYPE_RPSI, @@ -383,7 +401,7 @@ namespace Gst { PSFB_TYPE_TSTN, PSFB_TYPE_VBCN } - [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GstRTCPSDESType", cprefix = "GST_RTCP_SDES_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GstRTCPSDESType", cprefix = "GST_RTCP_SDES_", type_id = "gst_rtcpsdes_type_get_type ()")] [GIR (name = "RTCPSDESType")] public enum SDESType { INVALID, @@ -397,7 +415,7 @@ namespace Gst { NOTE, PRIV } - [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GstRTCPType", cprefix = "GST_RTCP_TYPE_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GstRTCPType", cprefix = "GST_RTCP_TYPE_", type_id = "gst_rtcp_type_get_type ()")] [GIR (name = "RTCPType")] public enum Type { INVALID, @@ -417,6 +435,8 @@ namespace Gst { public const int MAX_SDES; [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GST_RTCP_MAX_SDES_ITEM_COUNT")] public const int MAX_SDES_ITEM_COUNT; + [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GST_RTCP_REDUCED_SIZE_VALID_MASK")] + public const int REDUCED_SIZE_VALID_MASK; [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GST_RTCP_VALID_MASK")] public const int VALID_MASK; [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "GST_RTCP_VALID_VALUE")] @@ -435,6 +455,10 @@ namespace Gst { public static bool buffer_validate (Gst.Buffer buffer); [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "gst_rtcp_buffer_validate_data")] public static bool buffer_validate_data ([CCode (array_length_cname = "len", array_length_pos = 1.1, array_length_type = "guint")] uint8[] data); + [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "gst_rtcp_buffer_validate_data_reduced")] + public static bool buffer_validate_data_reduced ([CCode (array_length_cname = "len", array_length_pos = 1.1, array_length_type = "guint")] uint8[] data); + [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "gst_rtcp_buffer_validate_reduced")] + public static bool buffer_validate_reduced (Gst.Buffer buffer); [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "gst_rtcp_ntp_to_unix")] public static uint64 ntp_to_unix (uint64 ntptime); [CCode (cheader_filename = "gst/rtp/rtp.h", cname = "gst_rtcp_sdes_name_to_type")] diff --git a/vapi/gstreamer-rtsp-1.0.vapi b/vapi/gstreamer-rtsp-1.0.vapi index ccc7e90bb..0c3ff52aa 100644 --- a/vapi/gstreamer-rtsp-1.0.vapi +++ b/vapi/gstreamer-rtsp-1.0.vapi @@ -14,9 +14,11 @@ namespace Gst { public Gst.RTSP.Result flush (bool flush); public Gst.RTSP.Result free (); public unowned string get_ip (); + public unowned GLib.Socket get_read_socket (); public bool get_remember_session_id (); public unowned GLib.TlsConnection get_tls () throws GLib.Error; public GLib.TlsDatabase get_tls_database (); + public GLib.TlsInteraction get_tls_interaction (); public GLib.TlsCertificateFlags get_tls_validation_flags (); public unowned string get_tunnelid (); public Gst.RTSP.Url get_url (); @@ -36,6 +38,7 @@ namespace Gst { public Gst.RTSP.Result set_qos_dscp (uint qos_dscp); public void set_remember_session_id (bool remember); public void set_tls_database (GLib.TlsDatabase database); + public void set_tls_interaction (GLib.TlsInteraction interaction); public bool set_tls_validation_flags (GLib.TlsCertificateFlags flags); public void set_tunneled (bool tunneled); public Gst.RTSP.Result write (uint8 data, uint size, GLib.TimeVal timeout); @@ -68,7 +71,7 @@ namespace Gst { public void get_send_backlog (out size_t bytes, out uint messages); public void reset (); public Gst.RTSP.Result send_message (Gst.RTSP.Message message, out uint id); - public void set_flushing (bool flush); + public void set_flushing (bool flushing); public void set_send_backlog (size_t bytes, uint messages); public void unref (); public Gst.RTSP.Result wait_backlog (GLib.TimeVal timeout); @@ -108,11 +111,13 @@ namespace Gst { [CCode (cname = "type_data.data.channel")] public uint8 type_data_data_channel; public Gst.RTSP.Result add_header (Gst.RTSP.HeaderField field, string value); + public Gst.RTSP.Result add_header_by_name (string header, string value); public Gst.RTSP.Result append_headers (GLib.StringBuilder str); public Gst.RTSP.Result dump (); public Gst.RTSP.Result free (); public Gst.RTSP.Result get_body ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "guint")] out unowned uint8[] data); public Gst.RTSP.Result get_header (Gst.RTSP.HeaderField field, out unowned string value, int indx); + public Gst.RTSP.Result get_header_by_name (string header, out unowned string value, int index); public Gst.RTSP.MsgType get_type (); public Gst.RTSP.Result init (); public Gst.RTSP.Result init_data (uint8 channel); @@ -122,10 +127,12 @@ namespace Gst { public Gst.RTSP.Result parse_request (out Gst.RTSP.Method method, out string uri, out Gst.RTSP.Version version); public Gst.RTSP.Result parse_response (out Gst.RTSP.StatusCode code, out string reason, out Gst.RTSP.Version version); public Gst.RTSP.Result remove_header (Gst.RTSP.HeaderField field, int indx); + public Gst.RTSP.Result remove_header_by_name (string header, int index); public Gst.RTSP.Result set_body ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "guint")] uint8[] data); public Gst.RTSP.Result steal_body ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "guint")] out uint8[] data); public Gst.RTSP.Result take_body ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "guint")] owned uint8[] data); public Gst.RTSP.Result take_header (Gst.RTSP.HeaderField field, owned string value); + public Gst.RTSP.Result take_header_by_name (string header, owned string value); public Gst.RTSP.Result unset (); } [CCode (cheader_filename = "gst/rtsp/rtsp.h", has_type_id = false)] @@ -293,10 +300,9 @@ namespace Gst { [Flags] [GIR (name = "RTSPLowerTrans")] public enum LowerTrans { - [CCode (cname = "GST_RTSP_LOWER_TRANS_UDP")] - UDP_UNICAST, - [CCode (cname = "GST_RTSP_LOWER_TRANS_UDP_MCAST")] - UDP_MULTICAST, + UNKNOWN, + UDP, + UDP_MCAST, TCP, HTTP, TLS @@ -320,7 +326,7 @@ namespace Gst { GET, POST } - [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_MESSAGE_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_MESSAGE_", type_id = "gst_rtsp_msg_type_get_type ()")] [GIR (name = "RTSPMsgType")] public enum MsgType { INVALID, @@ -334,12 +340,13 @@ namespace Gst { [Flags] [GIR (name = "RTSPProfile")] public enum Profile { + UNKNOWN, AVP, SAVP, AVPF, SAVPF } - [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_RANGE_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_RANGE_", type_id = "gst_rtsp_range_unit_get_type ()")] [GIR (name = "RTSPRangeUnit")] public enum RangeUnit { SMPTE, @@ -430,7 +437,7 @@ namespace Gst { RTSP_VERSION_NOT_SUPPORTED, OPTION_NOT_SUPPORTED } - [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_TIME_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_TIME_", type_id = "gst_rtsp_time_type_get_type ()")] [GIR (name = "RTSPTimeType")] public enum TimeType { SECONDS, @@ -439,7 +446,7 @@ namespace Gst { FRAMES, UTC } - [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_TRANS_", has_type_id = false)] + [CCode (cheader_filename = "gst/rtsp/rtsp.h", cprefix = "GST_RTSP_TRANS_", type_id = "gst_rtsp_trans_mode_get_type ()")] [Flags] [GIR (name = "RTSPTransMode")] public enum TransMode { diff --git a/vapi/gstreamer-video-1.0.vapi b/vapi/gstreamer-video-1.0.vapi index 82dce6208..778fd3504 100644 --- a/vapi/gstreamer-video-1.0.vapi +++ b/vapi/gstreamer-video-1.0.vapi @@ -46,7 +46,7 @@ namespace Gst { public class CodecState { public weak Gst.Caps caps; public weak Gst.Buffer codec_data; - public Gst.Video.Info info; + public weak Gst.Video.Info info; public Gst.Video.CodecState @ref (); public void unref (); } @@ -60,6 +60,15 @@ namespace Gst { protected ColorBalanceChannel (); public virtual signal void value_changed (int value); } + [CCode (cheader_filename = "gst/video/video.h")] + [Compact] + [GIR (name = "VideoConverter")] + public class Converter { + public void frame (Gst.Video.Frame src, Gst.Video.Frame dest); + public void free (); + public unowned Gst.Structure get_config (); + public bool set_config (owned Gst.Structure config); + } [CCode (cheader_filename = "gst/video/video.h", type_id = "gst_video_decoder_get_type ()")] [GIR (name = "VideoDecoder")] public abstract class Decoder : Gst.Element { @@ -72,6 +81,8 @@ namespace Gst { public virtual bool close (); [NoWrapper] public virtual bool decide_allocation (Gst.Query query); + [NoWrapper] + public virtual Gst.FlowReturn drain (); public Gst.FlowReturn drop_frame (owned Gst.Video.CodecFrame frame); [NoWrapper] public virtual Gst.FlowReturn finish (); @@ -93,9 +104,11 @@ namespace Gst { public size_t get_pending_frame_size (); public double get_qos_proportion (); [NoWrapper] + public virtual Gst.Caps getcaps (Gst.Caps filter); + [NoWrapper] public virtual Gst.FlowReturn handle_frame (Gst.Video.CodecFrame frame); public Gst.FlowReturn have_frame (); - public void merge_tags (Gst.TagList tags, Gst.TagMergeMode mode); + public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode); public virtual bool negotiate (); [NoWrapper] public virtual bool open (); @@ -103,6 +116,7 @@ namespace Gst { public virtual Gst.FlowReturn parse (Gst.Video.CodecFrame frame, Gst.Base.Adapter adapter, bool at_eos); [NoWrapper] public virtual bool propose_allocation (Gst.Query query); + public Gst.Caps proxy_getcaps (Gst.Caps? caps, Gst.Caps? filter); public void release_frame (owned Gst.Video.CodecFrame frame); [NoWrapper] public virtual bool reset (bool hard); @@ -114,6 +128,7 @@ namespace Gst { public void set_needs_format (bool enabled); public Gst.Video.CodecState set_output_state (Gst.Video.Format fmt, uint width, uint height, Gst.Video.CodecState? reference); public void set_packetized (bool packetized); + public void set_use_default_pad_acceptcaps (bool use); [NoWrapper] public virtual bool sink_event (Gst.Event event); [NoWrapper] @@ -126,6 +141,15 @@ namespace Gst { public virtual bool start (); [NoWrapper] public virtual bool stop (); + [NoWrapper] + public virtual bool transform_meta (Gst.Video.CodecFrame frame, Gst.Meta meta); + } + [CCode (cheader_filename = "gst/video/video.h")] + [Compact] + [GIR (name = "VideoDither")] + public class Dither { + public void free (); + public void line (void* line, uint x, uint y, uint width); } [CCode (cheader_filename = "gst/video/video.h", type_id = "gst_video_encoder_get_type ()")] [GIR (name = "VideoEncoder")] @@ -153,7 +177,7 @@ namespace Gst { public virtual Gst.Caps getcaps (Gst.Caps filter); [NoWrapper] public virtual Gst.FlowReturn handle_frame (Gst.Video.CodecFrame frame); - public void merge_tags (Gst.TagList tags, Gst.TagMergeMode mode); + public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode); public virtual bool negotiate (); [NoWrapper] public virtual bool open (); @@ -161,13 +185,14 @@ namespace Gst { public virtual Gst.FlowReturn pre_push (Gst.Video.CodecFrame frame); [NoWrapper] public virtual bool propose_allocation (Gst.Query query); - public Gst.Caps proxy_getcaps (Gst.Caps caps, Gst.Caps filter); + public Gst.Caps proxy_getcaps (Gst.Caps? caps, Gst.Caps? filter); [NoWrapper] public virtual bool reset (bool hard); [NoWrapper] 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); + public void set_min_pts (Gst.ClockTime min_pts); public Gst.Video.CodecState set_output_state (owned Gst.Caps caps, Gst.Video.CodecState? reference); [NoWrapper] public virtual bool sink_event (Gst.Event event); @@ -181,13 +206,15 @@ namespace Gst { public virtual bool start (); [NoWrapper] public virtual bool stop (); + [NoWrapper] + public virtual bool transform_meta (Gst.Video.CodecFrame frame, Gst.Meta meta); } [CCode (cheader_filename = "gst/video/video.h", type_id = "gst_video_filter_get_type ()")] [GIR (name = "VideoFilter")] public abstract class Filter : Gst.Base.Transform { - public Gst.Video.Info in_info; + public weak Gst.Video.Info in_info; public bool negotiated; - public Gst.Video.Info out_info; + public weak Gst.Video.Info out_info; [CCode (has_construct_function = false)] protected Filter (); [NoWrapper] @@ -197,6 +224,49 @@ namespace Gst { [NoWrapper] public virtual Gst.FlowReturn transform_frame_ip (Gst.Video.Frame frame); } + [CCode (cheader_filename = "gst/video/video.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_video_info_get_type ()")] + [Compact] + [GIR (name = "VideoInfo")] + public class Info { + [CCode (cname = "ABI.abi.multiview_flags")] + public Gst.Video.MultiviewFlags ABI_abi_multiview_flags; + [CCode (cname = "ABI.abi.multiview_mode")] + public Gst.Video.MultiviewMode ABI_abi_multiview_mode; + public Gst.Video.ChromaSite chroma_site; + public Gst.Video.Colorimetry colorimetry; + public weak Gst.Video.FormatInfo? finfo; + public Gst.Video.Flags flags; + public int fps_d; + public int fps_n; + public int height; + public Gst.Video.InterlaceMode interlace_mode; + [CCode (array_length = false, array_null_terminated = true)] + public weak size_t[] offset; + public int par_d; + public int par_n; + public size_t size; + [CCode (array_length = false, array_null_terminated = true)] + public weak int[] stride; + public int views; + public int width; + [CCode (has_construct_function = false)] + public Info (); + public void align (Gst.Video.Alignment align); + public bool convert (Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value); + public Gst.Video.Info copy (); + public void free (); + public bool from_caps (Gst.Caps caps); + public void init (); + public bool is_equal (Gst.Video.Info other); + public void set_format (Gst.Video.Format format, uint width, uint height); + public Gst.Caps to_caps (); + } + [CCode (cheader_filename = "gst/video/video.h", lower_case_cprefix = "gst_video_multiview_flagset_", type_id = "gst_video_multiview_flagset_get_type ()")] + [GIR (name = "VideoMultiviewFlagsSet")] + public class MultiviewFlagsSet : Gst.FlagSet { + [CCode (has_construct_function = false)] + protected MultiviewFlagsSet (); + } [CCode (cheader_filename = "gst/video/video-overlay-composition.h", ref_function = "gst_video_overlay_composition_ref", type_id = "gst_video_overlay_composition_get_type ()", unref_function = "gst_video_overlay_composition_unref")] [Compact] [GIR (name = "VideoOverlayComposition")] @@ -231,6 +301,17 @@ namespace Gst { public void set_global_alpha (float global_alpha); public void set_render_rectangle (int render_x, int render_y, uint render_width, uint render_height); } + [CCode (cheader_filename = "gst/video/video.h")] + [Compact] + [GIR (name = "VideoScaler")] + public class Scaler { + public void @2d (Gst.Video.Scaler vscale, Gst.Video.Format format, void* src, int src_stride, void* dest, int dest_stride, uint x, uint y, uint width, uint height); + public void free (); + public double get_coeff (uint out_offset, uint in_offset, uint n_taps); + public uint get_max_taps (); + public void horizontal (Gst.Video.Format format, void* src, void* dest, uint dest_offset, uint width); + public void vertical (Gst.Video.Format format, void* src_lines, void* dest, uint dest_offset, uint width); + } [CCode (cheader_filename = "gst/video/video.h", type_id = "gst_video_sink_get_type ()")] [GIR (name = "VideoSink")] public class Sink : Gst.Base.Sink { @@ -265,8 +346,10 @@ namespace Gst { public static Gst.Video.NavigationMessageType message_get_type (Gst.Message message); public static Gst.Message message_new_angles_changed (Gst.Object src, uint cur_angle, uint n_angles); public static Gst.Message message_new_commands_changed (Gst.Object src); + public static Gst.Message message_new_event (Gst.Object src, Gst.Event event); public static Gst.Message message_new_mouse_over (Gst.Object src, bool active); public static bool message_parse_angles_changed (Gst.Message message, uint cur_angle, uint n_angles); + public static bool message_parse_event (Gst.Message message, out Gst.Event event); public static bool message_parse_mouse_over (Gst.Message message, bool active); public static Gst.Video.NavigationQueryType query_get_type (Gst.Query query); public static Gst.Query query_new_angles (); @@ -318,6 +401,19 @@ namespace Gst { public void reset (); } [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] + [GIR (name = "VideoColorPrimariesInfo")] + public struct ColorPrimariesInfo { + public Gst.Video.ColorPrimaries primaries; + public double Wx; + public double Wy; + public double Rx; + public double Ry; + public double Gx; + public double Gy; + public double Bx; + public double By; + } + [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] [GIR (name = "VideoColorimetry")] public struct Colorimetry { public Gst.Video.ColorRange range; @@ -325,6 +421,7 @@ namespace Gst { public Gst.Video.TransferFunction transfer; public Gst.Video.ColorPrimaries primaries; public bool from_string (string color); + public bool is_equal (Gst.Video.Colorimetry other); public bool matches (string color); public string to_string (); } @@ -374,7 +471,7 @@ namespace Gst { [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] [GIR (name = "VideoFrame")] public struct Frame { - public Gst.Video.Info info; + public weak Gst.Video.Info info; public Gst.Video.FrameFlags flags; public weak Gst.Buffer buffer; public void* meta; @@ -398,34 +495,6 @@ namespace Gst { public bool upload (uint texture_id); } [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] - [GIR (name = "VideoInfo")] - public struct Info { - public weak Gst.Video.FormatInfo? finfo; - public Gst.Video.InterlaceMode interlace_mode; - public Gst.Video.Flags flags; - public int width; - public int height; - public size_t size; - public int views; - public Gst.Video.ChromaSite chroma_site; - public Gst.Video.Colorimetry colorimetry; - public int par_n; - public int par_d; - public int fps_n; - public int fps_d; - [CCode (array_length = false, array_null_terminated = true)] - public weak size_t[] offset; - [CCode (array_length = false, array_null_terminated = true)] - public weak int[] stride; - public void align (Gst.Video.Alignment align); - public bool convert (Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value); - public bool from_caps (Gst.Caps caps); - public void init (); - public bool is_equal (Gst.Video.Info other); - public void set_format (Gst.Video.Format format, uint width, uint height); - public Gst.Caps to_caps (); - } - [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] [GIR (name = "VideoMeta")] public struct Meta { public Gst.Meta meta; @@ -446,8 +515,8 @@ namespace Gst { [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] [GIR (name = "VideoMetaTransform")] public struct MetaTransform { - public Gst.Video.Info in_info; - public Gst.Video.Info out_info; + public weak Gst.Video.Info in_info; + public weak Gst.Video.Info out_info; } [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] [GIR (name = "VideoOverlayCompositionMeta")] @@ -475,7 +544,28 @@ namespace Gst { public uint w; public uint h; } - [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_BUFFER_FLAG_", has_type_id = false)] + [CCode (cheader_filename = "gst/video/video.h", has_type_id = false)] + [GIR (name = "VideoResampler")] + public struct Resampler { + public int in_size; + public int out_size; + public uint max_taps; + public uint n_phases; + public uint32 offset; + public uint32 phase; + public uint32 n_taps; + public double taps; + public void clear (); + public bool init (Gst.Video.ResamplerMethod method, Gst.Video.ResamplerFlags flags, uint n_phases, uint n_taps, double shift, uint in_size, uint out_size, Gst.Structure options); + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_ALPHA_MODE_", type_id = "gst_video_alpha_mode_get_type ()")] + [GIR (name = "VideoAlphaMode")] + public enum AlphaMode { + COPY, + SET, + MULT + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_BUFFER_FLAG_", type_id = "gst_video_buffer_flags_get_type ()")] [Flags] [GIR (name = "VideoBufferFlags")] public enum BufferFlags { @@ -483,6 +573,8 @@ namespace Gst { TFF, RFF, ONEFIELD, + MULTIPLE_VIEW, + FIRST_IN_BUNDLE, LAST } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_CHROMA_FLAG_", type_id = "gst_video_chroma_flags_get_type ()")] @@ -498,6 +590,14 @@ namespace Gst { NEAREST, LINEAR } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_CHROMA_MODE_", type_id = "gst_video_chroma_mode_get_type ()")] + [GIR (name = "VideoChromaMode")] + public enum ChromaMode { + FULL, + UPSAMPLE_ONLY, + DOWNSAMPLE_ONLY, + NONE + } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_CHROMA_SITE_", type_id = "gst_video_chroma_site_get_type ()")] [Flags] [GIR (name = "VideoChromaSite")] @@ -535,7 +635,8 @@ namespace Gst { FCC, BT709, BT601, - SMPTE240M + SMPTE240M, + BT2020 } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_COLOR_PRIMARIES_", type_id = "gst_video_color_primaries_get_type ()")] [GIR (name = "VideoColorPrimaries")] @@ -546,7 +647,8 @@ namespace Gst { BT470BG, SMPTE170M, SMPTE240M, - FILM + FILM, + BT2020 } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_COLOR_RANGE_", type_id = "gst_video_color_range_get_type ()")] [GIR (name = "VideoColorRange")] @@ -555,6 +657,23 @@ namespace Gst { @0_255, @16_235 } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_DITHER_FLAG_", type_id = "gst_video_dither_flags_get_type ()")] + [Flags] + [GIR (name = "VideoDitherFlags")] + public enum DitherFlags { + NONE, + INTERLACED, + QUANTIZE + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_DITHER_", type_id = "gst_video_dither_method_get_type ()")] + [GIR (name = "VideoDitherMethod")] + public enum DitherMethod { + NONE, + VERTERR, + FLOYD_STEINBERG, + SIERRA_LITE, + BAYER + } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_FLAG_", type_id = "gst_video_flags_get_type ()")] [Flags] [GIR (name = "VideoFlags")] @@ -627,7 +746,14 @@ namespace Gst { GBR_10LE, NV16, NV24, - NV12_64Z32 + NV12_64Z32, + A420_10BE, + A420_10LE, + A422_10BE, + A422_10LE, + A444_10BE, + A444_10LE, + NV61 } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_FORMAT_FLAG_", type_id = "gst_video_format_flags_get_type ()")] [Flags] @@ -643,7 +769,7 @@ namespace Gst { UNPACK, TILED } - [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_FRAME_FLAG_", has_type_id = false)] + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_FRAME_FLAG_", type_id = "gst_video_frame_flags_get_type ()")] [Flags] [GIR (name = "VideoFrameFlags")] public enum FrameFlags { @@ -651,7 +777,16 @@ namespace Gst { INTERLACED, TFF, RFF, - ONEFIELD + ONEFIELD, + MULTIPLE_VIEW, + FIRST_IN_BUNDLE + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_FRAME_MAP_FLAG_", type_id = "gst_video_frame_map_flags_get_type ()")] + [Flags] + [GIR (name = "VideoFrameMapFlags")] + public enum FrameMapFlags { + NO_REF, + LAST } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_GL_TEXTURE_ORIENTATION_X_", has_type_id = false)] [GIR (name = "VideoGLTextureOrientation")] @@ -672,6 +807,12 @@ namespace Gst { R, RG } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_GAMMA_MODE_", type_id = "gst_video_gamma_mode_get_type ()")] + [GIR (name = "VideoGammaMode")] + public enum GammaMode { + NONE, + REMAP + } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_INTERLACE_MODE_", type_id = "gst_video_interlace_mode_get_type ()")] [GIR (name = "VideoInterlaceMode")] public enum InterlaceMode { @@ -680,6 +821,58 @@ namespace Gst { MIXED, FIELDS } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_MATRIX_MODE_", type_id = "gst_video_matrix_mode_get_type ()")] + [GIR (name = "VideoMatrixMode")] + public enum MatrixMode { + FULL, + INPUT_ONLY, + OUTPUT_ONLY, + NONE + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_MULTIVIEW_FLAGS_", type_id = "gst_video_multiview_flags_get_type ()")] + [Flags] + [GIR (name = "VideoMultiviewFlags")] + public enum MultiviewFlags { + NONE, + RIGHT_VIEW_FIRST, + LEFT_FLIPPED, + LEFT_FLOPPED, + RIGHT_FLIPPED, + RIGHT_FLOPPED, + HALF_ASPECT, + MIXED_MONO + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_", type_id = "gst_video_multiview_frame_packing_get_type ()")] + [GIR (name = "VideoMultiviewFramePacking")] + public enum MultiviewFramePacking { + NONE, + MONO, + LEFT, + RIGHT, + SIDE_BY_SIDE, + SIDE_BY_SIDE_QUINCUNX, + COLUMN_INTERLEAVED, + ROW_INTERLEAVED, + TOP_BOTTOM, + CHECKERBOARD + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_MULTIVIEW_MODE_", type_id = "gst_video_multiview_mode_get_type ()")] + [GIR (name = "VideoMultiviewMode")] + public enum MultiviewMode { + NONE, + MONO, + LEFT, + RIGHT, + SIDE_BY_SIDE, + SIDE_BY_SIDE_QUINCUNX, + COLUMN_INTERLEAVED, + ROW_INTERLEAVED, + TOP_BOTTOM, + CHECKERBOARD, + FRAME_BY_FRAME, + MULTIVIEW_FRAME_BY_FRAME, + SEPARATED + } [CCode (cheader_filename = "gst/video/video.h", cname = "GstNavigationCommand", cprefix = "GST_NAVIGATION_COMMAND_", type_id = "gst_navigation_command_get_type ()")] [GIR (name = "NavigationCommand")] public enum NavigationCommand { @@ -716,7 +909,8 @@ namespace Gst { INVALID, MOUSE_OVER, COMMANDS_CHANGED, - ANGLES_CHANGED + ANGLES_CHANGED, + EVENT } [CCode (cheader_filename = "gst/video/video.h", cname = "GstNavigationQueryType", cprefix = "GST_NAVIGATION_QUERY_", type_id = "gst_navigation_query_type_get_type ()")] [GIR (name = "NavigationQueryType")] @@ -740,6 +934,34 @@ namespace Gst { TRUNCATE_RANGE, INTERLACED } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_PRIMARIES_MODE_", type_id = "gst_video_primaries_mode_get_type ()")] + [GIR (name = "VideoPrimariesMode")] + public enum PrimariesMode { + NONE, + MERGE_ONLY, + FAST + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_RESAMPLER_FLAG_", type_id = "gst_video_resampler_flags_get_type ()")] + [GIR (name = "VideoResamplerFlags")] + public enum ResamplerFlags { + NONE + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_RESAMPLER_METHOD_", type_id = "gst_video_resampler_method_get_type ()")] + [GIR (name = "VideoResamplerMethod")] + public enum ResamplerMethod { + NEAREST, + LINEAR, + CUBIC, + SINC, + LANCZOS + } + [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_SCALER_FLAG_", type_id = "gst_video_scaler_flags_get_type ()")] + [Flags] + [GIR (name = "VideoScalerFlags")] + public enum ScalerFlags { + NONE, + INTERLACED + } [CCode (cheader_filename = "gst/video/video.h", cprefix = "GST_VIDEO_TILE_MODE_", type_id = "gst_video_tile_mode_get_type ()")] [GIR (name = "VideoTileMode")] public enum TileMode { @@ -764,7 +986,8 @@ namespace Gst { SRGB, GAMMA28, LOG100, - LOG316 + LOG316, + BT2020_12 } [CCode (cheader_filename = "gst/video/video.h", instance_pos = 2.9)] public delegate void ConvertSampleCallback (Gst.Sample sample, GLib.Error error); @@ -786,12 +1009,16 @@ namespace Gst { public const string CAPS_FEATURE_META_GST_VIDEO_META; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION")] public const string CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COLORIMETRY_BT2020")] + public const string COLORIMETRY_BT2020; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COLORIMETRY_BT601")] public const string COLORIMETRY_BT601; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COLORIMETRY_BT709")] public const string COLORIMETRY_BT709; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COLORIMETRY_SMPTE240M")] public const string COLORIMETRY_SMPTE240M; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COLORIMETRY_SRGB")] + public const string COLORIMETRY_SRGB; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COMP_A")] public const int COMP_A; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COMP_B")] @@ -810,6 +1037,48 @@ namespace Gst { public const int COMP_V; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_COMP_Y")] public const int COMP_Y; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_ALPHA_MODE")] + public const string CONVERTER_OPT_ALPHA_MODE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE")] + public const string CONVERTER_OPT_ALPHA_VALUE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_BORDER_ARGB")] + public const string CONVERTER_OPT_BORDER_ARGB; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_CHROMA_MODE")] + public const string CONVERTER_OPT_CHROMA_MODE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD")] + public const string CONVERTER_OPT_CHROMA_RESAMPLER_METHOD; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_DEST_HEIGHT")] + public const string CONVERTER_OPT_DEST_HEIGHT; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_DEST_WIDTH")] + public const string CONVERTER_OPT_DEST_WIDTH; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_DEST_X")] + public const string CONVERTER_OPT_DEST_X; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_DEST_Y")] + public const string CONVERTER_OPT_DEST_Y; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_DITHER_METHOD")] + public const string CONVERTER_OPT_DITHER_METHOD; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION")] + public const string CONVERTER_OPT_DITHER_QUANTIZATION; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_FILL_BORDER")] + public const string CONVERTER_OPT_FILL_BORDER; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_GAMMA_MODE")] + public const string CONVERTER_OPT_GAMMA_MODE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_MATRIX_MODE")] + public const string CONVERTER_OPT_MATRIX_MODE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_PRIMARIES_MODE")] + public const string CONVERTER_OPT_PRIMARIES_MODE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_RESAMPLER_METHOD")] + public const string CONVERTER_OPT_RESAMPLER_METHOD; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_RESAMPLER_TAPS")] + public const string CONVERTER_OPT_RESAMPLER_TAPS; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_SRC_HEIGHT")] + public const string CONVERTER_OPT_SRC_HEIGHT; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_SRC_WIDTH")] + public const string CONVERTER_OPT_SRC_WIDTH; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_SRC_X")] + public const string CONVERTER_OPT_SRC_X; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_CONVERTER_OPT_SRC_Y")] + public const string CONVERTER_OPT_SRC_Y; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_DECODER_MAX_ERRORS")] public const int DECODER_MAX_ERRORS; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_DECODER_SINK_NAME")] @@ -838,6 +1107,20 @@ namespace Gst { public const string META_TAG_VIDEO_STR; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS")] public const string OVERLAY_COMPOSITION_BLEND_FORMATS; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_RESAMPLER_OPT_CUBIC_B")] + public const string RESAMPLER_OPT_CUBIC_B; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_RESAMPLER_OPT_CUBIC_C")] + public const string RESAMPLER_OPT_CUBIC_C; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_RESAMPLER_OPT_ENVELOPE")] + public const string RESAMPLER_OPT_ENVELOPE; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_RESAMPLER_OPT_MAX_TAPS")] + public const string RESAMPLER_OPT_MAX_TAPS; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_RESAMPLER_OPT_SHARPEN")] + public const string RESAMPLER_OPT_SHARPEN; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_RESAMPLER_OPT_SHARPNESS")] + public const string RESAMPLER_OPT_SHARPNESS; + [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_SCALER_OPT_DITHER_METHOD")] + public const string SCALER_OPT_DITHER_METHOD; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_SIZE_RANGE")] public const string SIZE_RANGE; [CCode (cheader_filename = "gst/video/video.h", cname = "GST_VIDEO_TILE_TYPE_MASK")] @@ -851,20 +1134,46 @@ namespace Gst { [CCode (cheader_filename = "gst/video/video.h")] public static bool blend (Gst.Video.Frame dest, Gst.Video.Frame src, int x, int y, float global_alpha); [CCode (cheader_filename = "gst/video/video.h")] - public static void blend_scale_linear_RGBA (Gst.Video.Info src, Gst.Buffer src_buffer, int dest_height, int dest_width, out Gst.Video.Info dest, out Gst.Buffer dest_buffer); + public static void blend_scale_linear_RGBA (Gst.Video.Info src, Gst.Buffer src_buffer, int dest_height, int dest_width, out unowned Gst.Video.Info dest, out Gst.Buffer dest_buffer); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_add_video_gl_texture_upload_meta")] + public static unowned Gst.Video.GLTextureUploadMeta? buffer_add_video_gl_texture_upload_meta (Gst.Buffer buffer, Gst.Video.GLTextureOrientation texture_orientation, uint n_textures, Gst.Video.GLTextureType texture_type, [CCode (delegate_target_pos = 5.5)] Gst.Video.GLTextureUpload upload, GLib.BoxedCopyFunc user_data_copy, GLib.BoxedFreeFunc user_data_free); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_add_video_meta")] + public static unowned Gst.Video.Meta? buffer_add_video_meta (Gst.Buffer buffer, Gst.Video.FrameFlags flags, Gst.Video.Format format, uint width, uint height); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_add_video_meta_full")] + public static unowned Gst.Video.Meta? buffer_add_video_meta_full (Gst.Buffer buffer, Gst.Video.FrameFlags flags, Gst.Video.Format format, uint width, uint height, uint n_planes, size_t offset, int stride); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_add_video_overlay_composition_meta")] + public static unowned Gst.Video.OverlayCompositionMeta? buffer_add_video_overlay_composition_meta (Gst.Buffer buf, Gst.Video.OverlayComposition? comp); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_add_video_region_of_interest_meta")] + public static unowned Gst.Video.RegionOfInterestMeta? buffer_add_video_region_of_interest_meta (Gst.Buffer buffer, string roi_type, uint x, uint y, uint w, uint h); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_add_video_region_of_interest_meta_id")] + public static unowned Gst.Video.RegionOfInterestMeta? buffer_add_video_region_of_interest_meta_id (Gst.Buffer buffer, GLib.Quark roi_type, uint x, uint y, uint w, uint h); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_get_video_meta")] + public static unowned Gst.Video.Meta? buffer_get_video_meta (Gst.Buffer buffer); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_get_video_meta_id")] + public static unowned Gst.Video.Meta? buffer_get_video_meta_id (Gst.Buffer buffer, int id); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_get_video_region_of_interest_meta_id")] + public static unowned Gst.Video.RegionOfInterestMeta? buffer_get_video_region_of_interest_meta_id (Gst.Buffer buffer, int id); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_pool_config_get_video_alignment")] public static bool buffer_pool_config_get_video_alignment (Gst.Structure config, Gst.Video.Alignment align); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_buffer_pool_config_set_video_alignment")] public static void buffer_pool_config_set_video_alignment (Gst.Structure config, Gst.Video.Alignment align); [CCode (cheader_filename = "gst/video/video.h")] - public static bool calculate_display_ratio (uint dar_n, uint dar_d, uint video_width, uint video_height, uint video_par_n, uint video_par_d, uint display_par_n, uint display_par_d); + public static bool calculate_display_ratio (out uint dar_n, out uint dar_d, uint video_width, uint video_height, uint video_par_n, uint video_par_d, uint display_par_n, uint display_par_d); [CCode (cheader_filename = "gst/video/video.h")] public static Gst.Video.ChromaSite chroma_from_string (string s); [CCode (cheader_filename = "gst/video/video.h")] public static unowned string chroma_to_string (Gst.Video.ChromaSite site); [CCode (cheader_filename = "gst/video/video.h")] + public static bool color_matrix_get_Kr_Kb (Gst.Video.ColorMatrix matrix, double Kr, double Kb); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned Gst.Video.ColorPrimariesInfo? color_primaries_get_info (Gst.Video.ColorPrimaries primaries); + [CCode (cheader_filename = "gst/video/video.h")] public static void color_range_offsets (Gst.Video.ColorRange range, Gst.Video.FormatInfo info, out int offset, out int scale); [CCode (cheader_filename = "gst/video/video.h")] + public static double color_transfer_decode (Gst.Video.TransferFunction func, double val); + [CCode (cheader_filename = "gst/video/video.h")] + public static double color_transfer_encode (Gst.Video.TransferFunction func, double val); + [CCode (cheader_filename = "gst/video/video.h")] public static Gst.Sample convert_sample (Gst.Sample sample, Gst.Caps to_caps, Gst.ClockTime timeout) throws GLib.Error; [CCode (cheader_filename = "gst/video/video.h")] public static void convert_sample_async (Gst.Sample sample, Gst.Caps to_caps, Gst.ClockTime timeout, owned Gst.Video.ConvertSampleCallback callback); @@ -904,6 +1213,12 @@ namespace Gst { public static GLib.Type gl_texture_upload_meta_api_get_type (); [CCode (cheader_filename = "gst/video/video.h")] public static unowned Gst.MetaInfo? gl_texture_upload_meta_get_info (); + [CCode (cheader_filename = "gst/video/video.h")] + public static bool guess_framerate (Gst.ClockTime duration, out int dest_n, out int dest_d); + [CCode (cheader_filename = "gst/video/video.h")] + public static Gst.Video.InterlaceMode interlace_mode_from_string (string mode); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned string interlace_mode_to_string (Gst.Video.InterlaceMode mode); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_is_video_overlay_prepare_window_handle_message")] public static bool is_video_overlay_prepare_window_handle_message (Gst.Message msg); [CCode (cheader_filename = "gst/video/video.h")] @@ -912,6 +1227,24 @@ namespace Gst { public static unowned Gst.MetaInfo? meta_get_info (); [CCode (cheader_filename = "gst/video/video.h")] public static GLib.Quark meta_transform_scale_get_quark (); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned GLib.Value? multiview_get_doubled_height_modes (); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned GLib.Value? multiview_get_doubled_size_modes (); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned GLib.Value? multiview_get_doubled_width_modes (); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned GLib.Value? multiview_get_mono_modes (); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned GLib.Value? multiview_get_unpacked_modes (); + [CCode (cheader_filename = "gst/video/video.h")] + public static bool multiview_guess_half_aspect (Gst.Video.MultiviewMode mv_mode, uint width, uint height, uint par_n, uint par_d); + [CCode (cheader_filename = "gst/video/video.h")] + public static Gst.Video.MultiviewMode multiview_mode_from_caps_string (string caps_mview_mode); + [CCode (cheader_filename = "gst/video/video.h")] + public static unowned string multiview_mode_to_caps_string (Gst.Video.MultiviewMode mview_mode); + [CCode (cheader_filename = "gst/video/video.h")] + public static void multiview_video_info_change_mode (Gst.Video.Info info, Gst.Video.MultiviewMode out_mview_mode, Gst.Video.MultiviewFlags out_mview_flags); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_event_get_type")] public static Gst.Video.NavigationEventType navigation_event_get_type (Gst.Event event); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_event_parse_command")] @@ -928,10 +1261,14 @@ namespace Gst { public static Gst.Message navigation_message_new_angles_changed (Gst.Object src, uint cur_angle, uint n_angles); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_message_new_commands_changed")] public static Gst.Message navigation_message_new_commands_changed (Gst.Object src); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_message_new_event")] + public static Gst.Message navigation_message_new_event (Gst.Object src, Gst.Event event); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_message_new_mouse_over")] public static Gst.Message navigation_message_new_mouse_over (Gst.Object src, bool active); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_message_parse_angles_changed")] public static bool navigation_message_parse_angles_changed (Gst.Message message, uint cur_angle, uint n_angles); + [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_message_parse_event")] + public static bool navigation_message_parse_event (Gst.Message message, out Gst.Event event); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_message_parse_mouse_over")] public static bool navigation_message_parse_mouse_over (Gst.Message message, bool active); [CCode (cheader_filename = "gst/video/video.h", cname = "gst_navigation_query_get_type")] diff --git a/vapi/json-glib-1.0.vapi b/vapi/json-glib-1.0.vapi index 52dd6d291..9d43fb912 100644 --- a/vapi/json-glib-1.0.vapi +++ b/vapi/json-glib-1.0.vapi @@ -216,6 +216,11 @@ namespace Json { public abstract Json.Node serialize_property (string property_name, GLib.Value value, GLib.ParamSpec pspec); public abstract void set_property (GLib.ParamSpec pspec, GLib.Value value); } + [CCode (cheader_filename = "json-glib/json-glib.h", has_type_id = false)] + public struct ObjectIter { + public void init (Json.Object object); + public bool next (out unowned string member_name, out unowned Json.Node member_node); + } [CCode (cheader_filename = "json-glib/json-glib.h", cprefix = "JSON_NODE_", type_id = "json_node_type_get_type ()")] public enum NodeType { OBJECT, diff --git a/vapi/libgdata.vapi b/vapi/libgdata.vapi index 8dec4e52d..8ba56f8e0 100644 --- a/vapi/libgdata.vapi +++ b/vapi/libgdata.vapi @@ -140,7 +140,7 @@ namespace GData { public uint add_insertion (GData.Entry entry, [CCode (scope = "async")] owned GData.BatchOperationCallback callback); public uint add_query (string id, GLib.Type entry_type, [CCode (scope = "async")] owned GData.BatchOperationCallback callback); public uint add_update (GData.Entry entry, [CCode (scope = "async")] owned GData.BatchOperationCallback callback); - public unowned GData.AuthorizationDomain get_authorization_domain (); + public unowned GData.AuthorizationDomain? get_authorization_domain (); public unowned string get_feed_uri (); public unowned GData.Service get_service (); public bool run (GLib.Cancellable? cancellable = null) throws GLib.Error; @@ -270,7 +270,7 @@ namespace GData { public void set_start_min (int64 start_min); public void set_timezone (string? _timezone); [CCode (has_construct_function = false)] - public CalendarQuery.with_limits (string? q, int64? start_min, int64? start_max); + public CalendarQuery.with_limits (string? q, int64 start_min, int64 start_max); public bool future_events { get; set; } public uint max_attendees { get; set; } public string order_by { get; set; } @@ -326,7 +326,7 @@ namespace GData { public ClientLoginAuthorizer.for_authorization_domains (string client_id, GLib.List authorization_domains); public unowned string get_client_id (); public unowned string get_password (); - public unowned GLib.ProxyResolver get_proxy_resolver (); + public unowned GLib.ProxyResolver? get_proxy_resolver (); [Deprecated (since = "0.15.0")] public Soup.URI get_proxy_uri (); public uint get_timeout (); @@ -530,7 +530,7 @@ namespace GData { public DocumentsDocument (string? id); public GData.DownloadStream download (GData.DocumentsService service, string export_format, GLib.Cancellable? cancellable = null) throws GLib.Error; public string get_download_uri (string export_format); - public unowned string get_thumbnail_uri (); + public unowned string? get_thumbnail_uri (); } [CCode (cheader_filename = "gdata/gdata.h", type_id = "gdata_documents_drawing_get_type ()")] public class DocumentsDrawing : GData.DocumentsDocument, GData.AccessHandler { @@ -649,7 +649,7 @@ namespace GData { public DocumentsUploadQuery (); public string build_uri (); public bool get_convert (); - public unowned GData.DocumentsFolder get_folder (); + public unowned GData.DocumentsFolder? get_folder (); public void set_convert (bool convert); public void set_folder (GData.DocumentsFolder? folder); public bool convert { get; set; } @@ -659,7 +659,7 @@ namespace GData { public class DownloadStream : GLib.InputStream, GLib.Seekable { [CCode (has_construct_function = false, type = "GInputStream*")] public DownloadStream (GData.Service service, GData.AuthorizationDomain? domain, string download_uri, GLib.Cancellable? cancellable = null); - public unowned GData.AuthorizationDomain get_authorization_domain (); + public unowned GData.AuthorizationDomain? get_authorization_domain (); public unowned GLib.Cancellable get_cancellable (); public ssize_t get_content_length (); public unowned string get_content_type (); @@ -758,7 +758,7 @@ namespace GData { public class FreebaseResult : GData.Entry { [CCode (has_construct_function = false)] public FreebaseResult (); - public GLib.Variant dup_variant (); + public GLib.Variant? dup_variant (); [NoAccessorMethod] public GLib.Variant variant { owned get; } } @@ -769,7 +769,7 @@ namespace GData { public void add_filter (string property, string value); public void add_location (uint64 radius, double lat, double lon); public void close_filter (); - public unowned string get_language (); + public unowned string? get_language (); public bool get_stemmed (); public void open_filter (GData.FreebaseSearchFilterType filter_type); public void set_language (string? lang); @@ -781,7 +781,7 @@ namespace GData { public class FreebaseSearchResult : GData.FreebaseResult { [CCode (has_construct_function = false)] public FreebaseSearchResult (); - public unowned GData.FreebaseSearchResultItem get_item (uint i); + public unowned GData.FreebaseSearchResultItem? get_item (uint i); public uint get_num_items (); public uint get_total_hits (); } @@ -792,8 +792,8 @@ namespace GData { public unowned string get_language (); public unowned string get_mid (); public unowned string get_name (); - public unowned string get_notable_id (); - public unowned string get_notable_name (); + public unowned string? get_notable_id (); + public unowned string? get_notable_name (); public double get_score (); } [CCode (cheader_filename = "gdata/gdata.h", type_id = "gdata_freebase_service_get_type ()")] @@ -817,7 +817,7 @@ namespace GData { public unowned string get_id (); public uint64 get_property_count (string property); public uint64 get_property_hits (string property); - public unowned GData.FreebaseTopicValue get_property_value (string property, int64 item); + public unowned GData.FreebaseTopicValue? get_property_value (string property, int64 item); public GLib.GenericArray list_properties (); public GData.FreebaseTopicObject @ref (); public void unref (); @@ -827,8 +827,8 @@ namespace GData { [CCode (has_construct_function = false)] public FreebaseTopicQuery (string id); [CCode (array_length = false, array_null_terminated = true)] - public unowned string[] get_filter (); - public unowned string get_language (); + public unowned string[]? get_filter (); + public unowned string? get_language (); public void set_filter ([CCode (array_length = false, array_null_terminated = true)] string[]? filter); public void set_language (string? lang); [CCode (array_length = false, array_null_terminated = true)] @@ -1300,11 +1300,11 @@ namespace GData { public OAuth1Authorizer (string? application_name, GLib.Type service_type); [CCode (has_construct_function = false)] public OAuth1Authorizer.for_authorization_domains (string? application_name, GLib.List authorization_domains); - public unowned string get_application_name (); - public unowned string get_locale (); - public unowned GLib.ProxyResolver get_proxy_resolver (); + public unowned string? get_application_name (); + public unowned string? get_locale (); + public unowned GLib.ProxyResolver? get_proxy_resolver (); [Deprecated (since = "0.15.0")] - public Soup.URI get_proxy_uri (); + public Soup.URI? get_proxy_uri (); public uint get_timeout (); public string request_authentication_uri (out string token, out string token_secret, GLib.Cancellable? cancellable = null) throws GLib.Error; public async string request_authentication_uri_async (GLib.Cancellable? cancellable, out string token, out string token_secret) throws GLib.Error; @@ -1332,8 +1332,8 @@ namespace GData { public OAuth2Authorizer.for_authorization_domains (string client_id, string client_secret, string redirect_uri, GLib.List authorization_domains); public unowned string get_client_id (); public unowned string get_client_secret (); - public unowned string get_locale (); - public unowned GLib.ProxyResolver get_proxy_resolver (); + public unowned string? get_locale (); + public unowned GLib.ProxyResolver? get_proxy_resolver (); public unowned string get_redirect_uri (); public uint get_timeout (); public bool request_authorization (string authorization_code, GLib.Cancellable? cancellable = null) throws GLib.Error; @@ -1624,7 +1624,7 @@ namespace GData { public static GLib.List get_authorization_domains (GLib.Type service_type); public unowned GData.Authorizer get_authorizer (); public unowned string get_locale (); - public unowned GLib.ProxyResolver get_proxy_resolver (); + public unowned GLib.ProxyResolver? get_proxy_resolver (); [Deprecated (since = "0.15.0")] public unowned Soup.URI get_proxy_uri (); public uint get_timeout (); @@ -1706,10 +1706,10 @@ namespace GData { public TasksTask (string? id); public int64 get_completed (); public int64 get_due (); - public unowned string get_notes (); - public unowned string get_parent (); - public unowned string get_position (); - public unowned string get_status (); + public unowned string? get_notes (); + public unowned string? get_parent (); + public unowned string? get_position (); + public unowned string? get_status (); public void set_completed (int64 completed); public void set_due (int64 due); public void set_is_deleted (bool deleted); @@ -1735,7 +1735,7 @@ namespace GData { public class UploadStream : GLib.OutputStream { [CCode (has_construct_function = false, type = "GOutputStream*")] public UploadStream (GData.Service service, GData.AuthorizationDomain? domain, string method, string upload_uri, GData.Entry? entry, string slug, string content_type, GLib.Cancellable? cancellable = null); - public unowned GData.AuthorizationDomain get_authorization_domain (); + public unowned GData.AuthorizationDomain? get_authorization_domain (); public unowned GLib.Cancellable get_cancellable (); public int64 get_content_length (); public unowned string get_content_type (); @@ -1983,12 +1983,12 @@ namespace GData { public abstract string get_insert_comment_uri (GData.Comment comment); [NoWrapper] public abstract string get_query_comments_uri (); - public GData.Comment insert_comment (GData.Service service, GData.Comment comment_, GLib.Cancellable? cancellable = null) throws GLib.Error; - public async GData.Comment insert_comment_async (GData.Service service, GData.Comment comment_, GLib.Cancellable? cancellable) throws GLib.Error; + public GData.Comment? insert_comment (GData.Service service, GData.Comment comment_, GLib.Cancellable? cancellable = null) throws GLib.Error; + public async GData.Comment? insert_comment_async (GData.Service service, GData.Comment comment_, GLib.Cancellable? cancellable) throws GLib.Error; [NoWrapper] public abstract bool is_comment_deletable (GData.Comment comment); - public GData.Feed query_comments (GData.Service service, GData.Query? query, GLib.Cancellable? cancellable, GData.QueryProgressCallback? progress_callback) throws GLib.Error; - public async GData.Feed query_comments_async (GData.Service service, GData.Query? query, GLib.Cancellable? cancellable, owned GData.QueryProgressCallback? progress_callback) throws GLib.Error; + public GData.Feed? query_comments (GData.Service service, GData.Query? query, GLib.Cancellable? cancellable, GData.QueryProgressCallback? progress_callback) throws GLib.Error; + public async GData.Feed? query_comments_async (GData.Service service, GData.Query? query, GLib.Cancellable? cancellable, owned GData.QueryProgressCallback? progress_callback) throws GLib.Error; } [CCode (cheader_filename = "gdata/gdata.h", type_id = "gdata_comparable_get_type ()")] public interface Comparable : GLib.Object { diff --git a/vapi/libsoup-2.4.vapi b/vapi/libsoup-2.4.vapi index adb6d6bf9..c299c9af3 100644 --- a/vapi/libsoup-2.4.vapi +++ b/vapi/libsoup-2.4.vapi @@ -888,7 +888,7 @@ namespace Soup { public unowned string get_user (); public bool host_equal (Soup.URI v2); public uint host_hash (); - public static string normalize (string part, string unescape_extra); + public static string normalize (string part, string? unescape_extra); public void set_fragment (string? fragment); public void set_host (string? host); public void set_password (string? password); diff --git a/vapi/metadata/GdkPixbuf-2.0.metadata b/vapi/metadata/GdkPixbuf-2.0.metadata index 2dae1677d..361e3bf09 100644 --- a/vapi/metadata/GdkPixbuf-2.0.metadata +++ b/vapi/metadata/GdkPixbuf-2.0.metadata @@ -3,7 +3,6 @@ Pixbuf .new_from_stream_at_scale_async skip .new_subpixbuf skip .save_to_stream_finish skip - .gettext skip // gdk-pixdata.h isn't included by gdk-pixbuf.h Pixdata* cheader_filename="gdk-pixbuf/gdk-pixdata.h" @@ -21,5 +20,3 @@ Pixbuf // Bug #666798: delegates which throw exceptions PixbufSaveFunc skip - -*_autoptr skip diff --git a/vapi/metadata/Gio-2.0.metadata b/vapi/metadata/Gio-2.0.metadata index c9cd9a6a6..1c2eb7708 100644 --- a/vapi/metadata/Gio-2.0.metadata +++ b/vapi/metadata/Gio-2.0.metadata @@ -141,6 +141,7 @@ InputStream .skip throws="GLib.IOError" .skip_finish throws="GLib.IOError" ListModel + .get_item#virtual_method skip .get_item#method skip=false abstract MemoryOutputStream .get_data type="unowned uint8[]" @@ -197,8 +198,10 @@ SimpleAsyncResult .new_error skip .new_from_error skip Socket - .condition_wait throws="GLib.IOError" - .create_source skip=false type="GLib.SocketSource" + .condition_wait skip + .create_source skip + .receive_messages skip + .send_messages skip SocketControlMessage .serialize.data type="uint8[]" SocketListener @@ -354,7 +357,6 @@ DataInputStream .read_line.length default=null // Forward upstream -*_autoptr skip NativeSocketAddress skip content_type_from_mime_type nullable content_type_get_mime_type nullable diff --git a/vapi/metadata/Gst-1.0.metadata b/vapi/metadata/Gst-1.0.metadata index 2b59f052e..ecd2c39b6 100644 --- a/vapi/metadata/Gst-1.0.metadata +++ b/vapi/metadata/Gst-1.0.metadata @@ -1,13 +1,10 @@ Gst experimental -// Virtual methods without invokers -Element - .request_new_pad skip=false unowned=false nullable - // Return non-boxed types MiniObject .copy skip=false .ref skip=false + .unref skip=false poll_new skip=false parent="Gst.Poll" symbol_type="constructor" name="new" poll_new_timer skip=false parent="Gst.Poll" symbol_type="constructor" name="new_timer" @@ -148,7 +145,7 @@ parse_launchv skip parse_launchv_full name="parse_launchv" // Default values -debug_log_default.unused default=null +debug_log_default.user_data default=null Bus .add_signal_watch_full.priority default=GLib.Priority.DEFAULT Caps @@ -216,14 +213,10 @@ ElementFactory.get_static_pad_templates type="GLib.List get_items (); public uint get_n_items (); - public GLib.Variant get_user_data (); + public unowned GLib.Variant get_user_data (); public void insert (WebKit.ContextMenuItem item, int position); + public unowned WebKit.ContextMenuItem last (); public void move_item (WebKit.ContextMenuItem item, int position); public void prepend (WebKit.ContextMenuItem item); public void remove (WebKit.ContextMenuItem item); public void remove_all (); public void set_user_data (GLib.Variant user_data); + [CCode (has_construct_function = false)] + public ContextMenu.with_items (GLib.List items); } [CCode (cheader_filename = "webkit2/webkit-web-extension.h", type_id = "webkit_context_menu_item_get_type ()")] public class ContextMenuItem : GLib.InitiallyUnowned { @@ -2661,11 +2667,13 @@ namespace WebKit { public ContextMenuItem.from_stock_action (WebKit.ContextMenuAction action); [CCode (has_construct_function = false)] public ContextMenuItem.from_stock_action_with_label (WebKit.ContextMenuAction action, string label); + public unowned Gtk.Action get_action (); public WebKit.ContextMenuAction get_stock_action (); + public unowned WebKit.ContextMenu get_submenu (); public bool is_separator (); [CCode (has_construct_function = false)] public ContextMenuItem.separator (); - public void set_submenu (WebKit.ContextMenu submenu); + public void set_submenu (WebKit.ContextMenu? submenu); [CCode (has_construct_function = false)] public ContextMenuItem.with_submenu (string label, WebKit.ContextMenu submenu); }