Trait gstreamer_rtsp_server::prelude::RTSPMediaFactoryExt[][src]

pub trait RTSPMediaFactoryExt: 'static {
Show methods fn construct(&self, url: &RTSPUrl) -> Result<RTSPMedia, BoolError>;
fn create_element(&self, url: &RTSPUrl) -> Result<Element, BoolError>;
fn address_pool(&self) -> Option<RTSPAddressPool>;
fn buffer_size(&self) -> u32;
fn clock(&self) -> Option<Clock>;
fn does_retransmission(&self) -> bool;
fn dscp_qos(&self) -> i32;
fn latency(&self) -> u32;
fn launch(&self) -> Option<GString>;
fn max_mcast_ttl(&self) -> u32;
fn media_gtype(&self) -> Type;
fn multicast_iface(&self) -> Option<GString>;
fn profiles(&self) -> RTSPProfile;
fn protocols(&self) -> RTSPLowerTrans;
fn publish_clock_mode(&self) -> RTSPPublishClockMode;
fn retransmission_time(&self) -> ClockTime;
fn suspend_mode(&self) -> RTSPSuspendMode;
fn transport_mode(&self) -> RTSPTransportMode;
fn is_bind_mcast_address(&self) -> bool;
fn is_eos_shutdown(&self) -> bool;
fn is_shared(&self) -> bool;
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);
fn set_buffer_size(&self, size: u32);
fn set_clock<P: IsA<Clock>>(&self, clock: Option<&P>);
fn set_do_retransmission(&self, do_retransmission: bool);
fn set_dscp_qos(&self, dscp_qos: i32);
fn set_eos_shutdown(&self, eos_shutdown: bool);
fn set_latency(&self, latency: u32);
fn set_launch(&self, launch: &str);
fn set_max_mcast_ttl(&self, ttl: u32) -> bool;
fn set_media_gtype(&self, media_gtype: Type);
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);
fn set_retransmission_time(&self, time: ClockTime);
fn set_shared(&self, shared: bool);
fn set_stop_on_disconnect(&self, stop_on_disconnect: bool);
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_max_mcast_ttl(&self) -> u32;
fn set_property_max_mcast_ttl(&self, max_mcast_ttl: u32);
fn is_stop_on_disconnect(&self) -> bool;
fn connect_media_configure<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_media_constructed<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_bind_mcast_address_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_buffer_size_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_dscp_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_eos_shutdown_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_launch_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_max_mcast_ttl_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_profiles_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_protocols_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_shared_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_stop_on_disconnect_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_suspend_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_transport_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
}

Trait containing all RTSPMediaFactory methods.

Implementors

crate::RTSPMediaFactoryURI, crate::RTSPMediaFactory

Required methods

fn construct(&self, url: &RTSPUrl) -> Result<RTSPMedia, BoolError>[src]

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 crate::RTSPMedia if the media could be prepared.

fn create_element(&self, url: &RTSPUrl) -> Result<Element, BoolError>[src]

Construct and return a crate::gst::Element that is a crate::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 crate::gst::Element.

fn address_pool(&self) -> Option<RTSPAddressPool>[src]

Get the crate::RTSPAddressPool used as the address pool of self.

Returns

the crate::RTSPAddressPool of self. [crate::glib::object::ObjectExt::unref()] after usage.

fn buffer_size(&self) -> u32[src]

Get the kernel UDP buffer size.

Returns

the kernel UDP buffer size.

fn clock(&self) -> Option<Clock>[src]

Returns the clock that is going to be used by the pipelines of all medias created from this factory.

Returns

The GstClock

fn does_retransmission(&self) -> bool[src]

This is supported on crate feature v1_16 only.

Returns

Whether retransmission requests will be sent for receiving media

fn dscp_qos(&self) -> i32[src]

This is supported on crate feature v1_18 only.

Get the configured media DSCP QoS.

Returns

the media DSCP QoS value or -1 if disabled.

fn latency(&self) -> u32[src]

Get the latency that is used for receiving media

Returns

latency in milliseconds

fn launch(&self) -> Option<GString>[src]

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 max_mcast_ttl(&self) -> u32[src]

This is supported on crate feature v1_16 only.

Get the the maximum time-to-live value of outgoing multicast packets.

Returns

the maximum time-to-live value of outgoing multicast packets.

fn media_gtype(&self) -> Type[src]

Return the GType of the GstRTSPMedia subclass this factory will create.

fn multicast_iface(&self) -> Option<GString>[src]

Get the multicast interface used for self.

Returns

the multicast interface for self. g_free() after usage.

fn profiles(&self) -> RTSPProfile[src]

Get the allowed profiles of self.

Returns

a crate::gst_rtsp::RTSPProfile

fn protocols(&self) -> RTSPLowerTrans[src]

Get the allowed protocols of self.

Returns

a crate::gst_rtsp::RTSPLowerTrans

fn publish_clock_mode(&self) -> RTSPPublishClockMode[src]

Gets if and how the media clock should be published according to RFC7273.

Returns

The GstRTSPPublishClockMode

fn retransmission_time(&self) -> ClockTime[src]

Get the time that is stored for retransmission purposes

Returns

a crate::gst::ClockTime

fn suspend_mode(&self) -> RTSPSuspendMode[src]

Get how media created from this factory will be suspended.

Returns

a crate::RTSPSuspendMode.

