OpenAV Ctlra Save

A plain C library to program with hardware controllers.

Project README

Ctlra - A C Library for Controller Support

Ctlra is a plain C library that supports easily programming with hardware controllers like USB HID devices. Recently controllers have become much more powerful and feature-rich devices, resulting in tight integration between software and hardware controllers. This places a burden on software developers, who must support individual devices.

This library makes it easier to access these powerful hardware control surfaces trough a simple API, which exposes buttons, encoders, sliders, and a grid as components of the controller device. The details of the USB HID protocol, and the implementation of the device communication are abstracted.

This library may be of interest if you are writing music, video or other media software. Or if you just want to hack controller support into your web-browser because you can...

Usage

Codacy Badge Build Status

Download the source-code, compile using Meson and Ninja (which must be available on the system.)

meson build
cd build
ninja
./simple

Your application can now statically link against this library. Providing a shared-library and backwards ABI compatilbility to enable new devices without recompilation of the application are long-term goals, which can be discussed when the initial API has been reviewed and used in a few serious applications.

Supported Devices

This library currently supports the following devices:

  • 3DConnexion SpaceMouse Pro (Wireless)
  • Native Instruments Maschine Mikro (Mk2 and MK3 only)
  • Native Instruments Traktor D2
  • Native Instruments Traktor F1
  • Native Instruments Traktor S2 (Mk2 only)
  • Native Instruments Traktor X1 (Mk2 only)
  • Native Instruments Traktor Z1

Prototyping for several other devices is in progress, but not complete. These devices include:

  • Native Instruments Maschine Jam
  • Nintend WiiMote (Original)
  • Generic MIDI
  • Generic OSC
  • Arduino Serial

For more info check Devices page

Device Manufacturers

If you are or represent a manufacturer of a device, and wish to have your device supported by Ctlra, please contact OpenAV for information on how to best upstream support for your device to Ctlra.

Contact

Harry van Haaren [email protected] OpenAV Productions http://openavproductions.com

Open Source Agenda is not affiliated with "OpenAV Ctlra" Project. README Source: openAVproductions/openAV-Ctlra
Stars
78
Open Issues
32
Last Commit
1 year ago
License

Open Source Agenda Badge

Open Source Agenda Rating