SimpleHeadphoneIR
Jump to navigation
Jump to search
Description
Conventions for IRs with a 1-to-1 correspondence between emitter and receiver. The main application for this convention is to store headphone IRs recorded for each emitter and each ear.
In conventions SimpleHeadphoneIR we store IRs of the system headphone-ear, i.e. headphone IRs. The most important properties of SimpleHeadphoneIR are:
- One-to-one correspondence between emitters and receivers: When measuring headphones, we usually have two headphones (=two emitters, E1 and E2) and we have two mics places in the ears (=two receivers, R1 and R2). In the first measurement we measure E1-->R1,R2; in the second one we measure: E2-->R1, R2. Usually, IRs E1-->R1 and E2-->R2 are the interesting IRs and are further processed. Note the correspondence of the emitter and receiver indices: This one-to-one correspondence of emitters and receivers is a strict property of SimpleHeadphoneIR. (If you also need the crosstalk IRs, i.e., E1-->R2 and E2-->R1, GeneralFIR is recommended).
- Single listener: in a single file, IRs of a single listener are stored. Note that multiple measurements of the same listener can still be stored in a single file. Note the correspondence to SimpleFreeFieldHRIR, in which the HRTFs are also restricted to those of a single listener. To this end:
- DatabaseName: represents the name of the database, ideally corresponding to an existing HRTF database
- ListenerShortName: represents the ID of the subject from the DatabaseName, ideally corresponding to the same subject on the corresponding HRTF database
- Multiple measurements (of the single listener): multiple measurements are described as repeated measurements of the same listener. The repetition might have various reasons:
- No modifications at all, i.e., simple re-measuring the IRs. It that case, the measurement time/date has changed, which will be captured by MeasurementDate for each M.
- Position of the headphones change: It that case, the measurement time/date and the source/emitter position/orientation have changed, which will be captured by the corresponding variables for each M.
- The headphones might change, e.g. by measuring IRs of different headphones. In that case, the metadata describing the headphones are a function of M and are represented as string variables. Note that these metadata, when being not M-dependent are represented as mandatory global attributes. At the moment, we consider the following metadata as being potentially a function of M:
- SourceManufacturer: name of the headphones manufacturer (global attribute: mandatory; M-dependent variable: optional)
- SourceModel: name of the headphone model. Must uniquely describe the headphones of a manufacturer (global attribute: mandatory; M-dependent variable: optional).
- SourceURI: URI to the specs of the headphones (global attribute: mandatory; M-dependent variable: optional).
- ReceiverDescription: stores narrative information about the microphones (global attribute: mandatory; M-dependent variable: optional).
- EmitterDescription: stores narrative information about the headphones emitter (global attribute: mandatory; M-dependent variable: optional).
Version 1.0
This version uses SOFA 2.1 which reflects the AES69-2022 standard.
Name | Default | Flags | Dimensions | Type | Comment |
---|---|---|---|---|---|
GLOBAL:Conventions | SOFA | rm | attribute | ||
GLOBAL:Version | 2.1 | rm | attribute | ||
GLOBAL:SOFAConventions | SimpleHeadphoneIR | rm | attribute | Conventions for IRs with a 1-to-1 correspondence between emitter and receiver. The main application for this convention is to store headphone IRs recorded for each emitter and each ear. | |
GLOBAL:SOFAConventionsVersion | 1.0 | rm | attribute | ||
GLOBAL:APIName | rm | attribute | |||
GLOBAL:APIVersion | rm | attribute | |||
GLOBAL:ApplicationName | attribute | ||||
GLOBAL:ApplicationVersion | attribute | ||||
GLOBAL:AuthorContact | m | attribute | |||
GLOBAL:Comment | attribute | ||||
GLOBAL:DataType | FIR | rm | attribute | We will store IRs here | |
GLOBAL:History | attribute | ||||
GLOBAL:License | No license provided, ask the author for permission | m | attribute | ||
GLOBAL:Organization | m | attribute | |||
GLOBAL:References | attribute | ||||
GLOBAL:RoomType | free field | m | attribute | Room type is not relevant here | |
GLOBAL:Origin | attribute | ||||
GLOBAL:DateCreated | m | attribute | |||
GLOBAL:DateModified | m | attribute | |||
GLOBAL:Title | m | attribute | |||
ListenerPosition | [0 0 0] | m | IC, MC | double | |
ListenerPosition:Type | cartesian | m | attribute | ||
ListenerPosition:Units | metre | m | attribute | ||
ReceiverPosition | [0 0.09 0; 0 -0.09 0] | m | rCI, rCM | double | |
ReceiverPosition:Type | cartesian | m | attribute | ||
ReceiverPosition:Units | metre | m | attribute | ||
SourcePosition | [0 0 0] | m | IC, MC | double | Default: Headphones are located at the position of the listener |
SourcePosition:Type | spherical | m | attribute | ||
SourcePosition:Units | degree, degree, metre | m | attribute | ||
EmitterPosition | [0 0.09 0; 0 -0.09 0] | m | eCI, eCM | double | Default: Reflects the correspondence of each emitter to each receiver |
EmitterPosition:Type | cartesian | m | attribute | ||
EmitterPosition:Units | metre | m | attribute | ||
Data.IR | [0 0] | m | mRn | double | |
Data.SamplingRate | 48000 | m | I, M | double | |
Data.SamplingRate:Units | hertz | m | attribute | ||
Data.Delay | [0 0] | m | IR, MR | double | |
GLOBAL:DatabaseName | m | attribute | Correspondence to a database | ||
GLOBAL:ListenerShortName | m | attribute | Correspondence to a subject from the database | ||
GLOBAL:ListenerDescription | attribute | Narrative description of the listener (or mannequin) | |||
GLOBAL:SourceDescription | attribute | Narrative description of the headphones | |||
GLOBAL:SourceManufacturer | attribute | Name of the headphones manufacturer | |||
SourceManufacturer | {''} | MS | string | Optional M-dependent version of the attribute SourceManufucturer | |
GLOBAL:SourceModel | attribute | Name of the headphone model. Must uniquely describe the headphones of the manufacturer | |||
SourceModel | {''} | MS | string | Optional M-dependent version of the attribute SourceModel | |
GLOBAL:SourceURI | attribute | URI of the headphone specifications | |||
GLOBAL:ReceiverDescription | m | attribute | Narrative description of the microphones | ||
ReceiverDescriptions | {''} | MS | string | R-dependent version of the attribute ReceiverDescription | |
GLOBAL:EmitterDescription | m | attribute | Narrative description of the headphone drivers | ||
EmitterDescriptions | {''} | MS | string | E-dependent version of the attribute EmitterDescription | |
MeasurementDate | 0 | M | double | Optional M-dependent date and time of the measurement |
Old, deprecated versions
For historical reasons the older versions of the SimpleHeadphoneIR (or HeadphoneIR) Convention are listed below.
Version 0.2
This version uses SOFA 1.0 which reflects the AES69-2015 standard.
Name | Default | Flags | Dimensions | Type | Comment |
---|---|---|---|---|---|
GLOBAL:Conventions | SOFA | rm | attribute | ||
GLOBAL:Version | 1.0 | rm | attribute | ||
GLOBAL:SOFAConventions | SimpleHeadphoneIR | rm | attribute | Conventions for IRs with a 1-to-1 correspondence between emitter and receiver. The main application for this convention is to store headphone IRs recorded for each emitter and each ear. | |
GLOBAL:SOFAConventionsVersion | 0.2 | rm | attribute | ||
GLOBAL:APIName | rm | attribute | |||
GLOBAL:APIVersion | rm | attribute | |||
GLOBAL:ApplicationName | attribute | ||||
GLOBAL:ApplicationVersion | attribute | ||||
GLOBAL:AuthorContact | m | attribute | |||
GLOBAL:Comment | m | attribute | |||
GLOBAL:DataType | FIR | rm | attribute | We will store IRs here | |
GLOBAL:History | attribute | ||||
GLOBAL:License | No license provided, ask the author for permission | m | attribute | ||
GLOBAL:Organization | m | attribute | |||
GLOBAL:References | attribute | ||||
GLOBAL:RoomType | free field | m | attribute | Room type is not relevant here | |
GLOBAL:Origin | attribute | ||||
GLOBAL:DateCreated | m | attribute | |||
GLOBAL:DateModified | m | attribute | |||
GLOBAL:Title | m | attribute | |||
ListenerPosition | [0 0 0] | m | IC, MC | double | |
ListenerPosition:Type | cartesian | m | attribute | ||
ListenerPosition:Units | metre | m | attribute | ||
ReceiverPosition | [0 0.09 0; 0 -0.09 0] | m | rCI, rCM | double | |
ReceiverPosition:Type | cartesian | m | attribute | ||
ReceiverPosition:Units | metre | m | attribute | ||
SourcePosition | [0 0 0] | m | IC, MC | double | Default: Headphones are located at the position of the listener |
SourcePosition:Type | spherical | m | attribute | ||
SourcePosition:Units | degree, degree, metre | m | attribute | ||
EmitterPosition | [0 0.09 0; 0 -0.09 0] | m | eCI, eCM | double | Default: Reflects the correspondence of each emitter to each receiver |
EmitterPosition:Type | cartesian | m | attribute | ||
EmitterPosition:Units | metre | m | attribute | ||
Data.IR | [0 0] | m | mRn | double | |
Data.SamplingRate | 48000 | m | I | double | |
Data.SamplingRate:Units | hertz | m | attribute | ||
Data.Delay | [0 0] | m | IR, MR | double | |
GLOBAL:DatabaseName | m | attribute | Correspondence to a database | ||
GLOBAL:ListenerShortName | m | attribute | Correspondence to a subject from the database | ||
GLOBAL:ListenerDescription | m | attribute | Narrative description of the listener (or mannequin) | ||
GLOBAL:SourceDescription | m | attribute | Narrative description of the headphones | ||
GLOBAL:SourceManufacturer | m | attribute | Name of the headphones manufacturer | ||
SourceManufacturer | {''} | MS | string | Optional M-dependent version of the attribute SourceManufucturer | |
GLOBAL:SourceModel | m | attribute | Name of the headphone model. Must uniquely describe the headphones of the manufacturer | ||
SourceModel | {''} | MS | string | Optional M-dependent version of the attribute SourceModel | |
GLOBAL:SourceURI | m | attribute | URI of the headphone specifications | ||
GLOBAL:ReceiverDescription | m | attribute | Narrative description of the microphones | ||
ReceiverDescription | {''} | MS | string | Optional M-dependent version of the attribute ReceiverDescription | |
GLOBAL:EmitterDescription | m | attribute | Narrative description of the headphone drivers | ||
EmitterDescription | {''} | MS | string | Optional M-dependent version of the attribute EmitterDescription | |
MeasurementDate | 0 | M | double | Optional M-dependent date and time of the measurement |
Version 0.1, previously proposed as HeadphoneIR (deprecated)
Name | Default | Flags | Dimensions | Type | Comment |
---|---|---|---|---|---|
GLOBAL:Conventions | SOFA | rm | attribute | ||
GLOBAL:Version | 0.5 | rm | attribute | ||
GLOBAL:SOFAConventions | SimpleHeadphoneIR | rm | attribute | Conventions for IRs with a 1-to-1 correspondence between emitter and receiver. The main application for this convention is to store headphone IRs recorded for each emitter and each ear. | |
GLOBAL:SOFAConventionsVersion | 0.1 | rm | attribute | ||
GLOBAL:APIName | rm | attribute | |||
GLOBAL:APIVersion | rm | attribute | |||
GLOBAL:ApplicationName | m | attribute | |||
GLOBAL:ApplicationVersion | m | attribute | |||
GLOBAL:AuthorContact | m | attribute | |||
GLOBAL:Comment | m | attribute | |||
GLOBAL:DataType | FIR | rm | attribute | We will store IRs here | |
GLOBAL:History | m | attribute | |||
GLOBAL:License | No license provided, ask the author for permission | m | attribute | ||
GLOBAL:Organization | m | attribute | |||
GLOBAL:References | m | attribute | |||
GLOBAL:RoomType | free field | m | attribute | Room type is not relevant here | |
GLOBAL:Source | m | attribute | |||
GLOBAL:TimeCreated | m | attribute | |||
GLOBAL:TimeModified | m | attribute | |||
GLOBAL:Title | m | attribute | |||
ListenerPosition | [0 0 0] | m | IC, MC | double | |
ListenerPosition:Type | cartesian | m | attribute | ||
ListenerPosition:Units | meter | m | attribute | ||
ReceiverPosition | [0 -0.09 0; 0 0.09 0] | m | rCI, rCM | double | |
ReceiverPosition:Type | cartesian | m | attribute | ||
ReceiverPosition:Units | meter | m | attribute | ||
SourcePosition | [0 0 0] | m | IC, MC | double | Headphones are located at the position of the listener |
SourcePosition:Type | spherical | m | attribute | ||
SourcePosition:Units | degree, degree, meter | m | attribute | ||
EmitterPosition | [0 -0.09 0; 0 0.09 0] | m | eCI, eCM | double | Reflects the correspondence of each emitter to each receiver |
EmitterPosition:Type | cartesian | m | attribute | ||
EmitterPosition:Units | meter | m | attribute | ||
GLOBAL:DatabaseName | m | attribute | to which HRTF database these data correspond? | ||
GLOBAL:SubjectID | m | attribute | to which subject from the database these data correspond? | ||
GLOBAL:SourceProducer | attribute | who produced the headphones? | |||
GLOBAL:SourceModel | attribute | how is this headphone called? | |||
GLOBAL:ProcessingState | attribute | how are the IRs processed (raw, equalized, etc)? | |||
GLOBAL:ListenerDescription | attribute | describe the listener here (human, dummy head, etc) | |||
GLOBAL:SourceDescription | attribute | describe the headphones here | |||
GLOBAL:ReceiverDescription | attribute | describe the microphones here | |||
GLOBAL:EmitterDescription | attribute | describe the drivers of the headphones here | |||
Data.IR | [1 1] | m | mRn | double | |
Data.SamplingRate | 48000 | m | I | double | |
Data.SamplingRate:Units | hertz | m | attribute | ||
Data.Delay | [0 0] | m | IR, MR | double |
Proposed version 0.1
Name | Default | Flags | Dimensions | Type | Comment |
---|---|---|---|---|---|
GLOBAL:Conventions | SOFA | rm | attribute | ||
GLOBAL:Version | 0.6 | rm | attribute | ||
GLOBAL:SOFAConventions | SimpleHeadphoneIR | rm | attribute | Conventions for IRs with a 1-to-1 correspondence between emitter and receiver. The main application for this convention is to store headphone IRs recorded for each emitter and each ear. | |
GLOBAL:SOFAConventionsVersion | 0.1 | rm | attribute | ||
GLOBAL:APIName | rm | attribute | |||
GLOBAL:APIVersion | rm | attribute | |||
GLOBAL:ApplicationName | attribute | ||||
GLOBAL:ApplicationVersion | attribute | ||||
GLOBAL:AuthorContact | m | attribute | |||
GLOBAL:Comment | m | attribute | |||
GLOBAL:DataType | FIR | rm | attribute | We will store IRs here | |
GLOBAL:History | attribute | ||||
GLOBAL:License | No license provided, ask the author for permission | m | attribute | ||
GLOBAL:Organization | m | attribute | |||
GLOBAL:References | attribute | ||||
GLOBAL:RoomType | free field | m | attribute | Room type is not relevant here | |
GLOBAL:Origin | attribute | ||||
GLOBAL:DateCreated | m | attribute | |||
GLOBAL:DateModified | m | attribute | |||
GLOBAL:Title | m | attribute | |||
ListenerPosition | [0 0 0] | m | IC, MC | double | |
ListenerPosition:Type | cartesian | m | attribute | ||
ListenerPosition:Units | meter | m | attribute | ||
ReceiverPosition | [0 0.09 0; 0 -0.09 0] | m | rCI, rCM | double | |
ReceiverPosition:Type | cartesian | m | attribute | ||
ReceiverPosition:Units | meter | m | attribute | ||
SourcePosition | [0 0 0] | m | IC, MC | double | Default: Headphones are located at the position of the listener |
SourcePosition:Type | spherical | m | attribute | ||
SourcePosition:Units | degree, degree, meter | m | attribute | ||
EmitterPosition | [0 0.09 0; 0 -0.09 0] | m | eCI, eCM | double | Default: Reflects the correspondence of each emitter to each receiver |
EmitterPosition:Type | cartesian | m | attribute | ||
EmitterPosition:Units | meter | m | attribute | ||
Data.IR | [1 1] | m | mRn | double | |
Data.SamplingRate | 48000 | m | I | double | |
Data.SamplingRate:Units | hertz | m | attribute | ||
Data.Delay | [0 0] | m | IR, MR | double | |
GLOBAL:DatabaseName | m | attribute | Correspondence to a database | ||
GLOBAL:ListenerShortName | m | attribute | Correspondence to a subject from the database | ||
GLOBAL:ListenerDescription | m | attribute | Narrative description of the listener (or mannequin) | ||
GLOBAL:SourceDescription | m | attribute | Narrative description of the headphones | ||
GLOBAL:SourceManufacturer | m | attribute | Name of the headphones manufacturer | ||
SourceManufacturer | {''} | MS | string | Optional M-dependent version of the attribute SourceManufucturer | |
GLOBAL:SourceModel | m | attribute | Name of the headphone model. Must uniquely describe the headphones of the manufacturer | ||
SourceModel | {''} | MS | string | Optional M-dependent version of the attribute SourceModel | |
GLOBAL:SourceURI | m | attribute | URI of the headphone specifications | ||
GLOBAL:ReceiverDescription | m | attribute | Narrative description of the microphones | ||
ReceiverDescription | {''} | MS | string | Optional M-dependent version of the attribute ReceiverDescription | |
GLOBAL:EmitterDescription | m | attribute | Narrative description of the headphone drivers | ||
EmitterDescription | {''} | MS | string | Optional M-dependent version of the attribute EmitterDescription | |
MeasurementDate | 0 | M | double | Optional M-dependent date and time of the measurement |