fn transport_mode(&self) -> RTSPTransportMode[src]

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[src]

This is supported on crate feature v1_16 only.

Check if multicast sockets are configured to be bound to multicast addresses.

Returns

true if multicast sockets are configured to be bound to multicast addresses.

fn is_eos_shutdown(&self) -> bool[src]

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[src]

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[src]

fn set_address_pool<P: IsA<RTSPAddressPool>>(&self, pool: Option<&P>)[src]

configure pool to be used as the address pool of self.

pool

a crate::RTSPAddressPool

fn set_bind_mcast_address(&self, bind_mcast_addr: bool)[src]

This is supported on crate feature v1_16 only.

Decide whether the multicast socket should be bound to a multicast address or INADDR_ANY.

bind_mcast_addr

the new value

fn set_buffer_size(&self, size: u32)[src]

Set the kernel UDP buffer size.

size

the new value

fn set_clock<P: IsA<Clock>>(&self, clock: Option<&P>)[src]

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)[src]

This is supported on crate feature v1_16 only.

Set whether retransmission requests will be sent for receiving media

fn set_dscp_qos(&self, dscp_qos: i32)[src]

This is supported on crate feature v1_18 only.

Configure the media dscp qos to dscp_qos.

dscp_qos

a new dscp qos value (0-63, or -1 to disable)

fn set_eos_shutdown(&self, eos_shutdown: bool)[src]

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)[src]

Configure the latency used for receiving media

latency

latency in milliseconds

fn set_launch(&self, launch: &str)[src]

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[src]

This is supported on crate feature v1_16 only.

Set the maximum time-to-live value of outgoing multicast packets.

ttl

the new multicast ttl value

Returns

true if the requested ttl has been set successfully.

fn set_media_gtype(&self, media_gtype: Type)[src]

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>)[src]

configure multicast_iface to be used for self.

multicast_iface

a multicast interface name

fn set_profiles(&self, profiles: RTSPProfile)[src]

Configure the allowed profiles for self.

profiles

the new flags

fn set_protocols(&self, protocols: RTSPLowerTrans)[src]

Configure the allowed lower transport for self.

protocols

the new flags

fn set_publish_clock_mode(&self, mode: RTSPPublishClockMode)[src]

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)[src]

Configure the time to store for possible retransmission

time

a crate::gst::ClockTime

fn set_shared(&self, shared: bool)[src]

Configure if media created from this factory can be shared between clients.

shared

the new value

fn set_stop_on_disconnect(&self, stop_on_disconnect: bool)[src]

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)[src]

Configure how media created from this factory will be suspended.

mode

the new crate::RTSPSuspendMode

fn set_transport_mode(&self, mode: RTSPTransportMode)[src]

Configure if this factory creates media for PLAY or RECORD modes.

mode

the new value

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_max_mcast_ttl(&self) -> u32[src]

fn set_property_max_mcast_ttl(&self, max_mcast_ttl: u32)[src]

fn is_stop_on_disconnect(&self) -> bool[src]

fn connect_media_configure<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_media_constructed<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_bind_mcast_address_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_buffer_size_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_dscp_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_eos_shutdown_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_launch_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_max_mcast_ttl_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_profiles_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_protocols_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_shared_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_stop_on_disconnect_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_suspend_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_transport_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

Loading content...

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 address_pool(&self) -> Option<RTSPAddressPool>[src]

fn buffer_size(&self) -> u32[src]

fn clock(&self) -> Option<Clock>[src]

fn does_retransmission(&self) -> bool[src]

This is supported on crate feature v1_16 only.

fn dscp_qos(&self) -> i32[src]

This is supported on crate feature v1_18 only.

fn latency(&self) -> u32[src]

fn launch(&self) -> Option<GString>[src]

fn max_mcast_ttl(&self) -> u32[src]

This is supported on crate feature v1_16 only.

fn media_gtype(&self) -> Type[src]

fn multicast_iface(&self) -> Option<GString>[src]

fn profiles(&self) -> RTSPProfile[src]

fn protocols(&self) -> RTSPLowerTrans[src]

fn publish_clock_mode(&self) -> RTSPPublishClockMode[src]

fn retransmission_time(&self) -> ClockTime[src]

fn suspend_mode(&self) -> RTSPSuspendMode[src]

fn transport_mode(&self) -> RTSPTransportMode[src]

fn is_bind_mcast_address(&self) -> bool[src]

This is supported on crate feature v1_16 only.

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]

This is supported on crate feature v1_16 only.

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]

This is supported on crate feature v1_16 only.

fn set_dscp_qos(&self, dscp_qos: i32)[src]

This is supported on crate feature v1_18 only.

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]

This is supported on crate feature v1_16 only.

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_max_mcast_ttl(&self) -> u32[src]

fn set_property_max_mcast_ttl(&self, max_mcast_ttl: u32)[src]

fn is_stop_on_disconnect(&self) -> bool[src]

fn connect_media_configure<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_media_constructed<F: Fn(&Self, &RTSPMedia) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_bind_mcast_address_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_buffer_size_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_clock_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_dscp_qos_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_eos_shutdown_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_launch_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_max_mcast_ttl_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_profiles_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_protocols_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_shared_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_stop_on_disconnect_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_suspend_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

fn connect_transport_mode_notify<F: Fn(&Self) + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId
[src]

Loading content...