summaryrefslogtreecommitdiff
path: root/bindings/vala/gst-rtsp-server-0.10.vapi
blob: fd4bc9a4889e2d04e852d9aeab9d006c9d838c1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
/* gst-rtsp-server-0.10.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Gst", lower_case_cprefix = "gst_")]
namespace Gst {
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-client.h")]
	public class RTSPClient : GLib.Object {
		public weak Gst.RTSPConnection connection;
		public weak Gst.RTSPMedia media;
		public weak GLib.List sessions;
		public weak GLib.List streams;
		public weak Gst.RTSPUrl uri;
		public weak Gst.RTSPWatch watch;
		public uint watchid;
		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 ();
		public void set_media_mapping (Gst.RTSPMediaMapping mapping);
		public void set_session_pool (Gst.RTSPSessionPool pool);
		public Gst.RTSPMediaMapping media_mapping { get; set; }
		public Gst.RTSPSessionPool session_pool { get; set; }
	}
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-media.h")]
	public class RTSPMedia : GLib.Object {
		public int active;
		public bool buffering;
		public weak Gst.Element element;
		public uint id;
		public bool is_live;
		public weak Gst.Element pipeline;
		public bool prepared;
		public weak Gst.RTSPTimeRange range;
		public bool reused;
		public weak Gst.Element rtpbin;
		public weak GLib.TimeoutSource source;
		public weak GLib.Array streams;
		public Gst.State target_state;
		public unowned Gst.RTSPMediaStream get_stream (uint idx);
		[NoWrapper]
		public virtual bool handle_message (Gst.Message message);
		public bool is_prepared ();
		public bool is_reusable ();
		public bool is_shared ();
		public uint n_streams ();
		[CCode (has_construct_function = false)]
		public RTSPMedia ();
		public bool prepare ();
		public bool seek (Gst.RTSPTimeRange range);
		public void set_reusable (bool reusable);
		public void set_shared (bool shared);
		public bool set_state (Gst.State state, GLib.Array trans);
		public bool unprepare ();
		[NoAccessorMethod]
		public bool reusable { get; set; }
		[NoAccessorMethod]
		public bool shared { get; set; }
		public virtual signal void unprepared ();
	}
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-media-factory.h")]
	public class RTSPMediaFactory : GLib.Object {
		public weak GLib.Mutex @lock;
		public weak GLib.HashTable medias;
		public weak GLib.Mutex medias_lock;
		[NoWrapper]
		public virtual void configure (Gst.RTSPMedia media);
		public virtual Gst.RTSPMedia? @construct (Gst.RTSPUrl url);
		[NoWrapper]
		public virtual string gen_key (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 RTSPMediaFactory ();
		public void set_launch (string launch);
		public void set_shared (bool shared);
		public string launch { get; set; }
		[NoAccessorMethod]
		public bool shared { 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")]
	public class RTSPMediaStream {
		[CCode (array_length = false)]
		public weak Gst.Element[] appsink;
		[CCode (array_length = false)]
		public weak Gst.Element[] appsrc;
		public weak Gst.Caps caps;
		public ulong caps_sig;
		public weak Gst.Element payloader;
		public bool prepared;
		public weak Gst.Pad recv_rtcp_sink;
		public weak Gst.Pad send_rtcp_src;
		public weak Gst.Pad send_rtp_sink;
		public weak Gst.Pad send_rtp_src;
		public weak Gst.RTSPRange server_port;
		public weak GLib.Object session;
		public weak Gst.Pad srcpad;
		public weak GLib.List transports;
		[CCode (array_length = false)]
		public weak Gst.Element[] udpsink;
		[CCode (array_length = false)]
		public weak Gst.Element[] udpsrc;
		public Gst.FlowReturn rtcp (Gst.Buffer buffer);
		public Gst.FlowReturn rtp (Gst.Buffer buffer);
	}
	[Compact]
	[CCode (cheader_filename = "gst/gst.h")]
	public class RTSPMediaTrans {
		public uint idx;
		public weak GLib.DestroyNotify notify;
		public weak Gst.RTSPSendFunc send_rtcp;
		public weak Gst.RTSPSendFunc send_rtp;
		public weak Gst.RTSPTransport transport;
		public void* user_data;
	}
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h")]
	public class RTSPServer : GLib.Object {
		public weak string host;
		public weak GLib.IOChannel io_channel;
		public weak GLib.TimeoutSource io_watch;
		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 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; }
		public Gst.RTSPMediaMapping media_mapping { get; set; }
		public int port { get; set; }
		public Gst.RTSPSessionPool session_pool { get; set; }
	}
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")]
	public class RTSPSession : GLib.Object {
		public GLib.TimeVal create_time;
		public GLib.TimeVal last_access;
		public weak GLib.List medias;
		public unowned Gst.RTSPSessionMedia get_media (Gst.RTSPUrl uri);
		public unowned string get_sessionid ();
		public uint get_timeout ();
		public bool is_expired (GLib.TimeVal now);
		public unowned Gst.RTSPSessionMedia manage_media (Gst.RTSPUrl uri, owned Gst.RTSPMedia media);
		[CCode (has_construct_function = false)]
		public RTSPSession (string sessionid);
		public int next_timeout (GLib.TimeVal now);
		public bool release_media (Gst.RTSPSessionMedia media);
		public void set_timeout (uint timeout);
		public void touch ();
		public string sessionid { get; construct; }
		public uint timeout { get; set; }
	}
	[Compact]
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")]
	public class RTSPSessionMedia {
		public weak Gst.RTSPMedia media;
		public Gst.RTSPState state;
		public weak GLib.Array streams;
		public weak Gst.RTSPUrl url;
		public unowned Gst.RTSPSessionStream get_stream (uint idx);
		public bool set_state (Gst.State state);
	}
	[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 uint cleanup ();
		public Gst.RTSPSession create ();
		[NoWrapper]
		public virtual string create_session_id ();
		public GLib.TimeoutSource create_watch ();
		public Gst.RTSPSession? find (string sessionid);
		public uint get_max_sessions ();
		public uint get_n_sessions ();
		[CCode (has_construct_function = false)]
		public RTSPSessionPool ();
		public bool remove (Gst.RTSPSession sess);
		public void set_max_sessions (uint max);
		public uint max_sessions { get; set; }
	}
	[Compact]
	[CCode (cheader_filename = "gst/rtsp-server/rtsp-session.h")]
	public class RTSPSessionStream {
		public weak Gst.RTSPMediaStream media_stream;
		public weak Gst.RTSPMediaTrans trans;
		public void set_callbacks (Gst.RTSPSendFunc send_rtp, Gst.RTSPSendFunc send_rtcp, GLib.DestroyNotify notify);
		public Gst.RTSPTransport set_transport (Gst.RTSPTransport ct);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool RTSPSendFunc (Gst.Buffer buffer, uchar channel);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool RTSPSessionPoolFunc (Gst.RTSPSessionPool pool);
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.SDPMessage rtsp_sdp_from_media (Gst.RTSPMedia media);
}