# `ExSDP.Attribute.RTPMapping`
[🔗](https://github.com/membraneframework/ex_sdp/blob/v1.2.0/lib/ex_sdp/attribute/rtp_mapping.ex#L1)

This module represents RTP mapping, a media-level attribute named `rtpmap`.

This attribute is defined in [Chapter 6.6 of RFC8866 (SDP)](https://datatracker.ietf.org/doc/html/rfc8866#section-6.6)

# `attr_key`

```elixir
@type attr_key() :: :rtpmap
```

Key that can be used for searching this attribute using `ExSDP.Media.get_attribute/2`.

# `payload_type_t`

```elixir
@type payload_type_t() :: 0..127
```

# `t`

```elixir
@type t() :: %ExSDP.Attribute.RTPMapping{
  clock_rate: non_neg_integer(),
  encoding: binary(),
  params: non_neg_integer() | nil,
  payload_type: payload_type_t()
}
```

# `parse`

```elixir
@spec parse(binary(), opts :: []) ::
  {:ok, t()}
  | {:error,
     :string_nan | :invalid_pt | :only_audio_can_have_params | :invalid_rtpmap}
```

---

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