From cb1e3130cc616a01add313f383c38aed1c9a79b0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=BCrg=20Billeter?= Date: Thu, 1 Oct 2009 08:50:43 +0200 Subject: [PATCH] gstreamer-0.10: Update to GStreamer 0.10.24 --- vapi/gstreamer-0.10.vapi | 276 ++++- vapi/gstreamer-audio-0.10.vapi | 8 +- vapi/gstreamer-base-0.10.vapi | 14 + vapi/gstreamer-controller-0.10.vapi | 2 +- vapi/gstreamer-dataprotocol-0.10.vapi | 2 +- vapi/gstreamer-interfaces-0.10.vapi | 221 +++- vapi/gstreamer-netbuffer-0.10.vapi | 4 + vapi/gstreamer-pbutils-0.10.vapi | 2 +- vapi/gstreamer-riff-0.10.vapi | 2 + vapi/gstreamer-rtp-0.10.vapi | 41 +- vapi/gstreamer-rtsp-0.10.vapi | 23 +- vapi/gstreamer-video-0.10.vapi | 182 +++- .../packages/gstreamer-0.10/gstreamer-0.10.gi | 989 +++++++++++++++++- .../gstreamer-audio-0.10.gi | 45 +- .../gstreamer-base-0.10.gi | 95 ++ .../gstreamer-controller-0.10.gi | 3 +- .../gstreamer-dataprotocol-0.10.gi | 2 +- .../gstreamer-interfaces-0.10.gi | 531 +++++++++- .../gstreamer-interfaces-0.10.metadata | 1 + .../gstreamer-netbuffer-0.10.gi | 9 + .../gstreamer-pbutils-0.10.gi | 2 +- .../gstreamer-riff-0.10.gi | 1 + .../gstreamer-rtp-0.10/gstreamer-rtp-0.10.gi | 120 +++ .../gstreamer-rtsp-0.10.gi | 28 + .../gstreamer-video-0.10.gi | 445 +++++++- .../gstreamer-video-0.10.metadata | 8 + 26 files changed, 2997 insertions(+), 59 deletions(-) diff --git a/vapi/gstreamer-0.10.vapi b/vapi/gstreamer-0.10.vapi index 3ab5f55e9..30903d2e5 100644 --- a/vapi/gstreamer-0.10.vapi +++ b/vapi/gstreamer-0.10.vapi @@ -38,6 +38,7 @@ namespace Gst { public virtual bool add_element (Gst.Element element); public void add_many (params owned Gst.Element[] elements); public Gst.Pad find_unconnected_pad (Gst.PadDirection direction); + public unowned Gst.Pad find_unlinked_pad (Gst.PadDirection direction); public Gst.Element get_by_interface (GLib.Type iface); public Gst.Element get_by_name (string name); public Gst.Element get_by_name_recurse_up (string name); @@ -49,12 +50,14 @@ namespace Gst { public Gst.Iterator iterate_sinks (); public Gst.Iterator iterate_sorted (); public Gst.Iterator iterate_sources (); + public bool recalculate_latency (); public bool remove (Gst.Element element); [NoWrapper] public virtual bool remove_element (Gst.Element element); public void remove_many (Gst.Element element_1, ...); [NoAccessorMethod] public bool async_handling { get; set; } + public virtual signal bool do_latency (); public virtual signal void element_added (Gst.Element child); public virtual signal void element_removed (Gst.Element child); } @@ -64,6 +67,7 @@ namespace Gst { [CCode (array_length = false)] public weak uchar[] data; public Gst.ClockTime duration; + public weak GLib.FreeFunc free_func; public uchar malloc_data; public uint64 offset; public uint64 offset_end; @@ -98,6 +102,34 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public class BufferClass : Gst.MiniObjectClass { } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class BufferList { + [CCode (has_construct_function = false)] + public BufferList (); + public void @foreach (Gst.BufferListFunc func); + public unowned Gst.Buffer @get (uint group, uint idx); + public unowned Gst.BufferListIterator iterate (); + public uint n_groups (); + } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class BufferListClass { + } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class BufferListIterator { + public void add (Gst.Buffer buffer); + public void add_group (); + public unowned Gst.Buffer @do (Gst.BufferListDoFunction do_func); + public unowned Gst.Buffer merge_group (); + public uint n_buffers (); + public unowned Gst.Buffer next (); + public bool next_group (); + public void remove (); + public unowned Gst.Buffer steal (); + public void take (Gst.Buffer buffer); + } [CCode (cheader_filename = "gst/gst.h")] public class Bus : Gst.Object { public uint num_signal_watchers; @@ -184,6 +216,7 @@ namespace Gst { } [CCode (cheader_filename = "gst/gst.h")] public class Clock : Gst.Object { + public void* ABI; public weak Gst.ClockID clockid; public weak GLib.List entries; public weak GLib.Cond entries_changed; @@ -341,6 +374,7 @@ namespace Gst { public class unowned GLib.List get_pad_template_list (); public virtual Gst.QueryType get_query_types (); public unowned Gst.Pad get_request_pad (string name); + public Gst.ClockTime get_start_time (); public virtual Gst.StateChangeReturn get_state (out Gst.State state, out Gst.State pending, Gst.ClockTime timeout); public Gst.Pad? get_static_pad (string name); public bool implements_interface (GLib.Type iface_type); @@ -357,6 +391,7 @@ namespace Gst { public bool link_pads (string srcpadname, Gst.Element dest, string destpadname); public bool link_pads_filtered (string srcpadname, Gst.Element dest, string destpadname, Gst.Caps filter); public void lost_state (); + public void lost_state_full (bool new_base_time); public static Gst.Element? make_from_uri (Gst.URIType type, string uri, string? elementname); public void message_full (Gst.MessageType type, GLib.Quark domain, int code, string text, string debug, string file, string function, int line); public bool post_message (owned Gst.Message message); @@ -386,6 +421,7 @@ namespace Gst { public class void set_details_simple (string longname, string classification, string description, string author); public virtual void set_index (Gst.Index index); public bool set_locked_state (bool locked_state); + public void set_start_time (Gst.ClockTime time); public virtual Gst.StateChangeReturn set_state (Gst.State state); public bool sync_state_with_parent (); public void unlink (Gst.Element dest); @@ -423,6 +459,7 @@ namespace Gst { } [CCode (ref_function = "gst_event_ref", unref_function = "gst_event_unref", cheader_filename = "gst/gst.h")] public class Event { + public void* abidata; public weak Gst.Object src; public weak Gst.Structure structure; public uint64 timestamp; @@ -437,6 +474,7 @@ namespace Gst { public Event.flush_start (); [CCode (has_construct_function = false)] public Event.flush_stop (); + public uint32 get_seqnum (); public unowned Gst.Structure get_structure (); public bool has_name (string name); [CCode (has_construct_function = false)] @@ -453,11 +491,15 @@ namespace Gst { public void parse_new_segment_full (out bool update, out double rate, out double applied_rate, out Gst.Format format, out int64 start, out int64 stop, out int64 position); public void parse_qos (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_step (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate); public void parse_tag (out Gst.TagList taglist); [CCode (has_construct_function = false)] public Event.qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp); [CCode (has_construct_function = false)] public Event.seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop); + public void set_seqnum (uint32 seqnum); + [CCode (has_construct_function = false)] + public Event.step (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate); [CCode (has_construct_function = false)] public Event.tag (Gst.TagList taglist); public static Gst.EventTypeFlags type_get_flags (Gst.EventType type); @@ -471,6 +513,7 @@ namespace Gst { public class GhostPad : Gst.Pad { [CCode (type = "GstPad*", has_construct_function = false)] public GhostPad (string? name, Gst.Pad target); + public bool @construct (); [CCode (type = "GstPad*", has_construct_function = false)] public GhostPad.from_template (string name, Gst.Pad target, Gst.PadTemplate templ); public unowned Gst.Pad get_target (); @@ -517,7 +560,7 @@ namespace Gst { public void set_resolver (Gst.IndexResolver resolver); public void set_resolver_full (Gst.IndexResolver resolver, GLib.DestroyNotify user_data_destroy); [NoAccessorMethod] - public Gst.IndexResolver resolver { get; set; } + public Gst.IndexResolver resolver { owned get; set; } public virtual signal void entry_added (Gst.IndexEntry entry); } [Compact] @@ -578,6 +621,7 @@ namespace Gst { } [CCode (ref_function = "gst_message_ref", unref_function = "gst_message_unref", cheader_filename = "gst/gst.h")] public class Message { + public void* abidata; public weak GLib.Cond cond; public weak GLib.Mutex @lock; public weak Gst.Object src; @@ -606,6 +650,8 @@ namespace Gst { public Message.eos (Gst.Object src); [CCode (has_construct_function = false)] public Message.error (Gst.Object src, GLib.Error error, string debug); + public uint32 get_seqnum (); + public Gst.Value get_stream_status_object (); public unowned Gst.Structure get_structure (); [CCode (has_construct_function = false)] public Message.info (Gst.Object src, GLib.Error error, string debug); @@ -624,22 +670,42 @@ namespace Gst { public void parse_error (out GLib.Error gerror, out string debug); public void parse_info (out GLib.Error gerror, out string debug); public void parse_new_clock (out unowned Gst.Clock clock); + public void parse_request_state (Gst.State state); public void parse_segment_done (out Gst.Format format, out int64 position); public void parse_segment_start (out Gst.Format format, out int64 position); public void parse_state_changed (out Gst.State oldstate, out Gst.State newstate, out Gst.State pending); + public void parse_step_done (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate, uint64 duration, bool eos); + public void parse_step_start (bool active, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate); + public void parse_stream_status (Gst.StreamStatusType type, out unowned Gst.Element owner); + public void parse_structure_change (Gst.StructureChangeType type, out unowned Gst.Element owner, bool busy); public void parse_tag (out Gst.TagList tag_list); + public void parse_tag_full (out unowned Gst.Pad pad, out unowned Gst.TagList tag_list); public void parse_warning (out GLib.Error gerror, out string debug); [CCode (has_construct_function = false)] + public Message.request_state (Gst.Object src, Gst.State state); + [CCode (has_construct_function = false)] 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 void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left); + public void set_seqnum (uint32 seqnum); + public void set_stream_status_object (Gst.Value object); [CCode (has_construct_function = false)] 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); [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_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); + [CCode (has_construct_function = false)] public Message.tag (Gst.Object src, Gst.TagList tag_list); + [CCode (has_construct_function = false)] + public Message.tag_full (Gst.Object src, Gst.Pad pad, Gst.TagList tag_list); public static GLib.Quark type_to_quark (Gst.MessageType type); [CCode (has_construct_function = false)] public Message.warning (Gst.Object src, GLib.Error error, string debug); @@ -682,6 +748,7 @@ namespace Gst { public string get_path_string (); public bool has_ancestor (Gst.Object ancestor); public unowned Gst.Object @ref (); + public static void ref_sink (void* object); public static void replace (ref Gst.Object oldobj, Gst.Object newobj); public virtual void restore_thyself (void* self); public virtual void* save_thyself (void* parent); @@ -699,6 +766,7 @@ namespace Gst { } [CCode (cheader_filename = "gst/gst.h")] public class Pad : Gst.Object { + public void* abidata; public weak Gst.PadAcceptCapsFunction acceptcapsfunc; public weak Gst.PadActivateFunction activatefunc; public weak Gst.PadActivateModeFunction activatepullfunc; @@ -706,6 +774,7 @@ namespace Gst { public weak Gst.PadBlockCallback block_callback; public weak GLib.Cond block_cond; public void* block_data; + public weak GLib.DestroyNotify block_destroy_data; public weak Gst.PadBufferAllocFunction bufferallocfunc; public weak Gst.PadChainFunction chainfunc; public weak Gst.PadCheckGetRangeFunction checkgetrangefunc; @@ -717,6 +786,7 @@ namespace Gst { public weak Gst.PadGetCapsFunction getcapsfunc; public weak Gst.PadGetRangeFunction getrangefunc; public weak Gst.PadIntLinkFunction intlinkfunc; + public weak Gst.PadIterIntLinkFunction iterintlinkfunc; public weak Gst.PadLinkFunction linkfunc; public Gst.ActivateMode mode; public weak Gst.PadTemplate padtemplate; @@ -744,6 +814,7 @@ namespace Gst { public Gst.FlowReturn alloc_buffer_and_set_caps (uint64 offset, int size, Gst.Caps caps, out unowned Gst.Buffer buf); public bool can_link (Gst.Pad sinkpad); public Gst.FlowReturn chain (owned Gst.Buffer buffer); + public Gst.FlowReturn chain_list (Gst.BufferList list); public bool check_pull_range (); public bool dispatcher (Gst.PadDispatcherFunction dispatch, void* data); public bool event_default (Gst.Event event); @@ -771,6 +842,8 @@ namespace Gst { public bool is_blocked (); public bool is_blocking (); public bool is_linked (); + public unowned Gst.Iterator iterate_internal_links (); + public unowned Gst.Iterator iterate_internal_links_default (); public Gst.PadLinkReturn link (Gst.Pad sinkpad); public void load_and_link (Gst.Object parent); public bool pause_task (); @@ -782,6 +855,7 @@ namespace Gst { public Gst.FlowReturn pull_range (uint64 offset, uint size, out unowned Gst.Buffer buffer); public Gst.FlowReturn push (owned Gst.Buffer buffer); public bool push_event (owned Gst.Event event); + public Gst.FlowReturn push_list (Gst.BufferList list); public bool query (Gst.Query query); public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val); public bool query_default (Gst.Query query); @@ -801,9 +875,11 @@ namespace Gst { public bool set_active (bool active); public bool set_blocked (bool blocked); public bool set_blocked_async (bool blocked, Gst.PadBlockCallback callback); + public bool set_blocked_async_full (bool blocked, Gst.PadBlockCallback callback, GLib.DestroyNotify destroy_data); public void set_bufferalloc_function (Gst.PadBufferAllocFunction bufalloc); public bool set_caps (Gst.Caps? caps); public void set_chain_function (Gst.PadChainFunction chain); + public void set_chain_list_function (Gst.PadChainListFunction chainlist); public void set_checkgetrange_function (Gst.PadCheckGetRangeFunction check); public void set_element_private (void* priv); public void set_event_function (Gst.PadEventFunction event); @@ -811,6 +887,7 @@ namespace Gst { public void set_getcaps_function (Gst.PadGetCapsFunction getcaps); public void set_getrange_function (Gst.PadGetRangeFunction @get); public void set_internal_link_function (Gst.PadIntLinkFunction intlink); + public void set_iterate_internal_links_function (Gst.PadIterIntLinkFunction iterintlink); public void set_link_function (Gst.PadLinkFunction link); public void set_query_function (Gst.PadQueryFunction query); public void set_setcaps_function (Gst.PadSetCapsFunction setcaps); @@ -830,13 +907,16 @@ namespace Gst { } [CCode (cheader_filename = "gst/gst.h")] public class PadTemplate : Gst.Object { - public weak Gst.Caps caps; - public Gst.PadDirection direction; - public weak string name_template; - public Gst.PadPresence presence; [CCode (has_construct_function = false)] public PadTemplate (string name_template, Gst.PadDirection direction, Gst.PadPresence presence, owned Gst.Caps caps); public unowned Gst.Caps get_caps (); + public Gst.Caps caps { get; construct; } + [NoAccessorMethod] + public Gst.PadDirection direction { get; construct; } + [NoAccessorMethod] + public string name_template { owned get; construct; } + [NoAccessorMethod] + public Gst.PadPresence presence { get; construct; } [HasEmitter] public virtual signal void pad_created (Gst.Pad pad); } @@ -852,6 +932,13 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public class ParamSpecMiniObject : GLib.ParamSpec { } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class ParseContext { + [CCode (has_construct_function = false)] + public ParseContext (); + public unowned string get_missing_elements (); + } [CCode (cheader_filename = "gst/gst.h")] public class Pipeline : Gst.Bin, Gst.ChildProxy { public weak Gst.Clock fixed_clock; @@ -883,7 +970,10 @@ namespace Gst { public weak GLib.Module module; public weak Gst.PluginDesc orig_desc; public bool registered; + public void add_dependency (string env_vars, string paths, string names, Gst.PluginDependencyFlags flags); + public void add_dependency_simple (string env_vars, string paths, string names, Gst.PluginDependencyFlags flags); public static GLib.Quark error_quark (); + public unowned Gst.Structure get_cache_data (); public unowned string get_description (); public unowned string get_filename (); public unowned string get_license (); @@ -900,6 +990,8 @@ namespace Gst { public static unowned Gst.Plugin load_file (string filename) throws GLib.Error; public bool name_filter (string name); public static bool register_static (int major_version, int minor_version, string name, string description, Gst.PluginInitFunc init_func, string version, string license, string source, string package, string origin); + public static bool register_static_full (int major_version, int minor_version, string name, string description, Gst.PluginInitFullFunc init_full_func, string version, string license, string source, string package, string origin); + public void set_cache_data (Gst.Structure cache_data); } [Compact] [CCode (cheader_filename = "gst/gst.h")] @@ -936,11 +1028,15 @@ namespace Gst { [CCode (has_construct_function = false)] public Poll (bool controllable); public bool add_fd (Gst.PollFD fd); + public bool read_control (); public bool remove_fd (Gst.PollFD fd); public void restart (); public bool set_controllable (bool controllable); public void set_flushing (bool flushing); + [CCode (has_construct_function = false)] + public Poll.timer (); public int wait (Gst.ClockTime timeout); + public bool write_control (); } [Compact] [CCode (cheader_filename = "gst/gst.h")] @@ -956,6 +1052,9 @@ namespace Gst { public static void ignored (Gst.Poll @set, Gst.PollFD fd); public void init (); } + [CCode (cheader_filename = "gst/gst.h")] + public class ProxyPad : Gst.Pad { + } [CCode (ref_function = "gst_query_ref", unref_function = "gst_query_unref", cheader_filename = "gst/gst.h")] public class Query { public weak Gst.Structure structure; @@ -986,6 +1085,7 @@ namespace Gst { public void parse_position (out Gst.Format format, out int64 cur); public void parse_seeking (out Gst.Format format, out bool seekable, out int64 segment_start, out int64 segment_end); public void parse_segment (out double rate, out Gst.Format format, out int64 start_value, out int64 stop_value); + public void parse_uri (string uri); [CCode (has_construct_function = false)] public Query.position (Gst.Format format); [CCode (has_construct_function = false)] @@ -1003,12 +1103,15 @@ namespace Gst { public void set_position (Gst.Format format, int64 cur); public void set_seeking (Gst.Format format, bool seekable, int64 segment_start, int64 segment_end); public void set_segment (double rate, Gst.Format format, int64 start_value, int64 stop_value); + public void set_uri (string uri); public static Gst.QueryType type_get_by_nick (string nick); public static unowned Gst.QueryTypeDefinition type_get_details (Gst.QueryType type); public static unowned Gst.Iterator type_iterate_definitions (); public static Gst.QueryType type_register (string nick, string description); public static GLib.Quark type_to_quark (Gst.QueryType query); public static bool types_contains (Gst.QueryType types, Gst.QueryType type); + [CCode (has_construct_function = false)] + public Query.uri (); } [Compact] [CCode (cheader_filename = "gst/gst.h")] @@ -1076,7 +1179,9 @@ namespace Gst { public void set_last_stop (Gst.Format format, int64 position); public void set_newsegment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 time); public void set_newsegment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 time); + public bool set_running_time (Gst.Format format, int64 running_time); public void set_seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop, bool update); + public int64 to_position (Gst.Format format, int64 running_time); public int64 to_running_time (Gst.Format format, int64 position); public int64 to_stream_time (Gst.Format format, int64 position); } @@ -1099,6 +1204,7 @@ namespace Gst { public bool fixate_field_nearest_int (string field_name, int target); public bool @foreach (Gst.StructureForeachFunc func); public static Gst.Structure? from_string (string str, out unowned string end); + public bool @get (...); public bool get_boolean (string fieldname, out bool value); public bool get_clock_time (string fieldname, Gst.ClockTime value); public bool get_date (string fieldname, out GLib.Date value); @@ -1112,13 +1218,17 @@ namespace Gst { public GLib.Quark get_name_id (); public unowned string get_string (string fieldname); public bool get_uint (string fieldname, out uint value); + public bool get_valist (string first_fieldname, void* args); public unowned Gst.Value? get_value (string fieldname); public bool has_field (string fieldname); public bool has_field_typed (string fieldname, GLib.Type type); public bool has_name (string name); [CCode (cname = "gst_structure_id_empty_new", has_construct_function = false)] public Structure.id_empty (GLib.Quark quark); + public bool id_get (...); + public bool id_get_valist (GLib.Quark first_field_id, void* args); public unowned Gst.Value? id_get_value (GLib.Quark field); + public static unowned Gst.Structure id_new (GLib.Quark name_quark, GLib.Quark field_quark); public void id_set (GLib.Quark fieldname, ...); public void id_set_valist (GLib.Quark fieldname, void* varargs); public void id_set_value (GLib.Quark field, Gst.Value value); @@ -1143,6 +1253,8 @@ namespace Gst { public bool stopping; public weak GLib.Thread thread; public static unowned Gst.Clock obtain (); + [NoAccessorMethod] + public Gst.ClockType clock_type { get; set; } } [Compact] [CCode (copy_function = "gst_tag_list_copy", cheader_filename = "gst/gst.h")] @@ -1152,12 +1264,19 @@ namespace Gst { public void add (Gst.TagMergeMode mode, string tag, ...); public void add_valist (Gst.TagMergeMode mode, string tag, void* var_args); public void add_valist_values (Gst.TagMergeMode mode, string tag, void* var_args); + public void add_value (Gst.TagMergeMode mode, string tag, Gst.Value value); public void add_values (Gst.TagMergeMode mode, string tag, ...); public Gst.TagList copy (); public static bool copy_value (out Gst.Value dest, Gst.TagList list, string tag); public void @foreach (Gst.TagForeachFunc func); + [CCode (has_construct_function = false)] + public TagList.full (string tag); + [CCode (has_construct_function = false)] + public TagList.full_valist (void* var_args); public bool get_boolean (string tag, out bool value); public bool get_boolean_index (string tag, uint index, out bool value); + public bool get_buffer (string tag, out unowned Gst.Buffer value); + public bool get_buffer_index (string tag, uint index, out unowned Gst.Buffer value); public bool get_char (string tag, out char value); public bool get_char_index (string tag, uint index, out char value); public bool get_date (string tag, out GLib.Date? value); @@ -1202,13 +1321,34 @@ namespace Gst { public Gst.TaskState state; public static void cleanup_all (); public static unowned Gst.Task create (Gst.TaskFunction func, void* data); + public unowned Gst.TaskPool get_pool (); public Gst.TaskState get_state (); public bool join (); public bool pause (); public void set_lock (void* mutex); + public void set_pool (Gst.TaskPool pool); + public void set_priority (GLib.ThreadPriority priority); + public bool set_state (Gst.TaskState state); + public void set_thread_callbacks (Gst.TaskThreadCallbacks callbacks, GLib.DestroyNotify notify); public bool start (); public bool stop (); } + [CCode (cheader_filename = "gst/gst.h")] + public class TaskPool : Gst.Object { + public weak GLib.ThreadPool pool; + [CCode (has_construct_function = false)] + public TaskPool (); + public virtual void cleanup (); + public virtual void join (void* id); + public virtual void prepare () throws GLib.Error; + public virtual void* push (Gst.TaskPoolFunction func) throws GLib.Error; + } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class TaskThreadCallbacks { + public weak GLib.Callback enter_thread; + public weak GLib.Callback leave_thread; + } [Compact] [CCode (free_function = "gst_trace_destroy", cheader_filename = "gst/gst.h")] public class Trace { @@ -1245,6 +1385,8 @@ namespace Gst { public static bool register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string extensions, Gst.Caps possible_caps, void* data, GLib.DestroyNotify data_notify); [CCode (cname = "gst_type_find_suggest")] public void suggest (uint probability, Gst.Caps caps); + [CCode (cname = "gst_type_find_suggest_simple")] + public void suggest_simple (uint probability, string media_type, string fieldname); } [CCode (cheader_filename = "gst/gst.h")] public class TypeFindFactory : Gst.PluginFeature { @@ -1319,6 +1461,17 @@ namespace Gst { public abstract bool supported (GLib.Type iface_type); } [CCode (cheader_filename = "gst/gst.h")] + public interface Preset { + public abstract bool delete_preset (string name); + public abstract bool get_meta (string name, string tag, string value); + public abstract unowned string get_preset_names (); + public abstract unowned string get_property_names (); + 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); + public abstract bool set_meta (string name, string tag, string value); + } + [CCode (cheader_filename = "gst/gst.h")] public interface URIHandler { public abstract unowned string[] get_protocols (); [NoWrapper] @@ -1495,8 +1648,17 @@ namespace Gst { IN_CAPS, GAP, DELTA_UNIT, + MEDIA1, + MEDIA2, + MEDIA3, LAST } + [CCode (cprefix = "GST_BUFFER_LIST_", cheader_filename = "gst/gst.h")] + public enum BufferListItem { + CONTINUE, + SKIP_GROUP, + END + } [CCode (cprefix = "GST_BUFFERING_", cheader_filename = "gst/gst.h")] public enum BufferingMode { STREAM, @@ -1547,6 +1709,11 @@ namespace Gst { ERROR, UNSUPPORTED } + [CCode (cprefix = "GST_CLOCK_TYPE_", cheader_filename = "gst/gst.h")] + public enum ClockType { + REALTIME, + MONOTONIC + } [CCode (cprefix = "GST_CORE_ERROR_", cheader_filename = "gst/gst.h")] public enum CoreError { FAILED, @@ -1603,6 +1770,8 @@ namespace Gst { INFO, DEBUG, LOG, + FIXME, + MEMDUMP, COUNT; [CCode (cname = "gst_debug_level_get_name")] public unowned string to_string (); @@ -1628,6 +1797,7 @@ namespace Gst { SEEK, NAVIGATION, LATENCY, + STEP, CUSTOM_UPSTREAM, CUSTOM_DOWNSTREAM, CUSTOM_DOWNSTREAM_OOB, @@ -1748,6 +1918,8 @@ namespace Gst { LATENCY, ASYNC_START, ASYNC_DONE, + REQUEST_STATE, + STEP_START, ANY; [CCode (cname = "gst_message_type_get_name")] public unowned string to_string (); @@ -1813,12 +1985,26 @@ namespace Gst { EMPTY_BIN, EMPTY } + [CCode (cprefix = "GST_PARSE_FLAG_", cheader_filename = "gst/gst.h")] + [Flags] + public enum ParseFlags { + NONE, + FATAL_ERRORS + } [CCode (cprefix = "GST_PIPELINE_FLAG_", cheader_filename = "gst/gst.h")] [Flags] public enum PipelineFlags { FIXED_CLOCK, LAST } + [CCode (cprefix = "GST_PLUGIN_DEPENDENCY_FLAG_", cheader_filename = "gst/gst.h")] + [Flags] + public enum PluginDependencyFlags { + NONE, + RECURSE, + PATHS_ARE_DEFAULT_ONLY, + FILE_NAME_IS_SUFFIX + } [CCode (cprefix = "GST_PLUGIN_ERROR_", cheader_filename = "gst/gst.h")] public enum PluginError { MODULE, @@ -1842,7 +2028,9 @@ namespace Gst { SEGMENT, CONVERT, FORMATS, - BUFFERING; + BUFFERING, + CUSTOM, + URI; [CCode (cname = "gst_query_type_get_name")] public unowned string to_string (); } @@ -1871,6 +2059,12 @@ namespace Gst { NO_SPACE_LEFT, NUM_ERRORS } + [CCode (cprefix = "GST_SEARCH_MODE_", cheader_filename = "gst/gst.h")] + public enum SearchMode { + EXACT, + BEFORE, + AFTER + } [CCode (cprefix = "GST_SEEK_FLAG_", cheader_filename = "gst/gst.h")] [Flags] public enum SeekFlags { @@ -1878,7 +2072,8 @@ namespace Gst { FLUSH, ACCURATE, KEY_UNIT, - SEGMENT + SEGMENT, + SKIP } [CCode (cprefix = "GST_SEEK_TYPE_", cheader_filename = "gst/gst.h")] public enum SeekType { @@ -1932,6 +2127,21 @@ namespace Gst { DECRYPT_NOKEY, NUM_ERRORS } + [CCode (cprefix = "GST_STREAM_STATUS_TYPE_", cheader_filename = "gst/gst.h")] + public enum StreamStatusType { + CREATE, + ENTER, + LEAVE, + DESTROY, + START, + PAUSE, + STOP + } + [CCode (cprefix = "GST_STRUCTURE_CHANGE_TYPE_PAD_", cheader_filename = "gst/gst.h")] + public enum StructureChangeType { + LINK, + UNLINK + } [CCode (cprefix = "GST_TAG_FLAG_", cheader_filename = "gst/gst.h")] public enum TagFlag { UNDEFINED, @@ -1972,6 +2182,10 @@ namespace Gst { SRC } [CCode (cheader_filename = "gst/gst.h")] + public delegate unowned Gst.Buffer BufferListDoFunction (Gst.Buffer buffer); + [CCode (cheader_filename = "gst/gst.h")] + public delegate Gst.BufferListItem BufferListFunc (out unowned Gst.Buffer buffer, uint group, uint idx); + [CCode (cheader_filename = "gst/gst.h")] public delegate bool BufferProbeCallback (Gst.Pad pad, Gst.Buffer buffer); [CCode (cheader_filename = "gst/gst.h")] public delegate bool BusFunc (Gst.Bus bus, Gst.Message message); @@ -2022,6 +2236,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate Gst.FlowReturn PadChainFunction (Gst.Pad pad, owned Gst.Buffer buffer); [CCode (cheader_filename = "gst/gst.h", has_target = false)] + public delegate Gst.FlowReturn PadChainListFunction (Gst.Pad pad, Gst.BufferList list); + [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate bool PadCheckGetRangeFunction (Gst.Pad pad); [CCode (cheader_filename = "gst/gst.h")] public delegate bool PadDispatcherFunction (Gst.Pad pad); @@ -2036,6 +2252,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate unowned GLib.List PadIntLinkFunction (Gst.Pad pad); [CCode (cheader_filename = "gst/gst.h", has_target = false)] + public delegate unowned Gst.Iterator PadIterIntLinkFunction (Gst.Pad pad); + [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate Gst.PadLinkReturn PadLinkFunction (Gst.Pad pad, Gst.Pad peer); [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate bool PadQueryFunction (Gst.Pad pad, Gst.Query query); @@ -2049,6 +2267,8 @@ namespace Gst { public delegate bool PluginFeatureFilter (Gst.PluginFeature feature); [CCode (cheader_filename = "gst/gst.h")] public delegate bool PluginFilter (Gst.Plugin plugin); + [CCode (cheader_filename = "gst/gst.h")] + public delegate bool PluginInitFullFunc (Gst.Plugin plugin); [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate bool PluginInitFunc (Gst.Plugin plugin); [CCode (cheader_filename = "gst/gst.h")] @@ -2062,6 +2282,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public delegate void TaskFunction (); [CCode (cheader_filename = "gst/gst.h")] + public delegate void TaskPoolFunction (); + [CCode (cheader_filename = "gst/gst.h")] public delegate void TypeFindFunction (Gst.TypeFind find); [CCode (cheader_filename = "gst/gst.h", has_target = false)] public delegate int ValueCompareFunc (Gst.Value value1, Gst.Value value2); @@ -2112,6 +2334,12 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public const int PARAM_CONTROLLABLE; [CCode (cheader_filename = "gst/gst.h")] + public const int PARAM_MUTABLE_PAUSED; + [CCode (cheader_filename = "gst/gst.h")] + public const int PARAM_MUTABLE_PLAYING; + [CCode (cheader_filename = "gst/gst.h")] + public const int PARAM_MUTABLE_READY; + [CCode (cheader_filename = "gst/gst.h")] public const int PARAM_USER_SHIFT; [CCode (cheader_filename = "gst/gst.h")] public const int SECOND; @@ -2132,6 +2360,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public const string TAG_ARTIST_SORTNAME; [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_ATTACHMENT; + [CCode (cheader_filename = "gst/gst.h")] public const string TAG_AUDIO_CODEC; [CCode (cheader_filename = "gst/gst.h")] public const string TAG_BEATS_PER_MINUTE; @@ -2146,6 +2376,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public const string TAG_CONTACT; [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_CONTAINER_FORMAT; + [CCode (cheader_filename = "gst/gst.h")] public const string TAG_COPYRIGHT; [CCode (cheader_filename = "gst/gst.h")] public const string TAG_COPYRIGHT_URI; @@ -2164,10 +2396,22 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public const string TAG_GENRE; [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_GEO_LOCATION_ELEVATION; + [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_GEO_LOCATION_LATITUDE; + [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_GEO_LOCATION_LONGITUDE; + [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_GEO_LOCATION_NAME; + [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_HOMEPAGE; + [CCode (cheader_filename = "gst/gst.h")] public const string TAG_IMAGE; [CCode (cheader_filename = "gst/gst.h")] public const string TAG_ISRC; [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_KEYWORDS; + [CCode (cheader_filename = "gst/gst.h")] public const string TAG_LANGUAGE_CODE; [CCode (cheader_filename = "gst/gst.h")] public const string TAG_LICENSE; @@ -2192,6 +2436,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public const string TAG_SERIAL; [CCode (cheader_filename = "gst/gst.h")] + public const string TAG_SUBTITLE_CODEC; + [CCode (cheader_filename = "gst/gst.h")] public const string TAG_TITLE; [CCode (cheader_filename = "gst/gst.h")] public const string TAG_TITLE_SORTNAME; @@ -2240,6 +2486,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static unowned string debug_construct_term_color (uint colorinfo); [CCode (cheader_filename = "gst/gst.h")] + public static int debug_construct_win_color (uint colorinfo); + [CCode (cheader_filename = "gst/gst.h")] public static unowned GLib.SList debug_get_all_categories (); [CCode (cheader_filename = "gst/gst.h")] public static Gst.DebugLevel debug_get_default_threshold (); @@ -2348,14 +2596,20 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static unowned GLib.ParamSpec param_spec_mini_object (string name, string nick, string blurb, GLib.Type object_type, GLib.ParamFlags flags); [CCode (cheader_filename = "gst/gst.h")] - public static Gst.Element? parse_bin_from_description (string bin_description, bool ghost_unconnected_pads) throws GLib.Error; + public static Gst.Element? parse_bin_from_description (string bin_description, bool ghost_unlinked_pads) throws GLib.Error; + [CCode (cheader_filename = "gst/gst.h")] + public static unowned Gst.Element parse_bin_from_description_full (string bin_description, bool ghost_unlinked_pads, Gst.ParseContext context, Gst.ParseFlags flags) throws GLib.Error; [CCode (cheader_filename = "gst/gst.h")] public static GLib.Quark parse_error_quark (); [CCode (cheader_filename = "gst/gst.h")] public static Gst.Element? parse_launch (string pipeline_description) throws GLib.Error; [CCode (cheader_filename = "gst/gst.h")] + public static unowned Gst.Element parse_launch_full (string pipeline_description, Gst.ParseContext context, Gst.ParseFlags flags) throws GLib.Error; + [CCode (cheader_filename = "gst/gst.h")] public static Gst.Element? parse_launchv ([CCode (array_length = false)] string[] argv) throws GLib.Error; [CCode (cheader_filename = "gst/gst.h")] + public static unowned Gst.Element parse_launchv_full (string argv, Gst.ParseContext context, Gst.ParseFlags flags) throws GLib.Error; + [CCode (cheader_filename = "gst/gst.h")] public static void print_element_args (GLib.StringBuilder buf, int indent, Gst.Element element); [CCode (cheader_filename = "gst/gst.h")] public static void print_pad_caps (GLib.StringBuilder buf, int indent, Gst.Pad pad); @@ -2402,6 +2656,8 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static bool uri_protocol_is_valid (string protocol); [CCode (cheader_filename = "gst/gst.h")] + public static void* util_array_binary_search (void* array, uint num_elements, size_t element_size, GLib.CompareDataFunc search_func, Gst.SearchMode mode, void* search_data); + [CCode (cheader_filename = "gst/gst.h")] public static void util_dump_mem (uchar[] mem, uint size); [CCode (cheader_filename = "gst/gst.h")] public static uint64 util_gdouble_to_guint64 (double value); @@ -2410,6 +2666,10 @@ namespace Gst { [CCode (cheader_filename = "gst/gst.h")] public static double util_guint64_to_gdouble (uint64 value); [CCode (cheader_filename = "gst/gst.h")] + public static int32 util_seqnum_compare (uint32 s1, uint32 s2); + [CCode (cheader_filename = "gst/gst.h")] + public static uint32 util_seqnum_next (); + [CCode (cheader_filename = "gst/gst.h")] public static void util_set_object_arg (GLib.Object object, string name, string value); [CCode (cheader_filename = "gst/gst.h")] public static void util_set_value_from_string (Gst.Value value, string value_str); diff --git a/vapi/gstreamer-audio-0.10.vapi b/vapi/gstreamer-audio-0.10.vapi index 619a21ffc..2688d4373 100644 --- a/vapi/gstreamer-audio-0.10.vapi +++ b/vapi/gstreamer-audio-0.10.vapi @@ -10,6 +10,8 @@ namespace Gst { public void* user_data; [CCode (type = "GstClock*", has_construct_function = false)] public AudioClock (string name, Gst.AudioClockGetTimeFunc func); + public static Gst.ClockTime adjust (Gst.Clock clock, Gst.ClockTime time); + public static Gst.ClockTime get_time (Gst.Clock clock); public void reset (Gst.ClockTime time); } [CCode (cheader_filename = "gst/audio/gstaudiofilter.h")] @@ -69,6 +71,8 @@ namespace Gst { [NoAccessorMethod] public int64 buffer_time { get; set; } [NoAccessorMethod] + public bool can_activate_pull { get; set; } + [NoAccessorMethod] public int64 latency_time { get; set; } public bool provide_clock { get; set; } public Gst.BaseAudioSinkSlaveMethod slave_method { get; set; } @@ -115,9 +119,9 @@ namespace Gst { public virtual bool activate (bool active); public void advance (uint advance); public void clear (int segment); - public void clear_all (); + public virtual void clear_all (); public virtual bool close_device (); - public uint commit (uint64 sample, uchar[] data, uint len); + public virtual uint commit (uint64 sample, uchar[] data, uint len); public uint commit_full (uint64 sample, uchar[] data, int in_samples, int out_samples, ref int accum); public bool convert (Gst.Format src_fmt, int64 src_val, Gst.Format dest_fmt, out int64 dest_val); public static void debug_spec_buff (Gst.RingBufferSpec spec); diff --git a/vapi/gstreamer-base-0.10.vapi b/vapi/gstreamer-base-0.10.vapi index a3c483ed5..660a5702c 100644 --- a/vapi/gstreamer-base-0.10.vapi +++ b/vapi/gstreamer-base-0.10.vapi @@ -11,8 +11,10 @@ namespace Gst { public void clear (); public void copy (uchar dest, uint offset, uint size); public void flush (uint flush); + public uint masked_scan_uint32 (uint32 mask, uint32 pattern, uint offset, uint size); [CCode (array_length = false)] public unowned uchar[] peek (uint size); + public Gst.ClockTime prev_timestamp (uint64 distance); public void push (owned Gst.Buffer buf); public uchar take (uint nbytes); public Gst.Buffer take_buffer (uint nbytes); @@ -68,6 +70,8 @@ namespace Gst { public bool query_latency (bool live, bool upstream_live, out Gst.ClockTime min_latency, out Gst.ClockTime max_latency); [NoWrapper] public virtual Gst.FlowReturn render (Gst.Buffer buffer); + [NoWrapper] + public virtual Gst.FlowReturn render_list (Gst.BufferList buffer_list); public void set_async_enabled (bool enabled); public void set_blocksize (uint blocksize); [NoWrapper] @@ -264,6 +268,10 @@ namespace Gst { public uint size; [CCode (has_construct_function = false)] public ByteReader (uchar data, uint size); + public bool dup_data (uint size, uchar val); + public bool dup_string_utf16 (uint16 str); + public bool dup_string_utf32 (uint32 str); + public bool dup_string_utf8 (string str); [CCode (has_construct_function = false)] public ByteReader.from_buffer (Gst.Buffer buffer); public bool get_data (uint size, out uchar val); @@ -282,6 +290,7 @@ namespace Gst { public bool get_int8 (out char val); public uint get_pos (); public uint get_remaining (); + public bool get_string_utf8 (string str); public bool get_uint16_be (out uint16 val); public bool get_uint16_le (out uint16 val); public bool get_uint24_be (out uint32 val); @@ -293,6 +302,7 @@ namespace Gst { public bool get_uint8 (out uchar val); public void init (uchar data, uint size); public void init_from_buffer (Gst.Buffer buffer); + public uint masked_scan_uint32 (uint32 mask, uint32 pattern, uint offset, uint size); public bool peek_data (uint size, out uchar val); public bool peek_float32_be (out float val); public bool peek_float32_le (out float val); @@ -307,6 +317,7 @@ namespace Gst { public bool peek_int64_be (out int64 val); public bool peek_int64_le (out int64 val); public bool peek_int8 (out char val); + public bool peek_string_utf8 (string str); public bool peek_uint16_be (out uint16 val); public bool peek_uint16_le (out uint16 val); public bool peek_uint24_be (out uint32 val); @@ -318,6 +329,9 @@ namespace Gst { public bool peek_uint8 (out uchar val); public bool set_pos (uint pos); public bool skip (uint nbytes); + public bool skip_string_utf16 (); + public bool skip_string_utf32 (); + public bool skip_string_utf8 (); } [Compact] [CCode (cheader_filename = "gst/base/gstcollectpads.h")] diff --git a/vapi/gstreamer-controller-0.10.vapi b/vapi/gstreamer-controller-0.10.vapi index f4e96a15d..2fa7b7e4e 100644 --- a/vapi/gstreamer-controller-0.10.vapi +++ b/vapi/gstreamer-controller-0.10.vapi @@ -94,7 +94,7 @@ namespace Gst { CUBIC, USER } - [CCode (cprefix = "", has_type_id = "0", cheader_filename = "gst/controller/gstlfocontrolsource.h")] + [CCode (cprefix = "", cheader_filename = "gst/controller/gstlfocontrolsource.h")] public enum LFOWaveform { Sine waveform (default), Square waveform, diff --git a/vapi/gstreamer-dataprotocol-0.10.vapi b/vapi/gstreamer-dataprotocol-0.10.vapi index 930b2af26..1bdd19d32 100644 --- a/vapi/gstreamer-dataprotocol-0.10.vapi +++ b/vapi/gstreamer-dataprotocol-0.10.vapi @@ -26,7 +26,7 @@ namespace Gst { CAPS, EVENT_NONE } - [CCode (cprefix = "", has_type_id = "0", cheader_filename = "gst/dataprotocol/dataprotocol.h")] + [CCode (cprefix = "", cheader_filename = "gst/dataprotocol/dataprotocol.h")] public enum DPVersion { GDP Version 0.2, GDP Version 1.0 diff --git a/vapi/gstreamer-interfaces-0.10.vapi b/vapi/gstreamer-interfaces-0.10.vapi index 43d62c2c8..c8c97a5ee 100644 --- a/vapi/gstreamer-interfaces-0.10.vapi +++ b/vapi/gstreamer-interfaces-0.10.vapi @@ -12,12 +12,15 @@ namespace Gst { [CCode (cheader_filename = "gst/interfaces/mixer.h")] public class MixerOptions : Gst.MixerTrack { public unowned GLib.List get_values (); + public static void list_changed (Gst.Mixer mixer, Gst.MixerOptions opts); } [CCode (cheader_filename = "gst/interfaces/mixer.h")] public class MixerTrack : GLib.Object { [NoAccessorMethod] public uint flags { get; } [NoAccessorMethod] + public uint index { get; construct; } + [NoAccessorMethod] public string label { owned get; } [NoAccessorMethod] public int max_volume { get; } @@ -28,6 +31,46 @@ namespace Gst { [NoAccessorMethod] public string untranslated_label { owned get; construct; } } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class PhotoSettings { + public uint aperture; + public float ev_compensation; + public uint32 exposure; + public Gst.FlashMode flash_mode; + public uint iso_speed; + public Gst.SceneMode scene_mode; + public Gst.ColourToneMode tone_mode; + public Gst.WhiteBalanceMode wb_mode; + public float zoom; + } + [Compact] + [CCode (cheader_filename = "gst/gst.h")] + public class Photography { + public bool get_aperture (uint aperture); + public Gst.PhotoCaps get_capabilities (); + public bool get_colour_tone_mode (Gst.ColourToneMode tone_mode); + public bool get_config (Gst.PhotoSettings config); + public bool get_ev_compensation (float ev_comp); + public bool get_exposure (uint32 exposure); + public bool get_flash_mode (Gst.FlashMode flash_mode); + public bool get_iso_speed (uint iso_speed); + public bool get_scene_mode (Gst.SceneMode scene_mode); + public bool get_white_balance_mode (Gst.WhiteBalanceMode wb_mode); + public bool get_zoom (float zoom); + public bool prepare_for_capture (Gst.PhotoCapturePrepared func, Gst.Caps capture_caps); + public bool set_aperture (uint aperture); + public void set_autofocus (bool on); + public bool set_colour_tone_mode (Gst.ColourToneMode tone_mode); + public bool set_config (Gst.PhotoSettings config); + public bool set_ev_compensation (float ev_comp); + public bool set_exposure (uint exposure); + public bool set_flash_mode (Gst.FlashMode flash_mode); + public bool set_iso_speed (uint iso_speed); + public bool set_scene_mode (Gst.SceneMode scene_mode); + public bool set_white_balance_mode (Gst.WhiteBalanceMode wb_mode); + public bool set_zoom (float zoom); + } [CCode (cheader_filename = "gst/interfaces/tuner.h")] public class TunerChannel : GLib.Object { public Gst.TunerChannelFlags flags; @@ -49,6 +92,7 @@ namespace Gst { } [CCode (cheader_filename = "gst/interfaces/colorbalance.h")] public interface ColorBalance : Gst.ImplementsInterface, Gst.Element { + public Gst.ColorBalanceType get_balance_type (); public abstract int get_value (Gst.ColorBalanceChannel channel); public abstract unowned GLib.List list_channels (); public abstract void set_value (Gst.ColorBalanceChannel channel, int value); @@ -58,14 +102,17 @@ namespace Gst { [CCode (cheader_filename = "gst/interfaces/mixer.h")] public interface Mixer : Gst.ImplementsInterface, Gst.Element { public abstract Gst.MixerFlags get_mixer_flags (); + public Gst.MixerType get_mixer_type (); public abstract unowned string get_option (Gst.MixerOptions opts); public abstract void get_volume (Gst.MixerTrack track, int volumes); public abstract unowned GLib.List list_tracks (); public static Gst.MixerMessageType message_get_type (Gst.Message message); public static void message_parse_mute_toggled (Gst.Message message, out unowned Gst.MixerTrack track, bool mute); public static void message_parse_option_changed (Gst.Message message, out unowned Gst.MixerOptions options, string value); + public static void message_parse_options_list_changed (Gst.Message message, out unowned Gst.MixerOptions options); public static void message_parse_record_toggled (Gst.Message message, out unowned Gst.MixerTrack track, bool record); public static void message_parse_volume_changed (Gst.Message message, out unowned Gst.MixerTrack track, int volumes, int num_channels); + public void mixer_changed (); public abstract void set_mute (Gst.MixerTrack track, bool mute); public abstract void set_option (Gst.MixerOptions opts, string value); public abstract void set_record (Gst.MixerTrack track, bool record); @@ -81,6 +128,27 @@ namespace Gst { } [CCode (cheader_filename = "gst/interfaces/navigation.h")] public interface Navigation : Gst.Element { + public static Gst.NavigationEventType event_get_type (Gst.Event event); + public static bool event_parse_command (Gst.Event event, Gst.NavigationCommand command); + public static bool event_parse_key_event (Gst.Event event, string key); + public static bool event_parse_mouse_button_event (Gst.Event event, int button, double x, double y); + public static bool event_parse_mouse_move_event (Gst.Event event, double x, double y); + public static Gst.NavigationMessageType message_get_type (Gst.Message message); + public static unowned Gst.Message message_new_angles_changed (Gst.Object src, uint cur_angle, uint n_angles); + public static unowned Gst.Message message_new_commands_changed (Gst.Object src); + public static unowned 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_mouse_over (Gst.Message message, bool active); + public static Gst.NavigationQueryType query_get_type (Gst.Query query); + public static unowned Gst.Query query_new_angles (); + public static unowned Gst.Query query_new_commands (); + public static bool query_parse_angles (Gst.Query query, uint cur_angle, uint n_angles); + public static bool query_parse_commands_length (Gst.Query query, uint n_cmds); + public static bool query_parse_commands_nth (Gst.Query query, uint nth, Gst.NavigationCommand cmd); + public static void query_set_angles (Gst.Query query, uint cur_angle, uint n_angles); + public static void query_set_commands (Gst.Query query, int n_cmds); + public static void query_set_commandsv (Gst.Query query, int n_cmds, Gst.NavigationCommand cmds); + public void send_command (Gst.NavigationCommand command); public abstract void send_event (Gst.Structure structure); public void send_key_event (string event, string key); public void send_mouse_event (string event, int button, double x, double y); @@ -138,26 +206,57 @@ namespace Gst { public void prepare_xwindow_id (); public abstract void set_xwindow_id (ulong xwindow_id); } - [CCode (cprefix = "GST_COLOR_BALANCE_", has_type_id = "0", cheader_filename = "gst/interfaces/colorbalance.h")] + [CCode (cprefix = "GST_COLOR_BALANCE_", cheader_filename = "gst/interfaces/colorbalance.h")] public enum ColorBalanceType { HARDWARE, SOFTWARE } - [CCode (cprefix = "GST_MIXER_FLAG_", has_type_id = "0", cheader_filename = "gst/interfaces/mixer.h")] + [CCode (cprefix = "GST_PHOTOGRAPHY_COLOUR_TONE_MODE_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum ColourToneMode { + NORMAL, + SEPIA, + NEGATIVE, + GRAYSCALE, + NATURAL, + VIVID, + COLORSWAP, + SOLARIZE, + OUT_OF_FOCUS + } + [CCode (cprefix = "GST_PHOTOGRAPHY_FLASH_MODE_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum FlashMode { + AUTO, + OFF, + ON, + FILL_IN, + RED_EYE + } + [CCode (cprefix = "GST_PHOTOGRAPHY_FOCUS_STATUS_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum FocusStatus { + NONE, + RUNNING, + FAIL, + SUCCESS + } + [CCode (cprefix = "GST_MIXER_FLAG_", cheader_filename = "gst/interfaces/mixer.h")] [Flags] public enum MixerFlags { NONE, - AUTO_NOTIFICATIONS + AUTO_NOTIFICATIONS, + HAS_WHITELIST, + GROUPING } - [CCode (cprefix = "GST_MIXER_MESSAGE_", has_type_id = "0", cheader_filename = "gst/interfaces/mixer.h")] + [CCode (cprefix = "GST_MIXER_MESSAGE_", cheader_filename = "gst/interfaces/mixer.h")] public enum MixerMessageType { INVALID, MUTE_TOGGLED, RECORD_TOGGLED, VOLUME_CHANGED, - OPTION_CHANGED + OPTION_CHANGED, + OPTIONS_LIST_CHANGED, + MIXER_CHANGED } - [CCode (cprefix = "GST_MIXER_TRACK_", has_type_id = "0", cheader_filename = "gst/interfaces/mixertrack.h")] + [CCode (cprefix = "GST_MIXER_TRACK_", cheader_filename = "gst/interfaces/mixertrack.h")] [Flags] public enum MixerTrackFlags { INPUT, @@ -165,14 +264,89 @@ namespace Gst { MUTE, RECORD, MASTER, - SOFTWARE + SOFTWARE, + NO_RECORD, + NO_MUTE, + WHITELIST } - [CCode (cprefix = "GST_MIXER_", has_type_id = "0", cheader_filename = "gst/interfaces/mixer.h")] + [CCode (cprefix = "GST_MIXER_", cheader_filename = "gst/interfaces/mixer.h")] public enum MixerType { HARDWARE, SOFTWARE } - [CCode (cprefix = "GST_TUNER_CHANNEL_", has_type_id = "0", cheader_filename = "gst/interfaces/tuner.h")] + [CCode (cprefix = "GST_NAVIGATION_COMMAND_", cheader_filename = "gst/gst.h")] + public enum NavigationCommand { + INVALID, + MENU1, + MENU2, + MENU3, + MENU4, + MENU5, + MENU6, + MENU7, + LEFT, + RIGHT, + UP, + DOWN, + ACTIVATE, + PREV_ANGLE, + NEXT_ANGLE + } + [CCode (cprefix = "GST_NAVIGATION_EVENT_", cheader_filename = "gst/gst.h")] + public enum NavigationEventType { + INVALID, + KEY_PRESS, + KEY_RELEASE, + MOUSE_BUTTON_PRESS, + MOUSE_BUTTON_RELEASE, + MOUSE_MOVE, + COMMAND + } + [CCode (cprefix = "GST_NAVIGATION_MESSAGE_", cheader_filename = "gst/gst.h")] + public enum NavigationMessageType { + INVALID, + MOUSE_OVER, + COMMANDS_CHANGED, + ANGLES_CHANGED + } + [CCode (cprefix = "GST_NAVIGATION_QUERY_", cheader_filename = "gst/gst.h")] + public enum NavigationQueryType { + INVALID, + COMMANDS, + ANGLES + } + [CCode (cprefix = "GST_PHOTOGRAPHY_CAPS_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum PhotoCaps { + NONE, + EV_COMP, + ISO_SPEED, + WB_MODE, + TONE, + SCENE, + FLASH, + ZOOM, + FOCUS, + APERTURE, + EXPOSURE, + SHAKE + } + [CCode (cprefix = "GST_PHOTOGRAPHY_SHAKE_RISK_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum PhotoShakeRisk { + LOW, + MEDIUM, + HIGH + } + [CCode (cprefix = "GST_PHOTOGRAPHY_SCENE_MODE_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum SceneMode { + MANUAL, + CLOSEUP, + PORTRAIT, + LANDSCAPE, + SPORT, + NIGHT, + AUTO + } + [CCode (cprefix = "GST_TUNER_CHANNEL_", cheader_filename = "gst/interfaces/tuner.h")] [Flags] public enum TunerChannelFlags { INPUT, @@ -180,4 +354,33 @@ namespace Gst { FREQUENCY, AUDIO } + [CCode (cprefix = "GST_PHOTOGRAPHY_WB_MODE_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum WhiteBalanceMode { + AUTO, + DAYLIGHT, + CLOUDY, + SUNSET, + TUNGSTEN, + FLUORESCENT + } + [CCode (cheader_filename = "gst/gst.h", has_target = false)] + public delegate void PhotoCapturePrepared (void* data, Gst.Caps configured_caps); + [CCode (cheader_filename = "gst/gst.h")] + public const string PHOTOGRAPHY_AUTOFOCUS_DONE; + [CCode (cheader_filename = "gst/gst.h")] + public const string PHOTOGRAPHY_SHAKE_RISK; + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type colour_tone_mode_get_type (); + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type flash_mode_get_type (); + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type focus_status_get_type (); + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type photo_caps_get_type (); + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type photo_shake_risk_get_type (); + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type scene_mode_get_type (); + [CCode (cheader_filename = "gst/gst.h")] + public static GLib.Type white_balance_mode_get_type (); } diff --git a/vapi/gstreamer-netbuffer-0.10.vapi b/vapi/gstreamer-netbuffer-0.10.vapi index a3d295a18..ad5269b5a 100644 --- a/vapi/gstreamer-netbuffer-0.10.vapi +++ b/vapi/gstreamer-netbuffer-0.10.vapi @@ -36,6 +36,8 @@ namespace Gst { public void set_ip4_address (uint32 address, uint16 port); [CCode (cname = "gst_netaddress_set_ip6_address")] public void set_ip6_address ([CCode (array_length = false)] uchar[] address, uint16 port); + [CCode (cname = "gst_netaddress_to_string")] + public int to_string (string dest, ulong len); } [CCode (cprefix = "GST_NET_TYPE_", has_type_id = "0", cheader_filename = "gst/netbuffer/gstnetbuffer.h")] public enum NetType { @@ -43,4 +45,6 @@ namespace Gst { IP4, IP6 } + [CCode (cheader_filename = "gst/netbuffer/gstnetbuffer.h")] + public const int NETADDRESS_MAX_LEN; } diff --git a/vapi/gstreamer-pbutils-0.10.vapi b/vapi/gstreamer-pbutils-0.10.vapi index e8d1a87da..07aa1f321 100644 --- a/vapi/gstreamer-pbutils-0.10.vapi +++ b/vapi/gstreamer-pbutils-0.10.vapi @@ -9,7 +9,7 @@ namespace Gst { public InstallPluginsContext (); public void set_xid (uint xid); } - [CCode (cprefix = "GST_INSTALL_PLUGINS_", has_type_id = "0", cheader_filename = "gst/pbutils/pbutils.h")] + [CCode (cprefix = "GST_INSTALL_PLUGINS_", cheader_filename = "gst/pbutils/pbutils.h")] public enum InstallPluginsReturn { SUCCESS, NOT_FOUND, diff --git a/vapi/gstreamer-riff-0.10.vapi b/vapi/gstreamer-riff-0.10.vapi index 1f9015f87..06ea63081 100644 --- a/vapi/gstreamer-riff-0.10.vapi +++ b/vapi/gstreamer-riff-0.10.vapi @@ -317,6 +317,8 @@ namespace Gst { [CCode (cheader_filename = "gst/riff/riff-ids.h")] public const int RIFF_WAVE_FORMAT_SIPROLAB_KELVIN; [CCode (cheader_filename = "gst/riff/riff-ids.h")] + public const int RIFF_WAVE_FORMAT_SIREN; + [CCode (cheader_filename = "gst/riff/riff-ids.h")] public const int RIFF_WAVE_FORMAT_SOFTSOUND; [CCode (cheader_filename = "gst/riff/riff-ids.h")] public const int RIFF_WAVE_FORMAT_SONARC; diff --git a/vapi/gstreamer-rtp-0.10.vapi b/vapi/gstreamer-rtp-0.10.vapi index bbb1af419..160ab035f 100644 --- a/vapi/gstreamer-rtp-0.10.vapi +++ b/vapi/gstreamer-rtp-0.10.vapi @@ -68,6 +68,8 @@ namespace Gst { public bool is_filled (uint size, Gst.ClockTime duration); [CCode (cname = "gst_basertppayload_push")] public Gst.FlowReturn push (Gst.Buffer buffer); + [CCode (cname = "gst_basertppayload_push_list")] + public Gst.FlowReturn push_list (Gst.BufferList list); [NoWrapper] public virtual bool set_caps (Gst.Caps caps); [CCode (cname = "gst_basertppayload_set_options")] @@ -124,6 +126,12 @@ namespace Gst { public uchar bye_get_reason_len (); public uint bye_get_ssrc_count (); public bool bye_set_reason (string reason); + public uint32 fb_get_media_ssrc (); + public uint32 fb_get_sender_ssrc (); + public Gst.RTCPFBType fb_get_type (); + public void fb_set_media_ssrc (uint32 ssrc); + public void fb_set_sender_ssrc (uint32 ssrc); + public void fb_set_type (Gst.RTCPFBType type); public uchar get_count (); public uint16 get_length (); public bool get_padding (); @@ -147,6 +155,15 @@ namespace Gst { public void sr_get_sender_info (uint32 ssrc, uint64 ntptime, uint32 rtptime, uint32 packet_count, uint32 octet_count); public void sr_set_sender_info (uint32 ssrc, uint64 ntptime, uint32 rtptime, uint32 packet_count, uint32 octet_count); } + [CCode (cprefix = "GST_RTCP_", has_type_id = "0", cheader_filename = "gst/gst.h")] + public enum RTCPFBType { + FB_TYPE_INVALID, + RTPFB_TYPE_NACK, + PSFB_TYPE_PLI, + PSFB_TYPE_SLI, + PSFB_TYPE_RPSI, + PSFB_TYPE_AFB + } [CCode (cprefix = "GST_RTCP_SDES_", has_type_id = "0", cheader_filename = "gst/rtp/gstrtcpbuffer.h")] public enum RTCPSDESType { INVALID, @@ -167,7 +184,9 @@ namespace Gst { RR, SDES, BYE, - APP + APP, + RTPFB, + PSFB } [CCode (cprefix = "GST_RTP_PAYLOAD_", has_type_id = "0", cheader_filename = "gst/rtp/gstbasertpaudiopayload.h")] public enum RTPPayload { @@ -354,6 +373,26 @@ namespace Gst { public static uint32 rtp_buffer_get_timestamp (Gst.Buffer buffer); [CCode (cheader_filename = "gst/rtp/gstrtpbuffer.h")] public static uchar rtp_buffer_get_version (Gst.Buffer buffer); + [CCode (cheader_filename = "gst/gst.h")] + public static uint rtp_buffer_list_get_payload_len (Gst.BufferList list); + [CCode (cheader_filename = "gst/gst.h")] + public static uchar rtp_buffer_list_get_payload_type (Gst.BufferList list); + [CCode (cheader_filename = "gst/gst.h")] + public static uint16 rtp_buffer_list_get_seq (Gst.BufferList list); + [CCode (cheader_filename = "gst/gst.h")] + public static uint32 rtp_buffer_list_get_ssrc (Gst.BufferList list); + [CCode (cheader_filename = "gst/gst.h")] + public static uint32 rtp_buffer_list_get_timestamp (Gst.BufferList list); + [CCode (cheader_filename = "gst/gst.h")] + public static void rtp_buffer_list_set_payload_type (Gst.BufferList list, uchar payload_type); + [CCode (cheader_filename = "gst/gst.h")] + public static uint16 rtp_buffer_list_set_seq (Gst.BufferList list, uint16 seq); + [CCode (cheader_filename = "gst/gst.h")] + public static void rtp_buffer_list_set_ssrc (Gst.BufferList list, uint32 ssrc); + [CCode (cheader_filename = "gst/gst.h")] + public static void rtp_buffer_list_set_timestamp (Gst.BufferList list, uint32 timestamp); + [CCode (cheader_filename = "gst/gst.h")] + public static bool rtp_buffer_list_validate (Gst.BufferList list); [CCode (cheader_filename = "gst/rtp/gstrtpbuffer.h")] public static unowned Gst.Buffer rtp_buffer_new_allocate (uint payload_len, uchar pad_len, uchar csrc_count); [CCode (cheader_filename = "gst/rtp/gstrtpbuffer.h")] diff --git a/vapi/gstreamer-rtsp-0.10.vapi b/vapi/gstreamer-rtsp-0.10.vapi index 5e338b095..9553c20d0 100644 --- a/vapi/gstreamer-rtsp-0.10.vapi +++ b/vapi/gstreamer-rtsp-0.10.vapi @@ -132,6 +132,7 @@ namespace Gst { [CCode (has_construct_function = false)] public RTSPWatch (Gst.RTSPConnection conn, Gst.RTSPWatchFuncs funcs, GLib.DestroyNotify notify); public uint attach (GLib.MainContext context); + public uint queue_data (uchar data, uint size); public uint queue_message (Gst.RTSPMessage message); public void reset (); } @@ -234,7 +235,27 @@ namespace Gst { PLAYER_START_TIME, LOCATION, ETAG, - IF_MATCH + IF_MATCH, + ACCEPT_CHARSET, + SUPPORTED, + VARY, + X_ACCELERATE_STREAMING, + X_ACCEPT_AUTHENT, + X_ACCEPT_PROXY_AUTHENT, + X_BROADCAST_ID, + X_BURST_STREAMING, + X_NOTICE, + X_PLAYER_LAG_TIME, + X_PLAYLIST, + X_PLAYLIST_CHANGE_NOTICE, + X_PLAYLIST_GEN_ID, + X_PLAYLIST_SEEK_ID, + X_PROXY_CLIENT_AGENT, + X_PROXY_CLIENT_VERB, + X_RECEDING_PLAYLISTCHANGE, + X_RTP_INFO, + X_STARTUPPROFILE, + TIMESTAMP } [CCode (cprefix = "GST_RTSP_LOWER_TRANS_", has_type_id = "0", cheader_filename = "gst/rtsp/gstrtspextension.h")] public enum RTSPLowerTrans { diff --git a/vapi/gstreamer-video-0.10.vapi b/vapi/gstreamer-video-0.10.vapi index 22c162ee2..f5beaac1a 100644 --- a/vapi/gstreamer-video-0.10.vapi +++ b/vapi/gstreamer-video-0.10.vapi @@ -106,11 +106,142 @@ namespace Gst { [CCode (cname = "GST_VIDEO_SIZE_RANGE", cheader_filename = "gst/video/video.h")] public const string SIZE; } + [CCode (cheader_filename = "gst/video/video.h")] + public class BaseVideoCodec : Gst.Element { + public weak Gst.Element element; + public weak Gst.Adapter input_adapter; + public weak Gst.Adapter output_adapter; + public weak Gst.Pad sinkpad; + public weak Gst.Pad srcpad; + public uint64 system_frame_number; + public Gst.ClockTime timestamp_offset; + [CCode (type = "GstVideoFrame*", has_construct_function = false)] + public BaseVideoCodec.frame (Gst.BaseVideoCodec base_video_codec); + public static void free_frame (Gst.VideoFrame frame); + } + [CCode (cheader_filename = "gst/video/video.h")] + public class BaseVideoDecoder : Gst.BaseVideoCodec { + public uint64 base_picture_number; + public weak Gst.BaseVideoCodec base_video_codec; + public Gst.ClockTime buffer_timestamp; + public weak Gst.Caps caps; + public weak Gst.Buffer codec_data; + public weak Gst.VideoFrame current_frame; + public bool discont; + public int distance_from_sync; + public Gst.ClockTime earliest_time; + public int field_index; + public weak GLib.List frames; + public bool have_src_caps; + public bool have_sync; + public weak Gst.Adapter input_adapter; + public Gst.ClockTime last_sink_offset_end; + public Gst.ClockTime last_sink_timestamp; + public Gst.ClockTime last_timestamp; + public uint64 offset; + public weak Gst.Adapter output_adapter; + public uint64 presentation_frame_number; + public double proportion; + public int reorder_depth; + public bool sink_clipping; + public bool started; + public weak Gst.VideoState state; + public uint64 system_frame_number; + public Gst.ClockTime timestamp_offset; + public void add_to_frame (int n_bytes); + public Gst.FlowReturn end_of_stream (Gst.Buffer buffer); + public Gst.FlowReturn finish_frame (Gst.VideoFrame frame); + public unowned Gst.VideoFrame get_frame (int frame_number); + public int get_height (); + public unowned Gst.VideoState get_state (); + public uint64 get_timestamp_offset (); + public int get_width (); + public Gst.FlowReturn have_frame (); + public void lost_sync (); + public void set_src_caps (); + public void set_state (Gst.VideoState state); + public void set_sync_point (); + } + [CCode (cheader_filename = "gst/video/video.h")] + public class BaseVideoEncoder : Gst.BaseVideoCodec { + public weak Gst.BaseVideoCodec base_video_codec; + public weak Gst.Caps caps; + public int distance_from_sync; + public weak GLib.List frames; + public int64 max_latency; + public int64 min_latency; + public uint64 presentation_frame_number; + public bool set_output_caps; + public bool sink_clipping; + public weak Gst.VideoState state; + public uint64 system_frame_number; + public Gst.FlowReturn end_of_stream (Gst.Buffer buffer); + public Gst.FlowReturn finish_frame (Gst.VideoFrame frame); + public unowned Gst.VideoFrame get_frame (int frame_number); + public int get_height (); + public unowned Gst.VideoState get_state (); + public uint64 get_timestamp_offset (); + public int get_width (); + public void set_latency (Gst.ClockTime min_latency, Gst.ClockTime max_latency); + public void set_latency_fields (int n_fields); + } + [CCode (cheader_filename = "gst/video/video.h")] + public class BaseVideoParse : Gst.BaseVideoCodec { + public weak Gst.BaseVideoCodec base_video_codec; + public weak Gst.Caps caps; + public weak Gst.VideoFrame current_frame; + public bool discont; + public int distance_from_sync; + public bool have_sync; + public weak Gst.Adapter input_adapter; + public Gst.ClockTime last_timestamp; + public weak Gst.Adapter output_adapter; + public uint64 presentation_frame_number; + public int reorder_depth; + public bool set_output_caps; + public bool sink_clipping; + public bool started; + public weak Gst.VideoState state; + public uint64 system_frame_number; + public int64 timestamp_offset; + public void add_to_frame (int n_bytes); + public Gst.FlowReturn end_of_stream (Gst.Buffer buffer); + public Gst.FlowReturn finish_frame (); + public unowned Gst.VideoFrame get_frame (); + public int get_height (); + public unowned Gst.VideoState get_state (); + public uint64 get_timestamp_offset (); + public int get_width (); + public void lost_sync (); + public Gst.FlowReturn push (Gst.Buffer buffer); + public bool set_src_caps (Gst.Caps caps); + public void set_state (Gst.VideoState state); + public void set_sync_point (); + } [CCode (cheader_filename = "gst/video/gstvideofilter.h")] public class VideoFilter : Gst.BaseTransform { public bool inited; } [Compact] + [CCode (cheader_filename = "gst/video/video.h")] + public class VideoFrame { + public void* coder_hook; + public int decode_frame_number; + public uint64 decode_timestamp; + public int distance_from_sync; + public int field_index; + public bool is_eos; + public bool is_sync_point; + public int n_fields; + public uint64 presentation_duration; + public int presentation_frame_number; + public uint64 presentation_timestamp; + public weak Gst.Buffer sink_buffer; + public weak Gst.Buffer src_buffer; + public int system_frame_number; + public static Gst.Value rate (Gst.Pad pad); + } + [Compact] [CCode (cheader_filename = "gst/video/gstvideosink.h")] public class VideoRectangle { public int h; @@ -124,6 +255,27 @@ namespace Gst { public int width; public static void center_rect (Gst.VideoRectangle src, Gst.VideoRectangle dst, Gst.VideoRectangle _result, bool scaling); } + [Compact] + [CCode (cheader_filename = "gst/video/video.h")] + public class VideoState { + public int bytes_per_picture; + public int clean_height; + public int clean_offset_left; + public int clean_offset_top; + public int clean_width; + public Gst.VideoFormat format; + public int fps_d; + public int fps_n; + public int height; + public bool interlaced; + public int par_d; + public int par_n; + public int picture_number; + public weak Gst.Segment segment; + public bool top_field_first; + public int width; + public Gst.ClockTime get_timestamp (int frame_number); + } [CCode (cprefix = "GST_VIDEO_FORMAT_", cheader_filename = "gst/video/video.h")] public enum VideoFormat { UNKNOWN, @@ -143,9 +295,35 @@ namespace Gst { RGB, BGR, Y41B, - Y42B + Y42B, + YVYU, + Y444, + v210, + v216 } [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_CODEC_SINK_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_CODEC_SRC_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_DECODER_SINK_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_DECODER_SRC_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_ENCODER_SINK_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_ENCODER_SRC_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_PARSE_SINK_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public const string BASE_VIDEO_PARSE_SRC_NAME; + [CCode (cheader_filename = "gst/video/video.h")] + public static bool base_video_encoded_video_convert (Gst.VideoState state, Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value); + [CCode (cheader_filename = "gst/video/video.h")] + public static bool base_video_rawvideo_convert (Gst.VideoState state, Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value); + [CCode (cheader_filename = "gst/video/video.h")] + public static bool base_video_state_from_caps (Gst.VideoState state, Gst.Caps caps); + [CCode (cheader_filename = "gst/video/video.h")] public static bool video_calculate_display_ratio (ref uint dar_n, ref 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 bool video_format_convert (Gst.VideoFormat format, int width, int height, int fps_n, int fps_d, Gst.Format src_format, int64 src_value, Gst.Format dest_format, ref int64 dest_value); @@ -180,8 +358,6 @@ namespace Gst { [CCode (cheader_filename = "gst/video/video.h")] public static uint32 video_format_to_fourcc (Gst.VideoFormat format); [CCode (cheader_filename = "gst/video/video.h")] - public static Gst.Value video_frame_rate (Gst.Pad pad); - [CCode (cheader_filename = "gst/video/video.h")] public static bool video_get_size (Gst.Pad pad, ref int width, ref int height); [CCode (cheader_filename = "gst/video/video.h")] public static bool video_parse_caps_framerate (Gst.Caps caps, ref int fps_n, ref int fps_d); diff --git a/vapi/packages/gstreamer-0.10/gstreamer-0.10.gi b/vapi/packages/gstreamer-0.10/gstreamer-0.10.gi index ad40bbdf6..bbb75ff0b 100644 --- a/vapi/packages/gstreamer-0.10/gstreamer-0.10.gi +++ b/vapi/packages/gstreamer-0.10/gstreamer-0.10.gi @@ -41,6 +41,12 @@ + + + + + + @@ -471,7 +477,17 @@ - + + + + + + + + + + + @@ -485,6 +501,15 @@ + + + + + + + + + @@ -492,6 +517,15 @@ + + + + + + + + + @@ -650,6 +684,18 @@ + + + + + + + + + + + + @@ -672,6 +718,16 @@ + + + + + + + + + + @@ -1082,6 +1138,22 @@ + + + + + + + + + + + + + + + + @@ -1244,6 +1316,13 @@ + + + + + + + @@ -1292,6 +1371,12 @@ + + + + + + @@ -1339,6 +1424,13 @@ + + + + + + + @@ -1382,6 +1474,12 @@ + + + + + + @@ -1582,11 +1680,119 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1714,6 +1920,12 @@ + + + + + + @@ -1807,6 +2019,16 @@ + + + + + + + + + + @@ -1877,6 +2099,17 @@ + + + + + + + + + + + @@ -1884,6 +2117,13 @@ + + + + + + + @@ -1907,7 +2147,7 @@ - + @@ -1919,8 +2159,6 @@ - - @@ -2028,6 +2266,18 @@ + + + + + + + + + + + + @@ -2134,6 +2384,13 @@ + + + + + + + @@ -2165,6 +2422,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2172,6 +2471,14 @@ + + + + + + + + @@ -2250,6 +2557,13 @@ + + + + + + + @@ -2275,6 +2589,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2282,6 +2638,14 @@ + + + + + + + + @@ -2300,6 +2664,20 @@ + + + + + + + + + + + + + + @@ -2319,7 +2697,7 @@ - + @@ -2392,6 +2770,23 @@ + + + + + + + + + + + + + + + + + @@ -2425,6 +2820,15 @@ + + + + + + + + + @@ -2459,6 +2863,12 @@ + + + + + + @@ -2579,6 +2989,9 @@ + + + @@ -2677,6 +3090,13 @@ + + + + + + + @@ -2775,6 +3195,13 @@ + + + + + + + @@ -2887,6 +3314,15 @@ + + + + + + + + + @@ -2940,6 +3376,23 @@ + + + + + + + + + + + + + + + + + @@ -3201,6 +3654,18 @@ + + + + + + + + + + + + @@ -3209,6 +3674,11 @@ + + + + + @@ -3295,6 +3765,15 @@ + + + + + + + + + @@ -3660,6 +4139,14 @@ + + + + + + + + @@ -3674,6 +4161,14 @@ + + + + + + + + @@ -3770,6 +4265,13 @@ + + + + + + + @@ -3870,6 +4372,14 @@ + + + + + + + + @@ -3905,6 +4415,21 @@ + + + + + + + + + + + + + + + @@ -3912,6 +4437,13 @@ + + + + + + + @@ -4055,6 +4587,11 @@ + + + + + @@ -4079,6 +4616,10 @@ + + + + @@ -4123,7 +4664,9 @@ - + + + @@ -4137,6 +4680,7 @@ + @@ -4249,6 +4793,8 @@ + + @@ -4273,6 +4819,11 @@ + + + + + @@ -4316,6 +4867,19 @@ + + + + + + + + + + + + + @@ -4375,6 +4939,9 @@ + + + @@ -4440,6 +5007,8 @@ + + @@ -4463,10 +5032,20 @@ + + + + + + + + + + @@ -4476,6 +5055,7 @@ + @@ -4502,6 +5082,13 @@ + + + + + + + @@ -4566,6 +5153,12 @@ + + + + + + @@ -4581,6 +5174,12 @@ + + + + + + @@ -4961,6 +5560,7 @@ + @@ -5120,6 +5720,12 @@ + + + + + + @@ -5220,6 +5826,13 @@ + + + + + + + @@ -5393,6 +6006,13 @@ + + + + + + + @@ -5676,6 +6296,12 @@ + + + + + + @@ -6028,6 +6654,12 @@ + + + + + + @@ -6246,6 +6878,13 @@ + + + + + + + @@ -6391,6 +7030,18 @@ + + + + + + + + + + + + @@ -6488,6 +7139,13 @@ + + + + + + + @@ -6633,6 +7291,16 @@ + + + + + + + + + + @@ -6654,6 +7322,13 @@ + + + + + + + @@ -6703,6 +7378,13 @@ + + + + + + + @@ -6828,6 +7510,9 @@ + + + @@ -6852,6 +7537,10 @@ + + + + @@ -6952,9 +7641,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7062,6 +7777,29 @@ + + + + + + + + + + + + + + + + + + + + + + + @@ -7132,6 +7870,8 @@ + + @@ -7298,6 +8038,7 @@ + @@ -7312,6 +8053,12 @@ + + + + + + @@ -7337,6 +8084,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7357,6 +8134,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7614,6 +8455,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7704,6 +8665,9 @@ + + + @@ -7714,6 +8678,7 @@ + @@ -7721,6 +8686,7 @@ + @@ -7730,8 +8696,14 @@ + + + + + + @@ -7744,6 +8716,7 @@ + @@ -7759,8 +8732,8 @@ - + - + diff --git a/vapi/packages/gstreamer-audio-0.10/gstreamer-audio-0.10.gi b/vapi/packages/gstreamer-audio-0.10/gstreamer-audio-0.10.gi index e099ccce7..6c8607a26 100644 --- a/vapi/packages/gstreamer-audio-0.10/gstreamer-audio-0.10.gi +++ b/vapi/packages/gstreamer-audio-0.10/gstreamer-audio-0.10.gi @@ -162,15 +162,15 @@ - - - + + + - - - - + + + + @@ -239,6 +239,19 @@ + + + + + + + + + + + + + @@ -406,6 +419,7 @@ + @@ -684,12 +698,29 @@ + + + + + + + + + + + + + + + + + diff --git a/vapi/packages/gstreamer-base-0.10/gstreamer-base-0.10.gi b/vapi/packages/gstreamer-base-0.10/gstreamer-base-0.10.gi index f963e6d27..0d0f85f50 100644 --- a/vapi/packages/gstreamer-base-0.10/gstreamer-base-0.10.gi +++ b/vapi/packages/gstreamer-base-0.10/gstreamer-base-0.10.gi @@ -201,6 +201,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -318,6 +347,13 @@ + + + + + + + @@ -396,6 +432,16 @@ + + + + + + + + + + @@ -508,6 +554,13 @@ + + + + + + + @@ -585,6 +638,24 @@ + + + + + + + + + + + + + + + + + + @@ -648,6 +719,16 @@ + + + + + + + + + + @@ -658,6 +739,13 @@ + + + + + + + @@ -905,6 +993,13 @@ + + + + + + + diff --git a/vapi/packages/gstreamer-controller-0.10/gstreamer-controller-0.10.gi b/vapi/packages/gstreamer-controller-0.10/gstreamer-controller-0.10.gi index 0b873edaa..a0de8c702 100644 --- a/vapi/packages/gstreamer-controller-0.10/gstreamer-controller-0.10.gi +++ b/vapi/packages/gstreamer-controller-0.10/gstreamer-controller-0.10.gi @@ -124,7 +124,7 @@ - + @@ -390,6 +390,5 @@ - diff --git a/vapi/packages/gstreamer-dataprotocol-0.10/gstreamer-dataprotocol-0.10.gi b/vapi/packages/gstreamer-dataprotocol-0.10/gstreamer-dataprotocol-0.10.gi index 30980c953..d18107414 100644 --- a/vapi/packages/gstreamer-dataprotocol-0.10/gstreamer-dataprotocol-0.10.gi +++ b/vapi/packages/gstreamer-dataprotocol-0.10/gstreamer-dataprotocol-0.10.gi @@ -158,7 +158,7 @@ - + diff --git a/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.gi b/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.gi index 4e385edc4..49bff488f 100644 --- a/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.gi +++ b/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.gi @@ -1,34 +1,368 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + - + @@ -53,10 +387,24 @@ + + + + + + + + + + + + + + @@ -114,6 +462,12 @@ + + + + + + @@ -184,6 +538,12 @@ + + + + + + @@ -227,6 +587,13 @@ + + + + + + + @@ -244,6 +611,12 @@ + + + + + + @@ -401,6 +774,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -905,5 +1422,7 @@ + + diff --git a/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.metadata b/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.metadata index e12e14fbe..62beb1b43 100644 --- a/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.metadata +++ b/vapi/packages/gstreamer-interfaces-0.10/gstreamer-interfaces-0.10.metadata @@ -24,6 +24,7 @@ gst_color_balance_list_channels hidden="1" GstMixer cheader_filename="gst/interfaces/mixer.h" gst_mixer_list_tracks hidden="1" GstNavigation cheader_filename="gst/interfaces/navigation.h" +GstPhotographyInterface hidden="1" GstPropertyProbe cheader_filename="gst/interfaces/propertyprobe.h" gst_property_probe_get_properties hidden="1" GstTuner cheader_filename="gst/interfaces/tuner.h" diff --git a/vapi/packages/gstreamer-netbuffer-0.10/gstreamer-netbuffer-0.10.gi b/vapi/packages/gstreamer-netbuffer-0.10/gstreamer-netbuffer-0.10.gi index 9ffd3b8cd..6d83044f5 100644 --- a/vapi/packages/gstreamer-netbuffer-0.10/gstreamer-netbuffer-0.10.gi +++ b/vapi/packages/gstreamer-netbuffer-0.10/gstreamer-netbuffer-0.10.gi @@ -64,6 +64,14 @@ + + + + + + + + @@ -87,5 +95,6 @@ + diff --git a/vapi/packages/gstreamer-pbutils-0.10/gstreamer-pbutils-0.10.gi b/vapi/packages/gstreamer-pbutils-0.10/gstreamer-pbutils-0.10.gi index 9235adf48..f7c0a3784 100644 --- a/vapi/packages/gstreamer-pbutils-0.10/gstreamer-pbutils-0.10.gi +++ b/vapi/packages/gstreamer-pbutils-0.10/gstreamer-pbutils-0.10.gi @@ -184,7 +184,7 @@ - + diff --git a/vapi/packages/gstreamer-riff-0.10/gstreamer-riff-0.10.gi b/vapi/packages/gstreamer-riff-0.10/gstreamer-riff-0.10.gi index 994e796f5..3822a678e 100644 --- a/vapi/packages/gstreamer-riff-0.10/gstreamer-riff-0.10.gi +++ b/vapi/packages/gstreamer-riff-0.10/gstreamer-riff-0.10.gi @@ -299,6 +299,7 @@ + diff --git a/vapi/packages/gstreamer-rtp-0.10/gstreamer-rtp-0.10.gi b/vapi/packages/gstreamer-rtp-0.10/gstreamer-rtp-0.10.gi index 5f5aafd4e..ea03c783d 100644 --- a/vapi/packages/gstreamer-rtp-0.10/gstreamer-rtp-0.10.gi +++ b/vapi/packages/gstreamer-rtp-0.10/gstreamer-rtp-0.10.gi @@ -232,6 +232,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -422,6 +486,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -622,6 +725,14 @@ + + + + + + + + @@ -641,6 +752,8 @@ + + @@ -805,6 +918,13 @@ + + + + + + + diff --git a/vapi/packages/gstreamer-rtsp-0.10/gstreamer-rtsp-0.10.gi b/vapi/packages/gstreamer-rtsp-0.10/gstreamer-rtsp-0.10.gi index be3546cd3..d650eeaf6 100644 --- a/vapi/packages/gstreamer-rtsp-0.10/gstreamer-rtsp-0.10.gi +++ b/vapi/packages/gstreamer-rtsp-0.10/gstreamer-rtsp-0.10.gi @@ -550,6 +550,14 @@ + + + + + + + + @@ -695,6 +703,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.gi b/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.gi index 606a20cdc..d640fe20f 100644 --- a/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.gi +++ b/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.gi @@ -1,6 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -147,12 +174,6 @@ - - - - - - @@ -177,12 +198,410 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -202,6 +621,10 @@ + + + + @@ -219,6 +642,14 @@ + + + + + + + + @@ -226,7 +657,7 @@ - + diff --git a/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.metadata b/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.metadata index 65308be2a..4b2486c3a 100644 --- a/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.metadata +++ b/vapi/packages/gstreamer-video-0.10/gstreamer-video-0.10.metadata @@ -1,4 +1,12 @@ Gst cprefix="Gst" lower_case_cprefix="gst_" cheader_filename="gst/video/video.h" +GstBaseVideoCodec base_class="GstElement" +GstBaseVideoCodecClass hidden="1" +GstBaseVideoDecoder base_class="GstBaseVideoCodec" +GstBaseVideoDecoderClass hidden="1" +GstBaseVideoEncoder base_class="GstBaseVideoCodec" +GstBaseVideoEncoderClass hidden="1" +GstBaseVideoParse base_class="GstBaseVideoCodec" +GstBaseVideoParseClass hidden="1" GstVideoRectangle cheader_filename="gst/video/gstvideosink.h" GstVideoSink cheader_filename="gst/video/gstvideosink.h" GstVideoFilter cheader_filename="gst/video/gstvideofilter.h" -- 2.47.3