diff --git a/docs/libs/gst-rtsp-server-docs.sgml b/docs/libs/gst-rtsp-server-docs.sgml
index 4f196973aa..716d8b216f 100644
--- a/docs/libs/gst-rtsp-server-docs.sgml
+++ b/docs/libs/gst-rtsp-server-docs.sgml
@@ -14,18 +14,20 @@
+
+
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/docs/libs/gst-rtsp-server-sections.txt b/docs/libs/gst-rtsp-server-sections.txt
index e536a7ddfb..edfe53ecb7 100644
--- a/docs/libs/gst-rtsp-server-sections.txt
+++ b/docs/libs/gst-rtsp-server-sections.txt
@@ -1,23 +1,185 @@
-rtsp-mount-points
-GstRTSPMountPoints
-GstRTSPMountPoints
-GstRTSPMountPointsClass
-gst_rtsp_mount_points_new
-gst_rtsp_mount_points_find_factory
-gst_rtsp_mount_points_add_factory
-gst_rtsp_mount_points_remove_factory
+rtsp-address-pool
+GstRTSPAddressPool
+GST_RTSP_ADDRESS_POOL_ANY_IPV4
+GST_RTSP_ADDRESS_POOL_ANY_IPV6
+GstRTSPAddress
+GstRTSPAddressFlags
+gst_rtsp_address_copy
+gst_rtsp_address_free
+
+GstRTSPAddressPool
+GstRTSPAddressPoolClass
+gst_rtsp_address_pool_new
+gst_rtsp_address_pool_clear
+gst_rtsp_address_pool_dump
+gst_rtsp_address_pool_add_range
+gst_rtsp_address_pool_add_range_unicast
+gst_rtsp_address_pool_has_unicast_addresses
+gst_rtsp_address_pool_acquire_address
+gst_rtsp_address_pool_reserve_address
-GstRTSPMountPointsPrivate
-GST_RTSP_MOUNT_POINTS_CLASS
-GST_RTSP_MOUNT_POINTS_CAST
-GST_RTSP_MOUNT_POINTS_CLASS_CAST
-GST_RTSP_MOUNT_POINTS
-GST_IS_RTSP_MOUNT_POINTS
-GST_TYPE_RTSP_MOUNT_POINTS
-gst_rtsp_mount_points_get_type
-GST_IS_RTSP_MOUNT_POINTS_CLASS
-GST_RTSP_MOUNT_POINTS_GET_CLASS
+GST_RTSP_ADDRESS_POOL_CAST
+GST_RTSP_ADDRESS_POOL_CLASS_CAST
+GST_IS_RTSP_ADDRESS_POOL
+GST_IS_RTSP_ADDRESS_POOL_CLASS
+GST_RTSP_ADDRESS_POOL
+GST_RTSP_ADDRESS_POOL_CLASS
+GST_RTSP_ADDRESS_POOL_GET_CLASS
+GST_TYPE_RTSP_ADDRESS_POOL
+GstRTSPAddressPoolPrivate
+gst_rtsp_address_get_type
+gst_rtsp_address_pool_get_type
+
+
+
+rtsp-auth
+GstRTSPAuth
+GstRTSPAuth
+GstRTSPAuthClass
+gst_rtsp_auth_new
+
+gst_rtsp_auth_make_basic
+gst_rtsp_auth_add_basic
+gst_rtsp_auth_remove_basic
+gst_rtsp_auth_setup
+gst_rtsp_auth_check
+
+GST_RTSP_AUTH_CHECK_URL
+GST_RTSP_AUTH_CHECK_MEDIA_FACTORY_ACCESS
+GST_RTSP_AUTH_CHECK_MEDIA_FACTORY_CONSTRUCT
+
+GST_RTSP_MEDIA_FACTORY_ROLE
+GST_RTSP_MEDIA_FACTORY_PERM_ACCESS
+GST_RTSP_MEDIA_FACTORY_PERM_CONSTRUCT
+
+GST_RTSP_AUTH_CAST
+GST_RTSP_AUTH_CLASS_CAST
+GST_IS_RTSP_AUTH
+GST_IS_RTSP_AUTH_CLASS
+GST_RTSP_AUTH
+GST_RTSP_AUTH_CLASS
+GST_RTSP_AUTH_GET_CLASS
+GST_TYPE_RTSP_AUTH
+GstRTSPAuthPrivate
+gst_rtsp_auth_get_type
+
+
+
+rtsp-client
+GstRTSPClient
+GstRTSPClientState
+gst_rtsp_client_state_get_current
+
+GstRTSPClient
+GstRTSPClientClass
+
+gst_rtsp_client_new
+
+gst_rtsp_client_get_session_pool
+gst_rtsp_client_set_session_pool
+
+gst_rtsp_client_get_mount_points
+gst_rtsp_client_set_mount_points
+
+gst_rtsp_client_get_use_client_settings
+gst_rtsp_client_set_use_client_settings
+
+gst_rtsp_client_get_auth
+gst_rtsp_client_set_auth
+
+gst_rtsp_client_get_thread_pool
+gst_rtsp_client_set_thread_pool
+
+gst_rtsp_client_get_connection
+gst_rtsp_client_set_connection
+
+GstRTSPClientSendFunc
+gst_rtsp_client_set_send_func
+
+gst_rtsp_client_handle_message
+gst_rtsp_client_send_request
+gst_rtsp_client_attach
+
+GstRTSPClientSessionFilterFunc
+gst_rtsp_client_session_filter
+
+GST_RTSP_CLIENT_CAST
+GST_RTSP_CLIENT_CLASS_CAST
+GST_IS_RTSP_CLIENT
+GST_IS_RTSP_CLIENT_CLASS
+GST_RTSP_CLIENT
+GST_RTSP_CLIENT_CLASS
+GST_RTSP_CLIENT_GET_CLASS
+GST_TYPE_RTSP_CLIENT
+GstRTSPClientPrivate
+gst_rtsp_client_get_type
+
+
+
+rtsp-media
+GstRTSPMedia
+GstRTSPMediaStatus
+
+GstRTSPMedia
+GstRTSPMediaClass
+gst_rtsp_media_new
+gst_rtsp_media_get_element
+gst_rtsp_media_take_pipeline
+gst_rtsp_media_get_status
+
+gst_rtsp_media_set_permissions
+gst_rtsp_media_get_permissions
+
+gst_rtsp_media_set_shared
+gst_rtsp_media_is_shared
+
+gst_rtsp_media_set_reusable
+gst_rtsp_media_is_reusable
+
+gst_rtsp_media_set_protocols
+gst_rtsp_media_get_protocols
+
+gst_rtsp_media_set_eos_shutdown
+gst_rtsp_media_is_eos_shutdown
+
+gst_rtsp_media_set_address_pool
+gst_rtsp_media_get_address_pool
+
+gst_rtsp_media_set_buffer_size
+gst_rtsp_media_get_buffer_size
+
+gst_rtsp_media_use_time_provider
+gst_rtsp_media_is_time_provider
+gst_rtsp_media_get_time_provider
+
+gst_rtsp_media_prepare
+gst_rtsp_media_unprepare
+
+gst_rtsp_media_collect_streams
+gst_rtsp_media_create_stream
+
+gst_rtsp_media_get_clock
+gst_rtsp_media_get_base_time
+gst_rtsp_media_n_streams
+gst_rtsp_media_get_stream
+gst_rtsp_media_find_stream
+
+gst_rtsp_media_seek
+gst_rtsp_media_get_range_string
+
+gst_rtsp_media_set_state
+
+GST_RTSP_MEDIA_CAST
+GST_RTSP_MEDIA_CLASS_CAST
+GST_IS_RTSP_MEDIA
+GST_IS_RTSP_MEDIA_CLASS
+GST_RTSP_MEDIA
+GST_RTSP_MEDIA_CLASS
+GST_RTSP_MEDIA_GET_CLASS
+GST_TYPE_RTSP_MEDIA
+GstRTSPMediaPrivate
+gst_rtsp_media_get_type
@@ -25,35 +187,43 @@ GST_RTSP_MOUNT_POINTS_GET_CLASS
GstRTSPMediaFactory
GstRTSPMediaFactory
GstRTSPMediaFactoryClass
+
gst_rtsp_media_factory_new
-gst_rtsp_media_factory_set_launch
-gst_rtsp_media_factory_get_launch
-gst_rtsp_media_factory_set_shared
-gst_rtsp_media_factory_is_shared
-gst_rtsp_media_factory_set_eos_shutdown
-gst_rtsp_media_factory_is_eos_shutdown
-gst_rtsp_media_factory_set_protocols
-gst_rtsp_media_factory_get_protocols
-gst_rtsp_media_factory_set_auth
-gst_rtsp_media_factory_get_auth
-gst_rtsp_media_factory_set_buffer_size
-gst_rtsp_media_factory_get_buffer_size
+
gst_rtsp_media_factory_construct
gst_rtsp_media_factory_create_element
+
+gst_rtsp_media_factory_get_address_pool
+gst_rtsp_media_factory_set_address_pool
+
+gst_rtsp_media_factory_get_buffer_size
+gst_rtsp_media_factory_set_buffer_size
+
+gst_rtsp_media_factory_get_launch
+gst_rtsp_media_factory_set_launch
+
+gst_rtsp_media_factory_get_permissions
+gst_rtsp_media_factory_set_permissions
+
+gst_rtsp_media_factory_get_protocols
+gst_rtsp_media_factory_set_protocols
+
+gst_rtsp_media_factory_is_eos_shutdown
+gst_rtsp_media_factory_set_eos_shutdown
+
+gst_rtsp_media_factory_set_shared
+gst_rtsp_media_factory_is_shared
-GST_RTSP_MEDIA_FACTORY_GET_LOCK
-GST_RTSP_MEDIA_FACTORY_LOCK
-GST_RTSP_MEDIA_FACTORY_UNLOCK
-GST_RTSP_MEDIA_FACTORY_CLASS
GST_RTSP_MEDIA_FACTORY_CAST
GST_RTSP_MEDIA_FACTORY_CLASS_CAST
-GST_RTSP_MEDIA_FACTORY
GST_IS_RTSP_MEDIA_FACTORY
-GST_TYPE_RTSP_MEDIA_FACTORY
-gst_rtsp_media_factory_get_type
GST_IS_RTSP_MEDIA_FACTORY_CLASS
+GST_RTSP_MEDIA_FACTORY
+GST_RTSP_MEDIA_FACTORY_CLASS
GST_RTSP_MEDIA_FACTORY_GET_CLASS
+GST_TYPE_RTSP_MEDIA_FACTORY
GstRTSPMediaFactoryPrivate
+gst_rtsp_media_factory_get_type
@@ -64,73 +234,72 @@ GstRTSPMediaFactoryURIClass
gst_rtsp_media_factory_uri_new
gst_rtsp_media_factory_uri_set_uri
gst_rtsp_media_factory_uri_get_uri
-gst_rtsp_media_factory_get_address_pool
-gst_rtsp_media_factory_set_address_pool
+GST_RTSP_MEDIA_FACTORY_URI_CAST
+GST_RTSP_MEDIA_FACTORY_URI_CLASS_CAST
GST_IS_RTSP_MEDIA_FACTORY_URI
GST_IS_RTSP_MEDIA_FACTORY_URI_CLASS
GST_RTSP_MEDIA_FACTORY_URI
-GST_RTSP_MEDIA_FACTORY_URI_CAST
GST_RTSP_MEDIA_FACTORY_URI_CLASS
-GST_RTSP_MEDIA_FACTORY_URI_CLASS_CAST
GST_RTSP_MEDIA_FACTORY_URI_GET_CLASS
GST_TYPE_RTSP_MEDIA_FACTORY_URI
-gst_rtsp_media_factory_uri_get_type
GstRTSPMediaFactoryURIPrivate
+gst_rtsp_media_factory_uri_get_type
+
+rtsp-mount-points
+GstRTSPMountPoints
+GstRTSPMountPoints
+GstRTSPMountPointsClass
+gst_rtsp_mount_points_new
+gst_rtsp_mount_points_add_factory
+gst_rtsp_mount_points_remove_factory
+gst_rtsp_mount_points_match
+
+GST_RTSP_MOUNT_POINTS_CAST
+GST_RTSP_MOUNT_POINTS_CLASS_CAST
+GST_IS_RTSP_MOUNT_POINTS
+GST_IS_RTSP_MOUNT_POINTS_CLASS
+GST_RTSP_MOUNT_POINTS
+GST_RTSP_MOUNT_POINTS_CLASS
+GST_RTSP_MOUNT_POINTS_GET_CLASS
+GST_TYPE_RTSP_MOUNT_POINTS
+GstRTSPMountPointsPrivate
+gst_rtsp_mount_points_get_type
+
-rtsp-media
-GstRTSPMedia
-GstRTSPMediaStatus
-GstRTSPMedia
-GstRTSPMediaClass
-gst_rtsp_media_new
+rtsp-params
+GstRTSPParams
+gst_rtsp_params_get
+gst_rtsp_params_set
+
-gst_rtsp_media_set_shared
-gst_rtsp_media_is_shared
-gst_rtsp_media_set_reusable
-gst_rtsp_media_is_reusable
-gst_rtsp_media_set_protocols
-gst_rtsp_media_get_protocols
-gst_rtsp_media_set_eos_shutdown
-gst_rtsp_media_is_eos_shutdown
-gst_rtsp_media_set_auth
-gst_rtsp_media_get_auth
-gst_rtsp_media_set_buffer_size
-gst_rtsp_media_get_buffer_size
-
-gst_rtsp_media_prepare
-gst_rtsp_media_unprepare
-
-gst_rtsp_media_collect_streams
-gst_rtsp_media_create_stream
-
-gst_rtsp_media_n_streams
-gst_rtsp_media_get_stream
-
-gst_rtsp_media_seek
-gst_rtsp_media_get_range_string
-gst_rtsp_media_set_state
-
-gst_rtsp_media_get_status
-
-gst_rtsp_media_get_address_pool
-gst_rtsp_media_set_address_pool
-
-gst_rtsp_media_take_pipeline
+
+rtsp-permissions
+GstRTSPPermissions
+GstRTSPPermissions
+gst_rtsp_permissions_new
+gst_rtsp_permissions_ref
+gst_rtsp_permissions_unref
+gst_rtsp_permissions_add_role
+gst_rtsp_permissions_remove_role
+gst_rtsp_permissions_get_role
+gst_rtsp_permissions_is_allowed
-GST_RTSP_MEDIA_CLASS
-GST_RTSP_MEDIA_CAST
-GST_RTSP_MEDIA_CLASS_CAST
-GST_RTSP_MEDIA
-GST_IS_RTSP_MEDIA
-GST_TYPE_RTSP_MEDIA
-gst_rtsp_media_get_type
-GST_IS_RTSP_MEDIA_CLASS
-GST_RTSP_MEDIA_GET_CLASS
-GstRTSPMediaPrivate
+GST_RTSP_PERMISSIONS_CAST
+GST_IS_RTSP_PERMISSIONS
+GST_RTSP_PERMISSIONS
+GST_TYPE_RTSP_PERMISSIONS
+gst_rtsp_permissions_get_type
+
+
+
+rtsp-sdp
+GstRTSPSdp
+GstSDPInfo
+gst_rtsp_sdp_from_media
@@ -138,73 +307,54 @@ GstRTSPMediaPrivate
GstRTSPServer
GstRTSPServer
GstRTSPServerClass
+
gst_rtsp_server_new
-gst_rtsp_server_set_address
+
gst_rtsp_server_get_address
-gst_rtsp_server_set_service
+gst_rtsp_server_set_address
+
gst_rtsp_server_get_service
+gst_rtsp_server_set_service
+
gst_rtsp_server_get_bound_port
-gst_rtsp_server_set_backlog
+
gst_rtsp_server_get_backlog
-gst_rtsp_server_set_session_pool
-gst_rtsp_server_get_session_pool
-gst_rtsp_server_set_mount_points
+gst_rtsp_server_set_backlog
+
gst_rtsp_server_get_mount_points
+gst_rtsp_server_set_mount_points
+
+gst_rtsp_server_get_session_pool
+gst_rtsp_server_set_session_pool
+
+gst_rtsp_server_get_thread_pool
+gst_rtsp_server_set_thread_pool
+
gst_rtsp_server_get_auth
gst_rtsp_server_set_auth
+
+gst_rtsp_server_get_tls_certificate
+gst_rtsp_server_set_tls_certificate
+
+gst_rtsp_server_get_use_client_settings
+gst_rtsp_server_set_use_client_settings
+
gst_rtsp_server_transfer_connection
gst_rtsp_server_io_func
gst_rtsp_server_create_socket
gst_rtsp_server_create_source
gst_rtsp_server_attach
-gst_rtsp_server_get_max_threads
-gst_rtsp_server_set_max_threads
-GST_RTSP_SERVER_GET_LOCK
-GST_RTSP_SERVER_LOCK
-GST_RTSP_SERVER_UNLOCK
-GST_RTSP_SERVER_CLASS
+GST_IS_RTSP_SERVER
GST_RTSP_SERVER_CAST
GST_RTSP_SERVER_CLASS_CAST
-GST_RTSP_SERVER
-GST_IS_RTSP_SERVER
-GST_TYPE_RTSP_SERVER
-gst_rtsp_server_get_type
GST_IS_RTSP_SERVER_CLASS
+GST_RTSP_SERVER
+GST_RTSP_SERVER_CLASS
GST_RTSP_SERVER_GET_CLASS
+GST_TYPE_RTSP_SERVER
GstRTSPServerPrivate
-
-
-
-rtsp-session-pool
-GstRTSPSessionPool
-GstRTSPSessionPool
-GstRTSPSessionPoolClass
-GstRTSPSessionPoolFunc
-GstRTSPFilterResult
-GstRTSPSessionFilterFunc
-gst_rtsp_session_pool_new
-gst_rtsp_session_pool_set_max_sessions
-gst_rtsp_session_pool_get_max_sessions
-gst_rtsp_session_pool_get_n_sessions
-gst_rtsp_session_pool_create
-gst_rtsp_session_pool_find
-gst_rtsp_session_pool_remove
-gst_rtsp_session_pool_filter
-gst_rtsp_session_pool_cleanup
-gst_rtsp_session_pool_create_watch
-GstRTSPSessionPoolFilterFunc
-
-GST_RTSP_SESSION_POOL_CLASS
-GST_RTSP_SESSION_POOL_CAST
-GST_RTSP_SESSION_POOL_CLASS_CAST
-GST_RTSP_SESSION_POOL
-GST_IS_RTSP_SESSION_POOL
-GST_TYPE_RTSP_SESSION_POOL
-gst_rtsp_session_pool_get_type
-GST_IS_RTSP_SESSION_POOL_CLASS
-GST_RTSP_SESSION_POOL_GET_CLASS
-GstRTSPSessionPoolPrivate
+gst_rtsp_server_get_type
@@ -212,31 +362,40 @@ GstRTSPSessionPoolPrivate
GstRTSPSession
GstRTSPSession
GstRTSPSessionClass
+
gst_rtsp_session_new
gst_rtsp_session_get_sessionid
+
+gst_rtsp_session_get_header
+
gst_rtsp_session_set_timeout
gst_rtsp_session_get_timeout
+
gst_rtsp_session_touch
gst_rtsp_session_prevent_expire
gst_rtsp_session_allow_expire
gst_rtsp_session_next_timeout
gst_rtsp_session_is_expired
+
gst_rtsp_session_manage_media
gst_rtsp_session_release_media
+
gst_rtsp_session_get_media
-gst_rtsp_session_get_header
+
+GstRTSPFilterResult
+GstRTSPSessionFilterFunc
gst_rtsp_session_filter
-GST_RTSP_SESSION_CLASS
GST_RTSP_SESSION_CAST
GST_RTSP_SESSION_CLASS_CAST
-GST_RTSP_SESSION
GST_IS_RTSP_SESSION
-GST_TYPE_RTSP_SESSION
-gst_rtsp_session_get_type
GST_IS_RTSP_SESSION_CLASS
+GST_RTSP_SESSION
+GST_RTSP_SESSION_CLASS
GST_RTSP_SESSION_GET_CLASS
+GST_TYPE_RTSP_SESSION
GstRTSPSessionPrivate
+gst_rtsp_session_get_type
@@ -245,15 +404,20 @@ GstRTSPSessionPrivate
GstRTSPSessionMedia
GstRTSPSessionMediaClass
gst_rtsp_session_media_new
-gst_rtsp_session_media_set_state
-gst_rtsp_session_media_get_transport
-gst_rtsp_session_media_alloc_channels
+gst_rtsp_session_media_matches
gst_rtsp_session_media_get_media
+gst_rtsp_session_media_get_base_time
+
+gst_rtsp_session_media_set_state
+
gst_rtsp_session_media_get_rtsp_state
-gst_rtsp_session_media_matches_url
gst_rtsp_session_media_set_rtsp_state
+
+gst_rtsp_session_media_get_transport
gst_rtsp_session_media_set_transport
+
+gst_rtsp_session_media_alloc_channels
GST_RTSP_SESSION_MEDIA_CAST
GST_RTSP_SESSION_MEDIA_CLASS_CAST
@@ -263,78 +427,44 @@ GST_RTSP_SESSION_MEDIA
GST_RTSP_SESSION_MEDIA_CLASS
GST_RTSP_SESSION_MEDIA_GET_CLASS
GST_TYPE_RTSP_SESSION_MEDIA
-gst_rtsp_session_media_get_type
GstRTSPSessionMediaPrivate
+gst_rtsp_session_media_get_type
-rtsp-auth
-GstRTSPAuth
-GstRTSPAuth
-GstRTSPAuthClass
-gst_rtsp_auth_new
-gst_rtsp_auth_set_basic
-gst_rtsp_auth_setup_auth
-gst_rtsp_auth_check
-gst_rtsp_auth_make_basic
+rtsp-session-pool
+GstRTSPSessionPool
+GstRTSPSessionPool
+GstRTSPSessionPoolClass
+gst_rtsp_session_pool_new
+
+gst_rtsp_session_pool_get_max_sessions
+gst_rtsp_session_pool_set_max_sessions
+
+gst_rtsp_session_pool_get_n_sessions
+
+gst_rtsp_session_pool_create
+gst_rtsp_session_pool_find
+gst_rtsp_session_pool_remove
+
+gst_rtsp_session_pool_cleanup
+
+GstRTSPSessionPoolFunc
+gst_rtsp_session_pool_create_watch
+
+GstRTSPSessionPoolFilterFunc
+gst_rtsp_session_pool_filter
-GST_IS_RTSP_AUTH
-GST_IS_RTSP_AUTH_CLASS
-GST_RTSP_AUTH
-GST_RTSP_AUTH_CAST
-GST_RTSP_AUTH_CLASS
-GST_RTSP_AUTH_CLASS_CAST
-GST_RTSP_AUTH_GET_CLASS
-GST_TYPE_RTSP_AUTH
-gst_rtsp_auth_get_type
-GstRTSPAuthPrivate
-
-
-
-rtsp-client
-GstRTSPClient
-GstRTSPClientState
-GstRTSPClient
-GstRTSPClientClass
-gst_rtsp_client_new
-gst_rtsp_client_set_session_pool
-gst_rtsp_client_get_session_pool
-gst_rtsp_client_set_mount_points
-gst_rtsp_client_get_mount_points
-gst_rtsp_client_set_use_client_settings
-gst_rtsp_client_get_use_client_settings
-gst_rtsp_client_set_auth
-gst_rtsp_client_get_auth
-gst_rtsp_client_accept
-gst_rtsp_client_create_from_socket
-gst_rtsp_client_attach
-gst_rtsp_client_handle_message
-gst_rtsp_client_set_send_func
-GstRTSPClientSendFunc
-gst_rtsp_client_use_socket
-
-GST_RTSP_CLIENT_CLASS
-GST_RTSP_CLIENT_CAST
-GST_RTSP_CLIENT_CLASS_CAST
-GST_RTSP_CLIENT
-GST_IS_RTSP_CLIENT
-GST_TYPE_RTSP_CLIENT
-gst_rtsp_client_get_type
-GST_IS_RTSP_CLIENT_CLASS
-GST_RTSP_CLIENT_GET_CLASS
-GstRTSPClientPrivate
-
-
-
-rtsp-params
-gst_rtsp_params_set
-gst_rtsp_params_get
-
-
-
-rtsp-sdp
-GstSDPInfo
-gst_rtsp_sdp_from_media
+GST_RTSP_SESSION_POOL_CAST
+GST_RTSP_SESSION_POOL_CLASS_CAST
+GST_IS_RTSP_SESSION_POOL
+GST_IS_RTSP_SESSION_POOL_CLASS
+GST_RTSP_SESSION_POOL
+GST_RTSP_SESSION_POOL_CLASS
+GST_RTSP_SESSION_POOL_GET_CLASS
+GST_TYPE_RTSP_SESSION_POOL
+GstRTSPSessionPoolPrivate
+gst_rtsp_session_pool_get_type
@@ -343,23 +473,39 @@ gst_rtsp_sdp_from_media
GstRTSPStream
GstRTSPStreamClass
gst_rtsp_stream_new
+
+gst_rtsp_stream_get_index
+gst_rtsp_stream_get_srcpad
+
+gst_rtsp_stream_get_control
+gst_rtsp_stream_set_control
+gst_rtsp_stream_has_control
+
gst_rtsp_stream_get_mtu
gst_rtsp_stream_set_mtu
+
+gst_rtsp_stream_get_dscp_qos
+gst_rtsp_stream_set_dscp_qos
+
+gst_rtsp_stream_get_address_pool
+gst_rtsp_stream_set_address_pool
+gst_rtsp_stream_reserve_address
+
gst_rtsp_stream_join_bin
gst_rtsp_stream_leave_bin
+
+gst_rtsp_stream_get_server_port
+gst_rtsp_stream_get_multicast_address
+gst_rtsp_stream_get_rtpsession
+gst_rtsp_stream_get_ssrc
gst_rtsp_stream_get_rtpinfo
gst_rtsp_stream_get_caps
+
gst_rtsp_stream_recv_rtcp
gst_rtsp_stream_recv_rtp
+
gst_rtsp_stream_add_transport
gst_rtsp_stream_remove_transport
-gst_rtsp_stream_set_address_pool
-gst_rtsp_stream_get_address_pool
-gst_rtsp_stream_get_index
-gst_rtsp_stream_get_server_port
-gst_rtsp_stream_get_ssrc
-gst_rtsp_stream_get_address
-gst_rtsp_stream_reserve_address
GST_RTSP_STREAM_CAST
GST_RTSP_STREAM_CLASS_CAST
@@ -369,30 +515,38 @@ GST_RTSP_STREAM
GST_RTSP_STREAM_CLASS
GST_RTSP_STREAM_GET_CLASS
GST_TYPE_RTSP_STREAM
-gst_rtsp_stream_get_type
GstRTSPStreamPrivate
+gst_rtsp_stream_get_type
rtsp-stream-transport
GstRTSPStreamTransport
-GstRTSPKeepAliveFunc
-GstRTSPSendFunc
GstRTSPStreamTransport
GstRTSPStreamTransportClass
gst_rtsp_stream_transport_new
-gst_rtsp_stream_transport_set_callbacks
-gst_rtsp_stream_transport_set_keepalive
-gst_rtsp_stream_transport_set_transport
+
gst_rtsp_stream_transport_get_stream
+
gst_rtsp_stream_transport_get_transport
+gst_rtsp_stream_transport_set_transport
+
+GstRTSPSendFunc
+gst_rtsp_stream_transport_set_callbacks
+
+GstRTSPKeepAliveFunc
+gst_rtsp_stream_transport_set_keepalive
+
+gst_rtsp_stream_transport_set_active
+
+gst_rtsp_stream_transport_set_timed_out
gst_rtsp_stream_transport_is_timed_out
-gst_rtsp_stream_transport_keep_alive
+
gst_rtsp_stream_transport_send_rtcp
gst_rtsp_stream_transport_send_rtp
-gst_rtsp_stream_transport_set_active
-gst_rtsp_stream_transport_set_timed_out
-
+
+gst_rtsp_stream_transport_keep_alive
+
GST_RTSP_STREAM_TRANSPORT_CAST
GST_RTSP_STREAM_TRANSPORT_CLASS_CAST
GST_IS_RTSP_STREAM_TRANSPORT
@@ -401,41 +555,63 @@ GST_RTSP_STREAM_TRANSPORT
GST_RTSP_STREAM_TRANSPORT_CLASS
GST_RTSP_STREAM_TRANSPORT_GET_CLASS
GST_TYPE_RTSP_STREAM_TRANSPORT
-gst_rtsp_stream_transport_get_type
GstRTSPStreamTransportPrivate
+gst_rtsp_stream_transport_get_type
-rtsp-address-pool
-GstRTSPAddressPool
-GstRTSPAddressPool
-gst_rtsp_address_pool_new
-gst_rtsp_address_pool_add_range
-GST_RTSP_ADDRESS_POOL_ANY_IPV4
-GST_RTSP_ADDRESS_POOL_ANY_IPV6
-gst_rtsp_address_pool_add_range_unicast
-gst_rtsp_address_pool_clear
-gst_rtsp_address_pool_dump
-gst_rtsp_address_pool_acquire_address
-gst_rtsp_address_pool_reserve_address
-gst_rtsp_address_pool_has_unicast_addresses
+rtsp-thread-pool
+GstRTSPThreadPool
+GstRTSPThreadType
+GstRTSPThread
+
+gst_rtsp_thread_new
+gst_rtsp_thread_ref
+gst_rtsp_thread_unref
+gst_rtsp_thread_reuse
+gst_rtsp_thread_stop
+
+GstRTSPThreadPool
+GstRTSPThreadPoolClass
+gst_rtsp_thread_pool_new
+
+gst_rtsp_thread_pool_get_max_threads
+gst_rtsp_thread_pool_set_max_threads
+
+gst_rtsp_thread_pool_get_thread
-GstRTSPAddressPoolClass
-GstRTSPAddressPoolPrivate
-gst_rtsp_address_get_type
-gst_rtsp_address_pool_get_type
-GST_IS_RTSP_ADDRESS_POOL
-GST_IS_RTSP_ADDRESS_POOL_CLASS
-GST_RTSP_ADDRESS_POOL
-GST_RTSP_ADDRESS_POOL_CAST
-GST_RTSP_ADDRESS_POOL_CLASS
-GST_RTSP_ADDRESS_POOL_CLASS_CAST
-GST_RTSP_ADDRESS_POOL_GET_CLASS
-GST_TYPE_RTSP_ADDRESS_POOL
-
-GstRTSPAddress
-GstRTSPAddressClass
-GstRTSPAddressFlags
-gst_rtsp_address_copy
-gst_rtsp_address_free
+GST_RTSP_THREAD_CAST
+GST_RTSP_THREAD_POOL_CAST
+GST_RTSP_THREAD_POOL_CLASS_CAST
+GST_IS_RTSP_THREAD
+GST_IS_RTSP_THREAD_POOL
+GST_IS_RTSP_THREAD_POOL_CLASS
+GST_RTSP_THREAD
+GST_RTSP_THREAD_POOL
+GST_RTSP_THREAD_POOL_CLASS
+GST_RTSP_THREAD_POOL_GET_CLASS
+GST_TYPE_RTSP_THREAD
+GST_TYPE_RTSP_THREAD_POOL
+GstRTSPThreadPoolPrivate
+gst_rtsp_thread_get_type
+gst_rtsp_thread_pool_get_type
+
+
+rtsp-token
+GstRTSPToken
+GstRTSPToken
+gst_rtsp_token_new
+gst_rtsp_token_ref
+gst_rtsp_token_unref
+gst_rtsp_token_get_structure
+gst_rtsp_token_writable_structure
+gst_rtsp_token_get_string
+
+GST_RTSP_TOKEN_CAST
+GST_IS_RTSP_TOKEN
+GST_RTSP_TOKEN
+GST_TYPE_RTSP_TOKEN
+gst_rtsp_token_get_type
+
+
diff --git a/gst/rtsp-server/rtsp-address-pool.c b/gst/rtsp-server/rtsp-address-pool.c
index b6e2711ab0..c5c0727e86 100644
--- a/gst/rtsp-server/rtsp-address-pool.c
+++ b/gst/rtsp-server/rtsp-address-pool.c
@@ -22,6 +22,14 @@
#include "rtsp-address-pool.h"
+/**
+ * gst_rtsp_address_copy:
+ * @addr: a #GstRTSPAddress
+ *
+ * Make a copy of @addr.
+ *
+ * Returns: a copy of @addr.
+ */
GstRTSPAddress *
gst_rtsp_address_copy (GstRTSPAddress * addr)
{
@@ -41,6 +49,13 @@ gst_rtsp_address_copy (GstRTSPAddress * addr)
static void gst_rtsp_address_pool_release_address (GstRTSPAddressPool * pool,
GstRTSPAddress * addr);
+/**
+ * gst_rtsp_address_free:
+ * @addr: a #GstRTSPAddress
+ *
+ * Free @addr and releasing it back into the pool when owned by a
+ * pool.
+ */
void
gst_rtsp_address_free (GstRTSPAddress * addr)
{
@@ -54,7 +69,6 @@ gst_rtsp_address_free (GstRTSPAddress * addr)
g_slice_free (GstRTSPAddress, addr);
}
-
G_DEFINE_BOXED_TYPE (GstRTSPAddress, gst_rtsp_address,
(GBoxedCopyFunc) gst_rtsp_address_copy,
(GBoxedFreeFunc) gst_rtsp_address_free);
diff --git a/gst/rtsp-server/rtsp-address-pool.h b/gst/rtsp-server/rtsp-address-pool.h
index 9a0cb8c8c5..6a6b2d6701 100644
--- a/gst/rtsp-server/rtsp-address-pool.h
+++ b/gst/rtsp-server/rtsp-address-pool.h
@@ -34,12 +34,21 @@ G_BEGIN_DECLS
#define GST_RTSP_ADDRESS_POOL_CLASS_CAST(klass) ((GstRTSPAddressPoolClass*)(klass))
typedef struct _GstRTSPAddress GstRTSPAddress;
-typedef struct _GstRTSPAddressClass GstRTSPAddressClass;
typedef struct _GstRTSPAddressPool GstRTSPAddressPool;
typedef struct _GstRTSPAddressPoolClass GstRTSPAddressPoolClass;
typedef struct _GstRTSPAddressPoolPrivate GstRTSPAddressPoolPrivate;
+/**
+ * GstRTSPAddress:
+ * @pool: the #GstRTSPAddressPool owner of this address
+ * @address: the address
+ * @port: the port number
+ * @n_ports: number of ports
+ * @ttl: TTL or 0 for unicast addresses
+ *
+ * An address
+ */
struct _GstRTSPAddress {
GstRTSPAddressPool *pool;
@@ -48,6 +57,7 @@ struct _GstRTSPAddress {
gint n_ports;
guint8 ttl;
+ /**/
gpointer priv;
};
@@ -56,6 +66,17 @@ GType gst_rtsp_address_get_type (void);
GstRTSPAddress * gst_rtsp_address_copy (GstRTSPAddress *addr);
void gst_rtsp_address_free (GstRTSPAddress *addr);
+/**
+ * GstRTSPAddressFlags:
+ * @GST_RTSP_ADDRESS_FLAG_NONE: no flags
+ * @GST_RTSP_ADDRESS_FLAG_IPV4: an IPv4 address
+ * @GST_RTSP_ADDRESS_FLAG_IPV6: and IPv6 address
+ * @GST_RTSP_ADDRESS_FLAG_EVEN_PORT: address with an even port
+ * @GST_RTSP_ADDRESS_FLAG_MULTICAST: a multicast address
+ * @GST_RTSP_ADDRESS_FLAG_UNICAST: a unicast address
+ *
+ * Flags used to control allocation of addresses
+ */
typedef enum {
GST_RTSP_ADDRESS_FLAG_NONE = 0,
GST_RTSP_ADDRESS_FLAG_IPV4 = (1 << 0),
@@ -71,6 +92,7 @@ typedef enum {
* Used with gst_rtsp_address_pool_add_range_unicast() to bind to all
* IPv4 addresses
*/
+#define GST_RTSP_ADDRESS_POOL_ANY_IPV4 "0.0.0.0"
/**
* GST_RTSP_ADDRESS_POOL_ANY_IPV6:
@@ -78,22 +100,26 @@ typedef enum {
* Used with gst_rtsp_address_pool_add_range_unicast() to bind to all
* IPv6 addresses
*/
-
-#define GST_RTSP_ADDRESS_POOL_ANY_IPV4 "0.0.0.0"
#define GST_RTSP_ADDRESS_POOL_ANY_IPV6 "::"
/**
* GstRTSPAddressPool:
* @parent: the parent GObject
*
- * An address pool, all member are prive
+ * An address pool, all member are private
*/
struct _GstRTSPAddressPool {
GObject parent;
+ /*< private >*/
GstRTSPAddressPoolPrivate *priv;
};
+/**
+ * GstRTSPAddressPoolClass:
+ *
+ * Opaque Address pool class.
+ */
struct _GstRTSPAddressPoolClass {
GObjectClass parent_class;
};
diff --git a/gst/rtsp-server/rtsp-auth.c b/gst/rtsp-server/rtsp-auth.c
index a2e38c30b7..628bc4457b 100644
--- a/gst/rtsp-server/rtsp-auth.c
+++ b/gst/rtsp-server/rtsp-auth.c
@@ -149,10 +149,10 @@ gst_rtsp_auth_new (void)
* gst_rtsp_auth_add_basic:
* @auth: a #GstRTSPAuth
* @basic: the basic token
- * @authgroup: authorisation group
+ * @token: authorisation token
*
* Add a basic token for the default authentication algorithm that
- * enables the client qith privileges from @authgroup.
+ * enables the client with privileges listed in @token.
*/
void
gst_rtsp_auth_add_basic (GstRTSPAuth * auth, const gchar * basic,
diff --git a/gst/rtsp-server/rtsp-client.h b/gst/rtsp-server/rtsp-client.h
index c0d9629362..cd5de87ea1 100644
--- a/gst/rtsp-server/rtsp-client.h
+++ b/gst/rtsp-server/rtsp-client.h
@@ -105,7 +105,7 @@ typedef gboolean (*GstRTSPClientSendFunc) (GstRTSPClient *client,
/**
* GstRTSPClient:
*
- * The client structure.
+ * The client object represents the connection and its state with a client.
*/
struct _GstRTSPClient {
GObject parent;
@@ -115,10 +115,13 @@ struct _GstRTSPClient {
/**
* GstRTSPClientClass:
+ * @create_sdp: called when the SDP needs to be created for media.
+ * @configure_client_transport: called when the client transport needs to be
+ * configured.
* @params_set: set parameters. This function should also initialize the
- * RTSP response(state->response) via a call to gst_rtsp_message_init_response()
+ * RTSP response(state->response) via a call to gst_rtsp_message_init_response()
* @params_get: get parameters. This function should also initialize the
- * RTSP response(state->response) via a call to gst_rtsp_message_init_response()
+ * RTSP response(state->response) via a call to gst_rtsp_message_init_response()
*
* The client class structure.
*/
diff --git a/gst/rtsp-server/rtsp-media-factory.h b/gst/rtsp-server/rtsp-media-factory.h
index 896261a13b..ca26d26320 100644
--- a/gst/rtsp-server/rtsp-media-factory.h
+++ b/gst/rtsp-server/rtsp-media-factory.h
@@ -53,6 +53,7 @@ typedef struct _GstRTSPMediaFactoryPrivate GstRTSPMediaFactoryPrivate;
struct _GstRTSPMediaFactory {
GObject parent;
+ /*< private >*/
GstRTSPMediaFactoryPrivate *priv;
};
diff --git a/gst/rtsp-server/rtsp-media.c b/gst/rtsp-server/rtsp-media.c
index d7e4291f48..46706fa6bf 100644
--- a/gst/rtsp-server/rtsp-media.c
+++ b/gst/rtsp-server/rtsp-media.c
@@ -774,8 +774,9 @@ gst_rtsp_media_get_buffer_size (GstRTSPMedia * media)
/**
* gst_rtsp_media_use_time_provider:
* @media: a #GstRTSPMedia
+ * @time_provider: if a #GstNetTimeProvider should be used
*
- * Set @media to provide a GstNetTimeProvider.
+ * Set @media to provide a #GstNetTimeProvider.
*/
void
gst_rtsp_media_use_time_provider (GstRTSPMedia * media, gboolean time_provider)
diff --git a/gst/rtsp-server/rtsp-media.h b/gst/rtsp-server/rtsp-media.h
index 7b64cf3007..ebb7b673e1 100644
--- a/gst/rtsp-server/rtsp-media.h
+++ b/gst/rtsp-server/rtsp-media.h
@@ -76,6 +76,7 @@ typedef enum {
struct _GstRTSPMedia {
GObject parent;
+ /*< private >*/
GstRTSPMediaPrivate *priv;
};
diff --git a/gst/rtsp-server/rtsp-permissions.c b/gst/rtsp-server/rtsp-permissions.c
index 4d5e1928e0..f4098676a9 100644
--- a/gst/rtsp-server/rtsp-permissions.c
+++ b/gst/rtsp-server/rtsp-permissions.c
@@ -110,6 +110,8 @@ gst_rtsp_permissions_new (void)
/**
* gst_rtsp_permissions_add_role:
* @permissions: a #GstRTSPPermissions
+ * @role: a role
+ * @structure: the permissions structure
*
* Add the configuration in @structure to @permissions for @role.
*/
@@ -151,7 +153,9 @@ gst_rtsp_permissions_add_role (GstRTSPPermissions * permissions,
/**
* gst_rtsp_permissions_remove_role:
* @permissions: a #GstRTSPPermissions
+ * @role: a role
*
+ * Remove all permissions for @role in @permissions.
*/
void
gst_rtsp_permissions_remove_role (GstRTSPPermissions * permissions,
@@ -165,7 +169,11 @@ gst_rtsp_permissions_remove_role (GstRTSPPermissions * permissions,
/**
* gst_rtsp_permissions_get_role:
* @permissions: a #GstRTSPPermissions
+ * @role: a role
*
+ * Get all permissions for @role in @permissions.
+ *
+ * Returns: the structure with permissions for @role.
*/
const GstStructure *
gst_rtsp_permissions_get_role (GstRTSPPermissions * permissions,
@@ -187,6 +195,16 @@ gst_rtsp_permissions_get_role (GstRTSPPermissions * permissions,
return NULL;
}
+/**
+ * gst_rtsp_permissions_is_allowed:
+ * @permissions: a #GstRTSPPermissions
+ * @role: a role
+ * @permission: a permission
+ *
+ * Check if @role in @permissions is given permission for @permission.
+ *
+ * Returns: %TRUE if @role is allowed @permission.
+ */
gboolean
gst_rtsp_permissions_is_allowed (GstRTSPPermissions * permissions,
const gchar * role, const gchar * permission)
diff --git a/gst/rtsp-server/rtsp-permissions.h b/gst/rtsp-server/rtsp-permissions.h
index 5e06841c23..1fe62573f8 100644
--- a/gst/rtsp-server/rtsp-permissions.h
+++ b/gst/rtsp-server/rtsp-permissions.h
@@ -33,7 +33,6 @@ GType gst_rtsp_permissions_get_type (void);
#define GST_RTSP_PERMISSIONS_CAST(obj) ((GstRTSPPermissions*)(obj))
#define GST_RTSP_PERMISSIONS(obj) (GST_RTSP_PERMISSIONS_CAST(obj))
-
/**
* GstRTSPPermissions:
*
diff --git a/gst/rtsp-server/rtsp-server.h b/gst/rtsp-server/rtsp-server.h
index b4e83939cc..311a01d18c 100644
--- a/gst/rtsp-server/rtsp-server.h
+++ b/gst/rtsp-server/rtsp-server.h
@@ -61,6 +61,7 @@ struct _GstRTSPServer {
* object that handles the new connection on @socket.
* @setup_connection: Setup the new client connection. The default
* implementation will configure the TLS certificate.
+ * @client_connected: emited when a new client connected.
*
* The RTSP server class structure
*/
diff --git a/gst/rtsp-server/rtsp-session-media.c b/gst/rtsp-server/rtsp-session-media.c
index 57f4473d97..3f3fd15ef7 100644
--- a/gst/rtsp-server/rtsp-session-media.c
+++ b/gst/rtsp-server/rtsp-session-media.c
@@ -356,7 +356,7 @@ gst_rtsp_session_media_set_rtsp_state (GstRTSPSessionMedia * media,
}
/**
- * gst_rtsp_session_media_set_rtsp_state:
+ * gst_rtsp_session_media_get_rtsp_state:
* @media: a #GstRTSPSessionMedia
*
* Get the current RTSP state of @media.
diff --git a/gst/rtsp-server/rtsp-session-media.h b/gst/rtsp-server/rtsp-session-media.h
index 2cbc60282e..65867ab1b2 100644
--- a/gst/rtsp-server/rtsp-session-media.h
+++ b/gst/rtsp-server/rtsp-session-media.h
@@ -48,6 +48,7 @@ struct _GstRTSPSessionMedia
{
GObject parent;
+ /*< private >*/
GstRTSPSessionMediaPrivate *priv;
};
diff --git a/gst/rtsp-server/rtsp-session-pool.h b/gst/rtsp-server/rtsp-session-pool.h
index ca490de724..ff077ebb7e 100644
--- a/gst/rtsp-server/rtsp-session-pool.h
+++ b/gst/rtsp-server/rtsp-session-pool.h
@@ -52,6 +52,7 @@ typedef struct _GstRTSPSessionPoolPrivate GstRTSPSessionPoolPrivate;
struct _GstRTSPSessionPool {
GObject parent;
+ /*< private >*/
GstRTSPSessionPoolPrivate *priv;
};
diff --git a/gst/rtsp-server/rtsp-session.h b/gst/rtsp-server/rtsp-session.h
index e206032735..60ed6fad4b 100644
--- a/gst/rtsp-server/rtsp-session.h
+++ b/gst/rtsp-server/rtsp-session.h
@@ -67,6 +67,7 @@ typedef enum
struct _GstRTSPSession {
GObject parent;
+ /*< private >*/
GstRTSPSessionPrivate *priv;
};
diff --git a/gst/rtsp-server/rtsp-stream-transport.h b/gst/rtsp-server/rtsp-stream-transport.h
index ed69faa632..61257f5dc0 100644
--- a/gst/rtsp-server/rtsp-stream-transport.h
+++ b/gst/rtsp-server/rtsp-stream-transport.h
@@ -42,7 +42,25 @@ typedef struct _GstRTSPStreamTransportPrivate GstRTSPStreamTransportPrivate;
#include "rtsp-stream.h"
+/**
+ * GstRTSPSendFunc:
+ * @buffer: a #GstBuffer
+ * @channel: a channel
+ * @user_data: user data
+ *
+ * Function registered with gst_rtsp_stream_transport_set_callbacks() and
+ * called when @buffer must be sent on @channel.
+ *
+ * Returns: %TRUE on success
+ */
typedef gboolean (*GstRTSPSendFunc) (GstBuffer *buffer, guint8 channel, gpointer user_data);
+/**
+ * GstRTSPKeepAliveFunc:
+ * @user_data: user data
+ *
+ * Function registered with gst_rtsp_stream_transport_set_keepalive() and called
+ * when the stream is active.
+ */
typedef void (*GstRTSPKeepAliveFunc) (gpointer user_data);
/**
@@ -54,6 +72,7 @@ typedef void (*GstRTSPKeepAliveFunc) (gpointer user_data);
struct _GstRTSPStreamTransport {
GObject parent;
+ /*< private >*/
GstRTSPStreamTransportPrivate *priv;
};
diff --git a/gst/rtsp-server/rtsp-stream.c b/gst/rtsp-server/rtsp-stream.c
index 2a91126d86..fd8038e737 100644
--- a/gst/rtsp-server/rtsp-stream.c
+++ b/gst/rtsp-server/rtsp-stream.c
@@ -951,6 +951,7 @@ alloc_ports (GstRTSPStream * stream)
* gst_rtsp_stream_get_server_port:
* @stream: a #GstRTSPStream
* @server_port: (out): result server port
+ * @family: the port family to get
*
* Fill @server_port with the port pair used by the server. This function can
* only be called when @stream has been joined.
diff --git a/gst/rtsp-server/rtsp-thread-pool.h b/gst/rtsp-server/rtsp-thread-pool.h
index a9c013b376..1637018ffa 100644
--- a/gst/rtsp-server/rtsp-thread-pool.h
+++ b/gst/rtsp-server/rtsp-thread-pool.h
@@ -62,6 +62,10 @@ typedef enum
/**
* GstRTSPThread:
+ * @mini_object: parent #GstMiniObject
+ * @type: the thread type
+ * @context: a #GMainContext
+ * @loop: a #GMainLoop
*
* Structure holding info about a mainloop running in a thread
*/
@@ -121,11 +125,13 @@ gst_rtsp_thread_unref (GstRTSPThread * thread)
struct _GstRTSPThreadPool {
GObject parent;
+ /*< private >*/
GstRTSPThreadPoolPrivate *priv;
};
/**
* GstRTSPThreadPoolClass:
+ * @pool: a #GThreadPool used internally
* @get_thread: get or reuse a thread object
* @configure_thread: configure a thread object
* @thread_enter: called from the thread when it is entered