diff --git a/bindings/vala/gst-rtsp-server-0.10.vapi b/bindings/vala/gst-rtsp-server-0.10.vapi index c9652c5561..38cba5a5cb 100644 --- a/bindings/vala/gst-rtsp-server-0.10.vapi +++ b/bindings/vala/gst-rtsp-server-0.10.vapi @@ -6,29 +6,48 @@ namespace Gst { public class RTSPClient : GLib.Object { public void* address; public weak Gst.RTSPConnection connection; - public weak Gst.RTSPMedia media; + public weak Gst.RTSPMediaFactory factory; + public weak Gst.RTSPMediaMapping mapping; public weak Gst.RTSPSessionPool pool; public weak GLib.Thread thread; - public bool accept (GLib.IOChannel source); - public weak Gst.RTSPSessionPool get_session_pool (); + public bool accept (GLib.IOChannel channel); + public Gst.RTSPMediaMapping get_media_mapping (); + public Gst.RTSPSessionPool get_session_pool (); [CCode (has_construct_function = false)] - public RTSPClient (Gst.RTSPServer server); + public RTSPClient (); + public void set_media_mapping (Gst.RTSPMediaMapping mapping); public void set_session_pool (Gst.RTSPSessionPool pool); - [NoAccessorMethod] - public Gst.RTSPServer server { get; construct; } } [CCode (cheader_filename = "gst/rtsp-server/rtsp-media.h")] public class RTSPMedia : GLib.Object { - public bool prepared; + public weak Gst.Element element; public weak GLib.Array streams; - public weak Gst.RTSPMediaStream get_stream (uint idx); + public unowned Gst.RTSPMediaStream get_stream (uint idx); public uint n_streams (); + } + [CCode (cheader_filename = "gst/rtsp-server/rtsp-media-factory.h")] + public class RTSPMediaFactory : GLib.Object { + public virtual Gst.RTSPMedia @construct (Gst.RTSPUrl url); + [NoWrapper] + public virtual Gst.Element get_element (Gst.RTSPUrl url); + public string get_launch (); + public bool is_shared (); [CCode (has_construct_function = false)] - public RTSPMedia (string name); - [NoAccessorMethod] - public string location { get; construct; } - [NoAccessorMethod] - public Gst.RTSPUrl url { get; construct; } + public RTSPMediaFactory (); + public void set_launch (string launch); + public void set_shared (bool shared); + public string launch { get; set; } + } + [CCode (cheader_filename = "gst/rtsp-server/rtsp-media-mapping.h")] + public class RTSPMediaMapping : GLib.Object { + public weak GLib.HashTable mappings; + public void add_factory (string path, Gst.RTSPMediaFactory factory); + public Gst.RTSPMediaFactory find_factory (Gst.RTSPUrl url); + [NoWrapper] + public virtual Gst.RTSPMediaFactory find_media (Gst.RTSPUrl url); + [CCode (has_construct_function = false)] + public RTSPMediaMapping (); + public void remove_factory (string path); } [Compact] [CCode (cheader_filename = "gst/rtsp-server/rstp-media.h")] @@ -38,58 +57,77 @@ namespace Gst { public weak Gst.Element element; public uint idx; public weak Gst.RTSPMedia media; - public weak string name; public weak Gst.Element payloader; public weak Gst.Pad srcpad; } [CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h")] - public class RTSPServer : Gst.Object { + public class RTSPServer : GLib.Object { public weak string host; public weak GLib.IOChannel io_channel; public weak GLib.TimeoutSource io_watch; - public weak Gst.RTSPSessionPool pool; public int server_port; public void* server_sin; public weak Gst.PollFD server_sock; + [NoWrapper] + public virtual Gst.RTSPClient accept_client (GLib.IOChannel channel); public uint attach (GLib.MainContext context); - public virtual weak Gst.Element prepare_media (Gst.RTSPMedia media, Gst.Bin bin); + public GLib.TimeoutSource create_watch (); + public int get_backlog (); + public GLib.IOChannel get_io_channel (); + public Gst.RTSPMediaMapping get_media_mapping (); + public int get_port (); + public Gst.RTSPSessionPool get_session_pool (); + public static bool io_func (GLib.IOChannel channel, GLib.IOCondition condition, Gst.RTSPServer server); + [CCode (has_construct_function = false)] + public RTSPServer (); + public void set_backlog (int backlog); + public void set_media_mapping (Gst.RTSPMediaMapping mapping); + public void set_port (int port); + public void set_session_pool (Gst.RTSPSessionPool pool); + public int backlog { get; set; } [NoAccessorMethod] - public int port { get; construct; } + public Gst.RTSPMediaMapping mapping { owned get; set; } + [NoAccessorMethod] + public Gst.RTSPSessionPool pool { owned get; set; } + public int port { get; set; } } [CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")] public class RTSPSession : GLib.Object { public weak GLib.List medias; public weak string sessionid; - public weak Gst.RTSPSessionMedia get_media (Gst.RTSPMedia media); - public static weak Gst.RTSPSessionStream get_stream (Gst.RTSPSessionMedia media, uint idx); + public unowned Gst.RTSPSessionMedia get_media (Gst.RTSPUrl url, Gst.RTSPMediaFactory factory); [CCode (has_construct_function = false)] public RTSPSession (string sessionid); } [Compact] [CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")] public class RTSPSessionMedia { + public weak Gst.RTSPMediaFactory factory; public weak Gst.Element fdsink; public weak Gst.RTSPMedia media; public weak Gst.Element pipeline; public weak Gst.Element rtpbin; public weak Gst.RTSPSession session; public weak GLib.List streams; + public unowned Gst.RTSPSessionStream get_stream (uint idx); public Gst.StateChangeReturn pause (); public Gst.StateChangeReturn play (); public Gst.StateChangeReturn stop (); } - [CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")] + [CCode (cheader_filename = "gst/rtsp-server/rtsp-session-pool.h")] public class RTSPSessionPool : GLib.Object { public weak GLib.Mutex @lock; public weak GLib.HashTable sessions; - public weak Gst.RTSPSession create (); - public weak Gst.RTSPSession find (string sessionid); + public Gst.RTSPSession create (); + [NoWrapper] + public virtual string create_session_id (); + public Gst.RTSPSession find (string sessionid); [CCode (has_construct_function = false)] public RTSPSessionPool (); public void remove (Gst.RTSPSession sess); } [Compact] - [CCode (cheader_filename = "gst/rtsp-server/rtsp-session-pool.h")] + [CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")] public class RTSPSessionStream { public weak Gst.RTSPTransport client_trans; public weak string destination; @@ -101,10 +139,10 @@ namespace Gst { public weak Gst.Pad send_rtp_sink; public weak Gst.Pad send_rtp_src; public weak Gst.RTSPTransport server_trans; - [NoArrayLength] + [CCode (array_length = false)] public weak Gst.Element[] udpsink; - [NoArrayLength] + [CCode (array_length = false)] public weak Gst.Element[] udpsrc; - public weak Gst.RTSPTransport set_transport (string destination, Gst.RTSPTransport ct); + public Gst.RTSPTransport set_transport (string destination, Gst.RTSPTransport ct); } } diff --git a/bindings/vala/packages/gst-rtsp-server-0.10.excludes b/bindings/vala/packages/gst-rtsp-server-0.10.excludes deleted file mode 100644 index 4d93f3b112..0000000000 --- a/bindings/vala/packages/gst-rtsp-server-0.10.excludes +++ /dev/null @@ -1 +0,0 @@ -rtsp-url-compat.h diff --git a/bindings/vala/packages/gst-rtsp-server-0.10.gi b/bindings/vala/packages/gst-rtsp-server-0.10.gi index b9257179a0..b71ad358b7 100644 --- a/bindings/vala/packages/gst-rtsp-server-0.10.gi +++ b/bindings/vala/packages/gst-rtsp-server-0.10.gi @@ -4,7 +4,6 @@ - @@ -12,6 +11,13 @@ + + + + + + + @@ -31,8 +37,9 @@ - + + @@ -64,7 +71,13 @@ - + + + + + + + @@ -75,10 +88,14 @@ - - - + + + + + + + @@ -86,13 +103,12 @@ - - - - + + + @@ -108,20 +124,99 @@ - - - - - - - - - - - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -129,44 +224,109 @@ - - + + - - - - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + - - - - - - - - + + @@ -202,6 +362,12 @@ + + + + + + diff --git a/bindings/vala/packages/gst-rtsp-server-0.10.metadata b/bindings/vala/packages/gst-rtsp-server-0.10.metadata index adcd1e70c7..9de31628c7 100644 --- a/bindings/vala/packages/gst-rtsp-server-0.10.metadata +++ b/bindings/vala/packages/gst-rtsp-server-0.10.metadata @@ -1,9 +1,27 @@ Gst cprefix="Gst" lower_case_cprefix="gst_" cheader_filename="gst/gst.h" -GstRTSPMediaStream cheader_filename="gst/rtsp-server/rstp-media.h" -GstRTSPMedia cheader_filename="gst/rtsp-server/rtsp-media.h" GstRTSPClient cheader_filename="gst/rtsp-server/rtsp-client.h" +GstRTSPMedia cheader_filename="gst/rtsp-server/rtsp-media.h" +GstRTSPMediaFactory cheader_filename="gst/rtsp-server/rtsp-media-factory.h" +GstRTSPMediaMapping cheader_filename="gst/rtsp-server/rtsp-media-mapping.h" +GstRTSPMediaStream cheader_filename="gst/rtsp-server/rstp-media.h" GstRTSPServer cheader_filename="gst/rtsp-server/rtsp-server.h" GstRTSPSession cheader_filename="gst/rtsp-server/rtsp-session.h" GstRTSPSessionMedia cheader_filename="gst/rtsp-server/rtsp-session.h" -GstRTSPSessionPool cheader_filename="gst/rtsp-server/rtsp-session.h" -GstRTSPSessionStream cheader_filename="gst/rtsp-server/rtsp-session-pool.h" +GstRTSPSessionPool cheader_filename="gst/rtsp-server/rtsp-session-pool.h" +GstRTSPSessionStream cheader_filename="gst/rtsp-server/rtsp-session.h" +gst_rtsp_client_get_media_mapping transfer_ownership="1" +gst_rtsp_client_get_session_pool transfer_ownership="1" +gst_rtsp_media_factory_get_launch transfer_ownership="1" +gst_rtsp_media_factory_construct transfer_ownership="1" +gst_rtsp_media_factory_get_element transfer_ownership="1" +gst_rtsp_media_mapping_find_factory transfer_ownership="1" +gst_rtsp_media_mapping_find_media transfer_ownership="1" +gst_rtsp_server_accept_client transfer_ownership="1" +gst_rtsp_server_create_watch transfer_ownership="1" +gst_rtsp_server_get_io_channel transfer_ownership="1" +gst_rtsp_server_get_media_mapping transfer_ownership="1" +gst_rtsp_server_get_session_pool transfer_ownership="1" +gst_rtsp_session_pool_create transfer_ownership="1" +gst_rtsp_session_pool_create_session_id transfer_ownership="1" +gst_rtsp_session_pool_find transfer_ownership="1" +gst_rtsp_session_stream_set_transport transfer_ownership="1"