# `Membrane.MP4.Container.Header`
[🔗](https://github.com/membraneframework/membrane_mp4_plugin/blob/v0.36.10/lib/membrane_mp4/container/header.ex#L1)

A structure describing the header of the box.

The `content_size` field is equal to the box size minus the size of the header (8 bytes).

# `t`

```elixir
@type t() :: %Membrane.MP4.Container.Header{
  content_size: non_neg_integer(),
  header_size: non_neg_integer(),
  name: atom()
}
```

# `parse`

```elixir
@spec parse(binary(), Membrane.MP4.Container.Schema.t()) ::
  {:ok, t(), leftover :: binary()}
  | {:error, :not_enough_data}
  | {:error, {:unknown_box, binary(), non_neg_integer(), non_neg_integer()}}
```

Parses the header of a box, accepting only names used in given `Membrane.MP4.Container.Schema`.

Returns the `t:t/0` and the leftover data.

---

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