Skip to content

Commit 018e06e

Browse files
committed
updated README and some docs
1 parent 4ec89e6 commit 018e06e

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

ChangeLog.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Major and/or breaking changes to the Spatial_Audio_Framework are listed here.
99
For descriptions of minor changes and bug fixes, please refer to the git log.
1010

1111
====================================================================================================
12-
v1.3.2
12+
v1.3.2 (2nd February 2024)
1313
- Reverted a change made to the getBinDecoder_MAGLS() function in the previous release
1414

1515
====================================================================================================

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,11 @@
77

88
# About
99

10-
The Spatial_Audio_Framework (SAF) is an open-source and cross-platform framework for developing spatial audio related algorithms and software in C/C++. Originally intended as a resource for researchers in the field, the framework has gradually grown into a rather large and well-documented codebase comprising a number of distinct [**modules**](framework/modules); with each module targeting a specific sub-field of spatial audio (e.g. Ambisonics encoding/decoding, spherical array processing, amplitude-panning, HRIR processing, room simulation, etc.). The framework also makes use of highly optimised linear algebra libraries (such as Intel MKL, Apple Accelerate, OpenBLAS) as well as SIMD intrinsics (SSE, AVX, AVX-512). Several [**examples**](examples/include) are also included in the repository, which serve to demonstrate the functionality of the framework and may also act as a starting point for new projects. These examples have also been integrated into VST audio plug-ins under the [**SPARTA**](https://github.com/leomccormack/SPARTA) banner, which demonstrate how the framework may be used for practical real-time applications.
10+
The Spatial_Audio_Framework (SAF) is an open-source and cross-platform framework for developing spatial audio related algorithms and software in C/C++. Originally intended as a resource for researchers in the field, the framework has gradually grown into a large codebase comprising a number of distinct [**modules**](framework/modules); with each module targeting a specific sub-field of spatial audio, such as: Ambisonics encoding/decoding, spherical array processing, amplitude-panning, HRIR processing, room simulation, etc.. The framework also makes use of highly optimised linear algebra libraries (such as: Intel MKL, Apple Accelerate, OpenBLAS) as well as x86 SIMD intrinsics (SSE, AVX, AVX-512).
1111

12-
Owing to its modular design, expanding the framework is relatively straightforward, and contributions from researchers and developers of spatial audio technologies is actively encouraged! :-)
12+
Several [**examples**](examples/include) are also included in the repository, which serve to demonstrate the functionality of the framework and may also act as a starting point for new projects. These examples have also been realised as VST/LV2 audio plug-ins under the [**SPARTA**](https://github.com/leomccormack/SPARTA) banner.
13+
14+
Owing to its modular design, expanding the framework is relatively straightforward, and contributions from researchers and developers of spatial audio technologies is encouraged! :-)
1315

1416
# Prerequisites
1517

@@ -211,4 +213,4 @@ This software is dual-licensed. By default, this software is provided permissive
211213

212214
For full licensing terms see [LICENSE.md](LICENSE.md).
213215

214-
Note that while we do not impose any copyleft licensing philosophies for the ISC licensed modules, we still appreciate it when improvements and/or bug fixes are also merged into this public repository where possible :-)
216+
Note that, while we do not force any copyleft philosophies onto the permissively licensed modules, we would still appreciate it if improvements and/or bug fixes are also merged into this public repository where possible :-)

docs/FRAMEWORK_STRUCTURE.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,13 @@ The framework comprises the following core modules (**ISC**):
2929
The framework also includes the following optional modules:
3030
* **saf_sofa_reader** - a simple SOFA file reader (**ISC**).
3131
* **saf_tracker** - a particle-filtering based tracker (**GPLv2**).
32+
* **saf_hades** - for binaural rendering of Hearing-Assistive/Augmented-reality Devices (HADES) (**GPLv2** License).
3233

3334
To enable optional framework modules, simply add the relevant pre-processor definition:
3435
```
3536
SAF_ENABLE_SOFA_READER_MODULE # to enable saf_sofa_reader
3637
SAF_ENABLE_TRACKER_MODULE # to enable saf_tracker
38+
SAF_ENABLE_HADES_MODULE # to enable saf_hades
3739
```
3840

3941
## Resources
@@ -43,6 +45,8 @@ The **saf_utilities** module also inherits and offers use of the following third
4345
* [**md_malloc**](https://github.com/leomccormack/md_malloc) - a utility for allocating contiguous multi-dimensional arrays (**MIT**).
4446
* [**convhull_3d**](https://github.com/leomccormack/convhull_3d) - for building 3-D convex hulls (**MIT**).
4547
* [**kissFFT**](https://github.com/mborgerding/kissfft) - the default FFT implementation for when no optimised alternative is linked (**BSD-3-Clause**).
48+
* [**speex_resampler**](https://github.com/xiph/speex) - a popular and efficient resampler taken from the Speex project (**BSD-3-Clause**).
49+
* [**zlib**](https://github.com/madler/zlib) - a massively spiffy yet delicately unobtrusive compression library ([**custom permissive license**](https://en.wikipedia.org/wiki/Zlib_License))
4650

4751
## Dependencies
4852

@@ -136,7 +140,7 @@ Optional modules are also included by **framework/include/saf.h** in a similar m
136140

137141
### Coding style
138142

139-
All code should be written in C and compile under C99 compliant compilers and the ancient MSVC compiler. Note that complex number wrappers (**saf_utilities/saf_utility_complex.h**) have been provided to make this latter requirement a bit easier, but we can also help port C99-only code to be MSVC compliant if needed.
143+
All code should be written in C89.
140144

141145
As for coding-style, there are no strict requirements, only suggestions. In general, taking an existing SAF module and using it as a basis for developing a new module is probably the easiest way to go. However, suggested coding styles are also listed below:
142146
* Indentations should be 4 spaces in length - no tabs please!

0 commit comments

Comments
 (0)