# `XMediaLib.SDP.Dcmap`
[🔗](https://github.com/Lazarus404/xmedialib/blob/main/lib/sdp/types.ex#L478)

SCTP data channel map (`a=dcmap:`) describing a WebRTC data channel.

## What problem this solves

WebRTC data channels over SCTP are negotiated with `a=dcmap:` lines mapping
stream ids to labels and parameters. This struct holds one data channel
description from SDP for offer/answer handling alongside audio and video.

Maps an SCTP stream id to a label and optional JSON parameters (ordered,
max-retransmits, protocol, etc.).

Wire form: `a=dcmap:<stream-id> <label>[;key=value;...]`

## RFCs

* [RFC 8841](https://www.rfc-editor.org/rfc/rfc8841) - SCTP-based media channels
* [RFC 8864](https://www.rfc-editor.org/rfc/rfc8864) - data channel negotiation

# `t`

```elixir
@type t() :: %XMediaLib.SDP.Dcmap{params: String.t(), stream_id: non_neg_integer()}
```

Stream id and channel label/parameters string.

## Fields

* `:stream_id` - SCTP stream identifier for the data channel
* `:params` - label and optional `;`-separated parameters

---

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