# `Membrane.MPEGTS.Muxer.TS`
[🔗](https://github.com/membraneframework/membrane_mpegts_plugin/blob/v0.6.0/lib/muxer/ts.ex#L1)

Module responsible for wrapping PES and PSI into TS packets.

# `t`

```elixir
@opaque t()
```

# `add_pid`

```elixir
@spec add_pid(t(), non_neg_integer()) :: t()
```

Registeres new Program ID in the MPEG-TS packets stream.

# `new`

```elixir
@spec new() :: t()
```

Returns new instance of MPEG-TS packets serializer.

# `serialize_pes`

```elixir
@spec serialize_pes(binary(), non_neg_integer(), t(), boolean(), boolean()) ::
  {[binary()], t()}
```

Serializes Packetized Elementry Stream.

# `serialize_psi`

```elixir
@spec serialize_psi(binary(), non_neg_integer(), t()) :: {[binary()], t()}
```

Serializes Program Specific Information, like Program Association Tables or Program Mapping Table.

---

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