### `wai.video.vp8` and `wai.audio.opus.packet`: the media of a WebRTC ingest

- **Why.** A live ingest of WebRTC media hands WAI the codecs WebRTC endpoints send.
  VP8 is mandatory to implement in every WebRTC browser, and in every WebRTC
  non-browser that sends or receives video (RFC 7742 §5); a live track carries
  Opus one packet per object, not as an Ogg stream. SPEC §5 *Broadcast and
  streaming codecs* registers both, 2026-10-18, with no edition named.
- **`wai.video.vp8`** (RFC 6386): VP8 frames in the IVF frame container with
  FourCC `VP80`, a 32-byte file header and a 12-byte header before each frame, the
  framing `wai.video.vp9` uses. Royalty-free, as VP9 (the reference source under a
  BSD licence with a patent grant). `StandardUnclassified`: RFC 6386's
  decoder-conformance text was not read, so the registry promises no byte identity;
  VP8 shares VP9's framing, not its class.
- **`wai.audio.opus.packet`** (RFC 6716): one Opus packet (§3), its TOC byte first,
  with no container, decoded with an Opus decoder (§4) of one or two channels at any
  rate it supports. It carries no pre-skip and no output gain, which are Ogg Opus's
  (RFC 7845 §5.1); `wai.audio.opus` remains the capability for a stored stream. A
  different framing takes a string of its own (§8), suffixed as
  `wai.video.av1.lossless` is. Royalty-free; `StandardTolerance`, as `wai.audio.opus`
  (RFC 6716 §6). How consecutive objects of one live track decode is the live
  binding's rule ([live-ingest](extensions/live-ingest.md)).
- **Neither is a default.** Both are standalone, `Lossy`, sink-supplied, and outside
  the floor and the recommended set; the native sink advertises neither. Neither is a
  base of `wai.video.lcevc`. The codec glossary links its VP8 and Opus entries to
  them, and the research registry records the licence and replicate basis of each
  (`research/media-codec-registry.md`, ¹⁵). The registry export, the vocabulary and
  the table in `REGISTRY.md` are regenerated.

