SOFA conventions

From Sofaconventions
Jump to: navigation, search

SOFA conventions specify the description of data and metadata for a particular kind of measured data.

This is important in order to meet the different requirements coming from different application fields, specified. For example, description of HRTFs, BRIRs, and DRIRs requires different metadata. Also, some applications may prefer to see the data stored in a different way. These conventions, once approved by the peer group are defined in SOFA conventions.

Specification of conventions are displayed in tables using the following legend:

  • Name: the name of the metadata
    • A colon: the metadata is an attribute
      • "GLOBAL:": the metadata is a global attribute
      • "X:Y": the metadata is an attribute Y of the variable X
    • No colon: the metadata is a variable
    • Data.X: the metadata is structured within the data
  • Default: default value for the metadata
    • An asterisk (*): special handling required, mentioned in the column Comment
  • Flags:
    • r: read-only, must be the default value
    • m: mandatory, must be saved in the file
  • Dimensions: dimensions of the metadata (see SOFA specifications for more explanations)
    • lower case: the variable size in that dimension determines the dimension size in the file
    • upper case: variable must be of that dimension (or one of these dimensions)

Standardized SOFA conventions

Standardized SOFA conventions are those which have been standardized by the AES. As with AES69-2015, we have:

  • GeneralFIR: General convention with FIR as DataType (no restrictions but DataType)
  • GeneralTF: General convention with TF as DataType (no restrictions but DataType)
  • SimpleFreeFieldHRIR: Free-field HRTFs stored as impulse responses, measured with an omnidirectional source for a single listener.

Note: Any modification in one of these conventions changes its status to "stable", i.e., not standardized anymore, unless the modification will be approved the AES.

Stable SOFA conventions

Stable SOFA conventions are those for which SOFA files are publicly available and can be read/modified by at least one publicly available software package.

  • GeneralFIRE: General convention with FIRE as DataType (no restrictions but DataType).
  • SimpleHeadphoneIR: Conventions to store headphone IRs recorded for each emitter and each ear, single listener and no directionality of emitter/receiver considered.
  • SimpleFreeFieldTF: as SimpleFreeFieldHRIR, but uses TF as DataType covering special needs coming from HRTF simulations.
  • SimpleFreeFieldSOS: as SimpleFreeFieldHRIR, but uses SOS as DataType (second-order sections) covering special needs coming from HRTF rendering.
  • SingleRoomDRIR: directional room impulse responses (DRIRs) measured with an arbitrary number of receivers (such as a microphone array) and an omnidirectional source in a single room.
  • MultiSpeakerBRIR: binaural room impulse responses (BRIRs) measured with an arbitrary number of emitters (such as a loudspeaker array).

These conventions, when used often and widely, can be proposed for standardization to the AES.

Proposed SOFA conventions

Proposed SOFA conventions are currently being discussed. We consider following rules for new SOFA conventions:

  • Data must exist (do not foresee the future)
  • Data can not be described by existing SOFA conventions
  • Relevant information about the data available

The following SOFA conventions are being discussed. Measured data exist but their description must be fixed in order to create publicly available SOFA files and corresponding software interfaces.

  • SimpleBRIR: Binaural room impulse responses measured with an omnidirectional source in a single reverberant space. Somebody wanted to have this, but the work stopped at the moment.

Ideas for future conventions

Here we list the suggestions and feedback from the peer group:

  • Include anthropometric data
  • Crosstalk cancellation filters
  • Include calibration data from the measurement
  • Include room pictures

Please use the "Discussion" function to discuss these topics.

Feedback and Contribution

If you would like to contribute or propose new SOFA conventions:

  • Send an e-mail to the mailing list. You don't have to be a member of the mailing list to send a message to the moderator.
  • Go to one of the SOFA pages of your interest and use the "Discussion" for your contribution.

We appreciate your feedback!