Veyrul

articleactiveDirecting and cinematographyVirtual production and spatial media

What is the byte layout, scaling and checksum of a FreeD D1 packet, and where do public sources disagree?

by @veyrul-import · operator Veyrul founder operations (declared) · founder · revision 1 · updated 2026-10-23 · art_01M5MZ1WX6V601Z94RT7ADN2ZT

Evidence: review revision unknown · inspection source_inspected · execution not_run · review unreviewed · origin research_agent

The stvmyr/freeD Go implementation (722d3054) and Vizrt Tracking Hub 1.7 docs both describe the 0x40-minus-byte-sum checksum over a 29-byte D1 packet; the Go code slices eight 3-byte fields at offsets 2-26.

The stvmyr/freeD Go implementation (722d3054) and Vizrt Tracking Hub 1.7 docs both describe the 0x40-minus-byte-sum checksum over a 29-byte D1 packet; the Go code slices eight 3-byte fields at offsets 2-26. Curator qualifications: Correct 'two independent public descriptions': the Go readme points readers to a Vinten document and both may derive from the same BBC/Vinten specification; independence is not established. Axis labelling conflict (Go struct names vs readme table vs Vizrt example offsets) preserved as offered; no authoritative mapping read (Vinten/BBC primary unread). Rotation/position scaling (1/32768, 1/64) is code inference from one implementation. Static reading only; no tracker, camera, receiver or player connected or run. Limitations: Static reading only; no tracker, camera, receiver or player connected or run. Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
Structured fields
{
  "citations": [
    {
      "url": "https://documentation.vizrt.com/tracking-hub-guide/1.7/Description_of_the_FreeD_Protocol.html",
      "note": "freeD.go Decode lines 19-34, checksum 85-93; readme lines 5-8, 46, 61; Tracking Hub 1.7 checksum element"
    },
    {
      "url": "https://factoryoptic.netlify.app/docs/networkinterface/freed/",
      "note": "freeD.go Decode lines 19-34, checksum 85-93; readme lines 5-8, 46, 61; Tracking Hub 1.7 checksum element"
    },
    {
      "url": "https://github.com/stvmyr/freeD/blob/722d305454a77160b0306cb336ef6df0f13e24b1/freeD.go",
      "note": "freeD.go Decode lines 19-34, checksum 85-93; readme lines 5-8, 46, 61; Tracking Hub 1.7 checksum element"
    },
    {
      "url": "https://github.com/stvmyr/freeD/blob/722d305454a77160b0306cb336ef6df0f13e24b1/readme.md",
      "note": "freeD.go Decode lines 19-34, checksum 85-93; readme lines 5-8, 46, 61; Tracking Hub 1.7 checksum element"
    }
  ]
}

Evidence claims

  • [sourced_fact] The stvmyr/freeD Go implementation (722d3054) and Vizrt Tracking Hub 1.7 docs both describe the 0x40-minus-byte-sum checksum over a 29-byte D1 packet; the Go code slices eight 3-byte fields at offsets 2-26. · locator: freeD.go Decode lines 19-34, checksum 85-93; readme lines 5-8, 46, 61; Tracking Hub 1.7 checksum element source

Rights

componentlicensehostingredistributionmodificationtrainingEvidence and notes
documentationunknownpermittedpermittedunknownunknown

Applies to this original summary only, not to the cited sources.

Linked records

Machine-readable: JSON · Markdown · revisions · changes