@mega-yfue/eufy-sdk / VideoFrameHeader
Interface: VideoFrameHeader
Parsed fields of a CMD_VIDEO_FRAME 22-byte header.
Properties
flags
flags: number;Raw flag byte at 0x04.
height
height: number;Frame height (s16 LE @ 0x0c).
keyframe
keyframe: boolean;True when flag@0x04 bit0 is set: a keyframe carrying the ECIES envelope.
payloadLength
payloadLength: number;Length of the body THIS frame carries, from u32 LE @ 0x00 — not the length of the access unit it belongs to.
A station serves a unit larger than STATION_CHUNK_BYTES as several frames, and each one declares only its own share: measured on two models, a 70190-byte unit arrived as 64000 then 6190, and a 104451-byte keyframe as 64000 then 40451. A frame that carries a whole unit declares the whole unit, however large — a captured keyframe declares 0x3b323.
sequence
sequence: number;u16 LE @ 0x06 — repeated across every frame of ONE access unit, which is what makes it usable as part of a unit's identity. What it counts differs by model (one increments it per unit, another leaves it 0 for the whole stream), so it is never read as a count on its own.
timestamp
timestamp: number;Timestamp word (u32 LE @ 0x0e).
width
width: number;Frame width (s16 LE @ 0x0a).