[−][src]Struct mediasoup::sctp_parameters::NumSctpStreams
Both OS and MIS are part of the SCTP INIT+ACK handshake. OS refers to the initial number of outgoing SCTP streams that the server side transport creates (to be used by DataConsumers), while MIS refers to the maximum number of incoming SCTP streams that the server side transport can receive (to be used by DataProducers). So, if the server side transport will just be used to create data producers (but no data consumers), OS can be low (~1). However, if data consumers are desired on the server side transport, OS must have a proper value and such a proper value depends on whether the remote endpoint supports SCTP_ADD_STREAMS extension or not.
libwebrtc (Chrome, Safari, etc) does not enable SCTP_ADD_STREAMS so, if data consumers are required, OS should be 1024 (the maximum number of DataChannels that libwebrtc enables).
Firefox does enable SCTP_ADD_STREAMS so, if data consumers are required, OS can be lower (16 for instance). The mediasoup transport will allocate and announce more outgoing SCTP streams when needed.
mediasoup-client provides specific per browser/version OS and MIS values via the device.sctpCapabilities getter.
Fields
os: u16
Initially requested number of outgoing SCTP streams.
mis: u16
Maximum number of incoming SCTP streams.
Trait Implementations
impl Clone for NumSctpStreams
[src]
pub fn clone(&self) -> NumSctpStreams
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for NumSctpStreams
[src]
impl Debug for NumSctpStreams
[src]
impl Default for NumSctpStreams
[src]
impl Serialize for NumSctpStreams
[src]
Auto Trait Implementations
impl RefUnwindSafe for NumSctpStreams
impl Send for NumSctpStreams
impl Sync for NumSctpStreams
impl Unpin for NumSctpStreams
impl UnwindSafe for NumSctpStreams
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,