GeneralFIR: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
No edit summary |
|||
| (8 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
__TOC__ |
|||
== Description == |
|||
This conventions defines only that FIR is the DataType. All other metadata follow the general SOFA specifications. |
This conventions defines only that FIR is the DataType. All other metadata follow the general SOFA specifications. |
||
This conventions can be used to save data which are too general to store in more specific conventions. Examples: |
This conventions can be used to save data which are too general to store in more specific conventions. Examples: |
||
* the exact measurement setup of an HRTF set, |
* the exact measurement setup of an HRTF set, |
||
* raw data of headphone measurements |
* raw data of headphone measurements. |
||
== Version 1.0 == |
|||
{| border="1" |
{| border="1" |
||
!Name |
!Name |
||
!Default |
!Default |
||
![[SOFA_conventions#AnchorFlags|Flags]] |
|||
!Flags |
|||
!Dimensions |
![[SOFA_conventions#AnchorDimensions|Dimensions]] |
||
!Type |
!Type |
||
!Comment |
!Comment |
||
| Line 15: | Line 18: | ||
|GLOBAL:Conventions||<nowiki>SOFA</nowiki>||rm||||attribute|| |
|GLOBAL:Conventions||<nowiki>SOFA</nowiki>||rm||||attribute|| |
||
|- |
|- |
||
|GLOBAL:Version||<nowiki> |
|GLOBAL:Version||<nowiki>2.1</nowiki>||rm||||attribute|| |
||
|- |
|- |
||
|GLOBAL:SOFAConventions||<nowiki>GeneralFIR</nowiki>||rm||||attribute||This conventions stores IRs for general purposes, i.e., only the mandatory, SOFA general metadata are pre-defined |
|GLOBAL:SOFAConventions||<nowiki>GeneralFIR</nowiki>||rm||||attribute||This conventions stores IRs for general purposes, i.e., only the mandatory, SOFA general metadata are pre-defined |
||
| Line 59: | Line 62: | ||
|ListenerPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
|ListenerPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
||
|- |
|- |
||
|ReceiverPosition||<nowiki>[0 0 |
|ReceiverPosition||<nowiki>[0 0 0]</nowiki>||m||IC, RC, RCM||double|| |
||
|- |
|- |
||
|ReceiverPosition:Type||<nowiki>cartesian</nowiki>||m||||attribute|| |
|ReceiverPosition:Type||<nowiki>cartesian</nowiki>||m||||attribute|| |
||
| Line 77: | Line 80: | ||
|EmitterPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
|EmitterPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
||
|- |
|- |
||
|Data.IR||<nowiki> |
|Data.IR||<nowiki>0</nowiki>||m||mrn||double||Impulse responses |
||
|- |
|- |
||
|Data.SamplingRate||<nowiki>48000</nowiki>||m||I||double||Sampling rate of the samples in Data.IR and Data.Delay |
|Data.SamplingRate||<nowiki>48000</nowiki>||m||I, M||double||Sampling rate of the samples in Data.IR and Data.Delay |
||
|- |
|- |
||
|Data.SamplingRate:Units||<nowiki>hertz</nowiki>||m||||attribute||Unit of the sampling rate |
|Data.SamplingRate:Units||<nowiki>hertz</nowiki>||m||||attribute||Unit of the sampling rate |
||
|- |
|- |
||
|Data.Delay||<nowiki> |
|Data.Delay||<nowiki>0</nowiki>||m||IR, MR||double||Additional delay of each IR (in samples) |
||
|- |
|||
|ListenerView||<nowiki>[1 0 0]</nowiki>||||IC, MC||double|| |
|||
|- |
|||
|ListenerView:Type||<nowiki>cartesian</nowiki>||||||attribute|| |
|||
|- |
|||
|ListenerView:Units||<nowiki>metre</nowiki>||||||attribute|| |
|||
|} |
|} |
||
== Version 0.9 == |
|||
Version 0.9 is deprecated. Please use Conventions version 1.0 instead. |
|||
Legend: |
|||
{| border="1" |
|||
* '''Name''': the name of the metadata |
|||
!Name |
|||
** A colon: the metadata is an attribute |
|||
!Default |
|||
*** "GLOBAL:": the metadata is a global attribute |
|||
![[SOFA_conventions#AnchorFlags|Flags]] |
|||
*** "X:Y": the metadata is an attribute Y of the variable X |
|||
![[SOFA_conventions#AnchorDimensions|Dimensions]] |
|||
** No colon: the metadata is a variable |
|||
!Type |
|||
** Data.X: the metadata is structured within the data |
|||
!Comment |
|||
* '''Default''': default value for the metadata |
|||
|- |
|||
** An asterisk (*): special handling required, mentioned in the column Comment |
|||
|GLOBAL:Conventions||<nowiki>SOFA</nowiki>||rm||||attribute|| |
|||
* '''Flags''': |
|||
|- |
|||
** r: read-only, must be the default value |
|||
|GLOBAL:Version||<nowiki>1.0</nowiki>||rm||||attribute|| |
|||
** m: mandatory, must be saved in the file |
|||
|- |
|||
* '''Dimensions''': dimensions of the metadata (see [[SOFA specifications]] for more explanations) |
|||
|GLOBAL:SOFAConventions||<nowiki>GeneralFIR</nowiki>||rm||||attribute||This conventions stores IRs for general purposes, i.e., only the mandatory, SOFA general metadata are pre-defined |
|||
** 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) |
|||
|GLOBAL:SOFAConventionsVersion||<nowiki>0.9</nowiki>||rm||||attribute|| |
|||
|- |
|||
|GLOBAL:APIName||<nowiki></nowiki>||rm||||attribute|| |
|||
|- |
|||
|GLOBAL:APIVersion||<nowiki></nowiki>||rm||||attribute|| |
|||
|- |
|||
|GLOBAL:ApplicationName||<nowiki></nowiki>||||||attribute|| |
|||
|- |
|||
|GLOBAL:ApplicationVersion||<nowiki></nowiki>||||||attribute|| |
|||
|- |
|||
|GLOBAL:AuthorContact||<nowiki></nowiki>||m||||attribute|| |
|||
|- |
|||
|GLOBAL:Comment||<nowiki></nowiki>||m||||attribute|| |
|||
|- |
|||
|GLOBAL:DataType||<nowiki>FIR</nowiki>||rm||||attribute||We store IRs here |
|||
|- |
|||
|GLOBAL:History||<nowiki></nowiki>||||||attribute|| |
|||
|- |
|||
|GLOBAL:License||<nowiki>No license provided, ask the author for permission</nowiki>||m||||attribute|| |
|||
|- |
|||
|GLOBAL:Organization||<nowiki></nowiki>||m||||attribute|| |
|||
|- |
|||
|GLOBAL:References||<nowiki></nowiki>||||||attribute|| |
|||
|- |
|||
|GLOBAL:RoomType||<nowiki>free field</nowiki>||m||||attribute||The room information can be arbitrary |
|||
|- |
|||
|GLOBAL:Origin||<nowiki></nowiki>||||||attribute|| |
|||
|- |
|||
|GLOBAL:DateCreated||<nowiki></nowiki>||m||||attribute|| |
|||
|- |
|||
|GLOBAL:DateModified||<nowiki></nowiki>||m||||attribute|| |
|||
|- |
|||
|GLOBAL:Title||<nowiki></nowiki>||m||||attribute|| |
|||
|- |
|||
|ListenerPosition||<nowiki>[0 0 0] </nowiki>||m||IC, MC||double|| |
|||
|- |
|||
|ListenerPosition:Type||<nowiki>cartesian</nowiki>||m||||attribute|| |
|||
|- |
|||
|ListenerPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
|||
|- |
|||
|ReceiverPosition||<nowiki>[0 0 0]</nowiki>||m||rCI, rCM||double|| |
|||
|- |
|||
|ReceiverPosition:Type||<nowiki>cartesian</nowiki>||m||||attribute|| |
|||
|- |
|||
|ReceiverPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
|||
|- |
|||
|SourcePosition||<nowiki>[0 0 1]</nowiki>||m||IC, MC||double||In order to store different directions/positions around the listener, SourcePosition is assumed to vary |
|||
|- |
|||
|SourcePosition:Type||<nowiki>spherical</nowiki>||m||||attribute|| |
|||
|- |
|||
|SourcePosition:Units||<nowiki>degree, degree, metre</nowiki>||m||||attribute|| |
|||
|- |
|||
|EmitterPosition||<nowiki>[0 0 0]</nowiki>||m||eCI, eCM||double|| |
|||
|- |
|||
|EmitterPosition:Type||<nowiki>cartesian</nowiki>||m||||attribute|| |
|||
|- |
|||
|EmitterPosition:Units||<nowiki>metre</nowiki>||m||||attribute|| |
|||
|- |
|||
|Data.IR||<nowiki>0</nowiki>||m||mRn||double||Impulse responses |
|||
|- |
|||
|Data.SamplingRate||<nowiki>48000</nowiki>||m||I||double||Sampling rate of the samples in Data.IR and Data.Delay |
|||
|- |
|||
|Data.SamplingRate:Units||<nowiki>hertz</nowiki>||m||||attribute||Unit of the sampling rate |
|||
|- |
|||
|Data.Delay||<nowiki>0</nowiki>||m||IR, MR||double||Additional delay of each IR (in samples) |
|||
|- |
|||
|ListenerView||<nowiki>[1 0 0]</nowiki>||||IC, MC||double|| |
|||
|- |
|||
|ListenerView:Type||<nowiki>cartesian</nowiki>||||||attribute|| |
|||
|- |
|||
|ListenerView:Units||<nowiki>metre</nowiki>||||||attribute|| |
|||
|} |
|||
Latest revision as of 11:13, 21 October 2022
Description
This conventions defines only that FIR is the DataType. All other metadata follow the general SOFA specifications.
This conventions can be used to save data which are too general to store in more specific conventions. Examples:
- the exact measurement setup of an HRTF set,
- raw data of headphone measurements.
Version 1.0
| Name | Default | Flags | Dimensions | Type | Comment |
|---|---|---|---|---|---|
| GLOBAL:Conventions | SOFA | rm | attribute | ||
| GLOBAL:Version | 2.1 | rm | attribute | ||
| GLOBAL:SOFAConventions | GeneralFIR | rm | attribute | This conventions stores IRs for general purposes, i.e., only the mandatory, SOFA general metadata are pre-defined | |
| 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 | m | attribute | |||
| GLOBAL:DataType | FIR | rm | attribute | We 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 | The room information can be arbitrary | |
| 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 0] | m | IC, RC, RCM | double | |
| ReceiverPosition:Type | cartesian | m | attribute | ||
| ReceiverPosition:Units | metre | m | attribute | ||
| SourcePosition | [0 0 1] | m | IC, MC | double | In order to store different directions/positions around the listener, SourcePosition is assumed to vary |
| SourcePosition:Type | spherical | m | attribute | ||
| SourcePosition:Units | degree, degree, metre | m | attribute | ||
| EmitterPosition | [0 0 0] | m | eCI, eCM | double | |
| EmitterPosition:Type | cartesian | m | attribute | ||
| EmitterPosition:Units | metre | m | attribute | ||
| Data.IR | 0 | m | mrn | double | Impulse responses |
| Data.SamplingRate | 48000 | m | I, M | double | Sampling rate of the samples in Data.IR and Data.Delay |
| Data.SamplingRate:Units | hertz | m | attribute | Unit of the sampling rate | |
| Data.Delay | 0 | m | IR, MR | double | Additional delay of each IR (in samples) |
| ListenerView | [1 0 0] | IC, MC | double | ||
| ListenerView:Type | cartesian | attribute | |||
| ListenerView:Units | metre | attribute |
Version 0.9
Version 0.9 is deprecated. Please use Conventions version 1.0 instead.
| Name | Default | Flags | Dimensions | Type | Comment |
|---|---|---|---|---|---|
| GLOBAL:Conventions | SOFA | rm | attribute | ||
| GLOBAL:Version | 1.0 | rm | attribute | ||
| GLOBAL:SOFAConventions | GeneralFIR | rm | attribute | This conventions stores IRs for general purposes, i.e., only the mandatory, SOFA general metadata are pre-defined | |
| GLOBAL:SOFAConventionsVersion | 0.9 | 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 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 | The room information can be arbitrary | |
| 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 0] | m | rCI, rCM | double | |
| ReceiverPosition:Type | cartesian | m | attribute | ||
| ReceiverPosition:Units | metre | m | attribute | ||
| SourcePosition | [0 0 1] | m | IC, MC | double | In order to store different directions/positions around the listener, SourcePosition is assumed to vary |
| SourcePosition:Type | spherical | m | attribute | ||
| SourcePosition:Units | degree, degree, metre | m | attribute | ||
| EmitterPosition | [0 0 0] | m | eCI, eCM | double | |
| EmitterPosition:Type | cartesian | m | attribute | ||
| EmitterPosition:Units | metre | m | attribute | ||
| Data.IR | 0 | m | mRn | double | Impulse responses |
| Data.SamplingRate | 48000 | m | I | double | Sampling rate of the samples in Data.IR and Data.Delay |
| Data.SamplingRate:Units | hertz | m | attribute | Unit of the sampling rate | |
| Data.Delay | 0 | m | IR, MR | double | Additional delay of each IR (in samples) |
| ListenerView | [1 0 0] | IC, MC | double | ||
| ListenerView:Type | cartesian | attribute | |||
| ListenerView:Units | metre | attribute |