1 /* gstreamer-rtsp-0.10.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gst", gir_namespace = "GstRtsp", gir_version = "0.10", lower_case_cprefix = "gst_")]
4 [Version (deprecated = true, replacement = "gstreamer-1.0")]
6 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h")]
8 public class RTSPConnection {
9 public static Gst.RTSPResult accept (int sock, out unowned Gst.RTSPConnection conn);
10 public void clear_auth_params ();
11 public Gst.RTSPResult close ();
12 public Gst.RTSPResult connect (GLib.TimeVal timeout);
13 public static Gst.RTSPResult create (Gst.RTSPUrl url, out Gst.RTSPConnection conn);
14 public static Gst.RTSPResult create_from_fd (int fd, string ip, uint16 port, string initial_buffer, out unowned Gst.RTSPConnection conn);
15 public Gst.RTSPResult do_tunnel (Gst.RTSPConnection conn2);
16 public Gst.RTSPResult flush (bool flush);
17 public unowned string get_ip ();
18 public int get_readfd ();
19 public unowned string get_tunnelid ();
20 public unowned Gst.RTSPUrl get_url ();
21 public int get_writefd ();
22 public bool is_tunneled ();
23 public Gst.RTSPResult next_timeout (GLib.TimeVal timeout);
24 public Gst.RTSPResult poll (Gst.RTSPEvent events, Gst.RTSPEvent revents, GLib.TimeVal timeout);
25 public Gst.RTSPResult read (uchar data, uint size, GLib.TimeVal timeout);
26 public Gst.RTSPResult receive (Gst.RTSPMessage message, GLib.TimeVal timeout);
27 public Gst.RTSPResult reset_timeout ();
28 public Gst.RTSPResult send (Gst.RTSPMessage message, GLib.TimeVal timeout);
29 public Gst.RTSPResult set_auth (Gst.RTSPAuthMethod method, string user, string pass);
30 public void set_auth_param (string param, string value);
31 public void set_http_mode (bool enable);
32 public void set_ip (string ip);
33 public Gst.RTSPResult set_proxy (string host, uint port);
34 public Gst.RTSPResult set_qos_dscp (uint qos_dscp);
35 public void set_tunneled (bool tunneled);
36 public Gst.RTSPResult write (uchar data, uint size, GLib.TimeVal timeout);
38 [CCode (cheader_filename = "gst/rtsp/gstrtspmessage.h", free_function = "gst_rtsp_message_free")]
40 public class RTSPMessage {
42 public uint body_size;
43 public GLib.Array hdr_fields;
44 public Gst.RTSPMsgType type;
45 public void* type_data;
46 public Gst.RTSPResult add_header (Gst.RTSPHeaderField field, string value);
47 public Gst.RTSPResult append_headers (GLib.StringBuilder str);
48 public Gst.RTSPResult dump ();
49 public Gst.RTSPResult get_body (out unowned uchar[] data, uint size);
50 public Gst.RTSPResult get_header (Gst.RTSPHeaderField field, out unowned string value, int indx);
51 public Gst.RTSPResult init ();
52 public Gst.RTSPResult init_data (uchar channel);
53 public Gst.RTSPResult init_request (Gst.RTSPMethod method, string uri);
54 public Gst.RTSPResult init_response (Gst.RTSPStatusCode code, string reason, Gst.RTSPMessage request);
55 public static Gst.RTSPResult @new (out Gst.RTSPMessage msg);
56 public static Gst.RTSPResult new_data (out Gst.RTSPMessage msg, uchar channel);
57 public static Gst.RTSPResult new_request (out Gst.RTSPMessage msg, Gst.RTSPMethod method, string uri);
58 public static Gst.RTSPResult new_response (out Gst.RTSPMessage msg, Gst.RTSPStatusCode code, string reason, Gst.RTSPMessage request);
59 public Gst.RTSPResult parse_data (uchar channel);
60 public Gst.RTSPResult parse_request (Gst.RTSPMethod method, string uri, Gst.RTSPVersion version);
61 public Gst.RTSPResult parse_response (Gst.RTSPStatusCode code, string reason, Gst.RTSPVersion version);
62 public Gst.RTSPResult remove_header (Gst.RTSPHeaderField field, int indx);
63 public Gst.RTSPResult set_body (uchar[] data, uint size);
64 public Gst.RTSPResult steal_body (out uchar[] data, uint size);
65 public Gst.RTSPResult take_body (owned uchar[] data, uint size);
66 public Gst.RTSPResult take_header (Gst.RTSPHeaderField field, owned string value);
67 public Gst.RTSPResult unset ();
69 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h")]
71 public class RTSPRange {
74 public static Gst.RTSPResult parse (string rangestr, out Gst.RTSPTimeRange range);
75 public static string to_string (Gst.RTSPTimeRange range);
77 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h")]
79 public class RTSPTime {
80 public double seconds;
81 public Gst.RTSPTimeType type;
83 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h")]
85 public class RTSPTimeRange {
86 public Gst.RTSPTime max;
87 public Gst.RTSPTime min;
88 public Gst.RTSPRangeUnit unit;
90 [CCode (cheader_filename = "gst/rtsp/gstrtsptransport.h", free_function = "gst_rtsp_transport_free")]
92 public class RTSPTransport {
94 public Gst.RTSPRange client_port;
95 public string destination;
96 public Gst.RTSPRange interleaved;
98 public Gst.RTSPLowerTrans lower_transport;
99 public bool mode_play;
100 public bool mode_record;
101 public Gst.RTSPRange port;
102 public Gst.RTSPProfile profile;
103 public Gst.RTSPRange server_port;
104 public string source;
106 public Gst.RTSPTransMode trans;
108 public string as_text ();
109 public static Gst.RTSPResult get_manager (Gst.RTSPTransMode trans, string manager, uint option);
110 public static Gst.RTSPResult get_mime (Gst.RTSPTransMode trans, string mime);
111 public Gst.RTSPResult init ();
112 public static Gst.RTSPResult @new (out Gst.RTSPTransport transport);
113 public static Gst.RTSPResult parse (string str, Gst.RTSPTransport transport);
115 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h", copy_function = "gst_rtsp_url_copy", type_id = "gst_rtsp_url_get_type ()")]
117 public class RTSPUrl {
118 public string abspath;
119 public Gst.RTSPFamily family;
121 public string passwd;
124 public Gst.RTSPLowerTrans transports;
126 public Gst.RTSPUrl copy ();
127 public unowned string decode_path_components ();
128 public Gst.RTSPResult get_port (uint16 port);
129 public string get_request_uri ();
130 public static Gst.RTSPResult parse (string urlstr, out Gst.RTSPUrl url);
131 public Gst.RTSPResult set_port (uint16 port);
133 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h", unref_function = "gst_rtsp_watch_unref")]
135 public class RTSPWatch {
136 [CCode (has_construct_function = false)]
137 public RTSPWatch (Gst.RTSPConnection conn, Gst.RTSPWatchFuncs funcs, GLib.DestroyNotify notify);
138 public uint attach (GLib.MainContext context);
139 public uint queue_data (uchar data, uint size);
140 public uint queue_message (Gst.RTSPMessage message);
141 public void reset ();
142 public Gst.RTSPResult send_message (Gst.RTSPMessage message, uint id);
143 public Gst.RTSPResult write_data (uchar data, uint size, uint id);
145 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h")]
147 public class RTSPWatchFuncs {
148 public weak GLib.Callback closed;
149 public weak GLib.Callback error;
150 public weak GLib.Callback error_full;
151 public weak GLib.Callback message_received;
152 public weak GLib.Callback message_sent;
153 public weak GLib.Callback tunnel_complete;
154 public weak GLib.Callback tunnel_lost;
155 public weak GLib.Callback tunnel_start;
157 [CCode (cheader_filename = "gst/rtsp/gstrtspextension.h")]
158 public interface RTSPExtension {
159 public abstract Gst.RTSPResult after_send (Gst.RTSPMessage req, Gst.RTSPMessage resp);
160 public abstract Gst.RTSPResult before_send (Gst.RTSPMessage req);
161 public abstract bool configure_stream (Gst.Caps caps);
162 public abstract bool detect_server (Gst.RTSPMessage resp);
163 public abstract Gst.RTSPResult get_transports (Gst.RTSPLowerTrans protocols, string transport);
164 public abstract Gst.RTSPResult parse_sdp (Gst.SDPMessage sdp, Gst.Structure s);
165 public abstract Gst.RTSPResult receive_request (Gst.RTSPMessage req);
166 public abstract Gst.RTSPResult setup_media (Gst.SDPMedia media);
167 public abstract Gst.RTSPResult stream_select (Gst.RTSPUrl url);
169 public signal Gst.RTSPResult send (void* req, void* resp);
171 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h", cprefix = "GST_RTSP_AUTH_")]
172 public enum RTSPAuthMethod {
177 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h", cprefix = "GST_RTSP_EV_")]
179 public enum RTSPEvent {
183 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h", cprefix = "GST_RTSP_FAM_")]
184 public enum RTSPFamily {
189 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h", cprefix = "GST_RTSP_HDR_")]
190 public enum RTSPHeaderField {
250 X_ACCELERATE_STREAMING,
252 X_ACCEPT_PROXY_AUTHENT,
258 X_PLAYLIST_CHANGE_NOTICE,
261 X_PROXY_CLIENT_AGENT,
263 X_RECEDING_PLAYLISTCHANGE,
274 [CCode (cheader_filename = "gst/rtsp/gstrtspextension.h", cprefix = "GST_RTSP_LOWER_TRANS_")]
276 public enum RTSPLowerTrans {
282 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h", cprefix = "GST_RTSP_")]
284 public enum RTSPMethod {
300 [CCode (cheader_filename = "gst/rtsp/gstrtspmessage.h", cprefix = "GST_RTSP_MESSAGE_", has_type_id = false)]
301 public enum RTSPMsgType {
309 [CCode (cheader_filename = "gst/rtsp/gstrtsptransport.h", cprefix = "GST_RTSP_PROFILE_", has_type_id = false)]
310 public enum RTSPProfile {
315 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h", cprefix = "GST_RTSP_RANGE_", has_type_id = false)]
316 public enum RTSPRangeUnit {
323 [CCode (cheader_filename = "gst/rtsp/gstrtspconnection.h", cprefix = "GST_RTSP_")]
324 public enum RTSPResult {
344 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h", cprefix = "GST_RTSP_STATE_")]
345 public enum RTSPState {
353 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h", cprefix = "GST_RTSP_STS_")]
354 public enum RTSPStatusCode {
378 REQUEST_ENTITY_TOO_LARGE,
379 REQUEST_URI_TOO_LARGE,
380 UNSUPPORTED_MEDIA_TYPE,
381 PARAMETER_NOT_UNDERSTOOD,
382 CONFERENCE_NOT_FOUND,
383 NOT_ENOUGH_BANDWIDTH,
385 METHOD_NOT_VALID_IN_THIS_STATE,
386 HEADER_FIELD_NOT_VALID_FOR_RESOURCE,
388 PARAMETER_IS_READONLY,
389 AGGREGATE_OPERATION_NOT_ALLOWED,
390 ONLY_AGGREGATE_OPERATION_ALLOWED,
391 UNSUPPORTED_TRANSPORT,
392 DESTINATION_UNREACHABLE,
393 INTERNAL_SERVER_ERROR,
398 RTSP_VERSION_NOT_SUPPORTED,
401 [CCode (cheader_filename = "gst/rtsp/gstrtsprange.h", cprefix = "GST_RTSP_TIME_", has_type_id = false)]
402 public enum RTSPTimeType {
407 [CCode (cheader_filename = "gst/rtsp/gstrtsptransport.h", cprefix = "GST_RTSP_TRANS_", has_type_id = false)]
408 public enum RTSPTransMode {
413 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h", cprefix = "GST_RTSP_VERSION_")]
414 public enum RTSPVersion {
419 [CCode (cheader_filename = "gst/rtsp/gstrtspurl.h")]
420 public const int RTSP_DEFAULT_PORT;
421 [CCode (cheader_filename = "gst/rtsp/gstrtspbase64.h")]
422 public static void rtsp_base64_decode_ip (string data, size_t len);
423 [CCode (cheader_filename = "gst/rtsp/gstrtspbase64.h")]
424 public static unowned string rtsp_base64_encode (string data, size_t len);
425 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
426 public static Gst.RTSPHeaderField rtsp_find_header_field (string header);
427 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
428 public static Gst.RTSPMethod rtsp_find_method (string method);
429 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
430 public static bool rtsp_header_allow_multiple (Gst.RTSPHeaderField field);
431 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
432 public static unowned string rtsp_header_as_text (Gst.RTSPHeaderField field);
433 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
434 public static unowned string rtsp_method_as_text (Gst.RTSPMethod method);
435 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs")]
436 public static string rtsp_options_as_text (Gst.RTSPMethod options);
437 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
438 public static unowned string rtsp_status_as_text (Gst.RTSPStatusCode code);
439 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
440 public static unowned string rtsp_strresult (Gst.RTSPResult _result);
441 [CCode (cheader_filename = "gst/rtsp/gstrtspdefs.h")]
442 public static unowned string rtsp_version_as_text (Gst.RTSPVersion version);