SimpleFreeFieldHRIR

From Sofaconventions
Revision as of 09:32, 17 May 2013 by Isfmiho (talk | contribs)
Jump to navigation Jump to search

This conventions essentially defines the setup used in the ARI, LISTEN, FIU, CIPIC, and other similar HRTF databases. The measurements are done at a constant distance in free field with a single excitation source assuming an omnidirectional loudspeaker. Human listeners are considered and thus, the number of receivers is two. Azimuth and elevation angles are varied and the tilt of the head is not considered during the measurement. The measured HRTFs are represented as FIR filters, with a single HRTF set of a listener per file. The SOFA conventions SimpleFreeFieldHRIR defines such a setup. It requires: General attributes: SOFAConventions: SimpleFreeFieldHRIR, Datatype: FIR, RoomType: free field, other general attributes... Data: The number of receivers is two, thus, the size of Data.IR is [M 2 N]. Only a single sampling rate for the file is allowed, thus SamplingRate is a scalar. Source: Source is in the origin of the setup and consists of a single emitter. SourcePosition: (0 0 0), SourceUp: (0 0 1), SourceView: (1 0 0), SourceRotation, and EmitterPosition: (0 0 0).

  • Listener: The listener is in the measurement distance X (in meter) from the source, facing the source. ListenerPosition: (X 0 0), ListenerView: (0 0 0), ListenerUp: (X 0 1).
  • Receivers: Two receivers (=ears) on a head with radius H (in meter): ReceiverPosition: (0 -H 0; 0 +H 0).
  • The different azimuth and elevation angles of the measurement are described by the ListenerRotation as [M 3] matrix (in degrees). The coordinate type is “din9300”.

The corresponding CDL file is provided in the Conventions directory of the SOFA package.

File:SimpleFreeFieldHRTF.png

Name Default Flags Dimensions Comment
GLOBAL_Conventions SOFA rm
GLOBAL_Version 0.3 rm
GLOBAL_SOFAConventions SimpleFreeFieldHRIR rm
GLOBAL_SOFAConventionsVersion 0.1 m
GLOBAL_APIName * rm Insert the API Name here
GLOBAL_APIVersion * rm Insert the API Version here
GLOBAL_ApplicationName m
GLOBAL_ApplicationVersion m
GLOBAL_AuthorContact m
GLOBAL_LicenseNo license provided, ask the author for permission m
GLOBAL_Organization m
GLOBAL_DatabaseName m
GLOBAL_SubjectID m
GLOBAL_RoomType free field m
GLOBAL_DataType FIR m
GLOBAL_History
GLOBAL_Comment
GLOBAL_DatabaseTimeCreated * m will be updated when saving and not existing or empty
GLOBAL_DatabaseTimeModified * m will be updated each time when saving
I 1 rm I
I_LongName singleton dimension rm
R 2 rm R
R_LongName number of receivers rm
E 1 rm E
E_LongName number of emitters rm
N - m N
N_LongName time m
N_Units samples m
M - m M
M_LongName number of measurements rm
C 3 rm C
C_LongName coordinate triplet rm
ListenerPosition [1 0 0] m IC, MC
ListenerPosition_Type cartesian m
ListenerPosition_Unitsmeter m
ListenerUp [1.2 0 1] m IC, MC
ListenerUp_Type cartesian m
ListenerUp_Units meter m
ListenerView [0 0 0] m IC, MC
ListenerView_Type cartesian m
ListenerView_Units meter m
ListenerRotation [0 0 0] m IC, MC
ListenerRotation_Type din9300 m
ListenerRotation_Units degrees m
ReceiverPosition [0 -0.09 0; 0 0.09 0] m rCI, rCM
ReceiverPosition_Type cartesian m
ReceiverPosition_Units meter m
SourcePosition [0 0 0] m IC, MC
SourcePosition_Type cartesian m
SourcePosition_Units meter m
SourceUp [0 0 1] m IC, MC
SourceUp_Type cartesian m
SourceUp_Units meter m
SourceView [1 0 0] m IC, MC
SourceView_Type cartesian m
SourceView_Units meter m
EmitterPosition [0 0 0] m eCI, eCM
EmitterPosition_Type cartesian m
EmitterPosition_Units meter m
Data.IR [1 1] m mRn
Data.SamplingRate 48000 m I
Data.SamplingRate_Units hertz m