Skip to content

Complete EN 300 468 Table 2: six new tables + vendored specs#4

Merged
fishloa merged 3 commits into
mainfrom
add-missing-tables
Jun 4, 2026
Merged

Complete EN 300 468 Table 2: six new tables + vendored specs#4
fishloa merged 3 commits into
mainfrom
add-missing-tables

Conversation

@fishloa
Copy link
Copy Markdown
Owner

@fishloa fishloa commented Jun 4, 2026

Vendors TS 102 809 v1.3.1 / TS 102 772 v1.1.1 / EN 303 560 v1.1.1 (latest; newer probes 404) + extracted reference MDs, then implements the six remaining allocated table_ids: Container 0x75, MPE datagram 0x3E (typed), MPE-FEC 0x78, MPE-IFEC 0x7A, protection message 0x7B (auth + cert-collection variants), DFIS 0x7C.

Notable spec archaeology: EN 303 560 says table_id 0x4C — EN 300 468 V1.19.1 Table 2 NOTE 2 confirms that was accidentally double-allocated with the INT and corrects it to 0x7C.

Every allocated table_id in EN 300 468 V1.19.1 Table 2 is now implemented. House idiom enforced throughout (typed headers + borrowed raw loops, Parse/Serialize symmetry, no CRC-verify-on-parse, serde + borrow). 516 dvb-si lib tests (62 new), clippy clean, MSRV 1.75.

🤖 Generated with Claude Code

fishloa added 3 commits June 4, 2026 10:23
Latest published versions (newer-version probes 404). Grounds the remaining
DVB table_id allocations: protection message 0x7B + AIT 0x74 (102 809),
MPE-IFEC 0x7A (102 772), downloadable font info 0x7C (303 560). Container
0x75 and MPE-FEC 0x78 were already grounded by the vendored TS 102 323 /
EN 301 192.
…aining DVB tables

- docs: ts_102_809_apps.md (51 tables), ts_102_772_mpe_ifec.md (12), en_303_560_ttml.md (26) via the geometry extractor
- TableId: ProtectionMessage 0x7B, DownloadableFontInfo 0x7C (0x75/0x78/0x7A already present)
- tables/mod.rs + compiling stubs for container, mpe, mpe_fec, mpe_ifec, protection_message, downloadable_font_info
…bles

- Container (0x75, TS 102 323 §7.3.1.4)
- MPE datagram_section (0x3E, EN 301 192 §7.1 — typed IP/MAC view of the
  DSM-CC private section; SSI=0 checksum trailer preserved verbatim,
  SSI=1 CRC recomputed)
- MPE-FEC (0x78, EN 301 192 §9.9 + §9.10 real_time_parameters 12/1/1/18)
- MPE-IFEC (0x7A, TS 102 772 §5.2; its own RealTimeParameters per Table 3)
- Protection message (0x7B, TS 102 809 §9): authentication message
  (ext 0x0000-0x00FF = authentication_group_id, PDF p.66 Table 41) +
  certificate collection (ext 0x0100, Table 51) + raw fallthrough
- DFIS (0x7C, EN 303 560; 0x4C-in-spec is the acknowledged allocation
  accident per EN 300 468 V1.19.1 Table 2 NOTE 2; the 0x02 dual
  conditional confirmed intentional against PDF pp.30-31)

Every allocated table_id in EN 300 468 V1.19.1 Table 2 is now implemented.
House idiom throughout: typed headers + borrowed raw loops, Parse/Serialize
symmetry, no CRC verify on parse, serde derives + borrow, full in-module
test sets. TableId gains ProtectionMessage/DownloadableFontInfo.

516 dvb-si lib tests pass (62 new), clippy -D warnings clean, MSRV 1.75.
@fishloa fishloa merged commit 215d0c7 into main Jun 4, 2026
4 checks passed
@fishloa fishloa deleted the add-missing-tables branch June 4, 2026 09:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant