Draft:SigMF

SigMF is a standard file format for storing and organizing digitized radio frequency (RF) signals and corresponding metadata, supporting time series real or complex-valued signals. A single SigMF "Recording" consists of two files: 1) a binary file containing only the time series digitized samples, and 2) a metadata file describing the contents and capture details of those samples. The metadata is encapsulated in a JSON file with a  extension, situated alongside the binary data stored in a file with a   extension. SigMF "Extensions" enable the addition of hierarchical data to a complete dataset, a capture, or a specific region of the recording. Common applications of SigMF recordings include capturing wireless communications signals, radar, GNSS and electronic warfare.

History
Before the standardization of SigMF, time series data representing radio signals were commonly stored in flat binary files with external descriptors. Occasionally, researchers used Hierarchical Data Format (HDF5) containers, but these containers lack specificity to any data type. The VITA Radio Transport Standard a.k.a. VITA 49  was at times employed for RF data storage, although it is primarily designed as a transport format for RF signals rather than for data storage purposes. Other proprietary formats were created by industry either to hold specific metadata or encode signals into proprietary containers.

In 2016 at the annual GNU Radio conference, a workshop focused on how a better open source container for RF signals could be constructed and maintained. In the following year the initial release of SigMF was created to provide a portable & annotated container for radio signals. In June, 2021 the SigMF specifications and open source software was moved from GNU Radio's GitHub repository to a new SigMF-specific GitHub organization and repository; the project is no longer a GNU Radio specific effort. The SigMF standard has since been incorporated into numerous pieces of software and academic research.