VITA 49 Packet Format
Versa module eurocard (VME) bus international trade association (VITA) 49 file consists of signal data streams and associated metadata in structured packet format. The VITA radio transport (VRT) standard, also known as the VITA 49 protocol, defines a standard format for sending and receiving digitized messages between radio frequency (RF) systems and related equipment. The VRT is a packet based protocol to convey digitized signal data and metadata (or context data) pertaining to different reference points within a radio receiver. The metadata includes radio front-end parameters, such as RF center frequency, bandwidth, intermediate frequency (IF), center frequency, sampling rate, gain, and location of the satellite.
Packet Format
A packet in a VITA 49 file starts with a packet prologue consisting of a mandatory packet header followed by a list of fields as determined by the packet type present in the packet header. The packet header includes packet type, packet size and additional information fields interpreted based on packet type. These additional information fields indicate how to interpret the rest of the packet prologue and the packet contents. VITA 49 specification defines eight different packet formats. The packet header is as shown in the following figure.

The table below shows the eight different packet formats along with the data information they carry.

Signal Data Packet
Signal data packets convey digitized IF and RF signals. Signal data packet is further divided into signal time data packet or signal spectral data packet. Signal time data packet represents the signal in time-domain as a sequence of samples sampled at a constant rate. Signal spectral data is a sequence of samples describing the signal frequency or spatial-domain.
Signal Time Data Packet
Signal time data packets convey digitized IF and RF signals. Signal time data packets encapsulates variable-sized blocks of in-phase quadrature (IQ) data, along with a 32-bit trailer to convey additional information about the state of the receiver at the time the samples were obtained. For example, if the system was being over-driven this would be reported by an indicator in the trailer. Signal time data may be either real or complex samples and can also be magnitude or power representations of a signal for spectral data. The signal data packets in VITA 49 are organized as signal data packet streams. A signal data packet stream is identified by a stream identifier (SID) and is a sequence of signal data packets of same signal data packet class. Signal data packet class specifies the type of signal data and the packet content structure. Multiple streams can be formed from the same class, each stream has its own unique SID.
The signal data packet structure is as shown in the following figure.

The integer timestamp field (ITF) is a 32-bit number which specifies the reference point time where the data sample is collected with a resolution of 1 second. It may be used to convey coordinated universal time (UTC), global positioning system (GPS) time, or some user-specified timecode.
The fractional timestamp field (FTF) is a 64-bit integer that represents the reference point time with a better resolution than ITF. FTFs are classified into three types: sample-count, real-time, and free-running count timestamps.
The sample-count and real-time timestamps are used to add resolution to the ITF, allowing it to cover a time span of years with precision of sample period or one picosecond.
The free-running count timestamp provides an incrementing sample count from starting time and is not related to the ITF.
Context Packet
Context packets convey the spatial information and the information of the receiver settings. The information is of variable size, depending on the number of fields used, out of a total of 25 fields. The fields used in a given packet are communicated by the 32-bit context indicator field which precedes the context fields.
Context packets are sent whenever there is a change in receiver settings or spatial information. These packets are typically transmitted at some periodic interval to ensure that a VITA 49 receiver can recover from any miscommunication or loss of communication. Such periodic updates typically involve retransmitting all fields required by the application.
The context packet structure is as shown in the following figure.

The bits in the context indicator field (CIF) indicates which of the optional context fields are present in the context packet corresponding to each field.
The CIF definitions are shown in the following figure.
