# `Mediasoup`
[🔗](https://github.com/oviceinc/mediasoup-elixir/blob/main/lib/mediasoup.ex#L1)

https://mediasoup.org/documentation/v3/mediasoup/api/

# `num_sctp_streams`

```elixir
@type num_sctp_streams() :: %{OS: integer(), MIS: integer()}
```

https://mediasoup.org/documentation/v3/mediasoup/sctp-parameters/#NumSctpStreams

# `transport_listen_info`

```elixir
@type transport_listen_info() :: Mediasoup.TransportListenInfo.t()
```

https://mediasoup.org/documentation/v3/mediasoup/api/#TransportListenInfo

# `transport_listen_ip`

```elixir
@type transport_listen_ip() :: Mediasoup.TransportListenInfo.listen_ip()
```

https://mediasoup.org/documentation/v3/mediasoup/api/#TransportListenIp

# `get_supported_rtp_capabilities`

```elixir
@spec get_supported_rtp_capabilities() :: Mediasoup.Router.rtpCapabilities()
```

Returns the RTP capabilities supported by the mediasoup library.

See: https://mediasoup.org/documentation/v3/mediasoup/api/#mediasoup-getSupportedRtpCapabilities

Note: These are NOT the RTP capabilities needed by mediasoup-client's `device.load()`.
For that you must use `Router.rtp_capabilities/1` instead.

## Examples

    iex> caps = Mediasoup.get_supported_rtp_capabilities()
    iex> assert is_map(caps)
    iex> assert Map.has_key?(caps, "codecs")

# `init_env_logger`

Since the format of env_logger is different from that of elixir, it is recommended to use Mediasoup.LoggerProxy instead.
Initialize the logger with env logger. Same as the env_logger::init() call.
For more information on the env logger, please refer to the Rust crate documentation.
https://docs.rs/env_logger/latest/env_logger/

# `version`

```elixir
@spec version() :: String.t()
```

return version of mediasoup_elixir

---

*Consult [api-reference.md](api-reference.md) for complete listing*
