1
0
Fork
You've already forked nectarine
0
🍑 Audio synthesis tools https://rubiefawn.codeberg.page/nectarine
  • C 99.7%
  • Makefile 0.3%
Fawn a28bfbe259
All checks were successful
Publish documentation / publish (push) Successful in 41s
Work-in-progress wavetables
These are intended to be 3-dimensional arrays such that the first
dimension represents different mipmap levels, the second represents
different waveform shapes, and the third represents samples within each
waveform. These can be sampled with trilinear interpolation.
They are currently untested and very likely broken in some way or other.
2026年06月25日 21:02:24 -06:00
.forgejo/workflows Tweak Forgejo deploy action 2026年05月27日 17:25:09 -06:00
vendor Rawdog attributes instead of using a macro 2026年04月29日 19:46:59 -06:00
.gitignore Add ARM NEON support 2026年04月14日 19:37:12 -06:00
.gitmodules Rawdog attributes instead of using a macro 2026年04月29日 19:46:59 -06:00
denormals.h Fix FXSAVE alignment 2026年04月27日 11:57:36 -06:00
Doxyfile Tweak Forgejo deploy action 2026年05月27日 17:25:09 -06:00
LICENSE Add ISC license & README 2026年04月01日 22:46:51 -06:00
Makefile OpenMP is working, actually 2026年04月25日 23:00:21 -06:00
README.md Use a*b+c instead of fma() 2026年04月30日 15:07:03 -06:00
tgwaveforms.h Add circle waveform function 2026年05月09日 18:23:57 -06:00
waveforms.h Add circle waveform function 2026年05月09日 18:23:57 -06:00
wavetable.h Work-in-progress wavetables 2026年06月25日 21:02:24 -06:00

🍑 nectarine

Audio synthesis tools for C23.

Building

The recommended way to use Nectarine is to compile the source files directly into your project. If your project uses git, you can add Nectarine as a git submodule.

For best results, compile with -O3 -ffast-math -ffp-contract=fast -fopenmp-simd -march=native -DNDEBUG (or your compiler's equivalent).

Compiler support

Nectarine is written for C23 and OpenMP 4.0.

  • GCC minimum 13, preferred 15+
  • Clang 19+
  • Xcode 16.4+
  • MSVC does not support C23 nor OpenMP 4.0.

Documentation

You can generate HTML documentation by running doxygen or make docs.