1 /* gstreamer-rtsp-0.10.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gst", lower_case_cprefix = "gst_")]
6 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h")]
7 public class RTSPConnection {
8 public static Gst.RTSPResult accept (int sock, out unowned Gst.RTSPConnection conn);
9 public void clear_auth_params ();
10 public Gst.RTSPResult close ();
11 public Gst.RTSPResult connect (GLib.TimeVal timeout);
12 public static Gst.RTSPResult create (Gst.RTSPUrl url, out Gst.RTSPConnection conn);
13 public static Gst.RTSPResult create_from_fd (int fd, string ip, uint16 port, string initial_buffer, out unowned Gst.RTSPConnection conn);
14 public Gst.RTSPResult do_tunnel (Gst.RTSPConnection conn2);
15 public Gst.RTSPResult flush (bool flush);
16 public unowned string get_ip ();
17 public int get_readfd ();
18 public unowned string get_tunnelid ();
19 public unowned Gst.RTSPUrl get_url ();
20 public int get_writefd ();
21 public bool is_tunneled ();
22 public Gst.RTSPResult next_timeout (GLib.TimeVal timeout);
23 public Gst.RTSPResult poll (Gst.RTSPEvent events, Gst.RTSPEvent revents, GLib.TimeVal timeout);
24 public Gst.RTSPResult read (uchar data, uint size, GLib.TimeVal timeout);
25 public Gst.RTSPResult receive (Gst.RTSPMessage message, GLib.TimeVal timeout);
26 public Gst.RTSPResult reset_timeout ();
27 public Gst.RTSPResult send (Gst.RTSPMessage message, GLib.TimeVal timeout);
28 public Gst.RTSPResult set_auth (Gst.RTSPAuthMethod method, string user, string pass);
29 public void set_auth_param (string param, string value);
30 public void set_http_mode (bool enable);
31 public void set_ip (string ip);
32 public Gst.RTSPResult set_proxy (string host, uint port);
33 public Gst.RTSPResult set_qos_dscp (uint qos_dscp);
34 public void set_tunneled (bool tunneled);
35 public Gst.RTSPResult write (uchar data, uint size, GLib.TimeVal timeout);
38 [CCode (cheader_filename = "gst/rtsp/gstrtspmessage.h")]
39 public class RTSPMessage {
41 public uint body_size;
42 public GLib.Array hdr_fields;
43 public Gst.RTSPMsgType type;
44 public void* type_data;
45 public Gst.RTSPResult add_header (Gst.RTSPHeaderField field, string value);
46 public Gst.RTSPResult append_headers (GLib.StringBuilder str);
47 public Gst.RTSPResult dump ();
48 public Gst.RTSPResult get_body (out unowned uchar[] data, uint size);
49 public Gst.RTSPResult get_header (Gst.RTSPHeaderField field, out unowned string value, int indx);
50 public Gst.RTSPResult init ();
51 public Gst.RTSPResult init_data (uchar channel);
52 public Gst.RTSPResult init_request (Gst.RTSPMethod method, string uri);
53 public Gst.RTSPResult init_response (Gst.RTSPStatusCode code, string reason, Gst.RTSPMessage request);
54 public static Gst.RTSPResult @new (out Gst.RTSPMessage msg);
55 public static Gst.RTSPResult new_data (out Gst.RTSPMessage msg, uchar channel);
56 public static Gst.RTSPResult new_request (out Gst.RTSPMessage msg, Gst.RTSPMethod method, string uri);
57 public static Gst.RTSPResult new_response (out Gst.RTSPMessage msg, Gst.RTSPStatusCode code, string reason, Gst.RTSPMessage request);
58 public Gst.RTSPResult parse_data (uchar channel);
59 public Gst.RTSPResult parse_request (Gst.RTSPMethod method, string uri, Gst.RTSPVersion version);
60 public Gst.RTSPResult parse_response (Gst.RTSPStatusCode code, string reason, Gst.RTSPVersion version);
61 public Gst.RTSPResult remove_header (Gst.RTSPHeaderField field, int indx);
62 public Gst.RTSPResult set_body (uchar[] data, uint size);
63 public Gst.RTSPResult steal_body (out uchar[] data, uint size);
64 public Gst.RTSPResult take_body (owned uchar[] data, uint size);
65 public Gst.RTSPResult take_header (Gst.RTSPHeaderField field, owned string value);
66 public Gst.RTSPResult unset ();
69 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h")]
70 public class RTSPRange {
73 public static Gst.RTSPResult parse (string rangestr, out Gst.RTSPTimeRange range);
74 public static string to_string (Gst.RTSPTimeRange range);
77 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h")]
78 public class RTSPTime {
79 public double seconds;
80 public Gst.RTSPTimeType type;
83 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h")]
84 public class RTSPTimeRange {
85 public Gst.RTSPTime max;
86 public Gst.RTSPTime min;
87 public Gst.RTSPRangeUnit unit;
90 [CCode (cheader_filename = "gst/rtsp/gstrtsptransport.h")]
91 public class RTSPTransport {
93 public Gst.RTSPRange client_port;
94 public string destination;
95 public Gst.RTSPRange interleaved;
97 public Gst.RTSPLowerTrans lower_transport;
98 public bool mode_play;
99 public bool mode_record;
100 public Gst.RTSPRange port;
101 public Gst.RTSPProfile profile;
102 public Gst.RTSPRange server_port;
103 public string source;
105 public Gst.RTSPTransMode trans;
107 public string as_text ();
108 public static Gst.RTSPResult get_manager (Gst.RTSPTransMode trans, string manager, uint option);
109 public static Gst.RTSPResult get_mime (Gst.RTSPTransMode trans, string mime);
110 public Gst.RTSPResult init ();
111 public static Gst.RTSPResult @new (out Gst.RTSPTransport transport);
112 public static Gst.RTSPResult parse (string str, Gst.RTSPTransport transport);
115 [CCode (copy_function = "gst_rtsp_url_copy", type_id = "GST_TYPE_RTSP_URL", cheader_filename = "gst/rtsp/gstrtspconnection.h")]
116 public class RTSPUrl {
117 public string abspath;
118 public Gst.RTSPFamily family;
120 public string passwd;
123 public Gst.RTSPLowerTrans transports;
125 public Gst.RTSPUrl copy ();
126 public Gst.RTSPResult get_port (uint16 port);
127 public string get_request_uri ();
128 public static Gst.RTSPResult parse (string urlstr, out Gst.RTSPUrl url);
129 public Gst.RTSPResult set_port (uint16 port);
132 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h")]
133 public class RTSPWatch {
134 [CCode (has_construct_function = false)]
135 public RTSPWatch (Gst.RTSPConnection conn, Gst.RTSPWatchFuncs funcs, GLib.DestroyNotify notify);
136 public uint attach (GLib.MainContext context);
137 public uint queue_data (uchar data, uint size);
138 public uint queue_message (Gst.RTSPMessage message);
139 public void reset ();
140 public Gst.RTSPResult send_message (Gst.RTSPMessage message, uint id);
141 public Gst.RTSPResult write_data (uchar data, uint size, uint id);
144 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h")]
145 public class RTSPWatchFuncs {
146 public weak GLib.Callback closed;
147 public weak GLib.Callback error;
148 public weak GLib.Callback error_full;
149 public weak GLib.Callback message_received;
150 public weak GLib.Callback message_sent;
151 public weak GLib.Callback tunnel_complete;
152 public weak GLib.Callback tunnel_start;
154 [CCode (cheader_filename = "gst/rtsp/gstrtspextension.h")]
155 public interface RTSPExtension {
156 public abstract Gst.RTSPResult after_send (Gst.RTSPMessage req, Gst.RTSPMessage resp);
157 public abstract Gst.RTSPResult before_send (Gst.RTSPMessage req);
158 public abstract bool configure_stream (Gst.Caps caps);
159 public abstract bool detect_server (Gst.RTSPMessage resp);
160 public abstract Gst.RTSPResult get_transports (Gst.RTSPLowerTrans protocols, string transport);
161 public abstract Gst.RTSPResult parse_sdp (Gst.SDPMessage sdp, Gst.Structure s);
162 public abstract Gst.RTSPResult receive_request (Gst.RTSPMessage req);
163 public abstract Gst.RTSPResult setup_media (Gst.SDPMedia media);
164 public abstract Gst.RTSPResult stream_select (Gst.RTSPUrl url);
166 public signal Gst.RTSPResult send (void* req, void* resp);
168 [CCode (cprefix = "GST_RTSP_AUTH_", cheader_filename = "gst/rtsp/gstrtspconnection.h")]
169 public enum RTSPAuthMethod {
174 [CCode (cprefix = "GST_RTSP_EV_", cheader_filename = "gst/rtsp/gstrtspconnection.h")]
176 public enum RTSPEvent {
180 [CCode (cprefix = "GST_RTSP_FAM_", cheader_filename = "gst/rtsp/gstrtspdefs.h")]
181 public enum RTSPFamily {
186 [CCode (cprefix = "GST_RTSP_HDR_", cheader_filename = "gst/rtsp/gstrtspdefs.h")]
187 public enum RTSPHeaderField {
247 X_ACCELERATE_STREAMING,
249 X_ACCEPT_PROXY_AUTHENT,
255 X_PLAYLIST_CHANGE_NOTICE,
258 X_PROXY_CLIENT_AGENT,
260 X_RECEDING_PLAYLISTCHANGE,
271 [CCode (cprefix = "GST_RTSP_LOWER_TRANS_", has_type_id = false, cheader_filename = "gst/rtsp/gstrtspextension.h")]
272 public enum RTSPLowerTrans {
279 [CCode (cprefix = "GST_RTSP_", cheader_filename = "gst/rtsp/gstrtspdefs.h")]
281 public enum RTSPMethod {
297 [CCode (cprefix = "GST_RTSP_MESSAGE_", has_type_id = false, cheader_filename = "gst/rtsp/gstrtspmessage.h")]
298 public enum RTSPMsgType {
306 [CCode (cprefix = "GST_RTSP_PROFILE_", has_type_id = false, cheader_filename = "gst/rtsp/gstrtsptransport.h")]
307 public enum RTSPProfile {
312 [CCode (cprefix = "GST_RTSP_RANGE_", has_type_id = false, cheader_filename = "gst/rtsp/gstrtsprange.h")]
313 public enum RTSPRangeUnit {
320 [CCode (cprefix = "GST_RTSP_", cheader_filename = "gst/rtsp/gstrtspconnection.h")]
321 public enum RTSPResult {
341 [CCode (cprefix = "GST_RTSP_STATE_", cheader_filename = "gst/rtsp/gstrtspdefs.h")]
342 public enum RTSPState {
350 [CCode (cprefix = "GST_RTSP_STS_", cheader_filename = "gst/rtsp/gstrtspdefs.h")]
351 public enum RTSPStatusCode {
375 REQUEST_ENTITY_TOO_LARGE,
376 REQUEST_URI_TOO_LARGE,
377 UNSUPPORTED_MEDIA_TYPE,
378 PARAMETER_NOT_UNDERSTOOD,
379 CONFERENCE_NOT_FOUND,
380 NOT_ENOUGH_BANDWIDTH,
382 METHOD_NOT_VALID_IN_THIS_STATE,
383 HEADER_FIELD_NOT_VALID_FOR_RESOURCE,
385 PARAMETER_IS_READONLY,
386 AGGREGATE_OPERATION_NOT_ALLOWED,
387 ONLY_AGGREGATE_OPERATION_ALLOWED,
388 UNSUPPORTED_TRANSPORT,
389 DESTINATION_UNREACHABLE,
390 INTERNAL_SERVER_ERROR,
395 RTSP_VERSION_NOT_SUPPORTED,
398 [CCode (cprefix = "GST_RTSP_TIME_", has_type_id = false, cheader_filename = "gst/rtsp/gstrtsprange.h")]
399 public enum RTSPTimeType {
404 [CCode (cprefix = "GST_RTSP_TRANS_", has_type_id = false, cheader_filename = "gst/rtsp/gstrtsptransport.h")]
405 public enum RTSPTransMode {
410 [CCode (cprefix = "GST_RTSP_VERSION_", cheader_filename = "gst/rtsp/gstrtspdefs.h")]
411 public enum RTSPVersion {
416 [CCode (cheader_filename = "gst/rtsp/gstrtspurl.h")]
417 public const int RTSP_DEFAULT_PORT;
418 [CCode (cheader_filename = "gst/rtsp/gstrtspbase64.h")]
419 public static void rtsp_base64_decode_ip (string data, size_t len);
420 [CCode (cheader_filename = "gst/rtsp/gstrtspbase64.h")]
421 public static unowned string rtsp_base64_encode (string data, size_t len);
422 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
423 public static Gst.RTSPHeaderField rtsp_find_header_field (string header);
424 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
425 public static Gst.RTSPMethod rtsp_find_method (string method);
426 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
427 public static bool rtsp_header_allow_multiple (Gst.RTSPHeaderField field);
428 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
429 public static unowned string rtsp_header_as_text (Gst.RTSPHeaderField field);
430 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
431 public static unowned string rtsp_method_as_text (Gst.RTSPMethod method);
432 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs")]
433 public static string rtsp_options_as_text (Gst.RTSPMethod options);
434 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
435 public static unowned string rtsp_status_as_text (Gst.RTSPStatusCode code);
436 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
437 public static unowned string rtsp_strresult (Gst.RTSPResult _result);
438 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
439 public static unowned string rtsp_version_as_text (Gst.RTSPVersion version);