summaryrefslogtreecommitdiff
path: root/vapi/gstreamer-rtsp-server-1.0.vapi
blob: 9702ccaf9b4233104b53ba1a16509a1a93b4e1c5 (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
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
/* gstreamer-rtsp-server-1.0.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Gst", gir_namespace = "GstRtspServer", gir_version = "1.0", lower_case_cprefix = "gst_")]
namespace Gst {
	namespace RTSPServer {
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPAddress", copy_function = "g_boxed_copy", free_function = "g_boxed_free", lower_case_cprefix = "gst_rtsp_address_", type_id = "gst_rtsp_address_get_type ()")]
		[Compact]
		[GIR (name = "RTSPAddress")]
		public class Address {
			public string address;
			public int n_ports;
			public Gst.RTSPServer.AddressPool pool;
			public uint16 port;
			public uint8 ttl;
			public Gst.RTSPServer.Address copy ();
			public void free ();
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPAddressPool", lower_case_cprefix = "gst_rtsp_address_pool_", type_id = "gst_rtsp_address_pool_get_type ()")]
		[GIR (name = "RTSPAddressPool")]
		public class AddressPool : GLib.Object {
			[CCode (cname = "GST_RTSP_ADDRESS_POOL_ANY_IPV4")]
			public const string ANY_IPV4;
			[CCode (cname = "GST_RTSP_ADDRESS_POOL_ANY_IPV6")]
			public const string ANY_IPV6;
			[CCode (has_construct_function = false)]
			public AddressPool ();
			public Gst.RTSPServer.Address? acquire_address (Gst.RTSPServer.AddressFlags flags, int n_ports);
			public bool add_range (string min_address, string max_address, uint16 min_port, uint16 max_port, uint8 ttl);
			public void clear ();
			public void dump ();
			public bool has_unicast_addresses ();
			public Gst.RTSPServer.AddressPoolResult reserve_address (string ip_address, uint port, uint n_ports, uint ttl, out Gst.RTSPServer.Address address);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPAuth", lower_case_cprefix = "gst_rtsp_auth_", type_id = "gst_rtsp_auth_get_type ()")]
		[GIR (name = "RTSPAuth")]
		public class Auth : GLib.Object {
			[CCode (cname = "GST_RTSP_AUTH_CHECK_CONNECT")]
			public const string CHECK_CONNECT;
			[CCode (cname = "GST_RTSP_AUTH_CHECK_MEDIA_FACTORY_ACCESS")]
			public const string CHECK_MEDIA_FACTORY_ACCESS;
			[CCode (cname = "GST_RTSP_AUTH_CHECK_MEDIA_FACTORY_CONSTRUCT")]
			public const string CHECK_MEDIA_FACTORY_CONSTRUCT;
			[CCode (cname = "GST_RTSP_AUTH_CHECK_TRANSPORT_CLIENT_SETTINGS")]
			public const string CHECK_TRANSPORT_CLIENT_SETTINGS;
			[CCode (cname = "GST_RTSP_AUTH_CHECK_URL")]
			public const string CHECK_URL;
			[CCode (has_construct_function = false)]
			public Auth ();
			public void add_basic (string basic, Gst.RTSPServer.Token token);
			[Version (since = "1.12")]
			public void add_digest (string user, string pass, Gst.RTSPServer.Token token);
			[NoWrapper]
			public virtual bool authenticate (Gst.RTSPServer.Context ctx);
			[NoWrapper]
			public virtual bool check (Gst.RTSPServer.Context ctx, string check);
			[CCode (cname = "gst_rtsp_auth_check")]
			public static bool check_current_context (string check);
			[NoWrapper]
			public virtual void generate_authenticate_header (Gst.RTSPServer.Context ctx);
			public Gst.RTSPServer.Token? get_default_token ();
			[Version (since = "1.16")]
			public string? get_realm ();
			[Version (since = "1.12")]
			public Gst.RTSP.AuthMethod get_supported_methods ();
			public GLib.TlsAuthenticationMode get_tls_authentication_mode ();
			public GLib.TlsCertificate? get_tls_certificate ();
			[Version (since = "1.6")]
			public GLib.TlsDatabase? get_tls_database ();
			public static string make_basic (string user, string pass);
			[Version (since = "1.16")]
			public bool parse_htdigest (string path, Gst.RTSPServer.Token token);
			public void remove_basic (string basic);
			[Version (since = "1.12")]
			public void remove_digest (string user);
			public void set_default_token (Gst.RTSPServer.Token? token);
			[Version (since = "1.16")]
			public void set_realm (string? realm);
			[Version (since = "1.12")]
			public void set_supported_methods (Gst.RTSP.AuthMethod methods);
			[Version (since = "1.6")]
			public void set_tls_authentication_mode (GLib.TlsAuthenticationMode mode);
			public void set_tls_certificate (GLib.TlsCertificate? cert);
			[Version (since = "1.6")]
			public void set_tls_database (GLib.TlsDatabase? database);
			[Version (since = "1.6")]
			public virtual signal bool accept_certificate (GLib.TlsConnection connection, GLib.TlsCertificate peer_cert, GLib.TlsCertificateFlags errors);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPClient", lower_case_cprefix = "gst_rtsp_client_", type_id = "gst_rtsp_client_get_type ()")]
		[GIR (name = "RTSPClient")]
		public class Client : GLib.Object {
			[CCode (has_construct_function = false)]
			public Client ();
			[NoWrapper]
			[Version (since = "1.22")]
			public virtual Gst.RTSP.StatusCode adjust_error_code (Gst.RTSPServer.Context ctx, Gst.RTSP.StatusCode code);
			[NoWrapper]
			public virtual Gst.RTSP.StatusCode adjust_play_mode (Gst.RTSPServer.Context context, Gst.RTSP.TimeRange range, Gst.SeekFlags flags, double rate, Gst.ClockTime trickmode_interval, bool enable_rate_control);
			[NoWrapper]
			public virtual Gst.RTSP.StatusCode adjust_play_response (Gst.RTSPServer.Context context);
			public uint attach (GLib.MainContext? context);
			[Version (since = "1.4")]
			public void close ();
			[NoWrapper]
			public virtual bool configure_client_media (Gst.RTSPServer.Media media, Gst.RTSPServer.Stream stream, Gst.RTSPServer.Context ctx);
			[NoWrapper]
			public virtual bool configure_client_transport (Gst.RTSPServer.Context ctx, Gst.RTSP.Transport ct);
			[NoWrapper]
			public virtual Gst.SDP.Message create_sdp (Gst.RTSPServer.Media media);
			public Gst.RTSPServer.Auth? get_auth ();
			public unowned Gst.RTSP.Connection? get_connection ();
			[Version (since = "1.18")]
			public uint get_content_length_limit ();
			public Gst.RTSPServer.MountPoints? get_mount_points ();
			public Gst.RTSPServer.SessionPool? get_session_pool ();
			[Version (since = "1.18")]
			public unowned Gst.RTSPServer.StreamTransport? get_stream_transport (uint8 channel);
			public Gst.RTSPServer.ThreadPool? get_thread_pool ();
			public Gst.RTSP.Result handle_message (Gst.RTSP.Message message);
			[NoWrapper]
			public virtual bool handle_sdp (Gst.RTSPServer.Context ctx, Gst.RTSPServer.Media media, Gst.SDP.Message sdp);
			[NoWrapper]
			public virtual string make_path_from_uri (Gst.RTSP.Url uri);
			[NoWrapper]
			public virtual Gst.RTSP.Result params_get (Gst.RTSPServer.Context ctx);
			[NoWrapper]
			public virtual Gst.RTSP.Result params_set (Gst.RTSPServer.Context ctx);
			public GLib.List<Gst.RTSPServer.Session> session_filter (Gst.RTSPServer.ClientSessionFilterFunc? func);
			public void set_auth (Gst.RTSPServer.Auth? auth);
			public bool set_connection (owned Gst.RTSP.Connection conn);
			[Version (since = "1.18")]
			public void set_content_length_limit (uint limit);
			public void set_mount_points (Gst.RTSPServer.MountPoints? mounts);
			public void set_send_func (owned Gst.RTSPServer.ClientSendFunc func);
			[Version (since = "1.16")]
			public void set_send_messages_func (owned Gst.RTSPServer.ClientSendMessagesFunc func);
			public void set_session_pool (Gst.RTSPServer.SessionPool? pool);
			public void set_thread_pool (Gst.RTSPServer.ThreadPool? pool);
			[NoWrapper]
			public virtual void tunnel_http_response (Gst.RTSP.Message request, Gst.RTSP.Message response);
			[NoAccessorMethod]
			public bool drop_backlog { get; set; }
			public Gst.RTSPServer.MountPoints mount_points { owned get; set; }
			[NoAccessorMethod]
			public int post_session_timeout { get; set; }
			public Gst.RTSPServer.SessionPool session_pool { owned get; set; }
			public virtual signal void announce_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.6")]
			public virtual signal string check_requirements (Gst.RTSPServer.Context ctx, [CCode (array_length = false, array_null_terminated = true)] string[] arr);
			public virtual signal void closed ();
			public virtual signal void describe_request (Gst.RTSPServer.Context ctx);
			public virtual signal void get_parameter_request (Gst.RTSPServer.Context ctx);
			public virtual signal void handle_response (Gst.RTSPServer.Context ctx);
			public virtual signal void new_session (Gst.RTSPServer.Session session);
			public virtual signal void options_request (Gst.RTSPServer.Context ctx);
			public virtual signal void pause_request (Gst.RTSPServer.Context ctx);
			public virtual signal void play_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_announce_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_describe_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_get_parameter_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_options_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_pause_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_play_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_record_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_set_parameter_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_setup_request (Gst.RTSPServer.Context ctx);
			[Version (since = "1.12")]
			public virtual signal Gst.RTSP.StatusCode pre_teardown_request (Gst.RTSPServer.Context ctx);
			public virtual signal void record_request (Gst.RTSPServer.Context ctx);
			[HasEmitter]
			public virtual signal void send_message (Gst.RTSPServer.Session ctx, Gst.RTSP.Message response);
			public virtual signal void set_parameter_request (Gst.RTSPServer.Context ctx);
			public virtual signal void setup_request (Gst.RTSPServer.Context ctx);
			public virtual signal void teardown_request (Gst.RTSPServer.Context ctx);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMedia", lower_case_cprefix = "gst_rtsp_media_", type_id = "gst_rtsp_media_get_type ()")]
		[GIR (name = "RTSPMedia")]
		public class Media : GLib.Object {
			[CCode (has_construct_function = false)]
			public Media (owned Gst.Element element);
			public void collect_streams ();
			[Version (since = "1.14")]
			public bool complete_pipeline (GLib.GenericArray<Gst.RTSP.Transport?> transports);
			[NoWrapper]
			public virtual bool convert_range (Gst.RTSP.TimeRange range, Gst.RTSP.RangeUnit unit);
			[CCode (returns_floating_reference = true)]
			[NoWrapper]
			public virtual Gst.Element create_rtpbin ();
			public unowned Gst.RTSPServer.Stream create_stream (Gst.Element payloader, Gst.Pad pad);
			public unowned Gst.RTSPServer.Stream? find_stream (string control);
			public Gst.RTSPServer.AddressPool? get_address_pool ();
			public Gst.ClockTime get_base_time ();
			public uint get_buffer_size ();
			public Gst.Clock? get_clock ();
			[Version (since = "1.16")]
			public bool get_do_retransmission ();
			[Version (since = "1.18")]
			public int get_dscp_qos ();
			public Gst.Element get_element ();
			public uint get_latency ();
			[Version (since = "1.16")]
			public uint get_max_mcast_ttl ();
			public string? get_multicast_iface ();
			public Gst.RTSPServer.Permissions? get_permissions ();
			public Gst.RTSP.Profile get_profiles ();
			public Gst.RTSP.LowerTrans get_protocols ();
			[Version (since = "1.8")]
			public Gst.RTSPServer.PublishClockMode get_publish_clock_mode ();
			public string? get_range_string (bool play, Gst.RTSP.RangeUnit unit);
			[Version (since = "1.18")]
			public bool get_rate_control ();
			[Version (since = "1.18")]
			public bool get_rates (out double rate, out double applied_rate);
			public Gst.ClockTime get_retransmission_time ();
			public Gst.RTSPServer.MediaStatus get_status ();
			public unowned Gst.RTSPServer.Stream? get_stream (uint idx);
			public Gst.RTSPServer.SuspendMode get_suspend_mode ();
			public Gst.Net.TimeProvider? get_time_provider (string? address, uint16 port);
			public Gst.RTSPServer.TransportMode get_transport_mode ();
			public virtual bool handle_sdp (Gst.SDP.Message sdp);
			[Version (since = "1.18")]
			public bool has_completed_sender ();
			[Version (since = "1.16")]
			public bool is_bind_mcast_address ();
			public bool is_eos_shutdown ();
			[Version (since = "1.18")]
			public bool is_receive_only ();
			public bool is_reusable ();
			public bool is_shared ();
			public bool is_stop_on_disconnect ();
			public bool is_time_provider ();
			[Version (since = "1.18")]
			public void @lock ();
			public uint n_streams ();
			public virtual bool prepare (owned Gst.RTSPServer.Thread? thread);
			[NoWrapper]
			public virtual bool query_position (int64 position);
			[NoWrapper]
			public virtual bool query_stop (int64 stop);
			public bool seek (Gst.RTSP.TimeRange range);
			[Version (since = "1.18")]
			public bool seek_full (Gst.RTSP.TimeRange range, Gst.SeekFlags flags);
			[Version (since = "1.18")]
			public bool seek_trickmode (Gst.RTSP.TimeRange range, Gst.SeekFlags flags, double rate, Gst.ClockTime trickmode_interval);
			[Version (since = "1.14")]
			public Gst.ClockTimeDiff seekable ();
			public void set_address_pool (Gst.RTSPServer.AddressPool? pool);
			[Version (since = "1.16")]
			public void set_bind_mcast_address (bool bind_mcast_addr);
			public void set_buffer_size (uint size);
			public void set_clock (Gst.Clock? clock);
			[Version (since = "1.16")]
			public void set_do_retransmission (bool do_retransmission);
			[Version (since = "1.18")]
			public void set_dscp_qos (int dscp_qos);
			public void set_eos_shutdown (bool eos_shutdown);
			public void set_latency (uint latency);
			[Version (since = "1.16")]
			public bool set_max_mcast_ttl (uint ttl);
			public void set_multicast_iface (string? multicast_iface);
			public void set_permissions (Gst.RTSPServer.Permissions? permissions);
			public void set_pipeline_state (Gst.State state);
			public void set_profiles (Gst.RTSP.Profile profiles);
			public void set_protocols (Gst.RTSP.LowerTrans protocols);
			[Version (since = "1.8")]
			public void set_publish_clock_mode (Gst.RTSPServer.PublishClockMode mode);
			[Version (since = "1.18")]
			public void set_rate_control (bool enabled);
			public void set_retransmission_time (Gst.ClockTime time);
			public void set_reusable (bool reusable);
			public void set_shared (bool shared);
			public bool set_state (Gst.State state, GLib.GenericArray<Gst.RTSPServer.StreamTransport> transports);
			public void set_stop_on_disconnect (bool stop_on_disconnect);
			public void set_suspend_mode (Gst.RTSPServer.SuspendMode mode);
			public void set_transport_mode (Gst.RTSPServer.TransportMode mode);
			[NoWrapper]
			public virtual bool setup_rtpbin (Gst.Element rtpbin);
			public virtual bool setup_sdp (Gst.SDP.Message sdp, Gst.RTSPServer.SDPInfo info);
			public virtual bool suspend ();
			public void take_pipeline (Gst.Pipeline pipeline);
			[Version (since = "1.18")]
			public void @unlock ();
			public virtual bool unprepare ();
			public virtual bool unsuspend ();
			public void use_time_provider (bool time_provider);
			[NoAccessorMethod]
			public bool bind_mcast_address { get; set; }
			public uint buffer_size { get; set; }
			public Gst.Clock clock { owned get; set; }
			public int dscp_qos { get; set; }
			public Gst.Element element { owned get; construct; }
			[NoAccessorMethod]
			public bool eos_shutdown { get; set; }
			public uint latency { get; set; }
			public uint max_mcast_ttl { get; set; }
			public Gst.RTSP.Profile profiles { get; set; }
			public Gst.RTSP.LowerTrans protocols { get; set; }
			[NoAccessorMethod]
			public bool reusable { get; set; }
			[NoAccessorMethod]
			public bool shared { get; set; }
			[NoAccessorMethod]
			public bool stop_on_disconnect { get; set; }
			public Gst.RTSPServer.SuspendMode suspend_mode { get; set; }
			[NoAccessorMethod]
			public bool time_provider { get; set; }
			public Gst.RTSPServer.TransportMode transport_mode { get; set; }
			[Version (since = "1.22")]
			public virtual signal bool handle_message (Gst.Message message);
			public virtual signal void new_state (int state);
			public virtual signal void new_stream (Gst.RTSPServer.Stream stream);
			public virtual signal void prepared ();
			public virtual signal void removed_stream (Gst.RTSPServer.Stream stream);
			public virtual signal void target_state (int state);
			public virtual signal void unprepared ();
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMediaFactory", lower_case_cprefix = "gst_rtsp_media_factory_", type_id = "gst_rtsp_media_factory_get_type ()")]
		[GIR (name = "RTSPMediaFactory")]
		public class MediaFactory : GLib.Object {
			[CCode (has_construct_function = false)]
			public MediaFactory ();
			public void add_role (string role, string fieldname, ...);
			[Version (since = "1.14")]
			public void add_role_from_structure (Gst.Structure structure);
			[NoWrapper]
			public virtual void configure (Gst.RTSPServer.Media media);
			public virtual Gst.RTSPServer.Media? @construct (Gst.RTSP.Url url);
			[CCode (returns_floating_reference = true)]
			public virtual Gst.Element? create_element (Gst.RTSP.Url url);
			[CCode (returns_floating_reference = true)]
			[NoWrapper]
			public virtual Gst.Pipeline create_pipeline (Gst.RTSPServer.Media media);
			[NoWrapper]
			public virtual string gen_key (Gst.RTSP.Url url);
			public Gst.RTSPServer.AddressPool? get_address_pool ();
			public uint get_buffer_size ();
			[Version (since = "1.8")]
			public Gst.Clock? get_clock ();
			[Version (since = "1.16")]
			public bool get_do_retransmission ();
			[Version (since = "1.18")]
			public int get_dscp_qos ();
			public uint get_latency ();
			public string? get_launch ();
			[Version (since = "1.16")]
			public uint get_max_mcast_ttl ();
			[Version (since = "1.6")]
			public GLib.Type get_media_gtype ();
			public string? get_multicast_iface ();
			public Gst.RTSPServer.Permissions? get_permissions ();
			public Gst.RTSP.Profile get_profiles ();
			public Gst.RTSP.LowerTrans get_protocols ();
			[Version (since = "1.8")]
			public Gst.RTSPServer.PublishClockMode get_publish_clock_mode ();
			public Gst.ClockTime get_retransmission_time ();
			public Gst.RTSPServer.SuspendMode get_suspend_mode ();
			public Gst.RTSPServer.TransportMode get_transport_mode ();
			[Version (since = "1.16")]
			public bool is_bind_mcast_address ();
			[Version (since = "1.20")]
			public bool is_enable_rtcp ();
			public bool is_eos_shutdown ();
			public bool is_shared ();
			public bool is_stop_on_disonnect ();
			public void set_address_pool (Gst.RTSPServer.AddressPool? pool);
			[Version (since = "1.16")]
			public void set_bind_mcast_address (bool bind_mcast_addr);
			public void set_buffer_size (uint size);
			[Version (since = "1.8")]
			public void set_clock (Gst.Clock? clock);
			[Version (since = "1.16")]
			public void set_do_retransmission (bool do_retransmission);
			[Version (since = "1.18")]
			public void set_dscp_qos (int dscp_qos);
			[Version (since = "1.20")]
			public void set_enable_rtcp (bool enable);
			public void set_eos_shutdown (bool eos_shutdown);
			public void set_latency (uint latency);
			public void set_launch (string launch);
			[Version (since = "1.16")]
			public bool set_max_mcast_ttl (uint ttl);
			[Version (since = "1.6")]
			public void set_media_gtype (GLib.Type media_gtype);
			public void set_multicast_iface (string? multicast_iface);
			public void set_permissions (Gst.RTSPServer.Permissions? permissions);
			public void set_profiles (Gst.RTSP.Profile profiles);
			public void set_protocols (Gst.RTSP.LowerTrans protocols);
			[Version (since = "1.8")]
			public void set_publish_clock_mode (Gst.RTSPServer.PublishClockMode mode);
			public void set_retransmission_time (Gst.ClockTime time);
			public void set_shared (bool shared);
			public void set_stop_on_disconnect (bool stop_on_disconnect);
			public void set_suspend_mode (Gst.RTSPServer.SuspendMode mode);
			public void set_transport_mode (Gst.RTSPServer.TransportMode mode);
			[NoAccessorMethod]
			public bool bind_mcast_address { get; set; }
			public uint buffer_size { get; set; }
			public Gst.Clock clock { owned get; set; }
			public int dscp_qos { get; set; }
			[NoAccessorMethod]
			[Version (since = "1.20")]
			public bool enable_rtcp { get; set; }
			[NoAccessorMethod]
			public bool eos_shutdown { get; set; }
			public uint latency { get; set; }
			public string launch { owned get; set; }
			public uint max_mcast_ttl { get; set; }
			public Gst.RTSP.Profile profiles { get; set; }
			public Gst.RTSP.LowerTrans protocols { get; set; }
			[NoAccessorMethod]
			public bool shared { get; set; }
			[NoAccessorMethod]
			public bool stop_on_disconnect { get; set; }
			public Gst.RTSPServer.SuspendMode suspend_mode { get; set; }
			public Gst.RTSPServer.TransportMode transport_mode { get; set; }
			public virtual signal void media_configure (Gst.RTSPServer.Media media);
			public virtual signal void media_constructed (Gst.RTSPServer.Media media);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMediaFactoryURI", lower_case_cprefix = "gst_rtsp_media_factory_uri_", type_id = "gst_rtsp_media_factory_uri_get_type ()")]
		[GIR (name = "RTSPMediaFactoryURI")]
		public class MediaFactoryURI : Gst.RTSPServer.MediaFactory {
			[CCode (has_construct_function = false)]
			public MediaFactoryURI ();
			public string get_uri ();
			public void set_uri (string uri);
			public string uri { owned get; set; }
			[NoAccessorMethod]
			public bool use_gstpay { get; set; }
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMountPoints", lower_case_cprefix = "gst_rtsp_mount_points_", type_id = "gst_rtsp_mount_points_get_type ()")]
		[GIR (name = "RTSPMountPoints")]
		public class MountPoints : GLib.Object {
			[CCode (has_construct_function = false)]
			public MountPoints ();
			public void add_factory (string path, owned Gst.RTSPServer.MediaFactory factory);
			public virtual string? make_path (Gst.RTSP.Url url);
			public Gst.RTSPServer.MediaFactory match (string path, out int matched);
			public void remove_factory (string path);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPOnvifClient", lower_case_cprefix = "gst_rtsp_onvif_client_", type_id = "gst_rtsp_onvif_client_get_type ()")]
		[GIR (name = "RTSPOnvifClient")]
		[Version (since = "1.14")]
		public class OnvifClient : Gst.RTSPServer.Client {
			[CCode (has_construct_function = false, type = "GstRTSPClient*")]
			[Version (since = "1.18")]
			public OnvifClient ();
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPOnvifMedia", lower_case_cprefix = "gst_rtsp_onvif_media_", type_id = "gst_rtsp_onvif_media_get_type ()")]
		[GIR (name = "RTSPOnvifMedia")]
		[Version (since = "1.14")]
		public class OnvifMedia : Gst.RTSPServer.Media {
			[CCode (has_construct_function = false)]
			protected OnvifMedia ();
			public bool collect_backchannel ();
			public uint get_backchannel_bandwidth ();
			public void set_backchannel_bandwidth (uint bandwidth);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPOnvifMediaFactory", lower_case_cprefix = "gst_rtsp_onvif_media_factory_", type_id = "gst_rtsp_onvif_media_factory_get_type ()")]
		[GIR (name = "RTSPOnvifMediaFactory")]
		[Version (since = "1.14")]
		public class OnvifMediaFactory : Gst.RTSPServer.MediaFactory {
			[CCode (has_construct_function = false, type = "GstRTSPMediaFactory*")]
			public OnvifMediaFactory ();
			public uint get_backchannel_bandwidth ();
			public string? get_backchannel_launch ();
			public virtual bool has_backchannel_support ();
			[Version (since = "1.18")]
			public bool has_replay_support ();
			public static bool requires_backchannel (Gst.RTSPServer.MediaFactory factory, Gst.RTSPServer.Context ctx);
			public void set_backchannel_bandwidth (uint bandwidth);
			public void set_backchannel_launch (string? launch);
			[Version (since = "1.18")]
			public void set_replay_support (bool has_replay_support);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPOnvifServer", lower_case_cprefix = "gst_rtsp_onvif_server_", type_id = "gst_rtsp_onvif_server_get_type ()")]
		[GIR (name = "RTSPOnvifServer")]
		[Version (since = "1.14")]
		public class OnvifServer : Gst.RTSPServer.Server {
			[CCode (has_construct_function = false, type = "GstRTSPServer*")]
			public OnvifServer ();
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPPermissions", copy_function = "g_boxed_copy", free_function = "g_boxed_free", lower_case_cprefix = "gst_rtsp_permissions_", type_id = "gst_rtsp_permissions_get_type ()")]
		[Compact]
		[GIR (name = "RTSPPermissions")]
		public class Permissions : Gst.MiniObject {
			[CCode (cname = "GST_RTSP_PERM_MEDIA_FACTORY_ACCESS")]
			public const string MEDIA_FACTORY_ACCESS;
			[CCode (cname = "GST_RTSP_PERM_MEDIA_FACTORY_CONSTRUCT")]
			public const string MEDIA_FACTORY_CONSTRUCT;
			[CCode (has_construct_function = false)]
			public Permissions ();
			[Version (since = "1.14")]
			public void add_permission_for_role (string role, string permission, bool allowed);
			public void add_role (string role, string fieldname, ...);
			[Version (since = "1.14")]
			public void add_role_empty (string role);
			[Version (since = "1.14")]
			public void add_role_from_structure (Gst.Structure structure);
			public void add_role_valist (string role, string fieldname, va_list var_args);
			public unowned Gst.Structure get_role (string role);
			public bool is_allowed (string role, string permission);
			public void remove_role (string role);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPServer", lower_case_cprefix = "gst_rtsp_server_", type_id = "gst_rtsp_server_get_type ()")]
		[GIR (name = "RTSPServer")]
		public class Server : GLib.Object {
			[CCode (has_construct_function = false)]
			public Server ();
			public uint attach (GLib.MainContext? context);
			public GLib.List<Gst.RTSPServer.Client> client_filter (Gst.RTSPServer.ServerClientFilterFunc? func);
			[NoWrapper]
			public virtual Gst.RTSPServer.Client create_client ();
			public GLib.Socket create_socket (GLib.Cancellable? cancellable = null) throws GLib.Error;
			public GLib.Source create_source (GLib.Cancellable? cancellable = null) throws GLib.Error;
			public string? get_address ();
			public Gst.RTSPServer.Auth? get_auth ();
			public int get_backlog ();
			public int get_bound_port ();
			[Version (since = "1.18")]
			public uint get_content_length_limit ();
			public Gst.RTSPServer.MountPoints? get_mount_points ();
			public string get_service ();
			public Gst.RTSPServer.SessionPool? get_session_pool ();
			public Gst.RTSPServer.ThreadPool? get_thread_pool ();
			public static bool io_func (GLib.Socket socket, GLib.IOCondition condition, Gst.RTSPServer.Server server);
			public void set_address (string address);
			public void set_auth (Gst.RTSPServer.Auth? auth);
			public void set_backlog (int backlog);
			[Version (since = "1.18")]
			public void set_content_length_limit (uint limit);
			public void set_mount_points (Gst.RTSPServer.MountPoints? mounts);
			public void set_service (string service);
			public void set_session_pool (Gst.RTSPServer.SessionPool? pool);
			public void set_thread_pool (Gst.RTSPServer.ThreadPool? pool);
			public bool transfer_connection (owned GLib.Socket socket, string ip, int port, string? initial_buffer);
			public string address { owned get; set; }
			public int backlog { get; set; }
			public int bound_port { get; }
			public uint content_length_limit { get; set; }
			public Gst.RTSPServer.MountPoints mount_points { owned get; set; }
			public string service { owned get; set; }
			public Gst.RTSPServer.SessionPool session_pool { owned get; set; }
			public virtual signal void client_connected (Gst.RTSPServer.Client client);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSession", lower_case_cprefix = "gst_rtsp_session_", type_id = "gst_rtsp_session_get_type ()")]
		[GIR (name = "RTSPSession")]
		public class Session : GLib.Object {
			[CCode (has_construct_function = false)]
			public Session (string sessionid);
			public void allow_expire ();
			[Version (since = "1.20")]
			public Gst.RTSPServer.SessionMedia? dup_media (string path, out int matched);
			public GLib.List<Gst.RTSPServer.SessionMedia> filter (Gst.RTSPServer.SessionFilterFunc? func);
			public string? get_header ();
			public unowned Gst.RTSPServer.SessionMedia? get_media (string path, out int matched);
			public unowned string? get_sessionid ();
			public uint get_timeout ();
			[Version (deprecated = true)]
			public bool is_expired (GLib.TimeVal now);
			public bool is_expired_usec (int64 now);
			public unowned Gst.RTSPServer.SessionMedia manage_media (string path, owned Gst.RTSPServer.Media media);
			[Version (deprecated = true)]
			public int next_timeout (GLib.TimeVal now);
			public int next_timeout_usec (int64 now);
			public void prevent_expire ();
			public bool release_media (Gst.RTSPServer.SessionMedia media);
			public void set_timeout (uint timeout);
			public void touch ();
			[NoAccessorMethod]
			public uint extra_timeout { get; set; }
			public string sessionid { get; construct; }
			public uint timeout { get; set; }
			[NoAccessorMethod]
			public bool timeout_always_visible { get; set; }
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSessionMedia", lower_case_cprefix = "gst_rtsp_session_media_", type_id = "gst_rtsp_session_media_get_type ()")]
		[GIR (name = "RTSPSessionMedia")]
		public class SessionMedia : GLib.Object {
			[CCode (has_construct_function = false)]
			public SessionMedia (string path, owned Gst.RTSPServer.Media media);
			public bool alloc_channels (out Gst.RTSP.Range range);
			public Gst.ClockTime get_base_time ();
			public unowned Gst.RTSPServer.Media? get_media ();
			public string? get_rtpinfo ();
			public Gst.RTSP.State get_rtsp_state ();
			public unowned Gst.RTSPServer.StreamTransport? get_transport (uint idx);
			[Version (since = "1.14")]
			public GLib.GenericArray<Gst.RTSPServer.StreamTransport> get_transports ();
			public bool matches (string path, out int matched);
			public void set_rtsp_state (Gst.RTSP.State state);
			public bool set_state (Gst.State state);
			public unowned Gst.RTSPServer.StreamTransport set_transport (Gst.RTSPServer.Stream stream, owned Gst.RTSP.Transport tr);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSessionPool", lower_case_cprefix = "gst_rtsp_session_pool_", type_id = "gst_rtsp_session_pool_get_type ()")]
		[GIR (name = "RTSPSessionPool")]
		public class SessionPool : GLib.Object {
			[CCode (has_construct_function = false)]
			public SessionPool ();
			public uint cleanup ();
			public Gst.RTSPServer.Session? create ();
			[NoWrapper]
			public virtual Gst.RTSPServer.Session create_session (string id);
			[NoWrapper]
			public virtual string create_session_id ();
			public GLib.Source create_watch ();
			public GLib.List<Gst.RTSPServer.Session> filter (Gst.RTSPServer.SessionPoolFilterFunc? func);
			public Gst.RTSPServer.Session? find (string sessionid);
			public uint get_max_sessions ();
			public uint get_n_sessions ();
			public bool remove (Gst.RTSPServer.Session sess);
			public void set_max_sessions (uint max);
			public uint max_sessions { get; set; }
			public virtual signal void session_removed (Gst.RTSPServer.Session session);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPStream", lower_case_cprefix = "gst_rtsp_stream_", type_id = "gst_rtsp_stream_get_type ()")]
		[GIR (name = "RTSPStream")]
		public class Stream : GLib.Object {
			[CCode (has_construct_function = false)]
			public Stream (uint idx, Gst.Element payloader, Gst.Pad pad);
			[Version (since = "1.16")]
			public bool add_multicast_client_address (string destination, uint rtp_port, uint rtcp_port, GLib.SocketFamily family);
			public bool add_transport (Gst.RTSPServer.StreamTransport trans);
			public bool allocate_udp_sockets (GLib.SocketFamily family, Gst.RTSP.Transport transport, bool use_client_settings);
			[Version (since = "1.14")]
			public bool complete_stream (Gst.RTSP.Transport transport);
			public Gst.RTSPServer.AddressPool? get_address_pool ();
			[Version (since = "1.6")]
			public uint get_buffer_size ();
			public Gst.Caps? get_caps ();
			public string? get_control ();
			public uint16 get_current_seqnum ();
			public int get_dscp_qos ();
			public uint get_index ();
			public Gst.Bin? get_joined_bin ();
			[Version (since = "1.16")]
			public uint get_max_mcast_ttl ();
			public uint get_mtu ();
			public Gst.RTSPServer.Address? get_multicast_address (GLib.SocketFamily family);
			[Version (since = "1.16")]
			public string get_multicast_client_addresses ();
			public string? get_multicast_iface ();
			public Gst.RTSP.Profile get_profiles ();
			public Gst.RTSP.LowerTrans get_protocols ();
			public uint get_pt ();
			[Version (since = "1.8")]
			public Gst.RTSPServer.PublishClockMode get_publish_clock_mode ();
			[Version (since = "1.18")]
			public bool get_rate_control ();
			[Version (since = "1.18")]
			public bool get_rates (out double rate, out double applied_rate);
			public uint get_retransmission_pt ();
			public Gst.ClockTime get_retransmission_time ();
			[Version (since = "1.14")]
			public GLib.Socket? get_rtcp_multicast_socket (GLib.SocketFamily family);
			public GLib.Socket? get_rtcp_socket (GLib.SocketFamily family);
			public GLib.Socket? get_rtp_multicast_socket (GLib.SocketFamily family);
			public GLib.Socket? get_rtp_socket (GLib.SocketFamily family);
			public bool get_rtpinfo (out uint rtptime, out uint seq, out uint clock_rate, out Gst.ClockTime running_time);
			public GLib.Object? get_rtpsession ();
			public void get_server_port (out Gst.RTSP.Range server_port, GLib.SocketFamily family);
			public Gst.Pad? get_sinkpad ();
			public Gst.Pad? get_srcpad ();
			public Gst.Element? get_srtp_encoder ();
			public void get_ssrc (out uint ssrc);
			public bool get_ulpfec_enabled ();
			[Version (since = "1.16")]
			public uint get_ulpfec_percentage ();
			[Version (since = "1.16")]
			public uint get_ulpfec_pt ();
			[Version (since = "1.16")]
			public bool handle_keymgmt (string keymgmt);
			public bool has_control (string? control);
			[Version (since = "1.16")]
			public bool is_bind_mcast_address ();
			public bool is_blocking ();
			public bool is_client_side ();
			[Version (since = "1.14")]
			public bool is_complete ();
			[Version (since = "1.14")]
			public bool is_receiver ();
			[Version (since = "1.14")]
			public bool is_sender ();
			public bool is_transport_supported (Gst.RTSP.Transport transport);
			public bool join_bin (Gst.Bin bin, Gst.Element rtpbin, Gst.State state);
			public bool leave_bin (Gst.Bin bin, Gst.Element rtpbin);
			public bool query_position (out int64 position);
			public bool query_stop (out int64 stop);
			public Gst.FlowReturn recv_rtcp (owned Gst.Buffer buffer);
			public Gst.FlowReturn recv_rtp (owned Gst.Buffer buffer);
			public bool remove_transport (Gst.RTSPServer.StreamTransport trans);
			[Version (since = "1.16")]
			public Gst.Element? request_aux_receiver (uint sessid);
			[Version (since = "1.6")]
			public Gst.Element? request_aux_sender (uint sessid);
			[Version (since = "1.16")]
			public Gst.Element? request_ulpfec_decoder (Gst.Element rtpbin, uint sessid);
			[Version (since = "1.16")]
			public Gst.Element? request_ulpfec_encoder (uint sessid);
			public Gst.RTSPServer.Address? reserve_address (string address, uint port, uint n_ports, uint ttl);
			[Version (since = "1.14")]
			public bool seekable ();
			public void set_address_pool (Gst.RTSPServer.AddressPool? pool);
			[Version (since = "1.16")]
			public void set_bind_mcast_address (bool bind_mcast_addr);
			public bool set_blocked (bool blocked);
			[Version (since = "1.6")]
			public void set_buffer_size (uint size);
			public void set_client_side (bool client_side);
			public void set_control (string? control);
			public void set_dscp_qos (int dscp_qos);
			[Version (since = "1.16")]
			public bool set_max_mcast_ttl (uint ttl);
			public void set_mtu (uint mtu);
			public void set_multicast_iface (string? multicast_iface);
			public void set_profiles (Gst.RTSP.Profile profiles);
			public void set_protocols (Gst.RTSP.LowerTrans protocols);
			public void set_pt_map (uint pt, Gst.Caps caps);
			[Version (since = "1.8")]
			public void set_publish_clock_mode (Gst.RTSPServer.PublishClockMode mode);
			[Version (since = "1.18")]
			public void set_rate_control (bool enabled);
			public void set_retransmission_pt (uint rtx_pt);
			public void set_retransmission_time (Gst.ClockTime time);
			public void set_seqnum_offset (uint16 seqnum);
			[Version (since = "1.16")]
			public void set_ulpfec_percentage (uint percentage);
			[Version (since = "1.16")]
			public void set_ulpfec_pt (uint pt);
			public GLib.List<Gst.RTSPServer.StreamTransport> transport_filter (Gst.RTSPServer.StreamTransportFilterFunc? func);
			public bool unblock_linked ();
			[Version (since = "1.20")]
			public void unblock_rtcp ();
			public bool update_crypto (uint ssrc, Gst.Caps? crypto);
			[Version (since = "1.16")]
			public bool verify_mcast_ttl (uint ttl);
			public string control { owned get; set; }
			public Gst.RTSP.Profile profiles { get; set; }
			public Gst.RTSP.LowerTrans protocols { get; set; }
			public signal void new_rtcp_encoder (Gst.Element object);
			public signal void new_rtp_encoder (Gst.Element object);
			public signal void new_rtp_rtcp_decoder (Gst.Element object);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPStreamTransport", lower_case_cprefix = "gst_rtsp_stream_transport_", type_id = "gst_rtsp_stream_transport_get_type ()")]
		[GIR (name = "RTSPStreamTransport")]
		public class StreamTransport : GLib.Object {
			[CCode (has_construct_function = false)]
			public StreamTransport (Gst.RTSPServer.Stream stream, owned Gst.RTSP.Transport tr);
			public string? get_rtpinfo (Gst.ClockTime start_time);
			public unowned Gst.RTSPServer.Stream? get_stream ();
			public unowned Gst.RTSP.Transport? get_transport ();
			public unowned Gst.RTSP.Url? get_url ();
			public bool is_timed_out ();
			public void keep_alive ();
			[Version (since = "1.16")]
			public void message_sent ();
			public Gst.FlowReturn recv_data (uint channel, owned Gst.Buffer buffer);
			public bool send_rtcp (Gst.Buffer buffer);
			[Version (since = "1.16")]
			public bool send_rtcp_list (Gst.BufferList buffer_list);
			public bool send_rtp (Gst.Buffer buffer);
			[Version (since = "1.16")]
			public bool send_rtp_list (Gst.BufferList buffer_list);
			public bool set_active (bool active);
			public void set_callbacks (Gst.RTSPServer.SendFunc send_rtp, owned Gst.RTSPServer.SendFunc send_rtcp);
			public void set_keepalive (owned Gst.RTSPServer.KeepAliveFunc keep_alive);
			[Version (since = "1.16")]
			public void set_list_callbacks (Gst.RTSPServer.SendListFunc send_rtp_list, owned Gst.RTSPServer.SendListFunc send_rtcp_list);
			public void set_message_sent (owned Gst.RTSPServer.MessageSentFunc message_sent);
			[Version (since = "1.18")]
			public void set_message_sent_full (owned Gst.RTSPServer.MessageSentFuncFull message_sent);
			public void set_timed_out (bool timedout);
			public void set_transport (owned Gst.RTSP.Transport tr);
			public void set_url (Gst.RTSP.Url? url);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPThread", copy_function = "g_boxed_copy", free_function = "g_boxed_free", lower_case_cprefix = "gst_rtsp_thread_", type_id = "gst_rtsp_thread_get_type ()")]
		[Compact]
		[GIR (name = "RTSPThread")]
		public class Thread : Gst.MiniObject {
			public GLib.MainContext context;
			public GLib.MainLoop loop;
			public Gst.RTSPServer.ThreadType type;
			[CCode (has_construct_function = false)]
			public Thread (Gst.RTSPServer.ThreadType type);
			public bool reuse ();
			[DestroysInstance]
			public void stop ();
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPThreadPool", lower_case_cprefix = "gst_rtsp_thread_pool_", type_id = "gst_rtsp_thread_pool_get_type ()")]
		[GIR (name = "RTSPThreadPool")]
		public class ThreadPool : GLib.Object {
			[CCode (has_construct_function = false)]
			public ThreadPool ();
			public static void cleanup ();
			[NoWrapper]
			public virtual void configure_thread (Gst.RTSPServer.Thread thread, Gst.RTSPServer.Context ctx);
			public int get_max_threads ();
			public virtual Gst.RTSPServer.Thread? get_thread (Gst.RTSPServer.ThreadType type, Gst.RTSPServer.Context ctx);
			public void set_max_threads (int max_threads);
			[NoWrapper]
			public virtual void thread_enter (Gst.RTSPServer.Thread thread);
			[NoWrapper]
			public virtual void thread_leave (Gst.RTSPServer.Thread thread);
			public int max_threads { get; set; }
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPToken", copy_function = "g_boxed_copy", free_function = "g_boxed_free", lower_case_cprefix = "gst_rtsp_token_", type_id = "gst_rtsp_token_get_type ()")]
		[Compact]
		[GIR (name = "RTSPToken")]
		public class Token : Gst.MiniObject {
			[CCode (cname = "GST_RTSP_TOKEN_MEDIA_FACTORY_ROLE")]
			public const string MEDIA_FACTORY_ROLE;
			[CCode (cname = "GST_RTSP_TOKEN_TRANSPORT_CLIENT_SETTINGS")]
			public const string TRANSPORT_CLIENT_SETTINGS;
			[CCode (has_construct_function = false)]
			public Token (string firstfield, ...);
			[CCode (has_construct_function = false)]
			public Token.empty ();
			public unowned string? get_string (string field);
			public unowned Gst.Structure get_structure ();
			public bool is_allowed (string field);
			[Version (since = "1.14")]
			public void set_bool (string field, bool bool_value);
			[Version (since = "1.14")]
			public void set_string (string field, string string_value);
			[CCode (has_construct_function = false)]
			public Token.valist (string firstfield, va_list var_args);
			public unowned Gst.Structure writable_structure ();
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPContext", has_type_id = false)]
		[GIR (name = "RTSPContext")]
		public struct Context {
			public weak Gst.RTSPServer.Server server;
			public weak Gst.RTSP.Connection conn;
			public weak Gst.RTSPServer.Client client;
			public weak Gst.RTSP.Message request;
			public weak Gst.RTSP.Url uri;
			public Gst.RTSP.Method method;
			public weak Gst.RTSPServer.Auth auth;
			public weak Gst.RTSPServer.Token token;
			public weak Gst.RTSPServer.Session session;
			public weak Gst.RTSPServer.SessionMedia sessmedia;
			public weak Gst.RTSPServer.MediaFactory factory;
			public weak Gst.RTSPServer.Media media;
			public weak Gst.RTSPServer.Stream stream;
			public weak Gst.RTSP.Message response;
			public weak Gst.RTSPServer.StreamTransport trans;
			[CCode (cname = "gst_rtsp_context_get_current")]
			public static unowned Gst.RTSPServer.Context? get_current ();
			[CCode (cname = "gst_rtsp_context_pop_current")]
			public void pop_current ();
			[CCode (cname = "gst_rtsp_context_push_current")]
			public void push_current ();
			[CCode (cname = "gst_rtsp_context_set_token")]
			[Version (since = "1.22")]
			public void set_token (Gst.RTSPServer.Token token);
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstSDPInfo", has_type_id = false)]
		[GIR (name = "SDPInfo")]
		public struct SDPInfo {
			public bool is_ipv6;
			public weak string server_ip;
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPAddressFlags", cprefix = "GST_RTSP_ADDRESS_FLAG_", has_type_id = false)]
		[Flags]
		[GIR (name = "RTSPAddressFlags")]
		public enum AddressFlags {
			NONE,
			IPV4,
			IPV6,
			EVEN_PORT,
			MULTICAST,
			UNICAST
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPAddressPoolResult", cprefix = "GST_RTSP_ADDRESS_POOL_", has_type_id = false)]
		[GIR (name = "RTSPAddressPoolResult")]
		public enum AddressPoolResult {
			OK,
			EINVAL,
			ERESERVED,
			ERANGE,
			ELAST
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPFilterResult", cprefix = "GST_RTSP_FILTER_", has_type_id = false)]
		[GIR (name = "RTSPFilterResult")]
		public enum FilterResult {
			REMOVE,
			KEEP,
			REF
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMediaStatus", cprefix = "GST_RTSP_MEDIA_STATUS_", has_type_id = false)]
		[GIR (name = "RTSPMediaStatus")]
		public enum MediaStatus {
			UNPREPARED,
			UNPREPARING,
			PREPARING,
			PREPARED,
			SUSPENDED,
			ERROR
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPPublishClockMode", cprefix = "GST_RTSP_PUBLISH_CLOCK_MODE_", type_id = "gst_rtsp_publish_clock_mode_get_type ()")]
		[GIR (name = "RTSPPublishClockMode")]
		public enum PublishClockMode {
			NONE,
			CLOCK,
			CLOCK_AND_OFFSET
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSuspendMode", cprefix = "GST_RTSP_SUSPEND_MODE_", type_id = "gst_rtsp_suspend_mode_get_type ()")]
		[GIR (name = "RTSPSuspendMode")]
		public enum SuspendMode {
			NONE,
			PAUSE,
			RESET
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPThreadType", cprefix = "GST_RTSP_THREAD_TYPE_", has_type_id = false)]
		[GIR (name = "RTSPThreadType")]
		public enum ThreadType {
			CLIENT,
			MEDIA
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPTransportMode", cprefix = "GST_RTSP_TRANSPORT_MODE_", type_id = "gst_rtsp_transport_mode_get_type ()")]
		[Flags]
		[GIR (name = "RTSPTransportMode")]
		public enum TransportMode {
			PLAY,
			RECORD
		}
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPClientSendFunc", instance_pos = 3.9)]
		public delegate bool ClientSendFunc (Gst.RTSPServer.Client client, Gst.RTSP.Message message, bool close);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPClientSendMessagesFunc", instance_pos = 3.9)]
		[Version (since = "1.16")]
		public delegate bool ClientSendMessagesFunc (Gst.RTSPServer.Client client, [CCode (array_length_cname = "n_messages", array_length_pos = 2.5, array_length_type = "guint", type = "GstRTSPMessage*")] Gst.RTSP.Message[] messages, bool close);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPClientSessionFilterFunc", instance_pos = 2.9)]
		public delegate Gst.RTSPServer.FilterResult ClientSessionFilterFunc (Gst.RTSPServer.Client client, Gst.RTSPServer.Session sess);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPKeepAliveFunc", instance_pos = 0.9)]
		public delegate void KeepAliveFunc ();
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMessageSentFunc", instance_pos = 0.9)]
		public delegate void MessageSentFunc ();
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPMessageSentFuncFull", instance_pos = 1.9)]
		[Version (since = "1.18")]
		public delegate void MessageSentFuncFull (Gst.RTSPServer.StreamTransport trans);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSendFunc", instance_pos = 2.9)]
		public delegate bool SendFunc (Gst.Buffer buffer, uint8 channel);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSendListFunc", instance_pos = 2.9)]
		[Version (since = "1.16")]
		public delegate bool SendListFunc (Gst.BufferList buffer_list, uint8 channel);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPServerClientFilterFunc", instance_pos = 2.9)]
		public delegate Gst.RTSPServer.FilterResult ServerClientFilterFunc (Gst.RTSPServer.Server server, Gst.RTSPServer.Client client);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSessionFilterFunc", instance_pos = 2.9)]
		public delegate Gst.RTSPServer.FilterResult SessionFilterFunc (Gst.RTSPServer.Session sess, Gst.RTSPServer.SessionMedia media);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSessionPoolFilterFunc", instance_pos = 2.9)]
		public delegate Gst.RTSPServer.FilterResult SessionPoolFilterFunc (Gst.RTSPServer.SessionPool pool, Gst.RTSPServer.Session session);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPSessionPoolFunc", instance_pos = 1.9)]
		public delegate bool SessionPoolFunc (Gst.RTSPServer.SessionPool pool);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GstRTSPStreamTransportFilterFunc", instance_pos = 2.9)]
		public delegate Gst.RTSPServer.FilterResult StreamTransportFilterFunc (Gst.RTSPServer.Stream stream, Gst.RTSPServer.StreamTransport trans);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GST_RTSP_ONVIF_BACKCHANNEL_REQUIREMENT")]
		public const string _ONVIF_BACKCHANNEL_REQUIREMENT;
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "GST_RTSP_ONVIF_REPLAY_REQUIREMENT")]
		public const string _ONVIF_REPLAY_REQUIREMENT;
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "gst_rtsp_context_get_type")]
		public static GLib.Type context_get_type ();
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "gst_rtsp_params_get")]
		public static Gst.RTSP.Result params_get (Gst.RTSPServer.Client client, Gst.RTSPServer.Context ctx);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "gst_rtsp_params_set")]
		public static Gst.RTSP.Result params_set (Gst.RTSPServer.Client client, Gst.RTSPServer.Context ctx);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "gst_rtsp_sdp_from_media")]
		public static bool sdp_from_media (Gst.SDP.Message sdp, Gst.RTSPServer.SDPInfo info, Gst.RTSPServer.Media media);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "gst_rtsp_sdp_from_stream")]
		public static bool sdp_from_stream (Gst.SDP.Message sdp, Gst.RTSPServer.SDPInfo info, Gst.RTSPServer.Stream stream);
		[CCode (cheader_filename = "gst/rtsp-server/rtsp-server.h", cname = "gst_rtsp_sdp_make_media")]
		[Version (since = "1.14")]
		public static bool sdp_make_media (Gst.SDP.Message sdp, Gst.RTSPServer.SDPInfo info, Gst.RTSPServer.Stream stream, Gst.Caps caps, Gst.RTSP.Profile profile);
	}
}