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

SDP grouping attribute (`a=group:`) for related media sections.

## What problem this solves

WebRTC BUNDLE groups several `m=` lines onto one ICE/DTLS transport via
`a=group:BUNDLE`. SFUs and browsers read the semantics and ordered `mid` list
to know which sections share a socket.

BUNDLE groups multiple `m=` lines onto one transport (common in WebRTC so
audio, video, and application share one ICE/DTLS association).

Wire form: `a=group:<semantics> <mid> ...`

## RFCs

* [RFC 8843](https://www.rfc-editor.org/rfc/rfc8843) - BUNDLE semantics
* [RFC 5888](https://www.rfc-editor.org/rfc/rfc5888) - grouping framework

# `t`

```elixir
@type t() :: %XMediaLib.SDP.Group{mids: [String.t()], semantics: String.t()}
```

Group semantics and ordered list of `mid` values.

## Fields

* `:semantics` - grouping type, e.g. `BUNDLE` or `LS`
* `:mids` - media identification tags referenced by `a=mid`

---

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