AV Storage Metadata

This is a binary format and should be stored next to any AV file output by the Sources or Sinks.

File Header

Offset Size Description Values
0x00 1 Version
  • 0x00 - Version 0
0x01 1 Type
  • 0x00 - Video(MJPEG)
  • 0x01 - Audio(PCM)
0x02 1 Hash Algorithm
  • 0x00 - SHA1
  • 0x01 - SHA224
  • 0x02 - SHA256
  • 0x03 - SHA384
  • 0x04 - SHA512
0x03 5 Reserved [1]  
0x08 8 File start time [2] [3]  
0x10 16 Reserved [1]  
0x20 32 Source Name [4]  
0x40 64 Type Headers  
0x80 ... Frame Information  

Type Header(Per format)

(type = 0x00)Motion JPEG Video

Offset Size Description Values
0x00 1 Version
  • 0x00 - Version 0
0x01 1 Reserved [1]  
0x02 2 Horizontal Size (Pixels) [3]  
0x04 2 Vertical Size (Pixels) [3]  
0x06 2 Frame Rate [3]  
0x08 56 Reserved [1]  

(type = 0x01)PCM Audio

Offset Size Description Values
0x00 1 Version
  • 0x00 - Version 0
0x01 1 Reserved [1]  
0x02 2 No. of Channels [3]  
0x04 4 Sample Rate [3]  
0x08 2 Bits per Sample [3]  
0x0A 54 Reserved [1]  

Footnotes

[1](1, 2, 3, 4, 5, 6) Reserved blocks should be zeroed when written and ignored when reading.
[2]Time is represented as UTC seconds since epoch.
[3](1, 2, 3, 4, 5, 6, 7) Multi-byte field are big-edian.
[4]Strings are ASCII and not neccessarily null terminated. Null padding should be used when the string is shorter than the field.