Skip to content

Commit

Permalink
fix mentions of outdated AES69-2020
Browse files Browse the repository at this point in the history
  • Loading branch information
f-brinkmann committed Sep 27, 2023
1 parent 7af1014 commit ff4660a
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 19 deletions.
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@ applications that read or write SOFA data. Test data violating the conventions
are contained in *data*. This data is intended for testing if an application
correctly verifies data against AES69 when reading it.

**Conventions are implemented according to AES69-2022
**Conventions are implemented according to AES69
(SOFA conventions version 2.1)**

AES69-2022: *AES standard for file exchange - Spatial acoustic data file
format*, Audio Engineering Society, Inc., New York, NY, USA.

Updating the conventions and data requires the sofar package available from
<https://github.com/pyfar/sofar> and can be installed via

Expand All @@ -29,9 +32,6 @@ To update the conventions from <https://sofaconventions.org/conventions>:
- merge to master branch
- update *sofa_conventions* submodule in sofar

AES69-2022: *AES standard for file exchange - Spatial acoustic data file
format*, Audio Engineering Society, Inc., New York, NY, USA.

## 1. Conventions

This folder contains the official SOFA conventions as json and csv files. SOFA
Expand Down Expand Up @@ -95,7 +95,7 @@ and the verification rules. The verification requires the following steps:
7. All verification rules from rules.json must be checked (see below)

The json files inside this folder contain rules for verifying SOFA files.
The rules were manually extracted from the SOFA Standard AES69-2020. Note that
The rules were manually extracted from the SOFA Standard AES69. Note that
the json files are written with `write_verification_rules.py` where additional
comments on the rules can be found.

Expand Down
28 changes: 14 additions & 14 deletions write_verification_rules.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,13 @@
coords_min = ["cartesian", "spherical"]
coords_full = coords_min + ["spherical harmonics"]

# definition of units acordings to AES69-2020 Table 7
# definition of units acordings to AES69 Table 7
units_min = ["metre", "degree, degree, metre"]
units_full = units_min + [units_min[1]]

# allowed alternative versions of units
# NOTE: AES69 allows multi-unit strings to be separated by comma, comma plus
# space and space (AES69-2020 Section 4.7.8). This means that the unit
# space and space (AES69 Section 4.7.8). This means that the unit
# "cubic metre" will be tested as a multi unit string and is thus also
# split in the aliases. A separate test for verifying that "cubic" is
# followed be "metre" must be performed.
Expand All @@ -59,18 +59,18 @@
}
# possible values for restricted dimensions in the API
# Dimensions for spherical harmonics (considering orders up to 100) according
# to AES69-2020 Eq. (5) and (6)
# to AES69 Eq. (5) and (6)
sh_dimension = ([(N+1)**2 for N in range(100)],
"(N+1)**2 where N is the spherical harmonics order")
# Dimensions for SOS (considering up to 100 sections) according to AES69-2020
# Appenx C.5.2
# Dimensions for SOS (considering up to 100 sections) according to AES69
# Appendix C.5.2
sos_dimension = ([6 * (N + 1) for N in range(100)],
"an integer multiple of 6 greater 0")

# verification rules
rules = {
# Global --------------------------------------------------------------
# Check value of GLOBAL_DataType (AES69-2020 Annex C)
# Check value of GLOBAL_DataType (AES69 Annex C)
# (FIRE and TFE are legacy data types from SOFA version 1.0)
"GLOBAL:DataType": {
"value": ["Audio", "FIR", "FIR-E", "FIRE", "TF", "TF-E", "SOS"],
Expand Down Expand Up @@ -120,7 +120,7 @@
"value": sos_dimension[0],
"value_str": sos_dimension[1]}
}}}},
# Specified in AES69-2020 SEction 4.7.7 and Table 6
# Specified in AES69 Section 4.7.7 and Table 6
"GLOBAL:RoomType": {
"value": ["free field", "reverberant", "shoebox", "dae"],
"specific": {
Expand All @@ -131,7 +131,7 @@
"RoomCornerB": None},
"dae": {
"GLOBAL:RoomGeometry": None}}},
# Specified in AES69-2020 Annex D
# Specified in AES69 Annex D
"GLOBAL:SOFAConventions": {
"value": _get_conventions(return_type="name"),
"specific": {
Expand Down Expand Up @@ -185,12 +185,12 @@
"GLOBAL:DataType": ["FIR-E"]},
"FreeFieldDirectivityTF": {
"GLOBAL:DataType": ["TF"]}}},
# check NLongName (AES69-2020 Tables C.3 and C.4)
# check NLongName (AES69 Tables C.3 and C.4)
"N:LongName": {
"value": ["frequency"]},
# Listener ------------------------------------------------------------
# Possible values and dependencies are specified in
# AES69-2020 Section 4.7.3
# AES69 Section 4.7.3
# ---------------------------------------------------------------------
# Check values and consistency of if ListenerPosition Type and Unit
"ListenerPosition:Type": {
Expand Down Expand Up @@ -220,7 +220,7 @@
"general": ["ListenerView"]},
# Receiver ------------------------------------------------------------
# Possible values and dependencies are specified in
# AES69-2020 Section 4.7.4
# AES69 Section 4.7.4
# ---------------------------------------------------------------------
# Check values and consistency of if ReceiverPosition Type and Unit
"ReceiverPosition:Type": {
Expand Down Expand Up @@ -258,7 +258,7 @@
"general": ["ReceiverView"]},
# Source --------------------------------------------------------------
# Possible values and dependencies are specified in
# AES69-2020 Section 4.7.5
# AES69 Section 4.7.5
# ---------------------------------------------------------------------
# Check values and consistency of if SourcePosition Type and Unit
"SourcePosition:Type": {
Expand Down Expand Up @@ -288,7 +288,7 @@
"general": ["SourceView"]},
# Emitter -------------------------------------------------------------
# Possible values and dependencies are specified in
# AES69-2020 Section 4.7.6
# AES69 Section 4.7.6
# ---------------------------------------------------------------------
# Check values and consistency of if EmitterPosition Type and Unit
"EmitterPosition:Type": {
Expand Down Expand Up @@ -331,7 +331,7 @@
"general": ["GLOBAL:EmitterDescription"]},
# Room ----------------------------------------------------------------
# Possible values and dependencies are specified in
# AES69-2020 Section 4.7.7
# AES69 Section 4.7.7
# ---------------------------------------------------------------------
"RoomVolume": {
"value": None,
Expand Down

0 comments on commit ff4660a

Please sign in to comment.