A Nim wrapper for the JACK C API
Go to file
Christopher Arndt 8964ad7052 feat: add MIDI receiver example showing use of threading and ringbuffer
Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
2023-06-06 02:42:48 +02:00
examples feat: add MIDI receiver example showing use of threading and ringbuffer 2023-06-06 02:42:48 +02:00
src feat: make callback functions user arg optional 2023-06-06 02:40:02 +02:00
tests tests: add initial tests 2023-05-25 18:04:16 +02:00
.gitignore Add README, LICENSE and .gitignore 2022-10-06 04:19:20 +02:00
LICENSE docs: update readme and license year 2023-05-24 09:48:15 +02:00
README.md fix: minor readme whitespace fix 2023-05-25 18:12:38 +02:00
TODO.md docs: add todo document 2023-05-25 18:04:16 +02:00
jacket.nimble fix: use standard nimble package structure 2022-10-10 21:11:19 +02:00

README.md

jacket

A Nim wrapper for the JACK C API

Project status

This software is in alpha status and has no official release yet.

The majority of JACK client APIs have been wrapped and are functional (see examples), but some APIs (e.g. threading) still need wrapping. Others, like the server control or the deprecated session API, will probably not be covered by these bindings. While this project is in alpha or beta stage, symbol names may still be changed and things moved around before the first public release.

Also, I plan to add a higher-level abstraction on top of the direct mapping from Nim procs and types to C functions and types, probably in the form of a JACK client object, which takes care of creating a JACK client instance, registering ports and setting up all the callbacks necessary for a well-behaved JACK application.

Installation

  • Clone this repository.
  • Change into the jacket directory.
  • Run nimble install (or nimble develop).
  • Run the examples with nim compile --run examples/<example>.nim (some also need --threads:on).

License

This software is released under the MIT License. See the LICENSE file for more information.