[−][src]Trait gstreamer_rtsp_server::RTSPMediaFactoryExt
Required methods
fn construct(&self, url: &RTSPUrl) -> Result<RTSPMedia, BoolError>
Construct the media object and create its streams. Implementations should create the needed gstreamer elements and add them to the result object. No state changes should be performed on them yet.
One or more GstRTSPStream objects should be created from the result with gst_rtsp_media_create_stream ().
After the media is constructed, it can be configured and then prepared with gst_rtsp_media_prepare ().
url
the url used
Returns
a new RTSPMedia
if the media could be prepared.
fn create_element(&self, url: &RTSPUrl) -> Result<Element, BoolError>
Construct and return a gst::Element
that is a gst::Bin
containing
the elements to use for streaming the media.
The bin should contain payloaders pay%d for each stream. The default implementation of this function returns the bin created from the launch parameter.
url
the url used
Returns
a new gst::Element
.
fn get_address_pool(&self) -> Option<RTSPAddressPool>
Get the RTSPAddressPool
used as the address pool of self
.
Returns
the RTSPAddressPool
of self
. gobject::ObjectExt::unref
after
usage.
fn get_buffer_size(&self) -> u32
fn get_clock(&self) -> Option<Clock>
Returns the clock that is going to be used by the pipelines of all medias created from this factory.
Returns
The GstClock
fn get_do_retransmission(&self) -> bool
fn get_dscp_qos(&self) -> i32
Get the configured media DSCP QoS.
Feature: v1_18
Returns
the media DSCP QoS value or -1 if disabled.
fn get_latency(&self) -> u32
fn get_launch(&self) -> Option<GString>
Get the gst_parse_launch
pipeline description that will be used in the
default prepare vmethod.
Returns
the configured launch description. g_free
after
usage.
fn get_max_mcast_ttl(&self) -> u32
Get the the maximum time-to-live value of outgoing multicast packets.
Feature: v1_16
Returns
the maximum time-to-live value of outgoing multicast packets.
fn get_media_gtype(&self) -> Type
Return the GType of the GstRTSPMedia subclass this factory will create.
fn get_multicast_iface(&self) -> Option<GString>
Get the multicast interface used for self
.
Returns
the multicast interface for self
. g_free
after
usage.
fn get_profiles(&self) -> RTSPProfile
fn get_protocols(&self) -> RTSPLowerTrans
fn get_publish_clock_mode(&self) -> RTSPPublishClockMode
Gets if and how the media clock should be published according to RFC7273.
Returns
The GstRTSPPublishClockMode
fn get_retransmission_time(&self) -> ClockTime
fn get_suspend_mode(&self) -> RTSPSuspendMode
fn get_transport_mode(&self) -> RTSPTransportMode
Get if media created from this factory can be used for PLAY or RECORD methods.
Returns
The transport mode.
fn is_bind_mcast_address(&self) -> bool
Check if multicast sockets are configured to be bound to multicast addresses.
Feature: v1_16
Returns
true
if multicast sockets are configured to be bound to multicast addresses.
fn is_eos_shutdown(&self) -> bool
Get if media created from this factory will have an EOS event sent to the pipeline before shutdown.
Returns
true
if the media will receive EOS before shutdown.
fn is_shared(&self) -> bool
Get if media created from this factory can be shared between clients.
Returns
true
if the media will be shared between clients.
fn is_stop_on_disonnect(&self) -> bool
fn set_address_pool<P: IsA<RTSPAddressPool>>(&self, pool: Option<&P>)
fn set_bind_mcast_address(&self, bind_mcast_addr: bool)
Decide whether the multicast socket should be bound to a multicast address or INADDR_ANY.
Feature: v1_16
bind_mcast_addr
the new value
fn set_buffer_size(&self, size: u32)
fn set_clock<P: IsA<Clock>>(&self, clock: Option<&P>)
Configures a specific clock to be used by the pipelines of all medias created from this factory.
clock
the clock to be used by the media factory
fn set_do_retransmission(&self, do_retransmission: bool)
Set whether retransmission requests will be sent for receiving media
Feature: v1_16
fn set_dscp_qos(&self, dscp_qos: i32)
Configure the media dscp qos to dscp_qos
.
Feature: v1_18
dscp_qos
a new dscp qos value (0-63, or -1 to disable)
fn set_eos_shutdown(&self, eos_shutdown: bool)
Configure if media created from this factory will have an EOS sent to the pipeline before shutdown.
eos_shutdown
the new value
fn set_latency(&self, latency: u32)
fn set_launch(&self, launch: &str)
The gst_parse_launch
line to use for constructing the pipeline in the
default prepare vmethod.
The pipeline description should return a GstBin as the toplevel element which can be accomplished by enclosing the description with brackets '(' ')'.
The description should return a pipeline with payloaders named pay0, pay1, etc.. Each of the payloaders will result in a stream.
launch
the launch description
fn set_max_mcast_ttl(&self, ttl: u32) -> bool
Set the maximum time-to-live value of outgoing multicast packets.
Feature: v1_16
ttl
the new multicast ttl value
Returns
true
if the requested ttl has been set successfully.
fn set_media_gtype(&self, media_gtype: Type)
Configure the GType of the GstRTSPMedia subclass to create (by default, overridden construct vmethods may of course do something different)
media_gtype
the GType of the class to create
fn set_multicast_iface(&self, multicast_iface: Option<&str>)
fn set_profiles(&self, profiles: RTSPProfile)
fn set_protocols(&self, protocols: RTSPLowerTrans)
fn set_publish_clock_mode(&self, mode: RTSPPublishClockMode)
Sets if and how the media clock should be published according to RFC7273.
mode
the clock publish mode
fn set_retransmission_time(&self, time: ClockTime)
fn set_shared(&self, shared: bool)
fn set_stop_on_disconnect(&self, stop_on_disconnect: bool)
Configure if media created from this factory should be stopped when a client disconnects without sending TEARDOWN.
stop_on_disconnect
the new value
fn set_suspend_mode(&self, mode: RTSPSuspendMode)
fn set_transport_mode(&self, mode: RTSPTransportMode)
fn get_property_bind_mcast_address(&self) -> bool
fn set_property_bind_mcast_address(&self, bind_mcast_address: bool)
fn get_property_dscp_qos(&self) -> i32
fn set_property_dscp_qos(&self, dscp_qos: i32)
fn get_property_eos_shutdown(&self) -> bool
fn get_property_max_mcast_ttl(&self) -> u32
fn set_property_max_mcast_ttl(&self, max_mcast_ttl: u32)
fn get_property_shared(&self) -> bool
fn get_property_stop_on_disconnect(&self) -> bool
fn connect_media_configure<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_media_constructed<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_bind_mcast_address_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_buffer_size_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_dscp_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_eos_shutdown_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_launch_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_max_mcast_ttl_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_profiles_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_protocols_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_shared_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_stop_on_disconnect_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_suspend_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
fn connect_property_transport_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
&self,
f: F
) -> SignalHandlerId
Implementors
impl<O: IsA<RTSPMediaFactory>> RTSPMediaFactoryExt for O
[src]
fn construct(&self, url: &RTSPUrl) -> Result<RTSPMedia, BoolError>
[src]
fn create_element(&self, url: &RTSPUrl) -> Result<Element, BoolError>
[src]
fn get_address_pool(&self) -> Option<RTSPAddressPool>
[src]
fn get_buffer_size(&self) -> u32
[src]
fn get_clock(&self) -> Option<Clock>
[src]
fn get_do_retransmission(&self) -> bool
[src]
fn get_dscp_qos(&self) -> i32
[src]
fn get_latency(&self) -> u32
[src]
fn get_launch(&self) -> Option<GString>
[src]
fn get_max_mcast_ttl(&self) -> u32
[src]
fn get_media_gtype(&self) -> Type
[src]
fn get_multicast_iface(&self) -> Option<GString>
[src]
fn get_profiles(&self) -> RTSPProfile
[src]
fn get_protocols(&self) -> RTSPLowerTrans
[src]
fn get_publish_clock_mode(&self) -> RTSPPublishClockMode
[src]
fn get_retransmission_time(&self) -> ClockTime
[src]
fn get_suspend_mode(&self) -> RTSPSuspendMode
[src]
fn get_transport_mode(&self) -> RTSPTransportMode
[src]
fn is_bind_mcast_address(&self) -> bool
[src]
fn is_eos_shutdown(&self) -> bool
[src]
fn is_shared(&self) -> bool
[src]
fn is_stop_on_disonnect(&self) -> bool
[src]
fn set_address_pool<P: IsA<RTSPAddressPool>>(&self, pool: Option<&P>)
[src]
fn set_bind_mcast_address(&self, bind_mcast_addr: bool)
[src]
fn set_buffer_size(&self, size: u32)
[src]
fn set_clock<P: IsA<Clock>>(&self, clock: Option<&P>)
[src]
fn set_do_retransmission(&self, do_retransmission: bool)
[src]
fn set_dscp_qos(&self, dscp_qos: i32)
[src]
fn set_eos_shutdown(&self, eos_shutdown: bool)
[src]
fn set_latency(&self, latency: u32)
[src]
fn set_launch(&self, launch: &str)
[src]
fn set_max_mcast_ttl(&self, ttl: u32) -> bool
[src]
fn set_media_gtype(&self, media_gtype: Type)
[src]
fn set_multicast_iface(&self, multicast_iface: Option<&str>)
[src]
fn set_profiles(&self, profiles: RTSPProfile)
[src]
fn set_protocols(&self, protocols: RTSPLowerTrans)
[src]
fn set_publish_clock_mode(&self, mode: RTSPPublishClockMode)
[src]
fn set_retransmission_time(&self, time: ClockTime)
[src]
fn set_shared(&self, shared: bool)
[src]
fn set_stop_on_disconnect(&self, stop_on_disconnect: bool)
[src]
fn set_suspend_mode(&self, mode: RTSPSuspendMode)
[src]
fn set_transport_mode(&self, mode: RTSPTransportMode)
[src]
fn get_property_bind_mcast_address(&self) -> bool
[src]
fn set_property_bind_mcast_address(&self, bind_mcast_address: bool)
[src]
fn get_property_dscp_qos(&self) -> i32
[src]
fn set_property_dscp_qos(&self, dscp_qos: i32)
[src]
fn get_property_eos_shutdown(&self) -> bool
[src]
fn get_property_max_mcast_ttl(&self) -> u32
[src]
fn set_property_max_mcast_ttl(&self, max_mcast_ttl: u32)
[src]
fn get_property_shared(&self) -> bool
[src]
fn get_property_stop_on_disconnect(&self) -> bool
[src]
fn connect_media_configure<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_media_constructed<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_bind_mcast_address_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_buffer_size_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_dscp_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_eos_shutdown_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_launch_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_max_mcast_ttl_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_profiles_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_protocols_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_shared_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_stop_on_disconnect_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_suspend_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_property_transport_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId